Software Engineering

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

    1. a major - #50, comprising
      (i) #40 being all courses in part A compulsory; plus
      (ii) #10 from part B electives with at least #6 at level 4; and
    2. balance from electives, being courses from the BE list or other courses approved by the executive dean, with
      (i) a minimum of #6 from courses on the BE list, other than courses on the BE Year 1 part D list, and
      (ii) a maximum of #4 from courses on the BE Year 1 part D list, and
      (iii) a maximum of #4 from level one courses not on the BE list;

      OR
    1. an extended major - #60, comprising
      (i) #42 being all courses in part A compulsory and part D extended major; plus
      (ii) #14 from part B electives with at least #10 at level 4; plus
      (iii) #4 from part C coverage electives or part B electives; and
    2. balance from electives, being courses from the BE list or other courses approved by the executive dean.

Part A - Compulsory

Year 1, Semester 1

Course Code Units Course Title
ENGG1100 2 Engineering Design

Year 1, Semester 1 or 2

Course Code Units Course Title
CSSE1001 2 Introduction to Software Engineering
MATH1051 2 Calculus & Linear Algebra I [1]

Year 1, Semester 2

Course Code Units Course Title
ENGG1200 2 Engineering Modelling & Problem Solving
MATH1052 2 Multivariate Calculus & Ordinary Differential Equations

Year 1 or Year 2

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

Year 2, Semester 1

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

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

Year 3, Semester 2

Course Code Units Course Title
ENGG2800 2 Team Project I

Year 4

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

Year 4, Semester 1

Course Code Units Course Title
ENGG4810 2 Team Project II

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
CSSE4004 2 Distributed Computing
CSSE4010 2 Digital System Design
CSSE4603 2 Models of Software Systems
DECO3500 2 Social & Mobile Computing
DECO1400 2 Introduction to Web Design
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 Spatial and Multimedia Databases
[ MATH2000 2 Calculus & Linear Algebra II
[ or
[ MATH2001 2 Advanced Calculus and Linear Algebra
MATH2010 1 Analysis of Ordinary Differential Equations

Part D Extended Major

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

End notes

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