ITC515 Professional Programming Practice (8)

This subject explores and analyses the four main aspects of professional programming practice, namely: teamwork, version control, testing, and debugging. The subject establishes key concepts and techniques related to the production of quality software.

This subject explores teamwork and the issues surrounding online teams; the application of version control and testing techniques and best practices; and it analyses the principles and application of debugging.

No offerings have been identified for this subject in 2021.

Where differences exist between the Handbook and the SAL, the SAL should be taken as containing the correct subject offering details.

Subject Information

Grading System



One session


School of Computing and Mathematics

Enrolment Restrictions

Only available to postgraduate students

Assumed Knowledge

Programming knowledge similar to the level covered in ITC538.

Subject Relationships

ITC205 Similar Content

Incompatible Subjects


Learning Outcomes

Upon successful completion of this subject, students should:
  • be able to demonstrate autonomy, expert judgement, adaptability, and responsibility in applying specialised and technical knowledge and skills in the use of version control systems as part of professional programming practice;
  • be able to synthesise complex information regarding the purpose and limitations of software testing in order to generate, design and implement an appropriate suite of software tests to support the complete system development life cycle;
  • be able to critically analyse software programs and apply theories of debugging together with specialised and technical skills to generate solutions to complex debugging problems; and
  • be able to work effectively in a team environment.


This subject will cover the following topics:
  • Introduction and Overview: the need for quality software, quality frameworks, code standards
  • Teamwork as part of your professional programming practice
  • Version Control: basic principles and mechanisms of version control. Use of version control in team settings
  • Software Testing: testing throughout the software development life cycle. User acceptance, unit, integration, and system testing
  • Debugging: principles and techniques of scientific debugging

Indicative Assessment

The following table summarises the assessment tasks for the online offering of ITC515 in Session 2 2020. Please note this is a guide only. Assessment tasks are regularly updated and can also differ to suit the mode of study (online or on campus).

Item Number
Value %
Teamwork - version control
Teamwork - version control - static review
Dynamic testing

The information contained in the CSU Handbook was accurate at the date of publication: May 2021. The University reserves the right to vary the information at any time without notice.