University of Sydney Handbooks - 2018 Archive

Download full 2018 archive Page archived at: Fri, 21 Sep 2018 05:39:45 +0000

Software Development

The School of Information Technologies aims to teach fundamental principles and practical skills in IT, and to establish the foundations for an entire career. Units of study in Software Development major are available at standard and advanced level.

About the major

A major in software development provides the understanding and skill that allow a team to reliably produce high-quality working software that meets client needs. From a foundation of individual programming skill, you will learn the theory and practices involved in determining requirements, designing software solutions, and delivering the outcomes.

Requirements for completion
  • 12 credit points of 1000-level core units of study;
  • 18 credit points of 2000-level core units of study;
  • 18 credit points of 3000-level core units of study, including 1 interdisciplinary project unit.

A minor in Software Development is available and articulates to this major.

Pathway through the major

The requirements for a major/minor in Software Development are spread out over three years of the degree (possibly four years if students are completing a combined Bachelor of Advanced Studies degree).

A sample pathway for the Software Development major (over three years of a degree) is listed below.

Sample pathway - Software Development major (48 credit points)

Year Session Units of study
First Semester 1 Core: INFO1110 Introduction to Programming
Semester 2
Core: INFO1113 Object-Oriented Programming
Second Semester 1 Core: COMP2123 Data Structures and Algorithms
Semester 2
Core: SOFT2201 Software Construction and Design 1 Core: SOFT2412 Agile Software Development Practices
Third Semester 1 Core: SOFT3202 Software Construction and Design 2
Semester 2
Core: SOFT3410 Concurrency for Software Development Core: SOFT3413 Software Development Project 

Please Note. This sample progression is meant as an example only. Depending on unit prerequisites, students may be able to complete these units in a different sequence to that displayed in the table above.

For details of the core and selective units of study required for the major or minor please refer to the Software Development section of the unit of study table, Table S, in this handbook.

Fourth year

The fourth year is only offered within the combined Bachelor of Science/Bachelor of Advanced Studies course.

Advanced Coursework
The Bachelor of Advanced Studies advanced coursework option consists of 48 credit points, which must include a minimum of 24 credit points in a single subject area at 4000-level, including a project unit of study worth at least 12 credit points. Space is provided for 12 credit points towards the second major (if not already completed). 24 credit points of advanced study will be included in the table for 2020.

Requirements for Honours in the area of Software Development: completion of 24 credit points of project work and 24 credit points of coursework.

Honours units of study will be available in 2020.

Contact and further information

Website: School of Information Technologies

T +61 2 9351 3423
School of Information Technologies J12
University of Sydney
NSW 2006

Program Coordinator
Dr Josiah Poon
T +61 2 9351 7185
Learning Outcomes
  1. Students can work effectively as a software developers in a medium-scale team.
  2. Individually and as a team, students can interact with clients to determine software requirements.
  3. Individually and as a team, students are able to produce usable software artefacts that meet users’ requirements.
  4. Individually and as a team, students are able to follow and apply process to ensure the delivery of quality artefacts within resource constraints.
  5. Students learn to use and apply contemporary software development tools and practices.
  6. Students learn to structure software well on small and medium scale.
  7. Students can learn new tools, languages, processes and technologies as they arise.
  8. Students learn to evaluate software (own & others).
  9. Students are made aware of diversity of programming paradigms and platforms.
  10. Students are able to apply foundational computer science knowledge of algorithms and data structures.