School of Computer Science

Module 06-11224 (2013)

Introduction to Software Engineering

Level 1/C

Alan Sexton Semester 2 10 credits
Co-ordinator: Alan Sexton
Reviewer: Ela Claridge

The Module Description is a strict subset of this Syllabus Page.


Introduction to Software Engineering: the software life cycle and methodologies for software development.


The aims of this module are to:

  • introduce strategic and tactical thinking about program design and development
  • introduce issues and solutions for software engineering "in the small"
  • demonstrate the relationship between the practice of good program design and development and software engineering "in the small"

Learning Outcomes

On successful completion of this module, the student should be able to:

1 demonstrate facility with basic strategies of program design 2 demonstrate facility with recording and communicating program designs
3 understand and be able to apply software engineering approaches in the small


Knowledge of a programming language and experience in programming are essential.


Teaching methods

2 hrs lectures per week

Contact Hours: 23


Sessional: 1.5 hr examination (80%), continuous assessment (typically class tests) (20%)

Supplementary (where allowed): 1.5 hr examination (100%)

Detailed Syllabus

  1. Talking about programs

* Pseudo-code * Class Diagrams * Interface designs 2. Program design strategies 3. Eliciting and recording requirements * Specifications * Use Cases * Interviews * Useability 4. Correctness * Testing * Debugging * Proving Correctness 5. Managing code * Code quality * Documentation * Commenting * Coding Style * Code Walkthroughs * Versioning * Deployment

Programmes containing this module