COMP203P - Software Engineering

This database contains the 2017-18 versions of syllabuses.

Note: Whilst every effort is made to keep the syllabus and assessment records correct, the precise details must be checked with the lecturer(s).

Code COMP203P
Year 2
Prerequisites A Java programming course and ENGS102P
Term 1
Taught By



This module explores a range of topics in Software Engineering (SE) needed to be able to capture requirements, model, design, implement and evaluate larger software systems effectively, and gain a further understanding of the wider context in which software is developed.

Learning Outcomes

After completing the module, students will be able to:

  • Appreciate the wider engineering context that forms the background to developing complex, evolving software-intensive systems.
  • Plan and deliver an effective software development process.
  • Translate a specification into a design, and then realize that design practically
  • Formulate a testing strategy for a software system, employing techniques such as unit testing, test driven development and functional testing.
  • Use a range of tools required for effective software development, such as version control and continuous integration.
  • Reflect on the appropriateness of different software engineering methodologies in different circumstances, and on the quality of the design of an application.


  • Requirements
  • Analysis
  • Design
    • OO Design
  • Testing
  • Deployment
  • Tools

Method of Instruction

Lecture presentations and online material. Group working and scenario week.


The module has the following assessment components:

  • Coursework (100%)

To pass this course, students must:

  • Obtain an overall pass mark of 40% for all components combined.


Reading list available via the UCL Library catalogue.

Lecture slides, online material and reference links can be found on the Moodle site.