Skip to navigation | Skip to main content | Skip to footer

This is an archived syllabus from 2013-2014

COMP31111 Verified Development syllabus 2013-2014

COMP31111 Verified Development

Level 3
Credits: 10
Enrolled students: 47

Course leader: Richard Banach

Additional staff: view all staff

Assessment methods

  • 80% Written exam
  • 20% Coursework
Sem 1 Lecture 1.4 Thu 15:00 - 15:00 -
Themes to which this unit belongs
  • Rigorous Development


It has been known for a long time that, in theory, the whole activity of system specification, refinement and implementation, could be integrated into a comprehensive mathematical theory and could be supported by industrial strength system development tools. However an actual realisation of this supposition was slow to appear, and the idea was not really made practical until the mid 1980s. Nowadays though, there are a number of tools that embody this idea, and the integration of various reasoning technologies into the process (these days often behind the scenes) is a fertile area of research. This course is an introduction to this methodology.


This course is an introduction to verified development, using the Perfect Developer tool from Eschertech, which allows the development of abstract models, and their translation and refinement into running Java code.


Overview of informal and rigorous development.

Overview of model based refinement.

Basics of the Perfect language.

Practical development and refinement in Perfect.

More refinement theory.

The role of automated reasoning.

Prospects for the future.

Teaching methods




There are exercises associated with COMP31111. Some are to be submitted via Blackboard for assessment (counting 20% of the course).

Feedback methods

Feedback is provided face to face in the lab, and online for uploaded assessed materials.

Study hours

  • Assessment written exam (2 hours)
  • Lectures (22 hours)

Employability skills

  • Analytical skills
  • Innovation/creativity
  • Problem solving
  • Research

Learning outcomes

On successful completion of this unit, a student will be able to:

Learning outcomes are detailed on the COMP31111 course unit syllabus page on the School of Computer Science's website for current students.

Reading list

No reading list found for COMP31111.

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.