production
Skip to Content

CS552H: SECURE SOFTWARE DESIGN AND DEVELOPMENT (2024-2025)

Last modified: 23 Jul 2024 11:05


Course Overview

Software bugs and vulnerabilities are the main source of threats to security. This course introduces students to design, development, testing and  evaluating secure and dependable software. This course develops students both theoretical and practical skills to define, implement, examine, and manage secure software lifecycle. The course provides  necessary skills needed for security professionals ranging from software architects, developers to penetration testers and IT Managers.

Course Details

Study Type Postgraduate Level 5
Term Second Term Credit Points 15 credits (7.5 ECTS credits)
Campus Aberdeen Sustained Study No
Co-ordinators
  • Dr Raja Akram
  • Dr Chunyan Mu

What courses & programmes must have been taken before this course?

  • Any Postgraduate Programme
  • One of Master Of Science In Information Technology With Cybersecurity (Sept) or Master Of Science In Cybersecurity And Machine Learning (Sept Start) or Master Of Science In Cybersecurity

What other courses must be taken with this course?

None.

What courses cannot be taken with this course?

  • CS502H Secure Software Design and Development (Studied)
  • CS55CH Secure Software Design and Development (Studied)

Are there a limited number of places available?

No

Course Description

In this course, students will be exposed to number of secure software development and management techniques to practice effective software security techniques. By the end of the course, students should be able to do the following things: 

  • Understand and apply secure software concepts 
  • Able to define secure software requirements 
  • Understand and able to design secure software architecture 
  • Have the skills to apply or carry out the standard practices for secure software implementation, testing, deployment, and operations management 
  • Able to manage secure software lifecycle management and secure software supply chain.  

Contact Teaching Time

Information on contact teaching time is available from the course guide.

Teaching Breakdown

More Information about Week Numbers


Details, including assessments, may be subject to change until 30 August 2024 for 1st term courses and 20 December 2024 for 2nd term courses.

Summative Assessments

Class Test - Multiple Choice Questions

Assessment Type Summative Weighting 15
Assessment Weeks 15 Feedback Weeks 15

Look up Week Numbers

Feedback

Based on Lecture 5 and 6

Feedback - Online.

Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualEvaluateAble to carry out the secure software testing and evaluation.
ProceduralAnalyseUnderstand the fundamental requirements of secure software design and development.
ProceduralApplyGain the skills to apply the secure software architecture and design principles.

Class Test - Multiple Choice Questions

Assessment Type Summative Weighting 15
Assessment Weeks 16 Feedback Weeks 16

Look up Week Numbers

Feedback

Based on Lecture 9 and 10

Feedback - Online.

Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualUnderstandUnderstand the challenges organisations face in managing their software supply chain and how they can minimise their security exposure from their supply chain partners.
FactualUnderstandHave the basic understanding of secure software deployment, operations and maintenance.

Essay

Assessment Type Summative Weighting 25
Assessment Weeks 16 Feedback Weeks 16

Look up Week Numbers

Feedback

Topic that encompasses the knowledge/skills gained in the course.

Feedback - Online.

Word Count 2000
Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualEvaluateAble to carry out the secure software testing and evaluation.
ConceptualUnderstandUnderstand the challenges organisations face in managing their software supply chain and how they can minimise their security exposure from their supply chain partners.
FactualUnderstandHave the basic understanding of secure software deployment, operations and maintenance.

Class Test - Multiple Choice Questions

Assessment Type Summative Weighting 15
Assessment Weeks 14 Feedback Weeks 14

Look up Week Numbers

Feedback

Based on Lecture 3 and 4

Feedback - Online.

Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualApplyAppreciate the basic concepts of secure software design.
ProceduralAnalyseUnderstand the fundamental requirements of secure software design and development.

Class Test - Multiple Choice Questions

Assessment Type Summative Weighting 15
Assessment Weeks 15 Feedback Weeks 15

Look up Week Numbers

Feedback

Based on Lecture 7 and 8

Feedback - Online.

Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualEvaluateAble to carry out the secure software testing and evaluation.
FactualUnderstandUnderstand and appreciate the challenges of software lifecycle management.

Class Test - Multiple Choice Questions

Assessment Type Summative Weighting 15
Assessment Weeks 14 Feedback Weeks 14

Look up Week Numbers

Feedback

Based on Lecture 1 and 2

Feedback - Online

Learning Outcomes
Knowledge LevelThinking SkillOutcome
ConceptualApplyAppreciate the basic concepts of secure software design.
ConceptualUnderstandUnderstand the importance of secure software development techniques for cybersecurity.

Formative Assessment

There are no assessments for this course.

Resit Assessments

Resit those parts of the course that students failed. Pass marks carried forward.

Assessment Type Summative Weighting
Assessment Weeks Feedback Weeks

Look up Week Numbers

Feedback

(Continuous Assessment Courses Only) Where a student fails the course overall they will be afforded the opportunity to resit those parts of the course that they failed (pass marks will be carried forward).

Feedback - Online.

Learning Outcomes
Knowledge LevelThinking SkillOutcome
Sorry, we don't have this information available just now. Please check the course guide on MyAberdeen or with the Course Coordinator

Course Learning Outcomes

Knowledge LevelThinking SkillOutcome
FactualUnderstandHave the basic understanding of secure software deployment, operations and maintenance.
ConceptualUnderstandUnderstand the importance of secure software development techniques for cybersecurity.
FactualUnderstandUnderstand and appreciate the challenges of software lifecycle management.
ConceptualUnderstandUnderstand the challenges organisations face in managing their software supply chain and how they can minimise their security exposure from their supply chain partners.
ProceduralApplyGain the skills to apply the secure software architecture and design principles.
ProceduralAnalyseUnderstand the fundamental requirements of secure software design and development.
ConceptualEvaluateAble to carry out the secure software testing and evaluation.
ConceptualApplyAppreciate the basic concepts of secure software design.

Compatibility Mode

We have detected that you are have compatibility mode enabled or are using an old version of Internet Explorer. You either need to switch off compatibility mode for this site or upgrade your browser.