SOFTWARE SYSTEMS ENGINEERING
Brief Course Description
This course examines software as an engineering discipline. It explains the importance of systems engineering and elaborates the related concepts of systems and modern engineering. The emphasis is on complex software systems, requiring a high degree of rigor and formality.
Course Objectives
The aims of this course are:
1. To introduce students to the systems engineering approach to software systems
2. To equip students with analytical skills so they can evaluate the factors leading up to system complication and complexity, the causes of a systems failure, the importance of stakeholders involvement in a systems engineering project and using input-output diagramming
3. To enable students appreciate the importance of systems engineering important as well as the difference between process science and engineering
4. To impart knowledge of a systems engineering project in terms of the balance of demands, choice and constraints
5. To equip students with an understanding of the lag involved in controlling a system as well as the differences between a generic model of systems engineering and a software specific model
Learning Outcomes
Upon successful completion of this course students will be able to:
1. Classify new software product developments as: fault correction, enhancements, new but similar products, radically different, revolutionary or iconoclastic products
2. Analyse the causes of a systems failure
3. Identify and evaluate the relationships of the factors leading up to system complication and complexity
4. Answer the question ‘why is systems engineering important?
5. Define the difference in process between science and engineering
6. Identify and analyse the importance of stakeholders involved in a systems engineering project
7. Classify a systems engineering project in terms of the balance of demands, choice and constraints;
8. Analyse a system using input-output diagramming
9. Estimate the lag involved in controlling a system
10. Evaluate the differences between a generic model of systems engineering and a software specific model