The aim of the module is to provide students with a theoretical understanding and practical experience of current best practice in software engineering.
This module is only available to students in the second year of their degree and is not available as an unusual option to students in other years of study.
The aim of the module is to provide students with a theoretical understanding and practical experience of current best practice in software engineering. The module concentrates on the application of software engineering principles to the development of a significant software system, with an emphasis on design quality, technical evaluation, team working and project management.
This is an indicative module outline only to give an indication of the sort of topics that may be covered. Actual sessions held may differ.
Topic areas addressed are software development processes, feasibility and requirements analysis, modelling and design, implementation and design patterns, testing and analysis, maintenance and evolution. Each area will be covered from a theoretical and practical perspective, with a particular emphasis on concepts such as:
By the end of the module, students should be able to:
Please see Talis Aspire link for most up to date list.
View reading list on Talis Aspire
Understand the importance of the stages in the software life cycle, including a range of software development methodologies.
Design object oriented software using with the aid of a formal system modelling notation
Understand the principles of graphical user interface design
Understand the principles of user-centred design
Critically evaluate their experience of practical software development with regard to project management, software processes and technical accomplishment
Understand, though experience, the practical challenges associated with the development of a significant software system, including a graphical user interface
Understand, though experience, the practical challenges associated with working as a member of a software development team.
Communication skills (written and verbal)
Presentation skills
Team work
Team based coding
Problem analysis
Critical evaluation skills
Type | Required |
---|---|
Lectures | 15 sessions of 1 hour (10%) |
Seminars | 3 sessions of 1 hour (2%) |
Project supervision | 4 sessions of 30 minutes (1%) |
Private study | 130 hours (87%) |
Total | 150 hours |
Independent study includes both revision of the material and the group project. The project has a number of factors, including a variety of reports and software tasks. Engaging with these tasks, and revising the expected approaches and techniques of these tasks, help to reinforce the material from the lectures. The remaining time should be spent on revision and performing the background reading.
No further costs have been identified for this module.
You do not need to pass all assessment components to pass the module.
Students can register for this module without taking any assessment.
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
Group software development project - Requirements and Design | 20% | No | |
Group software development project - Requirements and Design. This assignment is group work and is not, therefore, eligible for self-certification. |
|||
Group software development project - Final Report | 30% | No | |
Groups software development project - Final Report. This assignment is worth more than 3 CATS and is groupwork and is not, therefore, eligible for self-certification. |
|||
In-person Examination | 50% | No | |
CS261 Exam
|
Weighting | Study time | Eligible for self-certification | |
---|---|---|---|
In-person Examination - Resit | 100% | No | |
CS261 resit exam
|
E-mail and real-time feedback.
This module is Core for:
This module is Option list B for: