Module Details

The information contained in this module specification was correct at the time of publication but may be subject to change, either during the session because of unforeseen circumstances, or following review of the module at the end of the session. Queries about the module should be directed to the member of staff with responsibility for the module.
Code COMP201
Coordinator Mr ST Coope
Computer Science
Year CATS Level Semester CATS Value
Session 2017-18 Level 5 FHEQ First Semester 15


The module is intended to develop an understanding of the problems associated with the development of significant computing systems (that is, systems that are too large to be designed and developed by a single person,and are designed to be used by many users) and to appreciate the techniques and tools necessary to develop such systems efficiently, in a cost-effective manner.


Learning Outcomes

At the end of the module, the student is expected to

  • realise the problems in designing and building significant computer systems;
  • understand the need to design systems that fully meet the requirements of the intended users including functional and non functional elements

  • appreciate the need to ensure that the implementation of a design is adequately tested to ensure that the completed system meets the specifications

  • be fully aware of the principles and practice of an O-O approach to the design and development of computer systems

  • be able to apply these principles in practice.  


  1. Introduction (1 lecture) 
    • What is software engineering; the goals of software engineering;
    • Why is software engineering important
    • commercial considerations
  2. Software processes (2 lectures)
    • Waterfall Model, Evolutionary development, Formal systems development, Reuse oriented development, risk analysis
  3. Requirement analysis (5 lectures)
    • what are requirements and why are they important
    • < li class="msonormal"> requirements elicitation and validation
    • user and system requirements
    • functional/nonfunctional requirements
    • security analysis and requirements
    • techniques for describing system requirements
  4. System models (3 lectures)
    • Behavioural modelling, data modelling, and object modelling
  5. Formal specification (2 lectures)
    • formal specification in the software process
    • formal specification languages
  6. Design and Design Methodologies (4 lectures)
    • design of software components and devices
    • modularity as a tool for handling complexity
    • unit versus system design
    • properties of good design (cohesion, loose coupling,...)
    • top-down design and its problems
    • safety, correctness and security
  7. Concepts of Object-Oriented Design (2 lectures)
    • objects and classes
    • public and private aspects of objects
    • inheritance, aggregation and composition
  8. Unified Modelling Language (5 lectures)
    • what is UML? - brief history
    • object oriented analysis with UML : use cases
    • object oriented analysis with UML : concept diagrams
    • object oriented design with UML : collaboration diagrams
    • object oriented design with UML : object models
    • object oriented design with UML : state charts
  9. Software Testing (3 lectures)
    • black box testing
    • generating test cases: boundary analysis, equivalence partitioning
    • white box testing
    • security testing
  10. Software projects (3 lect ures)
    • Overview of project stages, areas of risk in each stage
    • Establishing a business case; establishing project objectives, goals, and measures of success
    • Project planning and estimation; critical path analysis, risk identification
    • Project monitoring; monitor and control finances; control, assure, and manage quality

Teaching and Learning Strategies

Lecture -

Laboratory Work -

Teaching Schedule

  Lectures Seminars Tutorials Lab Practicals Fieldwork Placement Other TOTAL
Study Hours 30


Timetable (if known)              
Private Study 110


EXAM Duration Timing
% of
Penalty for late
Written Exam  120  80  Yes  Standard UoL penalty applies  Written Exam Notes (applying to all assessments) This CA work is not marked anonymously. Practical assessment is employed for both formative assessment and summative assessment. Students will get short formative feedback on a weekly basis from the module demonstrators during tutorial / lab sessions. More detailed summative and formative feedback will be returned following assessment of the continuously assessed (CA) work. Resit exam will replace failed CA components, the Learning Outcomes will be covered in the resit exam.  
CONTINUOUS Duration Timing
% of
Penalty for late
Coursework  24 hours  10  Yes  Standard UoL penalty applies  CA1 
Coursework  24 hours  10  Yes  Standard UoL penalty applies  CA2 

Recommended Texts

Reading lists are managed at Click here to access the reading lists for this module.
Explanation of Reading List: