Module 21936 (2013)
Syllabus page 2013/2014
06-21936
Fundamentals: Software Engineering
Level 4/M C
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus
The Module Description is a strict subset of this Syllabus Page. (The University module description has not yet been checked against the School's.)
Relevant Links
Outline
The module will explore some of the fundamentals of software engineering. Topics will include: an introduction to software engineering: the software life cycle and methodologies for software development. The module is particularly suitable for MSc students who have little previous background in Computer Science.
Aims
The aims of this module are to:
- Introduce the software life-cycle and its main stages
- Demonstrate that the production of quality software in a cost-effective and productive way requires a systematic and disciplined approach
Learning Outcomes
| On successful completion of this module, the student should be able to: | Assessed by: | |
| 1 | explain why the production of a large, quality-assured piece of software is a task demanding a disciplined approach to all stages, closely analogous to the methodology used in more traditional engineering activities | Examination |
| 2 | explain the concept of the software lifecycle | Examination |
| 3 | demonstrate knowledge of relevant concepts for each stage of the software life-cycle | Examination |
| 4 | understand the application of software engineering approaches, both as an introduction to professional practice and as an aid to project work | Examination |
| 5 | assess the effectiveness of software engineering techniques in a case study | Continuous Assessment |
Restrictions, Prerequisites and Corequisites
Restrictions:
May not be taken by anyone who has or is taking 18191
Prerequisites:
None
Co-requisites:
None
Teaching
Teaching Methods:
2 hrs lectures/tutorials per week
Contact Hours:
Assessment
- Sessional: 1.5hr examination (80%), continuous assessment (20%)
- Supplementary (where allowed): 1.5 hour examination (100%)
Recommended Books
None
Detailed Syllabus
- Introduction: definitions and history of software engineering; models of the software lifecycle.
- Requirements definition: outline, documentation, validation.
- Design: general concepts of traditional designs (structure, modularity, hierarchy), inheritance; design methods; validation.
- Implementation: choice of language and coding strategies; testing and debugging, including white-box and black-box testing.
- Validation: techniques for each stage - informal reviews, formal reviews, testing, formal proofs.
- Documentation: quality, types, techniques for each stage.
- Management of software projects: principles; personnel issues; estimation, scheduling and costing.
Last updated: 19 Jan 2010
Source file: /internal/modules/COMSCI/2013/xml/21936.xml
Links | Outline | Aims | Outcomes | Prerequisites | Teaching | Assessment | Books | Detailed Syllabus