SOFTWARE ENGINEERING A

SOFTWARE ENGINEERING A
Course Code
EG 3568
Credit Points
15
Course Coordinator
To be confirmed

Pre-requisites

EG 2069 (CAS 9).

Notes

Available only to students following an Honours degree programme.

Overview

This course concentrates on methodology for design of software systems. It covers the software life cycle (waterfall model) from requirements analysis through to testing and maintenance, explaining what is meant by well engineered software and how the necessary disciplines differ from those required for small-scale programming. Specification is emphasised, with coverage of natural language specification, data-flow diagrams, and an introduction to formal methods. Object-oriented and functional approaches to design are introduced and illustrated through case studies. Styles and design guides for user interfaces are introduced, as are points on programming style, and use of abstract and concrete data structures (sets, sequences, functions, etc). Practical work is provided to illustrate some of the formal course content and is in the form of a guided design exercise, in which the student takes an outline user requirement through specification, design, implementation and testing, using the C language.

Structure

24 one-hour lectures, 6 one-hour tutorials, and 6 three-hour practicals in total.

Assessment

1 three-hour written examination paper (80%) and in-course assessment (20%).