C3001 · Monash University · UG specialist
Bachelor of Computer Science Advanced (Honours)
Faculty of Information Technology
- Minimum ATAR
- 90
- Full time
- 4 years
- Part time
- 8 years
- Credit points
- 192
- Campus
- Clayton
- Mode
- On campus
Overview
The course is an advanced version of the Bachelor of Computer Science, designed for high-achieving students who wish to study computing in depth with a strong research component through the four years of study. Computer science is the theory and practice of applying computers and software to problem solving. Its practical applications span all disciplines including science, engineering, business and commerce, creative and performing arts and the humanities. You will learn how to think like a computer scientist about processes and their descriptions. This will enable you to design algorithms (instructions for computers) and data structures (ways to store information). You will also acquire practical programming skills to implement these in efficient software that solves real-world problems, as well as strong foundations in the theory of computation and its connection to mathematics.
This advanced course will prepare you for either postgraduate study or employment requiring research and advanced computer science skills. You will do a research project unit in your second year, supported by a research skills unit. If you are an eligible student, you may apply for the industry-based learning (IBL) placement program as part of the curriculum or you will complete a two semester capstone project in your chosen specialisation.
Your studies will conclude with a full-year honours-level research project in a specialist area of advanced computer science or data science. You will graduate with strong research, analysis, problem solving, communication and teamwork skills, deep knowledge of the field of computer science, and hands-on experience in IT research.
First-year units
Level 1 units every student in this course takes or chooses from.
- FIT1045Software development 1: Programming foundationsProgramming is not just about writing code; it is about learning how to turn ideas and problems into clear, reliable instructions that a computer can execute. This unit introduces programming through computational thinking, algorithm design…
- MAT1830Discrete mathematics for computer scienceComputation relies on discrete structures and formal reasoning to describe, analyse and solve problems involving data, systems, algorithms and computational processes. This unit introduces foundational discrete mathematics for computer scie…
- FIT1047Computing systems 1: foundations and operationsEvery time you run a program, open a file, connect to a network, train a model, deploy a service, or launch a container, layers of computing systems are working beneath the surface. This unit helps you understand those layers and gives you…
- FIT1062Data managementThis unit introduces the principles of data management through the design, implementation, and use of relational databases. It develops foundational skills in modelling data, translating real-world requirements into sound relational designs…
- FIT1063Topics in computingThis unit introduces you to the breadth of modern computing through a rotating sequence of research-led topics presented by Faculty academics. It showcases how computer scientists formulate questions, model problems, design algorithms, buil…
- MAT1003Mathematics for algorithms and modelsMathematics gives computing its ability to model, optimise and reason about the world. This unit develops the calculus and linear algebra needed to understand how computational models work, how algorithms represent change, and how data, sys…
Course structure
Open a major, minor or specialisation to see its units.
Rules for completing this course
You must complete 192 credit points, of which 144 credit points must be from computer science study and 48 credit points are used to provide additional depth or breadth through elective study. Elective units may be at any level, however, no more than ten units (60 credit points) can be credited to the computer science advanced course at level 1 and a minimum of 36 credit points must be completed in computer science or data science at each of Level 3 and 4 (or higher). Note 1: To progress to Honours you are required to maintain at least a distinction average (70%) throughout your course. If you do not meet this standard you will be required to transfer to C2001 Bachelor of Computer Science or C2000 Bachelor of Information Technology. Note 2: No more than ten Level 1 units (60 credit points), and at least six Level 3 (or higher) units (36 credit points), must be completed.
Part A. Foundation studies
54 cpYou must complete the following units
- FIT1045Software development 1: Programming foundations6 cp
- FIT2102Programming paradigms6 cp
- MAT1830Discrete mathematics for computer science6 cp
- FIT1047Computing systems 1: foundations and operations6 cp
- FIT1062Data management6 cp
- FIT1063Topics in computing6 cp
- FIT2115Data structures and algorithms 16 cp
- FIT2119Computing in practice: Professional practice6 cp
- MAT1003Mathematics for algorithms and models6 cp
Part B. Specialist studies
54 cpYou must complete 54 credit points of Specialist studies including one specialist elective unit.
- FIT3143Parallel computing6 cp
- FIT3232Compiler engineering6 cp
- FIT3234Data structures and algorithms 26 cp
- FIT3235Theory of computation 1: Models of computation6 cp
- FIT4050Knowledge representation, computational logic, and automated reasoning6 cp
- FIT4051Advanced algorithms and data structures6 cp
- FIT3236Theory of computation 2: Complexity and intractability6 cp
- FIT2134Computing systems 2: Architecture and operating systems6 cp
Part C. Practice studies
18 cpYou must complete the Computer science practice stream OR the Industry-based learning placement (IBL) placement
Computer science practice stream
18 cpYou must complete the following units
Industry-based Learning placement
18 cpFIT3045 is available only if you are selected to participate in the IBL placement program. If you are selected to participate in the IBL placement program you will complete FIT3045 Industry-based learning (18 credit points) and FIT2108 Industry-based learning (0 credit points); or FIT3045, FIT2108 and one of FIT3201 Industry-based learning onboarding (8 weeks) (0 credit points) or FIT3202 Industry-based learning onboarding (4 weeks) (0 credit points) (depending on the duration of your placement). This will replace FIT2135, FIT3230, and FIT3231. All students in the IBL program must complete a unit over summer semester or overload in one semester by one unit in order to complete the degree within four years (this is because you only complete 18 credit points of credit during the IBL placement semester). You must have completed at least three semesters of your course before starting your IBL placement.
Part D. Research studies
18 cpNote: To progress to Honours you are required to maintain at least a distinction average (70%) throughout your course. If you do not meet this standard you will be required to transfer to C2001 Bachelor of Computer Science or C2000 Bachelor of Information Technology. You must complete the following unit and either the Computing research project or Computing in practice: Advanced project.
- FIT5125IT research and innovation methods6 cp
Computing research project
12 cpYou must complete the following units
Computing in practice: Advanced project
12 cpYou must complete the following units
Part E. Free elective studies
48 cpYour elective units may be chosen from the Faculty of Information Technology, or from across the University; or you may choose to complete a major or minor from the Faculty of Information Technology or other courses, as long as you have the prerequisites and there are no restrictions on enrolment in the units. You may complete one of the Flagship Rich Educational Experiences (FREE) units. These flagship rich educational experience units may be credited utilising your free electives if approved by the faculty. There are both 6 and 12 credit point unit options available.