Major Overview
- Description
Computing software and systems are becoming increasingly integral to our lives, revolutionising the world in which we live, work and communicate. This major provides its students with the knowledge and skills required to participate in this revolution. Your studies develop your knowledge of theoretical, algorithmic, implementation and systems principles that underpin computer languages and networks. If you wish to play a role in developing new computing technologies or specialise in enterprise-level programming, systems, software engineering or research careers, then Computer Science is the major for you.
- Outcomes
Students are able to:
- identify appropriate data structures and algorithms to solve computational problems
- design, implement, verify, test, and document robust and secure computer programs
- apply the knowledge of design and operation of core computer system components to the development of computer systems
- explain ethical, social and security aspects and constraints of contemporary computer science practice
- apply team-based software development processes
- communicate software and systems requirements analysis, design, implementation, testing and documentation clearly in oral and written formats.
- Broadening guidelines
All students studying towards a Bachelor's Degree at UWA are required to Broaden their studies by completing a minimum of four units (24 points) of study outside their degree specific major. Broadening is your opportunity to explore other areas of interest, investigate new disciplines and knowledge paradigms and to shape your degree to suit your own aspirations and interests. Many of you will be able to undertake more than this minimum amount of broadening study and we encourage you to do so if this suits your aspirations. Over the next few months you will find here some broadening suggestions related to your degree-specific major. While we know that many students value guidance of this sort, these are only suggestions and students should not lose sight of the opportunity to explore that is afforded by your Broadening Choices. Advice can also be sought from your Allocated Student Advising Office.
- Prerequisites
Mathematics Methods ATAR or Mathematics Applications ATAR with a mathematics unit taken in the first year.
Students without ATAR Mathematics will take two first-year mathematics units.
- Incompatibilities
MJD-ESOFT Software Engineering
- Courses
Computer Science can be taken as a degree-specific major in the following degree courses:
Additional information
Units
Key to availability of units:
- S1
- Semester 1
- S2
- Semester 2
Level 1
Degree-specific major units
Take all units (18 points):
Availability | Unit code | Unit name | unit requirements |
---|---|---|---|
S1, S2 | CITS1003 | Introduction to Cybersecurity |
|
S1, S2 | CITS1401 | Computational Thinking with Python | |
S1, S2 | CITS1402 | Relational Database Management Systems |
|
Bridging units
Take units if applicable:
Availability | Unit code | Unit name | unit requirements |
---|---|---|---|
S1, S2 | MATH1721 | Mathematics Foundations: Methods |
Level 2
Degree-specific major units
Take all units (24 points):
Availability | Unit code | Unit name | unit requirements |
---|---|---|---|
S2 | CITS2002 | Systems Programming |
|
S1 | CITS2005 | Object Oriented Programming |
|
S1 | CITS2200 | Data Structures and Algorithms |
|
S2 | CITS2211 | Discrete Structures |
|
Level 3
Degree-specific major units
Take all units (24 points):
Availability | Unit code | Unit name | unit requirements |
---|---|---|---|
S2 | CITS3001 | Advanced Algorithms |
|
S1 | CITS3002 | Computer Networks |
|
S2 | CITS3200 | Professional Computing |
|
S1 | CITS3403 | Agile Web Development |
Degree-specific major units
Take unit(s) to the value of 6 points:
Availability | Unit code | Unit name | unit requirements |
---|---|---|---|
S1 | CITS3003 | Graphics and Animation | |
S2 | CITS3005 | Knowledge Representation | |
S1 | CITS3007 | Secure Coding |
|
S1, S2 | CITS3009 | Computer Science WIL Internship | |
S2 | CITS3011 | Intelligent Agents |
|
S2 | CITS3402 | High Performance Computing |