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 both your first and second year, supported by a research skills unit. In your third year, you will undertake either a 22-week industry-based learning (IBL) placement, supported by a generous scholarship; or a 22-week placement in a research group or work unit of a participating organisation. Through the IBL or research placement, you will apply and further develop your skills and knowledge in a professional organisation. Your studies will conclude with a full year honours-level research project in a specialist area of advanced computer 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.
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 both first and second year, supported by a research skills unit. In your third year, you will undertake either a 22-week placement in a research group or work unit of a participating organisation or a 22-week industry-based learning (IBL) placement, as part of the curriculum and supported by a generous scholarship. Through the research or IBL placement, you will apply and further develop your skills and knowledge in a professional organisation. Your studies will conclude with a full year honours-level research project in a specialist area of advanced computer 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.
These course outcomes are aligned with the Australian Qualifications Framework level 8 and Monash Graduate AttributesAustralian Qualifications Framework level 8 and Monash Graduate Attributes (http://www.monash.edu.au/pubs/handbooks/alignmentofoutcomes.html).
Upon successful completion of the Bachelor of Computer Science Advanced (Honours) it is expected that you will be able to:
- demonstrate an advanced knowledge of the role of computer science and computational methods, and recognise the importance of theoretical underpinning for practical work
- demonstrate understanding of ethical issues in professional and research practice and its historical, contemporary and likely future scientific, industrial and social context
- critically analyse problems, design algorithms to solve them, program efficient software solutions and demonstrate the ability to transform and apply computational solutions to new context
- apply problem-solving strategies to design, implement and critically evaluate substantial pieces of software using a range of programming paradigms, advanced data structures and algorithms
- communicate and coordinate proficiently by: listening, speaking, reading and writing English and utilising diagrams, graphics and interactive visualisations in a professional and research context; working as an effective member or leader of teams; and using basic tools and practices of formal project management
- plan and execute projects with some independence and take responsibility for your own learning and practice; manage your own time and processes effectively by prioritising competing demands to achieve personal and team goals, with regular review of personal performance as a primary means of managing continuing professional development; behave in an ethical and professional manner, and be able to adapt readily to changing technologies
- critically evaluate IT research; be able to apply appropriate research methodologies to conduct significant independent research.
The course develops through the themes of computer science foundation study, specialist discipline knowledge, research skills, and professional skills, which come together in applied practice.
Part A. Foundational computer science study
This study will develop your understanding of the role and theoretical basis of computer science and computational methods.
Part B. Professional skills
This study develops professional skills by providing an understanding and appreciation of the ethical and professional guidelines applicable to computer science practice and research; developing the ability to work as an effective team member and to communicate proficiently and appropriately in professional and research contexts.
Part C. Specialist discipline knowledge
This study will develop deep knowledge and advanced skills in advanced computer science.
Part D. Research skills
This study develops the ability to critically evaluate IT research and to apply appropriate methodologies to conduct independent research in computer science. It develops strong problem-solving skills and the ability to apply analytical thinking.
Part E. Applied practice
The above knowledge and skills are integrated and consolidated in applied practice as demonstrated in a computer or data science project, and in some cases in an industry-based learning placement.
Part F. Free elective study
These elective units will enable you to broaden and deepen your knowledge of computer science, or to select units from across the University in which you are eligible to enrol.
This course comprises 192 points, of which 144 points must be from computer science study and 48 points are used to provide additional depth or breadth through elective study.
The course develops through theme studies in: Part A. Foundational computer science (42 points); Part B. Professional skills, Part C. Specialist discipline knowledge and Part D. Research skills (84 points); and Part E. Applied practice (18 points); and Part F. Free elective study (48 points).
Elective units may be at any level, however, no more than ten units (60 points) can be credited to the computer science advanced course at level 1 and a minimum of 36 points must be completed in computer science at each of level 3 and 4.
To remain in the program you are required to maintain at least a distinction average (70 per cent) across 48 points of enrolment in computer science studies or the total of your FIT-coded unit enrolment if 48 credit points have not yet been completed. 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.
The course progression mapcourse progression map (http://www.monash.edu.au/pubs/2017handbooks/maps/map-c3001.pdf) will assist you to plan to meet the course requirements, and guidance on unit enrolment for each semester of study.
Units are 6 credit points unless otherwise stated.
Part A. Foundational computer science study (42 points)
- FIT1045 Algorithms and programming fundamentals in python
- FIT1047 Introduction to computer systems, networks and security
- FIT1008 Introduction to computer science
- FIT2004 Algorithms and data structures
- FIT2014 Theory of computation
- MAT1830 Discrete mathematics for computer science*
- MAT1841 Continuous mathematics for computer science*
Part C. Specialist discipline knowledge (42 points)
a. The following four units (24 points):
b. One of the following level 3 elective units (6 points):*
c. Two level 4/5 elective units (12 points) as approved by the course director
Parts B. Professional skills and Part D. Research skills (42 points)
a. Three research development units (18 points):
b. An honours thesis (24 points):
Part E. Applied practice (18 points)
Students complete one of the following:
- FIT3153 Research-based learning (18 points)
- FIT3045 Industry-based learning (18 points)
Part F. Free elective study (48 points)
Elective units may be chosen from list b. in Part C above, from units in the data science specialisation of the C2001 Bachelor of Computer Science, the C2000 Bachelor of Information Technology or the software engineering specialisationsoftware engineering specialisation (http://www.%20monash.%20edu.%20au/pubs/handbooks/aos/software-engineering/ug-specialisation-eng-software-engineering.%20html) in the Bachelor of Engineering (Honours), or from across the University as long as you have the prerequisites and there are no restrictions on enrolment in the units. In addition, you may choose to complete a major or minor from other courses, so long as you have the prerequisites and there are no restrictions on admission to the units.
Free electives can be identified using the browse unitsbrowse units (http://www.monash.edu.au/pubs/handbooks/units/search) tool and indexes of unitsindexes of units (http://www.monash.edu.au/pubs/handbooks/units/) in the current edition of the Handbook. MajorsMajors (http://www.monash.edu.au/pubs/handbooks/aos/index-bydomain_type-major.html) and minorsminors (http://www.monash.edu.au/pubs/handbooks/aos/index-bydomain_type-minor.html) can also be identified using the Handbook indexes. The level of the unit is indicated by the first number in the unit code; undergraduate units are those that commence with the numbers 1-3. You may need permission from the owning faculty to enrol in some units taught by other faculties.