Faculty of Engineering |
Course: | Software Engineering (2023) |
CP Required: | 192 |
Min FT Duration: | 4.00 Years |
Min PT Duration: | 4.00 Years |
Faculty/School: | Faculty of Engineering |
Years Offered: | 2025, 2024, 2023, 2022, 2021, 2020, 2019, 2018, 2017, 2016, 2015 |
Type | CP | CP From |
Note:
Specialisations in the Software Stream
You have 4 specialisation combinations to choose from in the Software Stream:
Type | CP | CP From |
3 |
Select from
MATH1021: Calculus of One Variable |
|
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 |
|
List
|
6 |
Select from
Unit Blocks: Software Stream 1000/2000 Level Electives Free Electives |
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
IMPORTANT: When choosing your elective units, consider the specialisation(s) you have chosen and the unit levels. For example, if you are completing a stream specialisation that only contains 3000+ level units, you should leave them for later in the degree once you have completed foundational units, and select 1000-level free electives in your first year.
If you have chosen to complete both a stream and a breadth specialisation, you don`t have space for free electives. Please speak with an Academic Advisor and plan your degree carefully.
Type | CP | CP From |
3 |
Select from
MATH1023: Multivariable Calculus and Modelling |
|
6 |
Select from
ELEC1601: Introduction to Computer Systems |
|
3 |
Select from
MATH1005: Statistical Thinking with Data |
|
6 |
Select from
INFO1113: Object-Oriented Programming |
|
0 |
Select from
ENGP1002: Professional Engagement Program 1B |
|
List
|
6 |
Select from
Unit Blocks: Software Stream 1000/2000 Level Electives Free Electives |
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
IMPORTANT: When choosing your elective units, consider the specialisation(s) you have chosen and the unit levels. For example, if you are completing a stream specialisation that only contains 3000+ level units, you should leave them for later in the degree once you have completed foundational units, and select 1000-level free electives in your first year.
If you have chosen to complete both a stream and a breadth specialisation, you don`t have space for free electives. Please speak with an Academic Advisor and plan your degree carefully.
Type | CP | CP From |
6 |
Select from
COMP2017: Systems Programming |
|
6 |
Select from
COMP2123: Data Structures & Algorithms |
|
6 |
Select from
ISYS2110: Analysis & Design of Web Information Systems |
|
6 |
Select from
MATH2069: Discrete Mathematics and Graph Theory |
|
0 |
Select from
ENGP1003: Professional Engagement Program 1C |
Type | CP | CP From |
6 |
Select from
SOFT2412: Agile Software Development Practices |
|
6 |
Select from
SOFT2201: Software Construction and Design 1 |
|
6 |
Select from
ISYS2120: Data & Information Management |
|
6 |
Select from
ENGG2112: Multi-disciplinary Engineering |
|
0 |
Select from
ENGP2001: Professional Engagement Program 2A |
Type | CP | CP From |
6 |
Select from
SOFT3202: Software Construction and Design 2 |
|
0 |
Select from
ENGP2002: Professional Engagement Program 2B |
|
List
|
6 |
Select from
Unit Blocks: Software Stream 1000/2000 Level Electives Software Stream 3000+ Level Elective Units |
List
|
6 |
Select from
Unit Blocks: Software Stream 3000+ Level Elective Units Free Electives |
List
|
6 |
Select from
Unit Blocks: Software Stream 3000+ Level Elective Units Free Electives |
Type | CP | CP From |
6 |
Select from
SOFT3888: Software Development Project |
|
6 |
Select from
INFO3616: Principles of Security and Security Engineering |
|
6 |
Select from
Unit Block: Software Stream 3000+ Level Elective Units |
|
6 |
Select from
ELEC3609: Internet Software Platforms |
|
0 |
Select from
ENGP2003: Professional Engagement Program 2C |
Type | CP | CP From |
6 |
Select from
ELEC5618: Software Quality Engineering |
|
6 |
Select from
Unit Block: Software Stream 3000+ Level Elective Units |
|
0 |
Select from
ENGP3001: Professional Engagement Program 3A |
|
6 |
Select from
ELEC4712: Thesis A |
|
6 |
Select from
ENGG3112: Interdisciplinary Engineering |
Type | CP | CP From |
6 |
Select from
Unit Block: Software Stream 3000+ Level Elective Units |
|
6 |
Select from
ELEC5619: Object Oriented Application Frameworks |
|
6 |
Select from
ELEC4713: Thesis B |
|
0 |
Select from
ENGP3002: Professional Engagement Program 3B |
|
6 |
Select from
Unit Block: Software Stream 3000+ Level Elective Units |
Note:
In 2024, ELEC2602 Digital Logic was added to the Computer Engineering Specialisation for Software stream core units, resulting in 24 credit points of core units and 6 credit points of electives required to obtain the specialisation.
Please check the prerequisites for the higher-level units (3000+ level) in this specialisation when planning your degree. Ensure you will be able to complete the prerequisites prior to undertaking these higher-level units.
Note: Please check the prerequisites for the higher-level units (3000+ level) in this specialisation when planning your degree. Ensure you will be able to complete the prerequisites prior to undertaking these higher-level units.
Note: Please check the prerequisites for the higher-level units (3000+ level) in this specialisation when planning your degree. Ensure you will be able to complete the prerequisites prior to undertaking these higher-level units.
Note: Please check the prerequisites for the higher-level units (3000+ level) in this specialisation when planning your degree. Ensure you will be able to complete the prerequisites prior to undertaking these higher-level units.
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 INFO1110 (or ENGG1810 or INFO1910). Students in the Software stream are strongly recommended to complete INFO1110.
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 |
MATH1931 | Calculus of One Variable (SSP) | 3 |
Semester 1 |
MATH1933 | Multivariable Calculus and Modelling (SSP) | 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)
Unit Code | Unit Name | CP | Sessions Offered |
AERO1560 | Introduction to Aerospace Engineering | 6 |
Semester 1 |
BMET1960 | Biomedical Engineering 1A | 6 |
Semester 1 |
BMET4111 | Thesis A | 6 |
Semester 1 Semester 2 |
BMET4112 | Thesis B | 6 |
Semester 1 Semester 2 |
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 |
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.
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
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 |
Note: 1st and 2nd year Single Degree Electives
Note:
Students may take 24 credit points of free electives to complete the total number of credit points for their degree. Students may take the following units of study as free electives, provided they satisfy any prerequisite, quota, departmental permission or any other requirements of the units, and the units are not essentially the same or prohibited units for any of the other units in their degree.
(1) Any units of study from the Faculty of Engineering available to undergraduate students
(2) Any unit of study from Table S
Students may choose to do a breadth specialisation instead of free electives.
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 |
Note: In 2024, ELEC2602 Digital Logic was added to the Computer Engineering Specialisation for Software stream core units, resulting in 24 credit points of core units and 6 credit points of electives required to obtain the specialisation.
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 |
Note: The Computer Engineering specialisation was amended in 2024, requiring students to complete 24 credit points of core and 6 credit points of electives to obtain the specialisation.
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 |
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 |
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 |
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 |
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 |
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 |
Unit Code | Unit Name | CP | Sessions Offered |
SIEN1000 | Innovation and Entrepreneurship Foundation | 6 |
Semester 1 Semester 2 |
SIEN1001 | Innovators` Skills and Actions | 6 |
Semester 1 Semester 2 |
SIEN2001 | Validating Ideas and Building Ventures | 6 |
Semester 2 |
Unit Code | Unit Name | CP | Sessions Offered |
CLAW2209 | Intellectual Property for Business | 6 |
Semester 1 Semester 2 |
DECO2015 | Responsible Design for Innovation | 6 |
Semester 2 |
DECO2016 | Design Thinking | 6 |
Semester 1 |
ENGG3216 | Management of Technological Innovation | 6 |
Semester 1 |
INFS2030 | e-Business Management | 6 |
Semester 1 Semester 2 |
MKTG3114 | New Products Marketing | 6 |
Semester 2 |
MKTG3120 | Building and Managing Brands | 6 |
Semester 1 |
PMGT3856 | Sustainability and Knowledge Management | 6 |
Semester 1 |
SIEN2210 | Strategic Management | 6 |
Semester 1 Semester 2 |
SIEN3001 | Social Entrepreneurship | 6 |
Semester 2 |
SIEN3204 | Managing Organisational Sustainability | 6 |
Semester 2 |
Unit Code | Unit Name | CP | Sessions Offered |
CIVL3310 | Humanitarian Engineering | 6 |
Semester 1 |
CIVL5320 | Engineering for Sustainable Development | 6 |
Semester 2 |
Unit Code | Unit Name | CP | Sessions Offered |
ASNS2665 | Understanding Southeast Asia | 6 |
Semester 1 Int February Int July |
CIVL5330 | Global Engineering Field Work | 6 |
Int July |
EDUF3026 | Global Poverty and Education | 6 |
Semester 2 |
ENGG3801 | Industry and Community Project | 6 |
Semester 1 Semester 2 |
FASS3500 | Service Learning in Indigenous Communities | 6 |
Semester 1 Semester 2 |
HSBH3009 | International Health Project | 6 |
Semester 2 |
PMGT3857 | International Project Management | 6 |
Semester 2 |