Software Development Practice

Undergraduate | 2026

Course page banner
Mode icon
Mode
Mode
Your studies will be on-campus, and may include some online delivery
On campus
area/catalogue icon
Area/Catalogue
COMP 2021
Course ID icon
Course ID
200100
Campus icon
Campus
Mawson Lakes, Adelaide City Campus East
Level of study
Level of study
Undergraduate
Unit value icon
Unit value
6
Course owner
Course owner
School of Comp Sc & IT
Course level icon
Course level
2
Work Integrated Learning course
Work Integrated Learning course
No
Study abroad and student exchange icon
Inbound study abroad and exchange
Inbound study abroad and exchange
The fee you pay will depend on the number and type of courses you study.
Yes
University-wide elective icon
University-wide elective course
Yes
Single course enrollment
Single course enrolment
Yes

Course overview

This course enables students to leverage their object-oriented programming skills to use existing data structures and algorithms to solve problems. Students will be equipped to apply object-oriented programming techniques including inheritance, polymorphism, the use of data structures, collection classes, selecting data structures, and code quality practices refactoring. Through practical exercises students will have an opportunity to select the optimal data structure to manage data within their programs and use the right algorithms to use the data.


  • Introduction to the C# Language and Environment
  • Classes, Methods, and Properties
  • Inheritance and Polymorphism
  • Debugging, Refactoring and Coding Standards
  • Arrays and Linked Lists
  • Stacks and Queues
  • Trees and Heaps
  • Hash Tables
  • Complexity Analysis
  • Graphs and Applications

Course learning outcomes

  • Design, implement, test, and debug maintainable object-oriented programs.
  • Explain and apply the fundamental data structures (arrays, lists, stacks, queues, trees, heaps, hash tables, graphs) using built in libraries.
  • Analyse the performance of simple algorithms and data structure operations using Big O notation, and make informed choices about trade-offs.
  • Use C# collection classes and library algorithms to solve practical software problems.
  • Apply coding standards, refactoring, and documentation practices to produce professional quality code.
  • Demonstrate readiness for implementing data structures and algorithms in a lower-level language, including concepts of typing, memory awareness, and performance reasoning.

Prerequisite(s)

  • must have completed COMP1005 Object-Oriented Programming

Corequisite(s)

N/A

Antirequisite(s)

N/A

Fee calculator

To display course fees, please select your status and program below:

Study Abroad student tuition fees are available here.

Only some Postgraduate Coursework programs are available as Commonwealth Supported. Please check your program for specific fee information.

If you are studying in a Professional Pathway Psychology, Clinical Psychology or Social Work program, please refer to the Student Contributions amounts published here.

The Student Contribution amount displayed below is for students commencing a new program from 2021 onwards. If you are continuing in a program you commenced prior to 1 January 2021, or are commencing an Honours degree relating to an undergraduate degree you commenced prior to 1 January 2021, you may be charged a different Student Contribution amount from the amount displayed below. Please check the Student Contribution bands for continuing students here. If you are an international student, or a domestic student studying in a full fee paying place, and are continuing study that you commenced in 2025 or earlier, your fees will be available here before enrolments open for 2026.