Skip to main navigationSkip to main content
The University of Southampton
Courses

COMP6204 Software Project Management and Secure Development

Module Overview

This module is to prepare students for undertaking large software projects. It introduces the students to the high-level strategies required for managing projects from their genesis to completion. The module also introduces the students to secure engineering of software systems. The practical aspect will enable students to gain practical coding skills in secure software development for web-based applications. While no prior knowledge of a specific programming language is assumed, students should already be competent in at least one high-level language.

Aims and Objectives

Module Aims

To prepare students for undertaking large secure software projects.

Learning Outcomes

Knowledge and Understanding

Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:

  • Formal management for software projects
  • Quality assurance practices for software projects
Subject Specific Intellectual and Research Skills

Having successfully completed this module you will be able to:

  • Describe a number of modern software development methods, including the life cycle for developing secure software systems.
  • Select appropriate modern software development methods for a variety of software projects, taking into account assessment of risk.
Subject Specific Practical Skills

Having successfully completed this module you will be able to:

  • Implement security measures in server-side and client-side code
  • Evaluate the outcome of implementing security measures in server-side and client-side code

Syllabus

Managing the software development process: Estimating the effort in software projects Contracts, planning and monitoring Costing and budgeting Models of Software Projects Quality assurance: Concepts in QA Capability Maturity Modelling ISO 9000 standards Metrics Testing strategies Risk management Risk Based Software testing Security by design Security models, and principles of secure computing Software Engineering methodology for secure systems
 Privacy and trust issues in software system design Development methods: Iterative and incremental development Agile Development techniques Test-driven development Manual vs Automated Testing Refactoring Secure software design and development Web-based Secure Coding General techniques for secure programming are covered using an example web development framework using e.g PHP, JavaScript or ASP.Net

Learning and Teaching

TypeHours
Preparation for scheduled sessions18
Completion of assessment task20
Tutorial12
Lecture36
Follow-up work18
Revision10
Wider reading or practice36
Total study time150

Resources & Reading list

Roger S. Pressman. Software Engineering: A Practitioner's Approach. 

K. Schwibe. IT Project Management. 

Ian Sommerville. Software Engineering. 

Assessment

Summative

MethodPercentage contribution
Computing Laboratories  () 30%
Examination  (2 hours) 70%

Repeat

MethodPercentage contribution
Examination 100%

Referral

MethodPercentage contribution
Examination  (2 hours) 100%

Repeat Information

Repeat type: Internal & External

Share this module Share this on Facebook Share this on Twitter Share this on Weibo

We use cookies to ensure that we give you the best experience on our website. If you continue without changing your settings, we will assume that you are happy to receive cookies on the University of Southampton website.

×