Choose:

Software Engineering 3A

This module is compulsory for all honours students and a prerequisite for Software Engineering 4 and Formal Methods 4.

Aims

The aim of this module is to study informal and formal methods for the analysis, design and implementation of large programs.

Objectives

By the end of this module, the student should

Contents

The module consists of 36 lectures, taught at 2 lectures per week.

Software Development Techniques

Managing Software Development

Formal specification and construction of programs (18 lectures)

Tutorial workshops

There will be one 1-hour tutorial each week.

Term 1

During this term there will be an additional 1-hour workshop each week. Teams of about 5 students will work on the design of a moderately sized piece of software. The team will be set a target deliverable to produce every one or two weeks which will be handed in. However, instead of working from this deliverable as a base for the next step all teams will be given a standard version of this deliverable to use in the next stage. The method and technique to be used at each stage will be those of the lectures in SE3. Each student's assessment will be based on their team's project report together with an individual essay on their contribution to the project.

Assessed coursework

Term 1: Team exercise, starting in week 2 and ending in week 10, together with an individual essay to be handed in during week 11 (first day of term 2), together worth 10% of your final grade.

Term 2: There will be three assessed exercises for this part of the course, counting for a total of 10% of your final grade. Each exercise will be worth a maximum of 10 marks. None of the exercises will require the use of a computer (so they can all be done at home, in the library, on the train, etc.). The details are as follows:

Exercise 1

handed out 27 January 1998

due 10 February 1998.

Exercise 2

handed out 10 February 1998

due 3 March 1998.

Exercise 3

handed out 3 March 1998

due 21 April 1998 (first Tuesday of Term 3).

The exercises will be designed so as to allow you to get them done comfortably within the allocated times. Exercises 1, 2, and 3 will be assigned and your solutions to exercises 1 and 2 collected at the lectures on the days shown above. The arrangements for handing in exercise 3, which is due in the first week of term 3, will be announced when it is assigned.

Reading

Required reading (term 1)

Sommerville, I. (1995) Software Engineering 5th edition, Addison-Wesley.

Required reading (term 2)

Kaldewaij, A. (1990) Programming - the derivation of Algorithms, Prentice-Hall.

Additional reading (term 2)

Gordon, M. J. C. (1988) Programming Language Theory and its Implementation, Prentice-Hall.
Winskel, G. (1993) The Formal Semantics of Programming Languages, MIT Press.

Lecturers

Mr Phil Gray

Dr Tom Melham

Room: S104 Ext: 4933 E-mail: pdg

Room: S092 Ext: 4967 E-mail: tfm

Consultation: by appointment

Consultation: by appointment

Module coordinator

Software Engineering 3B

This module is compulsory for all CS3 students.

Aims

The aim of this module is to study informal methods for the analysis, design and implementation of large programs and to introduce formal methods.

Objectives

By the end of this module, the student should

Contents

The module consists of 36 lectures, taught at 2 lectures per week.

Software Development Techniques

Managing Software Development

Current Software Engineering Practice

Introduction to formal methods

Tutorial workshops

There will be one 1-hour tutorial each week.

Term 1: During this term there will be an additional 1-hour workshop each week. Teams of about 5 students will work on the design of a moderately sized piece of software. The team will be set a target deliverable to produce every one or two weeks which will be handed in. However instead of working from this deliverable as a base for the next step all teams will be given a standard version of this deliverable to use in the next stage. The method and technique to be used at each stage will be those of the lectures in SE3. Each student's assessment will be based on their team's project report together with an individual essay on their contribution to the project.

Assessed coursework

Term 1: Team exercise, starting in week 2 and ending in week 10, together with an individual essay to be handed in in week 11 (first day of term 2), together worth 10% of your final grade.

Term 2: There will be three assessed exercises for this part of the course, counting for a total of 10% of your final grade. Each exercise will be worth a maximum of 10 marks. None of the exercises will require the use of a computer (so they can all be done at home, in the library, on the train, etc.). Assignment and deadline dates will be announced.

Required reading (term 1)

Sommerville, I. (1995) Software Engineering 5th edition, Addison-Wesley

Additional reading (term 2)

Rumbaugh, J. et al ., (1991) Object-Oriented Modeling and Design, Prentice-Hall.

Lecturers

Mr Phil Gray

Dr Patrick Sansom

Room: S104 Ext: 4933 E-mail: pdg

Room: F163 Ext: 4984 E-mail: sansom

Consultation: by appointment

Consultation: by appointment

Module coordinator