Software Engineering and System Development

Module code: CO2006

According to a report of the British Computer Society, only about 16% of IT projects can be considered truly successful and over 60% of them experience severe problems. The difficulties of software development led to the coining of the phrase "the software crisis" and the birth of software engineering as a discipline. However, in many companies, software is still being developed in an ad-hoc way. The purpose of this module is to teach object-oriented methods for the analysis, specification, design, implementation, and testing of software systems.

At the end of this course, successful students will be able to: explain the main phases in a software development process; analyse customer requirements following an agile methodology; produce Object-oriented system designs by applying design patterns and architectural styles; use UML for consistent specification of software systems and business processes; incorporate security into specifications and designs by following a flexible security specification process; and use appropriate techniques for software development and testing, including mechanisms for software reuse.


  • 14 hours of lectures
  • 10 hours of seminars
  • 20 hours of practicals/workshops
  • 156 hours of guided independent study


  • Coursework (100%)