Computer Science

Unit of study Credit points A: Assumed knowledge P: Prerequisites C: Corequisites N: Prohibition Session

Computer Science

or a major in Computer Science the minimum requirement is 24 credit points chosen from the senior units of study listed for this subject area.
Please refer to the Science Faculty website for details of the major, http://sydney.edu.au/science/
Junior units of study
ELEC1601
Foundations of Computer Systems
6    A HSC Mathematics extension 1 or 2
Semester 2
INFO1003
Foundations of Information Technology
6    N INFO1000, ISYS1003, INFO1903, INFS1000
Semester 1
Semester 2
INFO1103
Introduction to Programming
6      Semester 1
Semester 2
INFO1903
Informatics (Advanced)
6    P ATAR sufficient to enter BCST(Adv), BIT or BSc(Adv), or portfolio of work suitable for entry

Note: Department permission required for enrolment

Semester 1
INFO1105
Data Structures
6    P INFO1003 or INFO1103 or INFO1903 or INFS1000
Semester 2
INFO1905
Data Structures (Advanced)
6    A To enter this unit, students need to possess programming knowledge skills at the level of INFO1103 or INFO1903. Expected knowledge includes use of the Java collections APIs and recursion. Chapters 1, 2, 3 and 9 of the textbook provide review material on these topics. Students who have passed similar units at other universities should apply for special permission to enrol.
P Distinction-level performance in INFO1103 or INFO1903
N INFO1105
Semester 2
INFO1911
IT Special Project 1A
6    A Only by invitation from the School of IT.

Note: Department permission required for enrolment

Semester 1
INFO1912
IT Special Project 1B
6    P UAI score of at least 98 AND 85% average in Junior IT units of study AND 75% average in non-IT junior units of study AND Special permission by the School of IT

Note: Department permission required for enrolment

Semester 2
Intermediate units of study
COMP2007
Algorithms and Complexity
6    A MATH1004
P INFO1105 OR INFO1905.
Semester 2
COMP2907
Algorithms and Complexity (Advanced)
6    A MATH1004
P Distinction level result in INFO1105 or INFO1905
Semester 2
COMP2022
Formal Languages and Logic
6    A MATH1004 or MATH2069 or MATH2969
P INFO1103 OR INFO1903
Semester 1
COMP2121
Distributed Systems & Network Principles
6    A Introductory Java programming unit, Data Structures, Algorithms
P INFO1103 AND (INFO1105 OR INFO1905)
C (COMP2007 OR COMP2907)


The unit will provide the introductory platform for students interested in more advanced units in the area of distributed systems and networks, such as ELEC3506 (Data Communications and the Internet), COMP5116 (Internet Protocols), COMP5416 (Advanced Network Technologies), and COMP5426 (Parallel and Distributed Computing).
Semester 2
COMP2129
Operating Systems and Machine Principles
6    A INFO1105 OR INFO1905.
P INFO1103.
Semester 1
INFO2110
Systems Analysis and Modelling
6    A Experience with a data model as in INFO1003 or INFO1103 or INFS1000
Semester 2
INFO2120
Database Systems 1
6    P INFO1003 OR INFO1103 OR INFO1903 OR INFS1000 OR DECO1012.
N INFO2820, INFO2905, COMP5138
Semester 1
INFO2820
Database Systems 1 (Advanced)
6    P Distinction-level result in INFO1003 or INFO1103 or INFO1903 or INFO1105 or INFO1905 or DECO1012.
N COMP5138, INFO2120, INFO2905
Semester 1
INFO2315
Introduction to IT Security
6    A In order to enter this unit, students should have at least one semester of tertiary study of IT. In particular, we assume familiarity with the value of information, and with the varied uses of IT in business and personal activities. We also assume an introductory level of skill in using a computer (for example, creating and moving files and folders, downloading and installing files, etc). The assumed background would be achieved by completing INFO1003 Foundations of IT. We also assume previous instruction in verbal presentations and teamwork.
Semester 2
INFO2911
IT Special Project 2A
6    P 85% average in IT units of study in previous year AND 75% average in other non-IT units of study in previous year AND Special permission by the School of IT.

Note: Department permission required for enrolment

Semester 1
INFO2912
IT Special Project 2B
6   
Note: Department permission required for enrolment

Semester 2
Senior units of study
COMP3109
Programming Languages and Paradigms
6    P COMP2007 or COMP2907
Semester 2
COMP3308
Introduction to Artificial Intelligence
6    A COMP2007. Programing skills (e.g. Java, Python, C, C++, Matlab)
N COMP3608
Semester 1
COMP3608
Intro. to Artificial Intelligence (Adv)
6    A COMP2007 or COMP2907. Programming skills (e.g. Java, Python, C, C++, Matlab) are required to complete the assignment.
P Distinction-level results in some 2nd year COMP or MATH or SOFT units.
N COMP3308


COMP3308 and COMP3608 share the same lectures, but have different tutorials and assessment (the same type but more challenging).
Semester 1
COMP3419
Graphics and Multimedia
6    P (COMP2007 or COMP 2907), and 6 credit points of Junior Math
Semester 1
COMP3520
Operating Systems Internals
6    P COMP2129
Semester 1
COMP3530
Discrete Optimization
6    P COMP2007 or COMP2907
Semester 2
COMP3615
Software Development Project
6    P INFO3402 AND COMP2129 AND (COMP2007 OR COMP2907 OR COMP2121)
N INFO3600
Semester 2
INFO3220
Object Oriented Design
6    P INFO2110 and COMP2129
Semester 1
INFO3315
Human-Computer Interaction
6    A Background in programming and operating systems that is sufficient for the student to independently learn new programming tools from standard online technical materials. Ability to conduct a literature search. Ability to write reports of work done.
Semester 2
INFO3402
Management of IT Projects and Systems
6    A INFO2110 or INFO2810 or INFO2900
Semester 1
INFO3404
Database Systems 2
6    A This unit of study assumes that students have previous knowledge of database concepts including (1) ER modelling, (2) the relational data model and (3) SQL. The prerequisite material is covered in INFO 2120/2820. Familiarity with a programming language (e.g. Java or C) is also expected.
N INFO3504
Semester 2
INFO3504
Database Systems 2 (Adv)
6    A This unit of study assumes that students have previous knowledge of database concepts including (1) ER modelling, (2) the relational data model and (3) SQL. The prerequisite material is covered in INFO 2120/2820. Sound experience with the C programming language and the Unix software development environment is also expected.
P Distinction-level result in INFO2120 or INFO2820 or COMP2007 or COMP2907
N INFO3404
Semester 2
INFO3406
Introduction to Data Analytics
6    A Basic statistics and database management.
P (MATH1005 OR MATH1905) AND (INFO2120 OR INFO2820).
Semester 2
INFO3600
Major Development Project (Advanced)
12    P INFO3402
N ISYS3400, COMP3615


Only available to students in BIT, BCST(Adv) or BSc(Adv).
Semester 2
INFO3911
IT Special Project 3A
6   
Note: Department permission required for enrolment
Enrolment by department permission for students with 85% average in School of IT units plus minimum 75% average in other units
Semester 1
INFO3912
IT Special Project 3B
6   
Note: Department permission required for enrolment
Enrolment by department permission for students with 85% average in School of IT units plus minimum 75% average in other units
Semester 2
ELEC3506
Data Communications and the Internet
6    N NETS2150
Semester 2
ELEC3609
Internet Software Platforms
6    P INFO1103, INFO2110, (INFO2120 or INFO2820)
N EBUS4001
Semester 2
ELEC3610
E-Business Analysis and Design
6    N EBUS3003
Semester 1