School of Computer Science

Module 06-11224 (2010)

Introduction to Software Engineering

Level 1/C

Alan Sexton Semester 2 10 credits
Co-ordinator: Alan Sexton
Reviewer: Behzad Bordbar

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


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:

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

Teaching methods

2 hrs lectures per week


  • Sessional: 1.5 hr examination (80%), Continuous Assessment (typically class tests) (20%)
  • Supplementary: 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