Faculty of Engineering

Software / Science (2025)


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


1. Overview

Course: Software / Science (2025)
CP Required: 240
Min FT Duration: 5.00 Years
Min PT Duration: N/A
Faculty/School: Faculty of Engineering
Years Offered: 2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015

2. Requirements

Summary

In summary the requirements are:

Students must complete 240 credit points as follows:

Engineering (168 credit points):

► 6 credit points of Introductory Computing units table

► 12 credit points of Foundation Mathematics units table

► 30 credit points of Project table

► The Professional Engagement Program (PEP) comprising ENGP1001 (0cp), ENGP1002 (0cp), ENGP1003 (0cp), ENGP2001 (0cp), ENGP2002 (0cp), ENGP2003 (0cp), ENGP3001 (0cp) and ENGP3002 (0cp)

► 90 credit points of Software Stream core units

► 30 credit points of Software Stream electives, including:

- 18 credit points maximum level 1000/2000 electives

- 12 credit points minimum level 3000+ electives

The completion of a specialisation is not mandatory. If a student chooses to do a specialisation it must be completed within the 168 credit points outlined above. Specialisations are listed in the 'Majors/Pathways' tab.

Science (ˆ84 credit points)

► *12 credit points of Science degree core units (12 cp of MATH1XXX in Engineering Core meets this requirement)

► *48 credit points of Table A major

► 6 credit points of OLE units

► 18 credit points of electives from Science Table A or Table S

* The Science degree core units comprise 12 cp of MATH1XXX units and 12cp of 1000-level units from Table A. The 1000-level units from the Table A major count towards Science degree core requirement. If you are taking a Mathematics major, you must complete 12 cp of other 1000-level Science Table A units.

ˆ With Math units taken as part of the Engineering component, students enrol in 72 cp of Science units in total.

Dalyell Scholars Program

Students in the Dalyell Scholars program can review the Dalyell Canvas page for information on fitting the program into their degree:

https://canvas.sydney.edu.au/courses/7156/pages/enrolment-options-for-dalyell-scholars

Advanced units in Maths and Science

Most units of study offered by the Science Faculty on the list of core requirements can be replaced by an equivalent advanced level unit; subject to prerequisite conditions (as required by the Faculty of Science) being met. Students considering doing advanced options should seek advice from their school before enrolling.

Faculty Resolutions

Details of relevant Faculty resolutions are available via the university handbook site at: http://sydney.edu.au/handbooks/

3. Semesters

Year 1 - Semester 1

Type CP CP From
0 Select from ENGP1001: Professional Engagement Program 1A


Note: All students must enrol in ENGP1001 in their first semester of enrolment.
6 Select from INFO1110: Introduction to Programming
6 Select from ELEC1005: Introduction to Software Engineering
6 Select from Unit Block:
Science Units
6 Select from MATH1061: Mathematics 1A

Note: MATH1061 may be replaced by advanced unit MATH1961, subject to prerequisite conditions being met. Students should seek advice from their school before enrolling.

Year 1 - Semester 2

Type CP CP From
0 Select from ENGP1002: Professional Engagement Program 1B
6 Select from INFO1113: Object-Oriented Programming
6 Select from ELEC1601: Introduction to Computer Systems
6 Select from Unit Block:
Science Units
6 Select from MATH1062: Mathematics 1B

Note: MATH1062 may be replaced by advanced unit MATH1962.

Year 2 - Semester 1

Type CP CP From
6 Select from ISYS2110: Analysis & Design of Web Information Systems
6 Select from COMP2123: Data Structures & Algorithms
6 Select from MATH2069: Discrete Mathematics and Graph Theory
0 Select from ENGP1003: Professional Engagement Program 1C
6 Select from Unit Block:
Science Units

Year 2 - Semester 2

Type CP CP From
6 Select from SOFT2412: Agile Software Development Practices
6 Select from ISYS2120: Data & Information Management
6 Select from SOFT2201: Software Construction and Design 1
0 Select from ENGP2001: Professional Engagement Program 2A
6 Select from Unit Block:
Science Units

Year 3 - Semester 1

Type CP CP From
0 Select from ENGP2002: Professional Engagement Program 2B
6 Select from COMP2017: Systems Programming
6 Select from SOFT3202: Software Construction and Design 2
6 Select from ENGG2112: Multi-disciplinary Engineering
6 Select from Unit Block:
Science Units

Year 3 - Semester 2

Type CP CP From
6 Select from SOFT3888: Software Development Project
6 Select from INFO3616: Principles of Security and Security Engineering
6 Select from ELEC3609: Internet Software Platforms
0 Select from ENGP2003: Professional Engagement Program 2C
6 Select from Unit Block:
Science Units

Year 4 - Semester 1

Type CP CP From
0 Select from ENGP3001: Professional Engagement Program 3A
6 Select from ENGG3112: Interdisciplinary Engineering
6 Select from ELEC5618: Software Quality Engineering
List
6 Select from Unit Blocks:
Software Stream 1000/2000 Level Electives
Software Stream 3000+ Level Electives
6 Select from Unit Block:
Science Units

Year 4 - Semester 2

Type CP CP From
0 Select from ENGP3002: Professional Engagement Program 3B
6 Select from ELEC5619: Object Oriented Application Frameworks
List
6 Select from Unit Blocks:
Software Stream 1000/2000 Level Electives
Software Stream 3000+ Level Electives
12 Select from Unit Block:
Science Units

Year 5 - Semester 1

Type CP CP From
6 Select from ELEC4712: Thesis A
List
6 Select from Unit Blocks:
Software Stream 1000/2000 Level Electives
Software Stream 3000+ Level Electives
12 Select from Unit Block:
Science Units

Year 5 - Semester 2

Type CP CP From
6 Select from ELEC4713: Thesis B
12 Select from Unit Block:
Software Stream 3000+ Level Electives
6 Select from Unit Block:
Science Units

4. Pathways

1. Stream Specialisation in Computer Engineering

Type CP CP From
24 Select from ELEC2602: Digital Logic
ELEC3506: Communications Networks
ELEC3607: Embedded Systems
ELEC3608: Computer Architecture
6 Select from COMP3520: Operating Systems Internals
ELEC3104: Engineering Electromagnetics
ELEC3304: Control
ELEC3305: Digital Signal Processing
ELEC3404: Electronic Circuit Design
ELEC3702: Management for Engineers
ELEC5405: Building Microchips: From Theory to Practice

2. Stream Specialisation in Engineering Data Science

Type CP CP From
18 Select from DATA2001: Data Science: Big Data and Data Diversity
DATA2002: Data Analytics: Learning from Data
DATA2901: Big Data and Data Diversity (Advanced)
DATA2902: Data Analytics: Learning from Data (Adv)
STAT2011: Probability and Estimation Theory
STAT2911: Probability and Statistical Models (Adv)
12 Select from COMP3308: Introduction to Artificial Intelligence
COMP3608: Introduction to Artificial Intelligence (Adv)
DATA3404: Scalable Data Management
DATA3406: Human-in-the-Loop Data Analytics

3. Stream Specialisation in Intelligent Information Systems

Type CP CP From
24 Select from ELEC3506: Communications Networks
ELEC5304: Intelligent Visual Signal Understanding
ELEC5307: Advanced Signal Processing with Deep Learning
ELEC5622: Signals, Software and Health
6 Select from ELEC3305: Digital Signal Processing
ELEC5305: Acoustics, Speech and Signal Processing
ELEC5306: Video Intelligence and Compression
ELEC5308: Intelligent Information Engineering Practice
ELEC5516: Electrical and Optical Sensor Design
ELEC5517: Software Defined Networks
ELEC5701: Technology Venture Creation [not offered in 2021]

4. Stream Specialisation in Internet of Things

Type CP CP From
24 Select from ELEC3506: Communications Networks
ELEC5514: IoT Wireless Sensing and Networking
ELEC5517: Software Defined Networks
ELEC5518: IoT for Critical Infrastructures
6 Select from COMP4216: Mobile Computing
COMP4426: Parallel and Distributed Computing
COMP4447: Pervasive Computing
ELEC5208: Intelligent Electricity Networks
ELEC5508: Wireless Engineering
ELEC5509: Mobile Networks
ELEC5616: Computer and Network Security
ELEC5760: Intelligent Networked Control

5. Unit Blocks

Block 0 - Introductory Computing Units (Min CP: 6,Max CP: 6)

Unit Code Unit Name CP Sessions Offered
ENGG1810 Introduction to Engineering Computing 6 Semester 1
Semester 2
Int February
INFO1110 Introduction to Programming 6 Semester 1
Semester 2
INFO1910 Introduction to Programming (Advanced) 6 Semester 1
Semester 2

Note: Students must complete:

-6cp from ENGG1810 or (INFO1110 or INFO1910). For Software stream students it is recommended that INFO1110 is taken.

Block 1 - Foundation Mathematics Units (Min CP: 12,Max CP: 12)

Unit Code Unit Name CP Sessions Offered
MATH1061 Mathematics 1A 6 Semester 1
Semester 2
MATH1062 Mathematics 1B 6 Semester 1
Semester 2
MATH1961 Mathematics 1A (Advanced) 6 Semester 1
MATH1962 Mathematics 1B (Advanced) 6 Semester 2

Block 2 - Project Table (Min CP: 30,Max CP: 30)

Unit Code Unit Name CP Sessions Offered
AERO1560 Introduction to Aerospace Engineering 6 Semester 1
BMET1960 Biomedical Engineering 1A 6 Semester 1
CHNG1108 Introduction to Chemical Engineering 6 Semester 1
CIVL1900 Introduction to Civil Engineering 6 Semester 1
ELEC1004 Practical Introduction to Electrical Engineering 6 Semester 1
ELEC1005 Introduction to Software Engineering 6 Semester 1
ELEC4712 Thesis A 6 Semester 1
Semester 2
ELEC4713 Thesis B 6 Semester 1
Semester 2
ENGG1800 Introduction to Engineering A 6 Semester 1
ENGG2112 Multi-disciplinary Engineering 6 Semester 1
Semester 2
ENGG3112 Interdisciplinary Engineering 6 Semester 1
Semester 2
MECH1560 Introduction to Mechanical Engineering 6 Semester 1
MTRX1701 Introduction to Mechatronic Engineering 6 Semester 1

Note: - Students are to select the introduction unit relevant to their stream.

- Students are to select the thesis units relevant to their stream. Aeronautical, Mechanical and Mechatronic students are to enrol in the AMME coded units. Students in both Electrical and Software are to enrol in the ELEC coded units.

Block 3 - Professional Engagement Program (PEP) Units

Unit Code Unit Name CP Sessions Offered
ENGP1001 Professional Engagement Program 1A 0 Semester 1
Semester 2
ENGP1002 Professional Engagement Program 1B 0 Semester 1
Semester 2
ENGP1003 Professional Engagement Program 1C 0 Semester 1
Semester 2
ENGP2001 Professional Engagement Program 2A 0 Semester 1
Semester 2
ENGP2002 Professional Engagement Program 2B 0 Semester 1
Semester 2
ENGP2003 Professional Engagement Program 2C 0 Semester 1
Semester 2
ENGP3001 Professional Engagement Program 3A 0 Semester 1
Semester 2
ENGP3002 Professional Engagement Program 3B 0 Semester 1
Semester 2

Note: -Candidates for the Bachelor of Engineering Honours must complete the Professional Engagement Program units of study.

- Candidates must enrol in ENGP1001 in their first semester of study

Block 4 - Software Stream Core (Min CP: 90,Max CP: 90)

Unit Code Unit Name CP Sessions Offered
COMP2017 Systems Programming 6 Semester 1
COMP2123 Data Structures & Algorithms 6 Semester 1
Semester 2
COMP2823 Data Structures & Algorithms (Adv) 6 Semester 1
ELEC1601 Introduction to Computer Systems 6 Semester 1
Semester 2
ELEC3609 Internet Software Platforms 6 Semester 2
ELEC5618 Software Quality Engineering 6 Semester 1
ELEC5619 Object Oriented Application Frameworks 6 Semester 2
INFO1113 Object-Oriented Programming 6 Semester 1
Semester 2
INFO3616 Principles of Security and Security Engineering 6 Semester 2
ISYS2110 Analysis & Design of Web Information Systems 6 Semester 1
ISYS2120 Data & Information Management 6 Semester 2
MATH2069 Discrete Mathematics and Graph Theory 6 Semester 1
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 5 - Software Stream 1000/2000 Level Electives (Max CP: 18)

Unit Code Unit Name CP Sessions Offered
BUSS1030 Accounting, Business and Society 6 Semester 1
Semester 2
COMP2022 Models of Computation 6 Semester 2
COMP2922 Models of Computation (Adv) 6 Semester 2
DATA1002 Informatics: Data and Computation 6 Semester 2
DATA1902 Informatics: Data and Computation (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
DATA2902 Data Analytics: Learning from Data (Adv) 6 Semester 2
ELEC2100 Fundamentals of Elec and Electronic Eng 6 Semester 1
ELEC2103 Simulation and Numerical Solutions in Engineering 6 Semester 2
ELEC2104 Electronic Devices and Circuits 6 Semester 2
ELEC2302 Signals and Systems 6 Semester 2
ELEC2602 Digital Logic 6 Semester 1
ISYS2160 Information Systems in the Internet Age 6 Semester 2
MATH2061 Linear Mathematics and Vector Calculus 6 Semester 1
Summer Main
MKTG1001 Marketing Principles 6 Semester 1
Semester 2
PHYS1001 Physics 1 (Regular) 6 Semester 1
PHYS1003 Physics 1 (Technological) 6 Semester 2
PHYS2213 Physics 2EE 6 Semester 2
STAT2011 Probability and Estimation Theory 6 Semester 1
STAT2911 Probability and Statistical Models (Adv) 6 Semester 1

Block 6 - Software Stream 3000+ Level Electives (Min CP: 12,Max CP: 30)

Unit Code Unit Name CP Sessions Offered
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
COMP3530 Discrete Optimization 6 Semester 2
COMP3608 Introduction to Artificial Intelligence (Adv) 6 Semester 1
COMP3927 Algorithm Design (Adv) 6 Semester 1
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
DATA3404 Scalable Data Management 6 Semester 1
DATA3406 Human-in-the-Loop Data Analytics 6 Semester 2
DATA4207 Data Analysis in the Social Sciences 6 Semester 1
ELEC3104 Engineering Electromagnetics 6 Semester 1
ELEC3203 Electricity Networks 6 Semester 1
ELEC3204 Power Electronics and Applications 6 Semester 1
ELEC3206 Electrical Energy Conversion Systems 6 Semester 2
ELEC3304 Control 6 Semester 2
ELEC3305 Digital Signal Processing 6 Semester 1
ELEC3404 Electronic Circuit Design 6 Semester 1
ELEC3405 Communications Electronics and Photonics 6 Semester 2
ELEC3505 Communications 6 Semester 1
ELEC3506 Communications Networks 6 Semester 2
ELEC3607 Embedded Systems 6 Semester 1
ELEC3608 Computer Architecture 6 Semester 2
ELEC3610 E-Business Analysis and Design 6 Semester 1
ELEC3612 Pattern Recognition and Machine Intelligence 6 Semester 1
ELEC3702 Management for Engineers 6 Semester 2
ELEC3802 Fundamentals of Biomedical Engineering 6 Semester 1
ELEC3803 Bioelectronics [not offered in 2021] 6 Semester 2
ELEC4505 Digital Communication Systems 6 Semester 1
ELEC4714 Major Industrial Project 24 Semester 1
Semester 2
ELEC5101 Antennas and Propagation 6 Semester 2
ELEC5203 Topics in Power Engineering [not offered in 2021] 6 Semester 2
ELEC5204 Power Systems Analysis and Protection 6 Semester 1
ELEC5205 High Voltage Engineering 6 Semester 2
ELEC5206 Sustainable Energy Systems 6 Semester 2
ELEC5207 Advanced Power Conversion Technologies 6 Semester 2
ELEC5208 Intelligent Electricity Networks 6 Semester 1
ELEC5211 Power System Dynamics and Control 6 Semester 1
ELEC5212 Power System Planning and Markets 6 Semester 2
ELEC5213 Engineering Optimisation 6 Semester 1
ELEC5304 Intelligent Visual Signal Understanding 6 Semester 1
ELEC5305 Acoustics, Speech and Signal Processing 6 Semester 2
ELEC5306 Video Intelligence and Compression 6 Semester 1
ELEC5307 Advanced Signal Processing with Deep Learning 6 Semester 2
ELEC5308 Intelligent Information Engineering Practice 6 Semester 2
ELEC5405 Building Microchips: From Theory to Practice 6 Semester 1
ELEC5507 Error Control Coding 6 Semester 1
ELEC5508 Wireless Engineering 6 Semester 2
ELEC5509 Mobile Networks 6 Semester 1
ELEC5510 Satellite Communication Systems 6 Semester 2
ELEC5511 Optical Communication Systems 6 Semester 1
ELEC5512 Optical Networks 6 Semester 2
ELEC5514 IoT Wireless Sensing and Networking 6 Semester 2
ELEC5516 Electrical and Optical Sensor Design 6 Semester 1
ELEC5517 Software Defined Networks 6 Semester 2
ELEC5518 IoT for Critical Infrastructures 6 Semester 1
ELEC5616 Computer and Network Security 6 Semester 1
ELEC5620 Model Based Software Engineering 6 Semester 2
ELEC5622 Signals, Software and Health 6 Semester 2
ELEC5701 Technology Venture Creation [not offered in 2021] 6 Semester 2
ELEC5760 Intelligent Networked Control 6 Semester 2
INFO3315 Human-Computer Interaction 6 Semester 2
INFO4491 Services Science Management and Engineering 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
ISYS4450 Knowledge Management Systems 6 Semester 1
SOFT3410 Concurrency for Software Development 6 Semester 2

Block 7 - Specialisation - Computer Engineering Core Units (Max CP: 24)

Unit Code Unit Name CP Sessions Offered
ELEC2602 Digital Logic 6 Semester 1
ELEC3506 Communications Networks 6 Semester 2
ELEC3607 Embedded Systems 6 Semester 1
ELEC3608 Computer Architecture 6 Semester 2

Block 8 - Specialisation - Computer Engineering Elective Units (Max CP: 6)

Unit Code Unit Name CP Sessions Offered
COMP3520 Operating Systems Internals 6 Semester 2
ELEC3104 Engineering Electromagnetics 6 Semester 1
ELEC3304 Control 6 Semester 2
ELEC3305 Digital Signal Processing 6 Semester 1
ELEC3404 Electronic Circuit Design 6 Semester 1
ELEC3702 Management for Engineers 6 Semester 2
ELEC5405 Building Microchips: From Theory to Practice 6 Semester 1

Block 9 - Specialisation - Engineering Data Science Core Units (Max CP: 18)

Unit Code Unit Name CP Sessions Offered
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
DATA2902 Data Analytics: Learning from Data (Adv) 6 Semester 2
STAT2011 Probability and Estimation Theory 6 Semester 1
STAT2911 Probability and Statistical Models (Adv) 6 Semester 1

Block 10 - Specialisation - Engineering Data Science Elective Units (Max CP: 12)

Unit Code Unit Name CP Sessions Offered
COMP3308 Introduction to Artificial Intelligence 6 Semester 1
COMP3608 Introduction to Artificial Intelligence (Adv) 6 Semester 1
DATA3404 Scalable Data Management 6 Semester 1
DATA3406 Human-in-the-Loop Data Analytics 6 Semester 2

Block 11 - Specialisation - Intelligent Information Engineering Core Units (Max CP: 24)

Unit Code Unit Name CP Sessions Offered
ELEC3506 Communications Networks 6 Semester 2
ELEC5304 Intelligent Visual Signal Understanding 6 Semester 1
ELEC5307 Advanced Signal Processing with Deep Learning 6 Semester 2
ELEC5622 Signals, Software and Health 6 Semester 2

Block 12 - Specialisation - Intelligent Information Engineering Elective Units (Max CP: 6)

Unit Code Unit Name CP Sessions Offered
ELEC3305 Digital Signal Processing 6 Semester 1
ELEC5305 Acoustics, Speech and Signal Processing 6 Semester 2
ELEC5306 Video Intelligence and Compression 6 Semester 1
ELEC5308 Intelligent Information Engineering Practice 6 Semester 2
ELEC5516 Electrical and Optical Sensor Design 6 Semester 1
ELEC5517 Software Defined Networks 6 Semester 2
ELEC5701 Technology Venture Creation [not offered in 2021] 6 Semester 2

Block 13 - Specialisation - Internet of Things Core Units (Max CP: 24)

Unit Code Unit Name CP Sessions Offered
ELEC3506 Communications Networks 6 Semester 2
ELEC5514 IoT Wireless Sensing and Networking 6 Semester 2
ELEC5517 Software Defined Networks 6 Semester 2
ELEC5518 IoT for Critical Infrastructures 6 Semester 1

Block 14 - Specialisation - Internet of Things Elective Units (Max CP: 6)

Unit Code Unit Name CP Sessions Offered
COMP4216 Mobile Computing 6 Semester 2
COMP4426 Parallel and Distributed Computing 6 Semester 1
COMP4447 Pervasive Computing 6 Semester 2
ELEC5208 Intelligent Electricity Networks 6 Semester 1
ELEC5508 Wireless Engineering 6 Semester 2
ELEC5509 Mobile Networks 6 Semester 1
ELEC5616 Computer and Network Security 6 Semester 1
ELEC5760 Intelligent Networked Control 6 Semester 2

Block 15 - Science Units (Min CP: 72,Max CP: 72)

Note: Candidates must complete 84 credit points of Science study, including at least one major in a Science subject area and 6 credit points of OLEs. (Math units taken as part of the Engineering component meet the requirement of 12 cp of Science core, therefore students complete 72 cp Science total.)

See Science faculty handbook for list of Science units and majors: http://sydney.edu.au/handbooks/science/