School of Computer Science The University of Adelaide Australia
Computer Science Home
Staff Only
text zoom: S | M | L

School of Computer Science
Level 4
Ingkarni Wardli Building
SA 5005

Telephone: +61 8 8313 4729
Facsimile: +61 8 8313 4366

You are here: Computer Science > Courses > Level-3 > sep


In this course students will be taught a wide range of software engineering theory and practice, and apply this knowledge to a year-long group based software engineering project.

The course will cover topics across the various stages of the software development lifecycle, including: requirements engineering; design; implementation; validation and verification; and maintenance. The course will expose the students to a variety of process models, including both traditional process models, as well as more recent developments, particularly in the area of agile process models. The course will teach the importance of good project management and planning, with particular emphasis on risk assessment and risk management.

The course will also introduce students to current trends in software engineering, including: component-based software engineering; web-based software engineering; and agile methods. The course also has a strong emphasis on the engineering of safety critical software systems. Here students are introduced to techniques for analysing possible hazards and accidents associated with safety critical systems, as well as techniques for mitigating against these hazards.

Students will be exposed to a variety of software engineering tools throughout the project, including tools for: project planning; software design; software implementation; software documentation; and software testing. Not only will the students learn the theory through a series of lectures in the first semester, but they will also apply what they have learnt to a year long group based project. Group projects in this 3rd year course will typically be done in teams of 4-6 students, with weekly contact with lecturing staff.

Course Outline

Topics covered in the course include:
  • Process models
  • Software quality and quality management
  • Project management
  • Requirements elicitation and requirements analysis
  • Software engineering tools
  • Cost estimation models
  • Reliability and testing
  • Modelling and architectures
  • Safety critical software systems
  • Ethics
  • Risk analysis and management
  • Component-based Software Engineering
  • Web-based Software Engineering

Student Evaluations

Course Offerings

North Tce, Adelaide