• Offered by Research School of Computer Science
  • ANU College ANU College of Engineering and Computer Science
  • Course subject Computer Science
  • Academic career UGRD
  • Mode of delivery In Person
  • Co-taught Course

This course builds upon COMP2100 /COMP2500 by addressing the requirements, architecture and design phases of the software development life-cycle. It has a primary focus on modeling and its central role in eliciting, understanding, analysing and communicating software requirements, architecture and design. Students will learn to use several different modeling approaches to describe complex subject matters typically involved in developing, analysing and specifying requirements, architecture and design. While most of the approaches will seem straight forward and even conceptually simple, students will discover that a good deal of effort and diligence is required to produce useful, accurate, meaningful, understandable and easily maintainable models. Through a series of practical workshops, students will develop an appreciation for the characteristics and capabilities of each approach, and will learn to make decisions as to the best approach to use for a given purpose. Students will then learn how to integrate several modeling approaches to form software requirements, architecture and design specifications that are unambiguous, consistent and understandable. At the end of the course, students will be introduced to various approaches for automating the translation of specifications (models) into operational software systems. This will include topics such as model translation, code generation and an overview of active research in the area of model-driven engineering.

Learning Outcomes

Upon successful completion, students will have the knowledge and skills to:

Upon completion of this course, the student will be able to:

  1. explain the activities involved in requirements engineering.
  2. describe a range of software quality attributes, explain the relationship between software architecture and software quality attributes, and describe various architectural styles and how they support particular software quality attributes.
  3. explain the role and importance of modelling in software requirements, architecture and design activities.
  4. demonstrate the practical application of several modeling languages, and make and defend decisions regarding the use of appropriate modelling languages for a given purpose.
  5. integrate a set of models to form effective requirements, architecture and design specifications.
  6. describe concepts involved in model translation and demonstrate the translation of a simple specification to form an executable program.
  7. explain and analyse emerging model-driven development techniques.
Professional Skills Mapping
Mapping of Learning Outcomes to Assessment and Professional Competencies

Indicative Assessment

Workshops (30%), Mid-Semester Exam (30%); Final Exam (40%).

In response to COVID-19: Please note that Semester 2 Class Summary information (available under the classes tab) is as up to date as possible. Changes to Class Summaries not captured by this publication will be available to enrolled students via Wattle. 

The ANU uses Turnitin to enhance student citation and referencing techniques, and to assess assignment submissions as a component of the University's approach to managing Academic Integrity. While the use of Turnitin is not mandatory, the ANU highly recommends Turnitin is used by both teaching staff and students. For additional information regarding Turnitin please visit the ANU Online website.


Twelve two-hour lectures, twelve one-hour lectures, and four two-hour tutorials. Mid-semester exam. Self-study is also expected, with an approximate 120 hours of work for the course

Requisite and Incompatibility

To enrol in this course you must have completed COMP2100 or COMP2500 or INFS2024 and 6 units of 1000-level Math courses. You are not able to enrol in this course if you have successfully completed COMP3110 or COMP6311

Prescribed Texts

There are no prescribed textbooks for this course, but the following book covers many of the concepts addressed in the course.

Mellor, Stephen J. & Balcer, Marc J. Executable UML - A foundation for Model-Driven Architecture, (2002). Additional references will posted as appropriate on the course web page.


Tuition fees are for the academic year indicated at the top of the page.  

If you are a domestic graduate coursework or international student you will be required to pay tuition fees. Tuition fees are indexed annually. Further information for domestic and international students about tuition and other fees can be found at Fees.

Student Contribution Band:
Unit value:
6 units

If you are an undergraduate student and have been offered a Commonwealth supported place, your fees are set by the Australian Government for each course. At ANU 1 EFTSL is 48 units (normally 8 x 6-unit courses). You can find your student contribution amount for each course at Fees.  Where there is a unit range displayed for this course, not all unit options below may be available.

6.00 0.12500
Domestic fee paying students
Year Fee
2020 $4320
International fee paying students
Year Fee
2020 $5760
Note: Please note that fee information is for current year only.

Offerings, Dates and Class Summary Links

There are no current offerings for this course.

Responsible Officer: Registrar, Student Administration / Page Contact: Website Administrator / Frequently Asked Questions