Faculty of Engineering

Software / Science (2022)


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


1. Overview

Course: Software / Science (2022)
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 (144 credit points):

► 6 credit points of Introductory Computing units table

► 12 credit points of Foundation Mathematics units table (12cp of MATH1* can count towards Science requirements)

► 24 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)

► 96 credit points of Software Stream core units

► 6 credit points of Software Stream 3000+ Level elective units

Science (96 credit points):

► *12 credit points of Science degree core units (12cp of MATH1XXX can count towards Engineering requirements)

► *48 credit points of Table A major

► 12 credit points of OLE units

► 24 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.

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 department 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
3 Select from MATH1021: Calculus of One Variable
6 Select from Unit Block:
Science Units
3 Select from MATH1002: Linear Algebra
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

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
3 Select from MATH1023: Multivariable Calculus and Modelling
6 Select from INFO1113: Object-Oriented Programming
6 Select from Unit Block:
Science Units
6 Select from ELEC1601: Introduction to Computer Systems
3 Select from MATH1005: Statistical Thinking with Data
0 Select from ENGP1002: Professional Engagement Program 1B

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 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 Unit Block:
Science Units
6 Select from MATH2069: Discrete Mathematics and Graph Theory
0 Select from ENGP1003: Professional Engagement Program 1C

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 Unit Block:
Science Units
6 Select from SOFT2201: Software Construction and Design 1
0 Select from ENGP2001: Professional Engagement Program 2A

Year 3 - Semester 1

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

Year 3 - Semester 2

Type CP CP From
6 Select from Unit Block:
Science Units
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

Year 4 - Semester 1

Type CP CP From
6 Select from Unit Block:
Science Units
6 Select from ELEC5618: Software Quality Engineering
6 Select from ENGG3112: Interdisciplinary Engineering
0 Select from ENGP3001: Professional Engagement Program 3A
6 Select from COMP5348: Enterprise Scale Software Architecture


Note: COMP5348 is discontinued. Students may take any of COMP4426, COMP4347, COMP4349 or ELEC5620 (from Software Specialist Electives collection) in place of this unit

Year 4 - Semester 2

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

Year 5 - Semester 1

Type CP CP From
List
6 Select from Unit Blocks:
Software Stream 3000+ Level Electives
Science Units


Note: As there are 18cp worth of units that can count to either the Engineering or Science requirements of the combined degree, students can choose to select up to 18cp of electives from either Engineering or Science, or a combination of both.

Students must be sure they will complete the requirements of the Science side of the degree if they want to choose any Engineering elective units.
6 Select from Unit Block:
Science Units
6 Select from Unit Block:
Science Units
6 Select from ELEC4712: Thesis A

Year 5 - Semester 2

Type CP CP From
List
6 Select from Unit Blocks:
Software Stream 3000+ Level Electives
Science Units


Note: As there are 18cp worth of units that can count to either the Engineering or Science requirements of the combined degree, students can choose to select up to 18cp of electives from either Engineering or Science, or a combination of both.

Students must be sure they will complete the requirements of the Science side of the degree if they want to choose any Engineering elective units.
6 Select from Unit Block:
Science Units
List
6 Select from Unit Blocks:
Software Stream 3000+ Level Electives
Science Units


Note: As there are 18cp worth of units that can count to either the Engineering or Science requirements of the combined degree, students can choose to select up to 18cp of electives from either Engineering or Science, or a combination of both.

Students must be sure they will complete the requirements of the Science side of the degree if they want to choose any Engineering elective units.
6 Select from ELEC4713: Thesis B

4. Pathways

No streams/majors defined for this course version.

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
MATH1002 Linear Algebra 3 Semester 1
Semester 2
Summer Main
MATH1005 Statistical Thinking with Data 3 Semester 1
Semester 2
Int January
MATH1021 Calculus of One Variable 3 Semester 1
Semester 2
MATH1023 Multivariable Calculus and Modelling 3 Semester 1
Semester 2
MATH1902 Linear Algebra (Advanced) 3 Semester 1
MATH1905 Statistics (Advanced) 3 Semester 2
MATH1921 Calculus of One Variable (Adv) 3 Semester 1
MATH1923 Multivariable Calculus and Modelling (Adv) 3 Semester 2

Note: Complete a minimum of 12cp including:

- Exactly 12cp of MATH1xxx units: MATH1021 Calculus of One Variable (3cp) AND MATH1002 Linear Algebra (3cp) AND MATH1023 Multivariable Calculus and Modelling (3cp) AND MATH1005 Statistics (3cp)

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

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
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 in the Software Engineering stream take ELEC1005.

- Students enrolled in the Dalyell Stream may count any Engineering Dalyell unit in place of ENGG3112. The second Dalyell unit must be taken from the Combined degree.

- 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: 96,Max CP: 96)

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
COMP5348 Enterprise Scale Software Architecture 6 Semester 2
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

Note: COMP5348 is discontinued. Students may take any of COMP4426, COMP4347, COMP4349 or ELEC5620 (from Software Specialist Electives collection) in place of this unit

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

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
COMP4270 Randomised and Advanced Algorithms 6 Semester 1
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
COMP4427 Usability Engineering 6 Semester 1
COMP4445 Computational Geometry 6 Semester 1
COMP4446 Natural Language Processing 6 Semester 1
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
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
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
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
INFO3406 Introduction to Data Analytics [not offered in 2020] 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

Note: At least 6cp are required from Software Stream 3000+ Level Electives. Students may select additional units from this collection if they have elective space in their degree.

Block 10 - Science Units (Min CP: 78,Max CP: 96)

Note: Candidates must complete 96 credit points of Science study, including at least one major in a Science subject area and 12 credit points of OLEs. Math and Physics units taken as part of the Engineering component may be counted towards the 96 cp total. See Science faculty handbook for list of Science units and majors: http://sydney.edu.au/handbooks/science/