University of Oxford Logo University of OxfordSoftware Engineering - Home
On Facebook
Follow us on twitter
Linked in
Linked in
Google plus
Google plus
Stumble Upon
Stumble Upon

Requirements Engineering

Establishing firm and precise requirements is an essential component of successful software development. This course covers a range of methods from the hard semi-formal approaches to softer methods, and some innovative techniques. Practical guidance is also included.


This subject has been discontinued; no further courses are planned.


At the end of the course the student will have a breadth of knowledge about the range of requirements methods, tools, and techniques. They will gain an appreciation of at least two methods, and obtain practical guidance on elicitation techniques.


The Software Design Process:
the need for requirements analysis; the software lifecycle.
Classification of Requirements Methods:
an orientation from which to assess existing and novel methods
Hard Methods:
underlying assumptions; practical exercise using a standard method.
Elicitation Techniques:
various techniques; strengths and weaknesses.
Soft Methods:
Soft Systems Methodology; socio-technical approaches.
Specifying Requirements:
functional and non-functional requirements; specification exercise.
Managing the Requirements Process:
methods which provide a structure for co-operation between different stake holders.
the role of prototyping in requirements techniques for prototyping.
Requirements for Future Technologies:
Computer Supported Co-operative Work (CSCW); networked multi-media systems.


Previous knowledge of requirements is not necessary, but experience in some aspect of software design is desirable.