Skip to main content
Unit of study_

COMP9412: Agile Software Development Practices

This unit builds students skills to follow defined processes in software development, in particular, working in small teams in an agile approach. Content covers the underlying concepts and principles of software processes, their analysis, measurement and improvement. Students will practice with a variety of professional-strength tool support for the practices that ensure quality outcomes. The unit requires students to enter already skilled in individual programming; instead this unit focuses on the complexities in a team setting.

Code COMP9412
Academic unit Computer Science
Credit points 6
Prerequisites:
? 
None
Corequisites:
? 
None
Prohibitions:
? 
SOFT2412
Assumed knowledge:
? 
COMP9103 or COMP9003 (or equivalent UoS at a different institution)

At the completion of this unit, you should be able to:

  • LO1. demonstrate proficiency in agile and Scrum method in software development
  • LO2. use tools for collaborative processes (version control, issue tracking, collaborative editing of documents, project planning and progress tracking)
  • LO3. identify issues and challenges in estimating project effort, examine the characteristics of software projects that make them a challenge to partition and examine roles and responsibilities in a software team, and management issues of teams
  • LO4. understand good coding practices, including documentation, contracts, regression tests and daily builds
  • LO5. understand various quality assurance techniques, including unit testing, functional testing, and automated analysis tools
  • LO6. demonstrate a basic understanding of legal aspects of software
  • LO7. elicit requirements from a client and specify them
  • LO8. describe the phases of software development and life-cycle of software and compare alternative software process standards and presses (e.g. waterfall, incremental, spiral, prototyping, empirical and agile methods).
  • LO9. compare software process standards and presses (e.g. waterfall, incremental, spiral, prototyping, empirical and agile methods)
  • LO10. use tools for collaborative processes (version control, issue tracking, collaborative editing of documents, project planning and progress tracking)
  • LO11. use quality assurance techniques including unit testing, functional testing and automated analysis tools.

Unit outlines

Unit outlines will be available 2 weeks before the first day of teaching for the relevant session.