COMP6120 Software Engineering
S26 units6000-level
Real-world software development is a complex and dynamic activity involving people, technology and processes interacting within a complex environment of clients, users and other stakeholders while being observant of technological, physical, social, legal, and ethical constraints. This course will empower students with the ability and confidence necessary to exercise critical thinking and professional judgment to select and apply appropriate knowledge, practices and tools to the development of non-trivial software systems. This will be achieved by introducing students to important design methodologies. We will build on previous programming courses to deepen and broaden students' knowledge and understanding of the practices and tools used to build large software systems within complex environments. We will use real-world examples such as distributed, high-integrity, web-based systems where rigorous software engineering can demonstrably enhance business value. Students will learn how practices and tools can be adapted to suit specific project needs and contexts. Knowledge, practices and tools considered in this course will include process models, requirements engineering, design, modelling and user experience. Software engineering design methodologies evolve over time. In this course, students will study the details of one or more design methodologies and critically assess their applicability to modern software systems.
- 2024S2
- 2025S2
- 2026S2
- 2027S2
Prerequisites in 2026
Read automatically from the handbook's wording
Incompatible with COMP2120: you can't count both.
The handbook's original wording (2024–2027)
To enrol in this course you must have successfully completed or be currently studying COMP6442 or COMP2100 . Incompatible with COMP2120 .
What it leads to in 2026
These courses name COMP6120 in their 2026 prerequisites: