Computer Science, Prifysgol Cymru Aberystwyth University of Wales


CS33210 (1995-96 session)
Advanced Software Engineering


Brief Description

This module introduces students to some advanced aspects of software engineering, specifically formal methods and software engineering environments.

Aims, Objectives, Syllabus, Booklist,


Further Details

Number of lectures
24
Number of seminars/tutorials
4
Number of practicals
0
Coordinator
Dr. Fred Long
Other staff involved
Not yet known
Pre-requisites
CS21020 /C210, CS22110 /C220, CS22210 /C220
Co-requisites
None
Incompatibilities
None
Assessment
Assessed coursework - 20%
Written exam - 80%
Timing
This module is offered only in Semester 1

Aims

This module aims to introduce students to two advanced aspects of software engineering: the use of formal methods in software specification (with an emphasis on the ideas involved, rather than the formality); and software engineering environments and tool support interfaces.

Objectives

On successful completion of this course students should understand:

Syllabus

The Traditional Approach to Specification - 1 Lecture
Problems of incompleteness, inconsistency and ambiguity. Practical problems (volume of paperwork, etc.).
Formal Specifications - 1 Lecture
The advantages and disadvantages of formal specification. Algebraic and operational specifications.
VDM as a Specification Language - 5 Lectures
Introduction and history. The VDM specification language. Data types in VDM. An example specification.
VDM as a Formal Development Method - 4 Lectures
Stages and processes in the development of a software design using VDM. Data reification and operation decomposition.
Outstanding Problems and Other Methods - 1 Lecture
Formal specification of systems with concurrency. Modularisation of formal specifications. Safety and reliability issues. Other specification languages, Z and GYPSY (briefly). ANNA and SPARK.
Integration of Software Tools - 2 Lectures
Why integration is important. The dimensions of integration. Why traditional operating systems are not good enough.
Integrated Project Support Environments - 4 Lectures
Database support for project management and software development. Typical tools. Use of a database as a means of integration. Other aspects of integration (e.g., the user interface). Structure of an IPSE; Tool Builder as an example.
Tool Support Interfaces - 4 Lectures
The need for standard tool support interfaces. The issues which such interfaces should address. Current standards (PCTE and CAIS). Technical problems (granularity, wide area distribution).
Current Trends - 2 Lectures
A brief discussion of current trends in tool integration and CASE.

Booklist

It is considered essential to purchase the following

C.B. Jones. Systematic Software Development Using VDM. International Series in Computer Science. Prentice-Hall, 2nd. edition, 1990.

The following should be consulted for different approaches or for further information

J. Woodcock and M. Loomes. Software Engineering Mathematics. Pitman, 1988.

I. Hayes, editor. Specification Case Studies. International Series in Computer Science. Prentice-Hall, 2nd. edition, 1993.

J.M. Spivey. The Z Notation: A Reference Manual. International Series in Computer Science. Prentice-Hall, 2nd. edition, 1992.

A.W. Brown, D.J. Carney, E.J. Morris, D.B. Smith, and P.F. Zarrella. Principles of CASE Tool Integration. Oxford University Press, 1994.

Version 4.1

Syllabus Syllabus

John Hunt Departmental Advisor

jjh@aber.ac.uk

Dept of Computer Science, UW Aberystwyth (disclaimer)