By the end of the module students will be able to:
- Analyse, design and develop a system within the framework of the systems engineering lifecycle. [SM1m, EA4m, D1m, D4p, EP1p, ET3m]
- Apply tools and methodologies, including project management, relevant to industry-standard modelling methodologies and object oriented programming. [EA3p, EA4p, EP3p]
- Analyse system quality, risk and reliability, and standards applied in the development of systems. [EA1p, EA2p, D1m, D2p, D3p, D4p, D5p, ET5p, Ep6p, EP7p]
- Explain, evaluate and critique own work in a team and that of team members. [EP7p]
This module satisfies the AHEP3 (Accreditation of Higher Education Programmes, Third Edition) Learning Outcomes that are listed in brackets after each learning outcome above. For further details on AHEP3 Learning Outcomes, see the downloads section of our accreditation webpage.
- Week 1: Module introduction and overview. System lifecycle. Introduction to requirements.
- Week 2: Requirements – user requirements, systems requirements, UML use case diagrams, UML package diagrams.
- Week 3: Requirements – detailed requirements, SysML requirement diagrams. Context and activities. UML activity diagrams. Project briefing.
- Week 4: Design – object orientation, identifying objects and relationships.
- Week 5: Design – UML class/object diagrams. Relationships between classes/objects. SysML bdd, ports.
- Week 6: Design – UML sequence diagrams and state diagrams.
- Week 7: Design – Coupling and cohesion, detailed design, algorithms and errors.
- Week 8: Verification and validation – definitions, approaches and coverage measures, scenario based testing.
- Week 9: Verification and validation – traceability, testing and debugging.
- Week 10: Case study – Systems engineering lifecycle.
- Week 11: Software quality – control flow analysis (complexity), visibility, reuse.
- Week 12: Q&A
- Week 1: Design – design patterns.
- Week 2: Design – principles for reliability.
- Week 3: Design – review of probability, network topologies and reliability.
- Week 4: Reliability – network topologies and reliability, failure rates.
- Week 5: Reliability – fault tree, event tree.
- Week 6: Reliability – failure mode analysis, hazards and risk.
- Week 7: Case study – reliability, failure, analysis and control of hazards.
- Week 8: System life cycle - standards.
- Week 9: Systems life cycle – production, distribution, maintenance.
- Week 10: Systems life cycle – evolution and agile methods.
- Week 11: Module review tutorial.
- Week 12: Exam preparation tutorial.
Learning and Teaching Methods
- Lectures and tutorial classes (30 hours) – Lectures will be used to introduce new ideas and give guidance on approaching practical work.
- Laboratory Sessions (30 hours) – support for learning C++ and practical implementation and assessment of project work.
- Independent Work (146 hours) – students are expected to spend 146 additional hours on self-study including understanding the notes, doing background and directed reading, practising C++ programming, completing assignments and project work, group meetings, and revision.
Learning and Teaching Materials
- Students will be provided with electronic copies of lecture powerpoint slides. These will be available on MOLE.
- Students will be provided with a summary sheet of each lecture, with space for taking notes. These will be provided on paper and electronically on MOLE.
- Online formative quizzes and tutorial sheets will be available electronically on MOLE. Problem exercises will be provided which will be representative of the understanding needed on the exam. Some sample solutions will be provided.
- Assignment briefings will be available electronically on MOLE and on paper.
- Group project (34%) (Module Learning Outcomes 1, 4)
- C++ programs (6%) – These will assess problem solving skills and fluency in C++ programming. (Module Learning Outcomes 2)
One 3 hour written examination (60%) (Module Learning Outcomes 1-3)
Students will have the opportunity to resit the exam in August. The module resit mark will be based on the resit exam plus the original assignment marks (this is due to the high percentage of coursework in this module).
- C++ practice labs – Lecturer and experienced demonstrators help the students with C++ problems, giving them feedback on their work and suggestions for improvement.
- C++ assessments – Lecture and experienced demonstrators mark programs, giving feedback and reasons for the marks, where appropriate suggesting better approaches for the future.
- Group project. All feedback and marks returned electronically. Individual marks will be derived from group marks, according to group members’ marking of the level of contribution of each group member, using WebPA.
- Requirements document – feedback and marks will be given by lecturer and by peers.
- Design document – feedback and marks will be given by lecturer and by peers.
- Implementation and test report – lecturer will mark and give detailed feedback.
- Discussions board and staff email are available in this module, and student queries may be answered by staff or by students (via the discussion board).
- A brief summary of how the class performed in the examination, both on the paper overall and on individual questions will be provided shortly after the examination board. Students will have the opportunity to view their exam scripts.
Students are encouraged to provide feedback during the module direct to the lecturer. Students will also have the opportunity to provide formal feedback via the Faculty of Engineering Student Evaluation Survey at the end of the module.
In response to last year’s student feedback, webPA will be used to support groupwork, in an attempt to expose those who do not contribute and reward (without overburdening) those who do.
- Weilkiens, T (2006). Systems Engineering with SysML/UML: Modelling, Analysis, Design. Morgan Kaufmann OMG Press, Heidelberg, Germany [available in Information Commons, 620.001171(W)]
- Blanchard, B and Fabrycky, W J (2006). Systems Engineering and Analysis (Fourth Edition). Prentice Hall, New Jersey, USA
- Kossiakoff, A and Sweet, W N (2003). Systems Engineering Principles and Practice. Wiley, New Jersey, Massachusetts, USA [available in Information Commons, 620.0011(S)]
- Sommerville, I (2007). Software Engineering. Pearson Education. England [available in Information Commons, 005.1(S)]
- Pfleeger, S L (2010). Software Engineering: Theory and Practice. 4th Edition, Pearson Prentice Hall. New Jersey [available in Information Commons, 005.1(P)]
- Dale, N and Weems, C (2010). Programming and Problem Solving with C++. Jones and Bartlett, USA [available in Information Commons, 005.133(C D)]