Software Engineering

Students must complete for the BE(Hons) (Software Engineering) a Single Major (Plan code: SOFTWX2342) or Extended Major (SOFTWY2342), #64 comprising one of the following:

    1. a major - #52, comprising
      (i) #42, being all courses from part A - compulsory; and
      (ii) #10 from part B electives with a minimum of #6 at level four; and
    2. balance from electives (i) a minimum of #4 from courses on the BE(Hons) list, other than courses on the BE(Hons) year 1 part D list; and
      (ii) a maximum of #4 from courses on the BE(Hons) year 1 part D list; and
      (iii) a maximum of #4 from level one courses not on the BE(Hons) list;

      OR
    1. an extended major - #60, comprising
      (i) #42, being all courses from part A - compulsory; and
      (ii) #14 from part B - electives with a minimum of #10 at level four; and
      (iii) #4 from the combination of part C - coverage electives and part B electives; and
    2. balance from electives OR
    1. a major and a minor - #60, comprising
      (i) #42, being all courses from part A - compulsory; and
      (ii) #8 as set out in part D under the approved minor field; and
      (iii) #10 from part B - electives not counted towards part D with a least #6 at level four; and
    2. balance from electives

Part A - Compulsory

Year 1
4 units from

Course Code Units Course Title
ENGG1100 2 Engineering Design
ENGG1200 2 Engineering Modelling & Problem Solving
ENGG1211 4 Engineering Design, Modelling & Problem Solving [1]

and 4 units from

Course Code Units Course Title
[ MATH1051 2 Calculus & Linear Algebra I [2]
[ or
[ MATH1071 2 Advanced Calculus & Linear Algebra I
[ MATH1052 2 Multivariate Calculus & Ordinary Differential Equations
[ or
[ MATH1072 2 Advanced Multivariate Calculus & Ordinary Differential Equations

and 4 units for

Course Code Units Course Title
CSSE1001 2 Introduction to Software Engineering
ENGG1300 2 Introduction to Electrical Systems

Year 1 or Year 2, Semester 1

Course Code Units Course Title
INFS1200 2 Introduction to Information Systems
MATH1061 2 Discrete Mathematics

Year 2, Semester 1

Course Code Units Course Title
CSSE2002 2 Programming in the Large
CSSE2010 2 Introduction to Computer Systems

Year 2, Semester 2

Course Code Units Course Title
COMP3506 2 Algorithms & Data Structures
CSSE2310 2 Computer Systems Principles and Programming
DECO2800 2 Design Computing Studio 2 - Testing & Evaluation
STAT2203 2 Probability Models and Data Analysis for Engineering

Year 3, Semester 1

Course Code Units Course Title
CSSE3002 2 The Software Process
DECO2500 2 Human-Computer Interaction
DECO3800 2 Design Computing Studio 3 - Proposal

Year 3, Semester 2

Course Code Units Course Title
DECO3801 2 Design Computing Studio 3 - Build

Year 4

Course Code Units Course Title
[ ENGG4801 4 Thesis Project [1]
[ or
[ ENGG4802 4 Thesis Project [1]
[ or
[ ENGG4805 4 Thesis Project [3]

Year 4, Semester 1 or Semester 2

Course Code Units Course Title
ENGG4900 2 Professional Practice and the Business Environment

Part B - Electives

Course Code Units Course Title
COMP3301 2 Operating Systems Architecture
COMP3702 2 Artificial Intelligence
COMP4403 2 Compilers and Interpreters
COMP4500 2 Advanced Algorithms & Data Structures
COMP4702 2 Machine Learning
COMS3000 2 Information Security
COMS3200 2 Computer Networks I
COMS4200 2 Computer Networks II
COMS4507 2 Advanced Computer and Network Security
COSC3000 2 Visualization, Computer Graphics & Data Analysis
COSC3500 2 High-Performance Computing
CSSE3010 2 Embedded Systems Design & Interfacing
CSSE3100 2 Reasoning About Programs
CSSE4004 2 Distributed Computing
CSSE4010 2 Digital System Design
DECO1400 2 Introduction to Web Design
DECO3500 2 Social & Mobile Computing
DECO4500 2 Advanced Human-Computer Interaction
INFS2200 2 Relational Database Systems
INFS3200 2 Advanced Database Systems
INFS3202 2 Web Information Systems

Part C - Coverage Electives

Course Code Units Course Title
CSSE4011 2 Advanced Embedded Systems
ENGG4000 2 Introduction to Systems Engineering
ENGG4020 2 Systems Safety Engineering
ENGG4800 2 Project Management
INFS3204 2 Service-Oriented Architectures
INFS4203 2 Data Mining
INFS4205 2 Advanced Techniques for High Dimensional Data
[ MATH2000 2 Calculus & Linear Algebra II
[ or
[ MATH2001 2 Advanced Calculus and Linear Algebra II
MATH2010 1 Analysis of Ordinary Differential Equations

Part D - Minor

Data Science


Students enrolled in the Data Science minor are required to obtain #8 from the courses listed below,
including all #4 from group A and #4 from group B.

Note: non-compulsory courses may be prerequisites for some of these courses.

Group A

Course Code Units Course Title
INFS3200 2 Advanced Database Systems
STAT2004 2 Statistical Modelling & Analysis

Group B

Course Code Units Course Title
COMP4702 2 Machine Learning
COSC3000 2 Visualization, Computer Graphics & Data Analysis
INFS4203 2 Data Mining
STAT3001 2 Mathematical Statistics
STAT3003 2 Experimental Design
STAT3004 2 Probability Models & Stochastic Processes

End notes

  • [1] This course is offered over more than one semester. Enrol in the same course code in each semester.
  • [2] Students without at least a Sound Achievement in Senior Maths C are required to take MATH1050 as an elective before MATH1051
  • [3] Code for students completing the course in one semester.