Introduction to Software and Systems Engineering
Pre-requisite modules
Co-requisite modules
- None
Prohibited combinations
- None
Occurrence | Teaching period |
---|---|
A | Semester 1 2024-25 |
This is the students' first opportunity to integrate their skills into a development project. Starting from a broad problem description and working in groups, students will design, develop and test a complex system. The students will be introduced to the software engineering terminology, lifecycle and processes and will become familiar with principles, techniques and tools for, and develop hands-on experience of eliciting requirements; defining software architectures; designing and implementing software in an object-oriented way using established patterns; reviewing, testing and refactoring software systems; and setting up continuous integration and delivery processes. Students will also develop an appreciation of how to identify, mitigate and monitor risks, how to manage software projects, and how to reuse and extend 3rd-party code/libraries. Overarching themes of the module will include traceability, cyber-security and ethical considerations across the engineering lifecycle.
E101 |
Apply an understanding of software engineering terminology, lifecycles and process models, to help with undertaking a project. |
E102 |
Elicit and document user and system requirements. |
E103 |
Architect, design and implement software in an object-oriented way. |
E104 |
Demonstrate how the estimation of risk can be used to improve decision-making, and to make realistic estimates for a project. |
E105 |
Define unit- and system-level tests for software, and use continuous integration processes. |
E106 |
Apply mechanisms for working in teams to successfully undertake a group project. |
E107 |
Apply different models for software licensing and reuse of 3rd party software to the artefacts developed in the module. |
E108 |
Demonstrate consideration of cyber-security and ethical considerations in the engineering lifecycle, through practice and documentation. |
E109 |
Write documentation and design/deliver presentations for the different stages of the engineering lifecycle. |
Task | % of module mark |
---|---|
Groupwork | 30 |
Groupwork | 50 |
Online Exam -less than 24hrs (Centrally scheduled) | 20 |
None
Task | % of module mark |
---|---|
Essay/coursework | 30 |
Essay/coursework | 50 |
Online Exam -less than 24hrs (Centrally scheduled) | 20 |
Feedback is provided through work in practical sessions, and after the final assessment as per normal University guidelines
**** Ian Sommerville, Software Engineering (latest edition), Addison-Wesley, 2010
*** Roger Pressman, Software Engineering (latest edition), McGraw-Hill, 2010