major

Computing and Software Systems

Major structure

Overview

Your major allows you to develop the technical expertise and practical skills you’ll need for your career, as well as the theoretical knowledge of how to apply them. You’ll cover programming, using maths to solve complex computing problems and the tools and techniques to design computing solutions.

Your major structure

You can complete this major through the Bachelor of Science or Bachelor of Design.

Bachelor of Science

The Computing and Software Systems major is made up of eight subjects (100 credit points) taken in your second and third year. Each subject is worth 12.5 credit points. Level 2 subjects are usually taken in second year, and Level 3 subjects in third year.

To complete this major, you’ll need:

The rest of your degree will consist of a Level 1 science core subject, your choice of elective subjects in science, and breadth (non-science) subjects.

Bachelor of Design

The Bachelor of Design course structure results in a flexible degree that allows students to explore different fields of study. You can choose your major immediately or make a decision before the beginning of your second year.

In the first year of the Bachelor of Design, you will be immersed in a world of design and discover new concepts and skills. You might be performing on a stage, writing code in a computer lab, contemplating design theory and putting it into practice, or making 3D models. The subjects you complete in your first year provide the basis for your knowledge of design that will carry through for the rest of your degree.

By your second year, you will deepen your understanding of your chosen design disciplines and be able to finalise your selection of majors, minors and specialisations.

In third year you will complete your major requirements. In your third year, you will complete 50 points (usually four subjects) of study to specialise in computing and software systems and you can also complete breadth studies. You will also be required to undertake a capstone subject. Capstones are designed to draw together the various theoretical strands. On the completion of third year, graduates will possess strong written, oral and visual communication techniques, and will develop practical skills and apply these to problem-solving.

You can take the following double major options with the Bachelor of Design:

Further information

You can find detailed information about your major – including structure, subject availability, and participation requirements – in the Handbook.

You can also explore your study pathway and sample course plans through My Course Planner.

Sample course plan

View some sample course plans to help you select subjects that will meet the requirements for this major.

Bachelor of Design - Computing and Software Systems
Accordion

Year 1

100 pts

Semester 1 · 50 pts
  • Foundations of Computing – major – COMP10001 – 12.5 pts
  • elective – 12.5 pts
  • elective – 12.5 pts
  • Calculus 2 – breadth – MAST10006 – 12.5 pts
Semester 2 · 50 pts
  • Foundations of Algorithms – major – COMP10002 – 12.5 pts
  • elective – 12.5 pts
  • elective – 12.5 pts
  • Linear Algebra – breadth – MAST10007 – 12.5 pts
Accordion

Year 2

100 pts

Semester 1 · 50 pts
  • Design of Algorithms – major – COMP20007 – 12.5 pts
  • Object Oriented Software Development – major – SWEN20003 – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Semester 2 · 50 pts
  • Database Systems – major – INFO20003 – 12.5 pts
  • Elements of Data Processing – major – COMP20008 – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Accordion

Year 3

100 pts

Semester 1 · 50 pts
  • Software Modelling and Design – major – SWEN30006 – 12.5 pts
  • Computer Systems – major – COMP30023 – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Semester 2 · 50 pts
  • Models of Computation – major – COMP30026 – 12.5 pts
  • IT Project – major – COMP30022 – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Bachelor of Science - Computing and Software Systems Major

If you did not achieve a study score of at least 29 in VCE Specialist Mathematics 3/4, you may need to enrol in MAST10005 Calculus 1 in your first semester. If you achieved a study score of at least 36 in VCE Specialist Mathematics 3/4 or equivalent, you can enrol in MAST10021 Calculus 2: Advanced and MAST10022 Linear Algebra: Advanced instead of MAST10006 Calculus 2 and MAST10007 Linear Algebra.

Accordion

Year 1

100 pts

Semester 1 · 50 pts
  • Today's Science, Tomorrow's World – core – SCIE10005 – 12.5 pts
  • Calculus 2 – elective – MAST10006 – 12.5 pts
  • Foundations of Computing – elective – COMP10001 – 12.5 pts
  • breadth – 12.5 pts
Semester 2 · 50 pts
  • Foundations of Algorithms – elective – COMP10002 – 12.5 pts
  • elective – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Accordion

Year 2

100 pts

Semester 1 · 50 pts
  • Database Systems – major – INFO20003 – 12.5 pts
  • Elements of Data Processing – major – COMP20008 – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Semester 2 · 50 pts
  • Object Oriented Software Development – major – SWEN20003 – 12.5 pts
  • Algorithms and Data Structures – major – COMP20003 – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Accordion

Year 3

100 pts

Semester 1 · 50 pts
  • Computer Systems – major – COMP30023 – 12.5 pts
  • Software Modelling and Design – major – SWEN30006 – 12.5 pts
  • elective – 12.5 pts
  • breadth – 12.5 pts
Semester 2 · 50 pts
  • IT Project – major – COMP30022 – 12.5 pts
  • Models of Computation – major – COMP30026 – 12.5 pts
  • elective – 12.5 pts
  • elective – 12.5 pts

Explore this major

Explore the subjects you could choose as part of this major.

Core

Students must complete all of the following subjects

Accordion
Design of Algorithms · 12.5 pts

AIMS

Programmers can choose between several representations of data. These will have different strengths and weaknesses, and each will require its own set of algorithms. This subject will cover some of the most frequently used data structures and their associated algorithms. The emphasis will be on justification of algorithm correctness, on analysis of algorithm performance, and on choosing the right data structure for the problem at hand.

INDICATIVE CONTENT

Sample projects are: approximate string matching for a translation memory, involving sorting and comparison of dynamic programming, branch-and-bound search and brute-force search using a variety of data structures (e.g. arrays, hash tables, tries); speech synthesis based on a pronouncing dictionary and pre-prepared grapheme-phoneme alignment data, based on parsing of the alignment data, hashing of variable length n-grams, and a variety of models for predicting the phoneme(s) associated with a given phoneme sequence (e.g. a simple unigram baseline or a hidden Markov model).

Please view this video for further information: Design of Algorithms

View detailed information in the Handbook

Object Oriented Software Development · 12.5 pts

AIMS

Developing medium and large scale software systems requires analysis and design prior to implementation. This subject introduces students to software design, with specific focus on object-oriented design, and the implementation of designs using an object-oriented programming language. The subject aims to lay the foundations to software design, and is the first subject of a sequence of subjects that teaches the students the concepts in software design.

INDICATIVE CONTENT

Topics covered include:

  • Object-oriented programming techniques
  • Object-oriented design concepts and modelling
  • Design patterns and their applications
  • Object-oriented frameworks

Please view this video for further information: Object Oriented Software Development

View detailed information in the Handbook

Database Systems · 12.5 pts

AIMS

Contemporary online services such as social networking and multimedia-sharing sites, massive multiplayer online games and commerce services have database management systems at their back-end. In this subject, students will obtain a deep understanding of the concepts behind database management systems. In particular, the students will become familiar with the database system architecture, and will exercise the concepts such as query processing and optimisation, database tuning and transactions, which are the foundation of any modern data processing application. This subject is core within the Bachelor of Science for the Major of Computing and Software Systems and the Major of Informatics. Students completing the Diploma of Informatics are also required to undertake this subject.

INDICATIVE CONTENT

This subject serves as an introduction to data modelling and databases from a technical and data management perspective. The subject will include Entity Relationship modelling (from conceptual design to physical modelling), normalisation, de-normalisation, relational model and relational algebra, SQL, query processing and query optimisation, transactions, storage organisation, database administration, data warehousing and big data analytics. Other topics in data management and DBMS technology with an overview of modern NoSQL systems may also be included.

View detailed information in the Handbook

Elements of Data Processing · 12.5 pts

AIMS

Data processing is fundamental to computing and data science. This subject covers various aspects of data processing including database management, representation and analysis of data, information retrieval, visualisation and reporting, and cloud computing. This subject includes an emphasis on both tools and underlying foundations.

INDICATIVE CONTENT

The subject's focus is on the data pipeline, and activities known colloquially as 'data wrangling'. Indicative topics covered include:

  • Capturing data (data ingress)
  • Data representation and storage
  • Cleaning, normalisation and filling in missing data (imputation)
  • Combing multiple sources of data (data integration)
  • Query languages and processing
  • Scripting to support the data pipeline
  • Visualisation and presentation

View detailed information in the Handbook

Computer Systems · 12.5 pts

AIMS

Over the last half-century, computers have improved at a faster rate than almost any other technology on the planet, yet the principles on which they work have remained mostly constant. In this subject, students will learn how computer systems work "under the hood".

The specific aim of this subject is for the students to develop an understanding of the basic concepts underlying computer systems. A key focus of this subject is the introduction of operating systems principles and computer network protocols. This knowledge is essential for writing secure software, for writing high performance software, and for writing network-based services and applications.

INDICATIVE CONTENT

Topics covered include:

  • The role of the operating system
  • The memory hierarchy (caches, virtual memory, and working sets)
  • Interrupt handling, processes and scheduling
  • File systems
  • Introduction to multiprocessors and synchronization
  • Introduction to network protocols (OSI model)
  • Development of client-server applications
  • Computer system security and cryptographic protocols

View detailed information in the Handbook

IT Project · 12.5 pts

AIMS

This subject is the capstone project for the Informatics major and the Computing and Software Systems major in the BSc. Students will work on a real life problem in a small team, supervised by a member of staff. Each team will analyse the information needs of users and develop working computational solutions. Students are expected to apply sound principles studied over the course of their degree to the formulation and solution of their problem.

INDICATIVE CONTENT

Students will work in teams to analyse, design, implement and test a non-trivial IT system. A key part of the project is for students to develop and manage a project in order to deliver a quality IT product. Workshops will explore the application of theory to the project and include selected topics drawn from: ethics, project management, design frameworks, testing, technical reviews, and product evaluation.

View detailed information in the Handbook

Software Modelling and Design · 12.5 pts

AIMS

To construct a software system, requirements must be analysed and modelled, and designs developed and evaluated; this subject teaches knowledge and skills needed for these tasks. This includes the development of static and dynamic models for aspects of both the problem space and the solution space. The emphasis here is on an Agile approach, and on techniques appropriate for object-oriented development.

INDICATIVE CONTENT

Topics covered include:

  • Analysis and modelling requirements
  • Developing, modelling and evaluating designs
  • Modelling using the Unified Modelling Language (UML)
  • Software design processes and principles
  • Common design patterns and software architectures
  • Tools for design and development

View detailed information in the Handbook

Models of Computation · 12.5 pts

AIMS

Formal logic and discrete mathematics provide the theoretical foundations for computer science. This subject uses logic and discrete mathematics to model the science of computing. It provides a grounding in the theories of logic, sets, relations, functions, automata, formal languages, and computability, providing concepts that underpin virtually all the practical tools contributed by the discipline, for automated storage, retrieval, manipulation and communication of data.

INDICATIVE CONTENT

  • Logic: Propositional and predicate logic, resolution proofs, mathematical proof
  • Discrete mathematics: Sets, functions, relations, order, well-foundedness, induction and recursion
  • Automata: Regular languages, finite-state automata, context-free grammars and languages, parsing
  • Computability briefly: Turing machines, computability, decidability.

View detailed information in the Handbook