This module uses formal techniques to explore the specification, design and implementation of computer systems. It will cover more advanced features of specification and introduce data and functional refinement, considering how a system design may be modified in a variety of practical ways. Refining the specification to code is an important step in the software life-cycle. This module presents both the theoretical basis for this and practical means of refinement from system specification to program code.
To study methods for designing, analysing and programming complex computing systems.
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
Revision of sets, relations, functions and sequences.
Revision of basic specification skills.
Introduction to development tool:
By the end of the module, students should be able to:
Please see Talis Aspire link for most up to date list.
|Lectures||20 sessions of 1 hour (13%)|
|Supervised practical classes||10 sessions of 1 hour (7%)|
|Private study||120 hours (80%)|
Completion of exercise sheets;
No further costs have been identified for this module.
You do not need to pass all assessment components to pass the module.
Students can register for this module without taking any assessment.
|Practical assignment 1||20%|
Assignment 1: practical coursework task
|Practical assignment 2||20%|
Assignment 2: practical coursework task
2 hour exam
~Platforms - AEP
|On-campus Examination - Resit||100%|
CS412 Examination resit
~Platforms - AEP
Individual written feedback on each assignment.
MEng students must have studied the material in CS130, CS131, CS262
This module is Optional for:
This module is Option list B for: