Faculty of Engineering

School of Computer Science

Bachelor of Advanced Computing (Software Development) (2023)


Note: This course version applies only to students first enrolling in 2023.
WARNING: This course version is currently under review and is subject to change.


1. Overview

Course: Bachelor of Advanced Computing (Software Development) (2023)
CP Required: 192
Min FT Duration: 4.00 Years
Min PT Duration: N/A
Faculty/School: School of Computer Science
Years Offered: 2024, 2023, 2022, 2021, 2020, 2019, 2018

2. Requirements

Award requirements

Bachelor of Advanced Computing

To qualify for the award of the Bachelor of Advanced Computing, a candidate must complete 192 credit points, comprising:

(a) 96 credit points of Bachelor of Advanced Computing core units of study as set out in Table A

(b) a major (48 credit points) from the list of approved IT majors specified in Table A

(c) At least 12 credit points of 4000-level or higher IT electives from Table A

(d) (Optionally) up to 12 credit points of units of study in the Open Learning Environment as listed in Table O in the Shared Pool for Undergraduate Degrees

(e) (Optionally) a minor of 36 credit points or a second major of 48 credit points as listed and specified in Table S in the Shared Pool for Undergraduate Degrees

(f) Where appropriate, elective units from the Bachelor of Advanced Computing Table A or Table S in the Shared Pool for Undergraduate Degrees

Bachelor of Computing

To qualify for the award of the Bachelor of Computing, a candidate must complete 144 credit points, comprising:

(a) 78 credit points of Bachelor of Computing core units of study as set out in Table A

(b) a major (48 credit points) from the list of approved IT majors specified in Table A

(c) (optionally) up to 12 credit points of units of study in the Open Learning Environment as listed in Table O in the Shared Pool for Undergraduate Degrees

(d) (optionally) a minor of 36 credit points as listed and specified in Table S in the Shared Pool for Undergraduate Degrees

(e) where appropriate, additional elective units from the Bachelor of Computing / Bachelor of Advanced Computing Table A, or Table S

Streams

The available streams in the Bachelor of Advanced Computing are:

• Dalyell

Achievement of the Dalyell stream requires:

(i) Completion of 12 credit points of Dalyell units as set out in Table S

(ii) Admission on the basis of ATAR or first year WAM as determined by the Board of Interdisciplinary Studies

(iii) Maintenance of the required WAM as determined by the Board of Interdisciplinary Studies

Majors

The available majors in this course are:

• Computer Science

• Computational Data Science

• Cybersecurity

• Software Development

Minors

The available minors in this course are:

• Computer Science

• Computational Data Science

• Cybersecurity

• Software Development

Honours

Entry into the Honours pathway is via application. Admission to the program requires a WAM of at least 65 and completion of at least one Table A major.

To be eligible for the award of Honours in the Bachelor of Advanced Computing, students must complete the Honours pathway comprising 24 credit points of research-related units.

3. Semesters

Year 0 - Planning your degree

Type CP CP From

Note: Important information

CUSP is used as a guide for students; however, it is not always able to be kept entirely up to date.

Along with this page, students should use the resources in the School of Computer Science Canvas page ( https://canvas.sydney.edu.au/courses/15961/pages/undergraduate?titleize=0)

This includes academic advising details and a link to FAQ’s specific to the Bachelor of Advanced Computing.

These resources will be particularly helpful for students who began their degree in Semester 2.

Year 1 - Semester 1

Type CP CP From
3 Select from MATH1021: Calculus of One Variable
6 Select from DATA1001: Foundations of Data Science
3 Select from MATH1002: Linear Algebra
6 Select from INFO1110: Introduction to Programming
6 Select from INFO1111: Computing 1A Professionalism

Note: From 2024, 3cp Math units are replaced by new 6cp units MATH1061 and MATH1062. Students who have not yet completed all 3cp Math units can use this interactive tool on Canvas for enrolment advice: https://canvas.sydney.edu.au/courses/2806/pages/mathematics-changes-in-2024

Year 1 - Semester 2

Type CP CP From
6 Select from MATH1064: Discrete Mathematics for Computation
6 Select from INFO1112: Computing 1B OS & Network Platforms
6 Select from ELEC1601: Introduction to Computer Systems
6 Select from INFO1113: Object-Oriented Programming

Year 2 - Semester 1

Type CP CP From
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from COMP2123: Data Structures & Algorithms
6 Select from INFO2222: Computing 2 Usability and Security

Note: COMP2123 may be replaced by advanced unit COMP2823.

Year 2 - Semester 2

Type CP CP From
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from SOFT2201: Software Construction and Design 1
6 Select from ISYS2120: Data & Information Management
6 Select from SOFT2412: Agile Software Development Practices

Year 3 - Semester 1

Type CP CP From
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from SOFT3202: Software Construction and Design 2
6 Select from INFO3333: Computing 3 Management

Year 3 - Semester 2

Type CP CP From
6 Select from SOFT3888: Software Development Project
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from INFO3315: Human-Computer Interaction


Note: Students enrolled prior to 2022 will be permitted to replace SOFT3410 with INFO3315 to count towards the Software Development major or minor.

Year 4 - Semester 1

Type CP CP From
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from Unit Block:
Adv. Electives
6 Select from INFO4001: Thesis A
6 Select from INFO4444: Computing 4 Innovation

Note: Students in the Honours pathway take INFO4911 and INFO4912 in place of INFO4001 and INFO4002, and INFO4990 in place of INFO4444. INFO4913 counts in place of a 4000+ level elective.

Entry into the Honours pathway is via application only.

Year 4 - Semester 2

Type CP CP From
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from Unit Block:
Table A Electives


Note: You may choose to complete a Table S major or Table S Electives instead.
6 Select from Unit Block:
Adv. Electives
6 Select from INFO4002: Thesis B

Note: Students in the Honours pathway take INFO4911 and INFO4912 in place of INFO4001 and INFO4002, and INFO4990 in place of INFO4444. INFO4913 counts in place of a 4000+ level elective.

Entry into the Honours pathway is via application only.

4. Pathways

Honours Pathway

Type CP CP From
Core
6 INFO4911: CS Research Thesis A
Core
6 INFO4912: CS Research Thesis B
Core
6 INFO4913: CS Research Thesis C
Core
6 INFO4990: IT Research Methods
Core
0 INFO4999: Computer Science Honours Result

Note: Entry into the Honours pathway is via application. Admission to the program requires a WAM of at least 65 and completion of at least one Table A major.

Students in the Honours pathway take INFO4911 and INFO4912 in place of INFO4001 and INFO4002, and INFO4990 in place of INFO4444. INFO4913 counts in place of a 4000+ level elective.

Major 2 in Computational Data Science

Type CP CP From
6 Select from COMP2123: Data Structures & Algorithms


Note: COMP2123 may be replaced by advanced unit COMP2823.
12 Select from COMP3027: Algorithm Design
COMP3308: Introduction to Artificial Intelligence
DATA3404: Data Science Platforms
DATA3406: Human-in-the-Loop Data Analytics


Note: Two units from this block to be taken in Semester 1 and/or Semester 2 of Year 3
6 Select from INFO1110: Introduction to Programming
6 Select from DATA1001: Foundations of Data Science
6 Select from DATA2002: Data Analytics: Learning from Data
6 Select from DATA2001: Data Science: Big Data and Data Diversity
6 Select from DATA3001: Data Science Capstone Project [not offered in 2020]

Note: Achievement of a minor in Computational Data Science requires 36 credit points from this table including:

(i) 2 1000-level core units DATA1001 and INFO1110.

(ii) 3 2000-level core units COMP2123, DATA2001 and DATA2002.

(iii) 1 3000-level selective unit from INFO3406 and COMP3308.

Major 2 in Computer Science

Type CP CP From
6 Select from COMP2123: Data Structures & Algorithms


Note: COMP2123 may be replaced by advanced unit COMP2823.
6 Select from INFO1113: Object-Oriented Programming
6 Select from INFO1110: Introduction to Programming
6 Select from COMP3027: Algorithm Design
6 Select from COMP2022: Models of Computation
6 Select from COMP3221: Distributed Systems
COMP3308: Introduction to Artificial Intelligence
COMP3419: Graphics and Multimedia
COMP3520: Operating Systems Internals
6 Select from COMP2017: Systems Programming
6 Select from COMP3888: Computer Science Project

Note: Achievement of a minor in Computer Science requires 36 credit points from this table including:

(i) 2 1000-level core units INFO1110 and INFO1113.

(ii) 3 2000-level core units COMP2123, COMP2017 and COMP2022.

(iii) 1 3000-level selective unit from COMP3221 or COMP3419.

Major 2 in Cybersecurity

Type CP CP From
6 Select from INFO1113: Object-Oriented Programming
6 Select from INFO1110: Introduction to Programming
6 Select from ISYS2120: Data & Information Management
6 Select from COMP2017: Systems Programming
6 Select from ELEC3506: Communications Networks
6 Select from COMP3221: Distributed Systems
6 Select from CSEC3616: Cybersecurity Engineering
6 Select from CSEC3888: Cybersecurity Project

Note: Achievement of a minor in Cybersecurity requires 36 credit points from this table including:

(i) 2 1000-level core units INFO1110 and INFO1113.

(ii) 2 2000-level core units COMP2017 and ISYS2120.

(iii) 2 3000-level core unit from CSEC3616 and ELEC3506.

5. Unit Blocks

Block 1 - Core (Min CP: 96,Max CP: 96)

Unit Code Unit Name CP Sessions Offered
COMP2123 Data Structures & Algorithms 6 Semester 1
Semester 2
DATA1001 Foundations of Data Science 6 Semester 1
Semester 2
ELEC1601 Introduction to Computer Systems 6 Semester 1
Semester 2
INFO1110 Introduction to Programming 6 Semester 1
Semester 2
INFO1111 Computing 1A Professionalism 6 Semester 1
INFO1112 Computing 1B OS & Network Platforms 6 Semester 2
INFO1113 Object-Oriented Programming 6 Semester 1
Semester 2
INFO2222 Computing 2 Usability and Security 6 Semester 1
INFO3333 Computing 3 Management 6 Semester 1
Semester 2
INFO4001 Thesis A 6 Semester 1
Semester 2
INFO4002 Thesis B 6 Semester 1
Semester 2
INFO4444 Computing 4 Innovation 6 Semester 1
ISYS2120 Data & Information Management 6 Semester 2
MATH1002 Linear Algebra 3 Semester 1
Semester 2
Summer Main
MATH1021 Calculus of One Variable 3 Semester 1
Semester 2
MATH1064 Discrete Mathematics for Computation 6 Semester 2
SOFT2412 Agile Software Development Practices 6 Semester 2

Block 2 - Adv. Electives

Unit Code Unit Name CP Sessions Offered
COMP4216 Mobile Computing 6 Semester 2
COMP4270 Randomised and Advanced Algorithms 6 Semester 2
COMP4313 Large Scale Networks 6 Semester 1
COMP4318 Machine Learning and Data Mining 6 Semester 1
Semester 2
COMP4328 Advanced Machine Learning 6 Semester 2
COMP4329 Deep Learning 6 Semester 1
COMP4338 Advanced Data Models 6 Semester 2
COMP4347 Web Application Development 6 Semester 1
COMP4348 Enterprise Scale Software Architecture 6 Semester 2
COMP4349 Cloud Computing 6 Semester 1
COMP4405 Digital Media Computing 6 Semester 1
COMP4415 Multimedia Design and Authoring 6 Semester 2
COMP4416 Advanced Network Technologies 6 Semester 2
COMP4424 Information Technology in Biomedicine 6 Semester 1
COMP4425 Multimedia Retrieval 6 Semester 1
COMP4426 Parallel and Distributed Computing 6 Semester 1
COMP4427 Usability Engineering 6 Semester 1
COMP4445 Computational Geometry 6 Semester 1
COMP4446 Natural Language Processing 6 Semester 1
COMP4447 Pervasive Computing 6 Semester 2
COMP4448 Visual Analytics 6 Semester 1
Semester 2
COMP4530 Discrete Optimisation 6 Semester 2
COMP4617 Empirical Security Analysis and Engineering 6 Semester 2
COMP4618 Applied Cybersecurity 6 Semester 2
DATA4207 Data Analysis in the Social Sciences 6 Semester 1
ELEC5306 Video Intelligence and Compression 6 Semester 1
ELEC5307 Advanced Signal Processing with Deep Learning 6 Semester 2
ELEC5508 Wireless Engineering 6 Semester 2
ELEC5509 Mobile Networks 6 Semester 1
ELEC5514 Networked Embedded Systems 6 Semester 2
ELEC5616 Computer and Network Security 6 Semester 1
ELEC5618 Software Quality Engineering 6 Semester 1
ELEC5619 Object Oriented Application Frameworks 6 Semester 2
ELEC5620 Model Based Software Engineering 6 Semester 2
HTIN4003 Health Technology Evaluation 6 Semester 2
HTIN4005 Applied Healthcare Data Science 6 Semester 2
HTIN4006 Foundations of Healthcare Data Science 6 Semester 1
INFO4406 Enterprise Healthcare Information Systems 6 Semester 2
INFO4491 Services Science Management and Engineering 6 Semester 2
ISYS4050 Knowledge Management Systems 6 Semester 1
ISYS5070 Change Management in IT 6 Int January
Int July

Block 3 - Table A Electives

Unit Code Unit Name CP Sessions Offered
COMP2017 Systems Programming 6 Semester 1
COMP2022 Models of Computation 6 Semester 2
COMP2922 Models of Computation (Adv) 6 Semester 2
COMP3027 Algorithm Design 6 Semester 1
COMP3109 Programming Languages and Paradigms 6 Semester 2
COMP3221 Distributed Systems 6 Semester 1
COMP3308 Introduction to Artificial Intelligence 6 Semester 1
COMP3419 Graphics and Multimedia 6 Semester 2
COMP3520 Operating Systems Internals 6 Semester 2
COMP3608 Introduction to Artificial Intelligence (Adv) 6 Semester 1
COMP3888 Computer Science Project 6 Semester 2
COMP3927 Algorithm Design (Adv) 6 Semester 1
COMP3988 Computer Science Project (Advanced) 6 Semester 2
DATA2001 Data Science: Big Data and Data Diversity 6 Semester 1
DATA2002 Data Analytics: Learning from Data 6 Semester 2
DATA2901 Big Data and Data Diversity (Advanced) 6 Semester 1
DATA3001 Data Science Capstone Project [not offered in 2020] 6 Semester 1
DATA3404 Data Science Platforms 6 Semester 1
DATA3406 Human-in-the-Loop Data Analytics 6 Semester 2
INFO1911 IT Special Project 1A 6 Semester 1
Int July
INFO1912 IT Special Project 1B 6 Semester 2
Int July
INFO2150 Introduction to Health Data Science 6 Semester 2
INFO2911 IT Special Project 2A 6 Semester 1
Int July
INFO2912 IT Special Project 2B 6 Semester 2
Int July
INFO3315 Human-Computer Interaction 6 Semester 2
INFO3616 Principles of Security and Security Engineering 6 Semester 2
INFO3911 IT Special Project 3A 6 Semester 1
Int July
INFO3912 IT Special Project 3B 6 Semester 2
Int July
ISYS2110 Analysis & Design of Web Information Systems 6 Semester 1
ISYS2160 Information Systems in the Internet Age 6 Semester 2
ISYS3401 Information Technology Evaluation 6 Semester 1
ISYS3402 Decision Analytics & Support Systems [not running in 2019] 6 Semester 2
ISYS3888 Information Systems Project 6 Semester 2
SOFT2201 Software Construction and Design 1 6 Semester 2
SOFT3202 Software Construction and Design 2 6 Semester 1
SOFT3410 Concurrency for Software Development 6 Semester 2
SOFT3888 Software Development Project 6 Semester 2

Block 4 - Required for Computer Science Major

Unit Code Unit Name CP Sessions Offered
COMP2017 Systems Programming 6 Semester 1
COMP2022 Models of Computation 6 Semester 2
COMP3027 Algorithm Design 6 Semester 1
COMP3221 Distributed Systems 6 Semester 1
COMP3308 Introduction to Artificial Intelligence 6 Semester 1
COMP3419 Graphics and Multimedia 6 Semester 2
COMP3520 Operating Systems Internals 6 Semester 2
COMP3888 Computer Science Project 6 Semester 2

Note: COMP2823, COMP2922, COMP3608 and COMP3988 may be taken as advanced alternatives to COMP2123, COMP2022, COMP3308 and COMP3888 respectively.

Block 5 - Required for Cybersecurity Major

Unit Code Unit Name CP Sessions Offered
COMP2017 Systems Programming 6 Semester 1
COMP3221 Distributed Systems 6 Semester 1
CSEC3616 Cybersecurity Engineering 6 Semester 2
CSEC3888 Cybersecurity Project 6 Semester 2
ELEC3506 Communications Networks 6 Semester 2
ISYS2120 Data & Information Management 6 Semester 2

Block 6 - Required for Software Development Major

Unit Code Unit Name CP Sessions Offered
INFO3315 Human-Computer Interaction 6 Semester 2
SOFT2201 Software Construction and Design 1 6 Semester 2
SOFT2412 Agile Software Development Practices 6 Semester 2
SOFT3202 Software Construction and Design 2 6 Semester 1
SOFT3888 Software Development Project 6 Semester 2

Block 7 - Required for Computational Data Science Major

Unit Code Unit Name CP Sessions Offered
COMP3027 Algorithm Design 6 Semester 1
COMP3308 Introduction to Artificial Intelligence 6 Semester 1
COMP3608 Introduction to Artificial Intelligence (Adv) 6 Semester 1
COMP3927 Algorithm Design (Adv) 6 Semester 1
DATA2001 Data Science: Big Data and Data Diversity 6 Semester 1
DATA2002 Data Analytics: Learning from Data 6 Semester 2
DATA2901 Big Data and Data Diversity (Advanced) 6 Semester 1
DATA3001 Data Science Capstone Project [not offered in 2020] 6 Semester 1
DATA3404 Data Science Platforms 6 Semester 1
DATA3406 Human-in-the-Loop Data Analytics 6 Semester 2

Note: COMP3927 and COMP3608 may be taken as advanced alternatives to COMP3027 and COMP3308 respectively

Block 8 - Honours Pathway core units (Min CP: 24,Max CP: 24)

Unit Code Unit Name CP Sessions Offered
INFO4911 CS Research Thesis A 6 Semester 1
Semester 2
INFO4912 CS Research Thesis B 6 Semester 1
Semester 2
INFO4913 CS Research Thesis C 6 Semester 1
Semester 2
INFO4990 IT Research Methods 6 Semester 1
Semester 2
INFO4999 Computer Science Honours Result 0 Semester 1
Semester 2

Note: Students in the Honours pathway take INFO4911 and INFO4912 in place of INFO4001 and INFO4002, and INFO4990 in place of INFO4444. INFO4913 counts in place of a 4000+ level elective.