University of Sydney Handbooks - 2018 Archive

Download full 2018 archive Page archived at: Fri, 21 Sep 2018 05:39:45 +0000

Unit of Study Descriptions

Errata
item Errata Date
1. MATH1021 Calculus Of One Variable: Sessions have changed. Semester 2 session has been added. 20/2/2018

Bachelor of Advanced Computing and Bachelor of Computing

Award requirements

Bachelor of Advanced Computing

To qualify for the award of the Bachelor of Advanced Computing, a candidate must complete 192 credit points, comprising:
(a) 96 credit points of degree core units of study as set out in the table below;
(b) A major (48 credit points) from the list of majors from the table below;
(c) At least 12 credit points of 4000-level or higher electives from the table below;
(d) (Optionally) up to 12 credit points of units of study in the Open Learning Environment as listed in Table O in the Shared Pool for Undergraduate Degrees;
(e) (Optionally) a minor of 36 credit points or a second major of 48 credit points as listed and specified in Table S in the Shared Pool for Undergraduate Degrees;
(f) Where appropriate, additional elective units from the table below or Table S in the Shared Pool for Undergraduate Degrees.

Bachelor of Computing

To qualify for the award of the Bachelor of Computing, a candidate must complete 144 credit points, comprising:
(a) 78 credit points of degree core units as set out in the table below;
(b) A major (48 credit points) from the list of majors from the table below;
(c) (Optionally) up to 12 credit points of units of study in the Open Learning Environment as listed in Table O in the Shared Pool for Undergraduate Degrees;
(d) (Optionally) a minor of 36 credit points as listed and specified in Table S in the Shared Pool for Undergraduate Degrees;
(e) Where appropriate, additional elective units from the table below.

Streams

The available streams in the Bachelor of Advanced Computing are:
Dalyell
Achievement of the Dalyell stream requires:
(i) Completion of 12 credit points of Dalyell units as set out in Table S;
(ii) Admission on the basis of ATAR or first year WAM as determined by the Board of Interdisciplinary Studies;
(iii) Maintenance of the required WAM as determined by the Board of Interdisciplinary Studies.

Majors

Table A majors available in this course are:
Computer Science
Computational Data Science
Information Systems
Software Development
Requirements from the majors are listed in the Majors tabs in this Handbook.

Minors

Table A minors available in this course are:
Computer Science
Computational Data Science
Information Systems
Software Development
Requirements from the minors are listed alongside the major requirements in the Majors tabs in this Handbook.

Degree Core

The degree core units of study required for this course are listed below. Candidates who exit at the third year do not complete the 4000-level degree core units and graduate with a Bachelor of Computing.

1000-level units of study

DATA1001 Foundations of Data Science

Credit points: 6 Teacher/Coordinator: Dr Di Warren Session: Semester 1,Semester 2 Classes: lecture 3 hrs/week; computer tutorial 2 hr/week Prohibitions: MATH1005 or MATH1905 or MATH1015 or MATH1115 or ENVX1001 or ENVX1002 or ECMT1010 or BUSS1020 or STAT1021 Assessment: assignments, quizzes, presentation, exam Mode of delivery: Normal (lecture/lab/tutorial) day
DATA1001 is a foundational unit in the Data Science major. The unit focuses on developing critical and statistical thinking skills for all students. Does mobile phone usage increase the incidence of brain tumours? What is the public's attitude to shark baiting following a fatal attack? Statistics is the science of decision making, essential in every industry and undergirds all research which relies on data. Students will use problems and data from the physical, health, life and social sciences to develop adaptive problem solving skills in a team setting. Taught interactively with embedded technology, DATA1001 develops critical thinking and skills to problem-solve with data. It is the prerequisite for DATA2002.
Textbooks
Statistics, Fourth Edition, Freedman Pisani Purves
ELEC1601 Introduction to Computer Systems

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratories, Tutorials Assumed knowledge: HSC Mathematics extension 1 or 2 Assessment: Through semester assessment (60%) and Final Exam (40%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study introduces the fundamental digital concepts upon which the design and operation of modern digital computers are based. A prime aim of the unit is to develop a professional view of, and a capacity for inquiry into, the field of computing.
Topics covered include: data representation, basic computer organisation, the CPU, elementary gates and logic, machine language, assembly language and high level programming constructs.
INFO1110 Introduction to Programming

Credit points: 6 Session: Intensive July,Semester 1,Semester 2 Classes: lectures, laboratories, seminars Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit is an essential starting point for software developers, IT consultants, and computer scientists to build their understanding of principle computer operation. Students will obtain knowledge and skills with procedural programming. Crucial concepts include defining data types, control flow, iteration, functions, recursion, the model of addressable memory. Students will be able to reinterpret a general problem into a computer problem, and use their understanding of the computer model to develop source code. This unit trains students with software development process, including skills of testing and debugging. It is a prerequisite for more advanced programming languages, systems programming, computer security and high performance computing.
INFO1111 Computing 1A Professionalism

Credit points: 6 Session: Semester 1 Classes: Lectures, Laboratories, Project Work - own time Prohibitions: ENGG1805 OR ENGG1111 OR ENGD1000 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit introduces students to the fundamental principles that underlie professional practice in computing. It lays the foundation for later studies, and presents to the students challenges common to a multidisciplinary IT environment. The subject also provides students with the opportunity to develop important attributes such as communication skills, an understanding of professional ethics, and of working as a part of a team. Tool use is an important aspect of this unit: students are required to learn to use tools for planning and completing work, managing artefacts including reports, and communicating within the team. A selection of guest speakers will address students on different career paths.
Dalyell students may enrol in ENGD1000 Building a Sustainable World in place of INFO1111
INFO1112 Computing 1B OS and Network Platforms

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratories Corequisites: ELEC1601 AND (INFO1110 OR INFO1103 OR INFO1113). For most students, INFO1110 should have already been passed in semester 1. Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
The unit introduces principles and concepts of modern computer systems, including mobile computers and the Internet, to provide students with fundamental knowledge of the environments in which modern, networked applications operate. Students will have basic knowledge to understand how computers work and are aware of principles and concepts they are likely to encounter in their career. The unit covers: Principles of operating systems and the way applications interact with the OS, including the particularities of modern operating systems for mobile devices Principles of computer networking, including mobile networking Writing applications that use facilities of the OS and networking, including understanding the challenges that are common in distributed systems
INFO1113 Object-Oriented Programming

Credit points: 6 Session: Semester 1,Semester 2 Classes: lectures, laboratories, seminars Prerequisites: INFO1110 Prohibitions: INFO1103 OR INFO1105 OR INFO1905 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
Object-oriented (OO) programming is a technique that arranges code into classes, each encapsulating in one place related data and the operations on that data. Inheritance is used to reuse code from a more general class, in specialised situations. Most modern programming languages provide OO features. Understanding and using these are an essential skill to software developers in industry. This unit provides the student with the concepts and individual programming skills in OO programming, starting from their previous mastery of procedural programming.
MATH1021 Calculus Of One Variable

Credit points: 3 Session: Semester 1 Classes: 2x1-hr lectures; 1x1-hr tutorial per week Prohibitions: MATH1011 or MATH1901 or MATH1906 or MATH1111 or ENVX1001 or MATH1001 or MATH1921 or MATH1931 Assumed knowledge: HSC Mathematics Extension 1. Students who have not completed HSC Extension 1 Mathematics (or equivalent) are strongly advised to take the Extension 1 Mathematics Bridging Course (offered in February). Assessment: exam, quizzes, assignments Mode of delivery: Normal (lecture/lab/tutorial) day
Calculus is a discipline of mathematics that finds profound applications in science, engineering, and economics. This unit investigates differential calculus and integral calculus of one variable and the diverse applications of this theory. Emphasis is given both to the theoretical and foundational aspects of the subject, as well as developing the valuable skill of applying the mathematical theory to solve practical problems. Topics covered in this unit of study include complex numbers, functions of a single variable, limits and continuity, differentiation, optimisation, Taylor polynomials, Taylor's Theorem, Taylor series, Riemann sums, and Riemann integrals.
Textbooks
As set out in the Junior Mathematics Handbook.
MATH1002 Linear Algebra

Credit points: 3 Session: Semester 1,Summer Main Classes: Two 1 hour lectures and one 1 hour tutorial per week. Prohibitions: MATH1012 or MATH1014 or MATH1902 Assumed knowledge: HSC Mathematics or MATH1111. Students who have not completed HSC Mathematics (or equivalent) are strongly advised to take the Mathematics Bridging Course (offered in February). Assessment: One 1.5 hour examination, assignments and quizzes (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
MATH1002 is designed to provide a thorough preparation for further study in mathematics and statistics. It is a core unit of study providing three of the twelve credit points required by the Faculty of Science as well as a Junior level requirement in the Faculty of Engineering.
This unit of study introduces vectors and vector algebra, linear algebra including solutions of linear systems, matrices, determinants, eigenvalues and eigenvectors.
Textbooks
As set out in the Junior Mathematics Handbook
MATH1064 Discrete Mathematics for Computation

Credit points: 6 Session: Semester 2 Classes: lecture 3 hrs/week; tutorial 1 hr/week; prac class 1hr/week Prohibitions: MATH1004 or MATH1904 Assessment: assignment, quizzes, exam Mode of delivery: Normal (lecture/lab/tutorial) day
This unit introduces students to the language and key methods of the area of Discrete Mathematics. The focus is on mathematical concepts in discrete mathematics and their applications, with an emphasis on computation. For instance, to specify a computational problem precisely one needs to give an abstract formulation using mathematical objects such as sets, functions, relations, orders, and sequences. In order to prove that a proposed solution is correct, one needs to apply the principles of mathematical logic, and to use proof techniques such as induction. To reason about the efficiency of an algorithm, one often needs to estimate the growth of functions or count the size of complex mathematical objects. This unit provides the necessary mathematical background for such applications of discrete mathematics. Students will be introduced to mathematical logic and proof techniques; sets, functions, relations, orders, and sequences; counting and discrete probability; asymptotic growth; and basic graph theory.
Textbooks
As set out in the Junior Mathematics Handbook.

2000-level units of study

COMP2123 Data Structures and Algorithms

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Prerequisites: INFO1110 OR INFO1113 OR DATA1002 OR INFO1103 OR INFO1903 Prohibitions: INFO1105 OR INFO1905 OR COMP2823 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will teach some powerful ideas that are central to solving algorithmic problems in ways that are more efficient than naive approaches. In particular, students will learn how data collections can support efficient access, for example, how a dictionary or map can allow key-based lookup that does not slow down linearly as the collection grows in size. The data structures covered in this unit include lists, stacks, queues, priority queues, search trees, hash tables, and graphs. Students will also learn efficient techniques for classic tasks such as sorting a collection. The concept of asymptotic notation will be introduced, and used to describe the costs of various data access operations and algorithms.
COMP2823 Data Structures and Algorithms (Adv)

Credit points: 6 Session: Semester 1 Classes: lectures, tutorials Prerequisites: Distinction level result in at least one of INFO1110 OR INFO1113 OR DATA1002 OR INFO1103 OR INFO1903 Prohibitions: INFO1105 OR INFO1905 OR COMP2123 Assumed knowledge: Distinction-level result in at least one the listed 1000 level programming units Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit will teach some powerful ideas that are central to solving algorithmic problems in ways that are more efficient than naive approaches. In particular, students will learn how data collections can support efficient access, for example, how a dictionary or map can allow key-based lookup that does not slow down linearly as the collection grows in size. The data structures covered in this unit include lists, stacks, queues, priority queues, search trees, hash tables, and graphs. Students will also learn efficient techniques for classic tasks such as sorting a collection. The concept of asymptotic notation will be introduced, and used to describe the costs of various data access operations and algorithms.
ISYS2120 Data and Information Management

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials, Laboratories, Project Work - own time Prerequisites: INFO1113 OR INFO1103 OR INFO1105 OR INFO1905 OR INFO1003 OR INFO1903 OR DECO1012 Prohibitions: INFO2120 OR INFO2820 OR COMP5138 Assumed knowledge: Programming skills Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
The ubiquitous use of information technology leaves us facing a tsunami of data produced by users, IT systems and mobile devices. The proper management of data is hence essential for all applications and for effective decision making within organizations.
This unit of study will introduce the basic concepts of database designs at the conceptual, logical and physical levels. We will place particular emphasis on introducing integrity constraints and the concept of data normalization which prevents data from being corrupted or duplicated in different parts of the database. This in turn helps in the data remaining consistent during its lifetime. Once a database design is in place, the emphasis shifts towards querying the data in order to extract useful information. The unit will introduce the SQL database query languages, which is industry standard. Other topics covered will include the important concept of transaction management, application development with a backend database, and an overview of data warehousing and OLAP.
SOFT2412 Agile Software Development Practices

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratories, Project Work - own time Prerequisites: INFO1113 OR INFO1103 OR INFO1105 OR INFO1905 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit builds students skills to follow defined processes in software development, in particular, working in small teams in an agile approach. Content covers the underlying concepts and principles of software processes, their analysis, measurement and improvement. Students will practice with a variety of professional-strength tool support for the practices that ensure quality outcomes. The unit requires students to enter already skilled in individual programming; instead this unit focuses on the complexities in a team setting.
INFO2222 Computing 2 Usability and Security

Credit points: 6 Session: Semester 1 Classes: Meetings, Laboratories, Project Work - own time Prerequisites: 12CP 1000-level INFO Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides an integrated treatment of two critical topics for a computing professional: human computer interaction (HCI) and security. The techniques and core ideas of HCI will be studied with a particular focus on examples and case studies related to security. This unit builds the students' awareness of the deep challenges in creating computing systems that can meet people's needs for both HCI and security. It will develop basic skills to evaluate systems for their effectiveness in meeting people's needs within the contexts of their use, building knowledge of common mistakes in systems, and approaches to avoid those mistakes.

3000-level units of study

INFO3333 Computing 3 Management

Credit points: 6 Session: Semester 1 Classes: Lectures, Laboratories, Project Work - own time Prerequisites: 12CP 2000-level COMP, INFO or ISYS Corequisites: INFO2222 Prohibitions: INFO3402 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit teaches students vital skills for an effective professional career: preparing them to eventually be a leader, who ensures that others achieve high-quality outcomes. Building on experiences from earlier units (that covered working in a team, agile development practices, paying attention to needs and characteristics of users, and the value of data) this unit teaches students key concepts needed as a manager, or when working with managers. The focus includes managing projects, managing services, and ensuring governance.

4000-level units of study

The following units will be available from 2019:
INFO4001 Thesis A
INFO4002 Thesis B
INFO4444 Computing 4 Innovation

Electives

2000-level units of study

COMP2017 Systems Programming

Credit points: 6 Session: Semester 1 Classes: lectures, laboratories Prerequisites: INFO1113 OR INFO1105 OR INFO1905 OR INFO1103 Corequisites: COMP2123 OR COMP2823 OR INFO1105 OR INFO1905 Prohibitions: COMP2129 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
In this unit of study, elementary methods for developing robust, efficient, and re-usable software will be covered. The unit is taught in C, in a Unix environment. Specific coding topics include memory management, the pragmatic aspects of implementing data structures such as lists and hash tables and managing concurrent threads. Debugging tools and techniques are discussed and common programming errors are considered along with defensive programming techniques to avoid such errors. Emphasis is placed on using common Unix tools to manage aspects of the software construction process, such as version control and regression testing. The subject is taught from a practical viewpoint and it includes a considerable amount of programming practice.
COMP2022 Programming Languages, Logic and Models

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials Prerequisites: INFO1103 OR INFO1903 OR INFO1113 Prohibitions: COMP2922 Assumed knowledge: MATH1004 OR MATH1904 OR MATH1064 OR MATH2069 OR MATH2969 Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides an introduction to the foundations of computational models, and their connection to programming languages/tools. The unit covers various abstract models for computation including Lambda Calculus, and Logic calculi (e. g. concept of formal proofs in propositional, predicate, and temporal logic). For each abstract model, we introduce programming languages/tools that are built on the introduced abstract computational models. We will discuss functional languages including Scheme/Haskell, and Prolog/Datalog.
COMP2922 Programming Languages, Logic and Models (Adv)

Credit points: 6 Session: Semester 2 Classes: lectures, tutorials Prerequisites: Distinction level result in INFO1103 OR INFO1903 OR INFO1113 Prohibitions: COMP2022 Assumed knowledge: MATH1004 OR MATH1904 OR MATH1064 OR MATH2069 OR MATH2969 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit provides an introduction to the foundations of computational models, and their connection to programming languages/tools. The unit covers various abstract models for computation including Lambda Calculus, and Logic calculi (e.g. concept of formal proofs in propositional, predicate, and temporal logic). For each abstract model, we introduce programming languages/tools that are built on the introduced abstract computational models. We will discuss functional languages including Scheme/Haskell, and Prolog/Datalog.
DATA2001 Data Science: Big Data and Data Diversity

Credit points: 6 Session: Semester 1 Classes: Lectures, Laboratories, Project Work - own time Prerequisites: DATA1002 OR INFO1110 OR INFO1903 OR INFO1103 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This course focuses on methods and techniques to efficiently explore and analyse large data collections. Where are hot spots of pedestrian accidents across a city? What are the most popular travel locations according to user postings on a travel website? The ability to combine and analyse data from various sources and from databases is essential for informed decision making in both research and industry.
Students will learn how to ingest, combine and summarise data from a variety of data models which are typically encountered in data science projects, such as relational, semi-structured, time series, geospatial, image, text. As well as reinforcing their programming skills through experience with relevant Python libraries, this course will also introduce students to the concept of declarative data processing with SQL, and to analyse data in relational databases. Students will be given data sets from, eg. , social media, transport, health and social sciences, and be taught basic explorative data analysis and mining techniques in the context of small use cases. The course will further give students an understanding of the challenges involved with analysing large data volumes, such as the idea to partition and distribute data and computation among multiple computers for processing of 'Big Data'.
DATA2002 Data Analytics: Learning from Data

Credit points: 6 Teacher/Coordinator: Jean Yang Session: Semester 2 Classes: lecture 3 hrs/week; computer tutorial 2 hr/week Prerequisites: [DATA1001 or ENVX1001 or ENVX1002] or [MATH10X5 and MATH1115] or [MATH10X5 and STAT2011] or [MATH1905 and MATH1XXX (except MATH1XX5)] or [BUSS1020 or ECMT1010 or STAT1021] Prohibitions: STAT2012 or STAT2912 Assumed knowledge: (Basic Linear Algebra and some coding) or QBUS1040 Assessment: written assignment, presentation, exams Mode of delivery: Normal (lecture/lab/tutorial) day
Technological advances in science, business, engineering has given rise to a proliferation of data from all aspects of our life. Understanding the information presented in these data is critical as it enables informed decision making into many areas including market intelligence and science. DATA2002 is an intermediate course in statistics and data sciences, focusing on learning data analytic skills for a wide range of problems and data. How should the Australian government measure and report employment and unemployment? Can we tell the difference between decaffeinated and regular coffee ? In this course, you will learn how to ingest, combine and summarise data from a variety of data models which are typically encountered in data science projects as well as reinforcing their programming skills through experience with statistical programming language. You will also be exposed to the concept of statistical machine learning and develop the skill to analyze various types of data in order to answer a scientific question. From this unit, you will develop knowledge and skills that will enable you to embrace data analytic challenges stemming from everyday problems.
INFO2150 Introduction to Health Data Science

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials Prerequisites: (INFO1003 OR INFO1903 OR INFO1103 OR INFO1110 OR DATA1002) AND (DATA1001 OR MATH1005 OR MATH1905 OR MATH1015) Corequisites: DATA2001 or ISYS2120 OR INFO2120 OR INFO2820 OR INFO1903 Assumed knowledge: Basic knowledge of Entity Relationship Modelling, database technology and SQL Assessment: Through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
Health organisations cannot function effectively without computer information systems. Clinical data are stored and distributed in different databases, different formats and different locations. It requires a lot of effort to create an integrated and clean-up version of data from multiple sources, This unit provides basic introduction to the process and knowledge to enable the analysis of health data. The unit will be of interest to students seeking the understanding of the various coding standards in health industry, data retrieval from databases, data linkage issue, cleaning and pre-processing steps, necessary statistical techniques and presentation of results.
It will be valuable to those who want to work as health-related occupations, such as health informatics analysts, healthcare administrators, medical and health services manager or research officers in hospitals, government health agencies and research organisations. Having said that, a good understanding of health data analysis is a useful asset to all students.
ISYS2110 Analysis and Design of Web Info Systems

Credit points: 6 Session: Semester 1 Classes: Lectures, tutorials Prerequisites: INFO1113 OR INFO1103 OR INFO1105 OR INFO1905 Prohibitions: INFO2110 Assessment: through semester assessment (40%), final exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This course discusses the processes, methods, techniques and tools that organisations use to determine how they should conduct their business, with a particular focus on how web-based technologies can most effectively contribute to the way business is organized. The course covers a systematic methodology for analysing a business problem or opportunity, determining what role, if any, web-based technologies can play in addressing the business need, articulating business requirements for the technology solution, specifying alternative approaches to acquiring the technology capabilities needed to address the business requirements, and specifying the requirements for the information systems solution in particular, in-house development, development from third-party providers, or purchased commercial-off-the-shelf (COTS) packages.
ISYS2160 Information Systems in the Internet Age

Credit points: 6 Session: Semester 2 Classes: lectures, tutorials Prohibitions: ISYS2140 Assumed knowledge: INFO1003 OR INFO1103 OR INFO1903 OR INFO1113 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will provide a comprehensive conceptual and practical introduction to information systems (IS) in the Internet era. Key topics covered include: system thinking and system theory, basic concepts of information systems, internet and e-commerce, e-payment and m-commerce, online marketing and social media, information systems for competitive advantage, functional and enterprise systems, business intelligence, information systems development and acquisition, information security, ethics, and privacy
SOFT2201 Software Construction and Design 1

Credit points: 6 Session: Semester 2 Classes: lectures, laboratories Prerequisites: INFO1113 OR INFO1103 OR INFO1105 OR INFO1905 Prohibitions: INFO3220 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit introduces the foundations of software design and construction. It covers the topics of modelling software (UML, CRC, use cases), software design principles, object-oriented programming theory (inheritance, polymorphism, dynamic subtyping and generics), and simple design patterns. The unit aims to foster a strong technical understanding of the underlying software design and construction theory (delivered in the lecture) but also has a strong emphasis of the practice, where students apply the theory on practical examples.

3000-level units of study

COMP3027 Algorithm Design

Credit points: 6 Session: Semester 1 Classes: lectures, tutorials Prerequisites: COMP2123 OR COMP2823 OR INFO1105 OR INFO1905 Prohibitions: COMP2007 OR COMP2907 OR COMP3927 Assumed knowledge: MATH1004 OR MATH1904 OR MATH1064 Assessment: through semester assessment (40%), final exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides an introduction to the design techniques that are used to find efficient algorithmic solutions for given problems. The techniques covered included greedy, divide-and-conquer, dynamic programming, and adjusting flows in networks. Students will extend their skills in algorithm analysis. The unit also provides an introduction to the concepts of computational complexity and reductions between problems.
COMP3927 Algorithm Design (Adv)

Credit points: 6 Session: Semester 1 Classes: lectures, tutorials Prerequisites: COMP2123 OR COMP2823 OR INFO1105 OR INFO1905 Prohibitions: COMP2007 OR COMP2907 OR COMP3027 Assumed knowledge: MATH1004 OR MATH1904 OR MATH1064 Assessment: through semester assessment (40%), final exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit provides an introduction to the design techniques that are used to find efficient algorithmic solutions for given problems. The techniques covered included greedy, divide-and-conquer, dynamic programming, and adjusting flows in networks. Students will extend their skills in algorithm analysis. The unit also provides an introduction to the concepts of computational complexity and reductions between problems.
COMP3221 Distributed Systems

Credit points: 6 Session: Semester 1 Classes: Lectures, Laboratories, Project Work - own time Prerequisites: (INFO1105 OR INFO1905) OR ((INFO1103 OR INFO1113) AND (COMP2123 OR COMP2823)) Prohibitions: COMP2121 Assessment: through semester assessment (60%), final exam (40%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will provide broad introduction to the principles of distributed computing and distributed systems and their design; provide students the fundamental knowledge required to analyse, design distributed algorithms and implement various types of applications, like blockchains; explain the common algorithmic design principles and approaches used in the design of message passing at different scales (e.g., logical time, peer-to-peer overlay, gossip-based communication).
COMP3308 Introduction to Artificial Intelligence

Credit points: 6 Session: Semester 1 Classes: Tutorials, Lectures Prohibitions: COMP3608 Assumed knowledge: Algorithms. Programming skills (e.g. Java, Python, C, C++, Matlab) Assessment: Through semester assessment (45%) and Final Exam (55%) Mode of delivery: Normal (lecture/lab/tutorial) day
Artificial Intelligence (AI) is all about programming computers to perform tasks normally associated with intelligent behaviour. Classical AI programs have played games, proved theorems, discovered patterns in data, planned complex assembly sequences and so on. This unit of study will introduce representations, techniques and architectures used to build intelligent systems. It will explore selected topics such as heuristic search, game playing, machine learning, neural networks and probabilistic reasoning. Students who complete it will have an understanding of some of the fundamental methods and algorithms of AI, and an appreciation of how they can be applied to interesting problems. The unit will involve a practical component in which some simple problems are solved using AI techniques.
COMP3419 Graphics and Multimedia

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials Prerequisites: COMP2123 OR COMP2823 OR INFO1105 OR INFO1905 Assumed knowledge: Programming skills Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides a broad introduction to the field of graphics and multimedia computing to meet the diverse requirements of application areas such as entertainment, industrial design, virtual reality, intelligent media management, social media and remote sensing. It covers both the underpinning theories and the practices of computing and manipulating digital media including graphics / image, audio, animation, and video. Emphasis is placed on principles and cutting-edge techniques for multimedia data processing, content analysis, media retouching, media coding and compression.
COMP3520 Operating Systems Internals

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials Prerequisites: (COMP2017 OR COMP2129) AND (COMP2123 OR COMP2823 OR INFO1105 OR INFO1905) Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will provide a comprehensive discussion of relevant OS issues and principles and describe how those principles are put into practice in real operating systems. The contents include internal structure of OS; several ways each major aspect (process scheduling, inter-process communication, memory management, device management, file systems) can be implemented; the performance impact of design choices; case studies of common OS (Linux, MS Windows NT, etc.).
COMP3600 Computer Science Project (Adv)

Credit points: 6 Session: Semester 2 Classes: project work, sites visits, meetings Prerequisites: (COMP2123 OR COMP2823) AND COMP2017 AND (COMP2022 OR COMP2922) with Distinction level results in at least one of the above listed units Prohibitions: INFO3600 OR COMP3615 Assessment: through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit will provide students an opportunity to apply the knowledge and practise the skills acquired in the prerequisite and qualifying units, in the context of designing and building a substantial software development system in diverse application domains including life sciences. Working in groups for an external client combined with academic supervision, students will need to carry out the full range of activities including requirements capture, analysis and design, coding, testing and documentation. Students will use the XP methodology and make use of professional tools for the management of their project.
COMP3608 Introduction to Artificial Intelligence (Adv)

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Prerequisites: Distinction-level results in some 2nd year COMP or MATH or SOFT units. Prohibitions: COMP3308 Assumed knowledge: Algorithms. Programming skills (e.g. Java, Python, C, C++, Matlab) Assessment: Through semester assessment (45%) and Final Exam (55%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: COMP3308 and COMP3608 share the same lectures, but have different tutorials and assessment (the same type but more challenging).
An advanced alternative to COMP3308; covers material at an advanced and challenging level.
COMP3615 Computer Science Project

Credit points: 6 Session: Semester 2 Classes: Project Work, Site Visit, Meetings Prerequisites: (COMP2123 OR COMP2823) AND COMP2017 AND (COMP2022 OR COMP2922) Prohibitions: INFO3600 OR COMP3600 Assessment: Through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will provide students an opportunity to apply the knowledge and practise the skills acquired in the prerequisite and qualifying units, in the context of designing and building a substantial software development system in diverse application domains including life sciences. Working in groups for an external client combined with academic supervision, students will need to carry out the full range of activities including requirements capture, analysis and design, coding, testing and documentation. Students will use the XP methodology and make use of professional tools for the management of their project.
DATA3404 Data Science Platforms

Credit points: 6 Session: Semester 1 Classes: lectures, tutorials Prerequisites: DATA2001 OR ISYS2120 OR INFO2120 OR INFO2820 Prohibitions: INFO3504 OR INFO3404 Assumed knowledge: This unit of study assumes that students have previous knowledge of database structures and of SQL. The prerequisite material is covered in DATA2001 or ISYS2120. Familiarity with a programming language (e.g. Java or C) is also expected. Assessment: through semester assessment (40%), final exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study provides a comprehensive overview of the internal mechanisms data science platforms and of systems that manage large data collections. These skills are needed for successful performance tuning and to understand the scalability challenges faced by when processing Big Data. This unit builds upon the second' year DATA2001 - 'Data Science - Big Data and Data Diversity' and correspondingly assumes a sound understanding of SQL and data analysis tasks.
The first part of this subject focuses on mechanisms for large-scale data management. It provides a deep understanding of the internal components of a data management platform. Topics include: physical data organization and disk-based index structures, query processing and optimisation, and database tuning.
The second part focuses on the large-scale management of big data in a distributed architecture. Topics include: distributed and replicated databases, information retrieval, data stream processing, and web-scale data processing.
The unit will be of interest to students seeking an introduction to data management tuning, disk-based data structures and algorithms, and information retrieval. It will be valuable to those pursuing such careers as Software Engineers, Data Engineers, Database Administrators, and Big Data Platform specialists.
INFO3315 Human-Computer Interaction

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratories Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This is a first subject in HCI, Human Computer Interaction. It is designed for students who want to be involved in one of the many roles required to create future technology. There are three main parts: the human foundations from psyschology and physiology; HCI methods for design and evaluation of interfaces; leading edge directions for technologies.
This subject is highly multi-disciplinary. At the core, it is a mix of Computer Science Software Engineering combined with the design discipline, UX - User Experience. It draws on psychology, both for relevant theories and user study methods. The practical work is human-centred with project work that motivates the formal curriculum. This year the projects will be in area of health and wellness.
INFO3406 Introduction to Data Analytics

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratories Prerequisites: (MATH1005 OR MATH1905) AND (INFO2120 OR INFO2820). Assumed knowledge: Basic statistics and database management. Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
Big Data refers to datasets that are massive, heterogenous, and dynamic that are beyond current approaches for the capture, storage, management, and analysis of the data. The focus of this unit is on understanding and applying relevant concepts, techniques, algorithms, and tools for the analysis, management and visualization of big data - with the goal of keeping abreast of the continual increase in the volume and complexity of data sets and enabling discovery of information and knowledge to guide effective decision making.
INFO3616 Principles of Security and Security Eng

Credit points: 6 Session: Semester 1 Classes: lectures, tutorials, research Prohibitions: ELEC5616 Assumed knowledge: INFO1110 AND INFO1112 AND INFO1113 AND MATH1064. Knowledge equivalent to the above units is assumed; this means good programming skills in Python or a C-related language, basic networking knowledge, skills from discrete mathematics. A technical orientation is expected. Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides an introduction to the many facets of security in the digital and networked world, the challenges that IT systems face, and the design principles that have been developed to build secure systems and counter attacks. The unit puts the focus squarely on providing a thorough understanding of security principles and engineering for security. At the same time, we stress a hands-on approach to teach the state-of-the-art incarnations of security principles and technology, and we practice programming for security. We pay particular attention to the fact that security is much more than just technology as we discuss the fields of usability in security, operational security, and cyber-physical systems. At the end of this unit, graduates are prepared for practical demands in their later careers and know how to tackle new, yet unforeseen challenges.
This unit also serves as the initial step for a specialisation in computer and communications security.
ISYS3400 Information Systems Project

Credit points: 6 Session: Semester 2 Classes: Project Work - in class, Project Work - own time, Site Visits, Meetings Prerequisites: (INFO2110 OR ISYS2110) AND (INFO2120 OR ISYS2120) AND (ISYS2140 OR ISYS2160) Prohibitions: INFO3600 or ISYS3207 Assessment: Through semester assessment (80%) and Final Exam (20%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will provide students an opportunity to apply the knowledge and practise the skills acquired in the prerequisite and qualifying units, in the context of a substantial information systems research or development project and to experience in a realistic way many aspects of analysing and solving information systems problems. Since information systems projects are often undertaken by small teams, the experience of working in a team is seen as an important feature of the unit. Students often find it difficult to work effectively with others and will benefit from the opportunity provided by this unit to further develop this skill.
ISYS3401 Information Technology Evaluation

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Prerequisites: (INFO2110 OR ISYS2110) AND (INFO2120 OR ISYS2120) AND (ISYS2140 OR ISYS2160) Assumed knowledge: INFO2110 and ISYS2140 Assessment: Through semester assessment (35%) and Final Exam (65%) Mode of delivery: Normal (lecture/lab/tutorial) day
Information Systems (IS) professionals in today's organisations are required to play leadership roles in change and development. Your success in this field will be aided by your being able to carry out research-based investigations using suitable methods and mastery over data collection and analysis to assist in managing projects and in decision making. Practical research skills are some of the most important assets you will need in your career.
This unit of study will cover important concepts and skills in practical research for solving and managing important problems. This will also provide you with the skills to undertake the capstone project in the IS project unit of study offered in Semester 2 or other projects. It will also provide hand-on experience of using Microsoft Excel and other tools to perform some of the quantitative analysis.
ISYS3402 Decision Analytics and Support Systems

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratories, Project Work - own time Prerequisites: (ISYS2110 OR INFO2110) AND (ISYS2120 OR INFO2120) Assumed knowledge: Database Management AND Systems Analysis and Modelling Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
With the rapid increases in the volume and variety of data available, the problem of providing effective support to facilitate good decision making has become more challenging. This unit of study will provide a comprehensive understanding the diverse types of decision and the decision making processes. It will introduce decision modelling and the design and implementation of application systems to support decision making in organisational contexts. It will include a range of business intelligence and analytics solutions based on online analytical processing (OLAP) models and technologies. The unit will also cover a number of modelling approaches (optimization, predictive, descriptive) and their integration in the context of enabling improved, data-driven decision making.
SOFT3202 Software Construction and Design 2

Credit points: 6 Session: Semester 1 Classes: lectures, laboratories Prerequisites: SOFT2201 Prohibitions: INFO3220 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit is a sequel of Software Construction and Design I (SOFT2301). It introduces advanced concepts which build on the topics of SOFT2301. SOFT3302 covers topics including software validation and verification, the theory of testing, and advanced design patterns. The unit has a strong focus on the theoretical underpinning of software design. I the labs the theory is applied with contemporary tools with concrete examples.
SOFT3410 Concurrency for Software Development

Credit points: 6 Session: Semester 2 Classes: lectures, laboratories Prerequisites: (INFO1105 OR INFO1905) OR ((INFO1103 OR INFO1113) AND (COMP2123 OR COMP2823)) Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
The manufacturing industry has experienced a radical shift in the way they design computers, with the integration of multiple processors on the same chip. This hardware shift now requires software developers to acquire the skills that will allow them to write efficient concurrent software. Software developers used to wait for manufacturers to increase the clock frequency of their processors to see increases in the performance of their programs, the challenge is now to exploit, in the same program, more and more processing resources rather than faster processing resources. In this unit, you will learn how to tackle the problems underlying this challenge, including developing and testing concurrent programs, synchronizing resources between concurrent threads, overcoming fairness issues and guaranteeing progress, and ensuring scalability in the level of concurrency.
SOFT3413 Software Development Project

Credit points: 6 Session: Semester 2 Classes: project work, site visits, meetings Prerequisites: 18CP 2000-level or above units from SOFT, COMP or INFO Assumed knowledge: SOFT3202 Assessment: through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit will provide students an opportunity to apply the knowledge and practice the skills acquired in the prerequisite and qualifying units, in the context of designing and building a substantial software development system in diverse application domains including life sciences. Working in groups for an external client combined with academic supervision, students will need to carry out the full range of activities including requirements capture, analysis and design, coding, testing and documentation. Students will use the XP methodology and make use of professional tools for the management of their project.
DATA3001 Data Science Capstone Project will be available from 2019.
DATA3406 Human-in-the-Loop Data Analytics will replace INFO3406 Introduction to Data Analytics from 2019.

4000-level units of study

INFO4003 Thesis B (extension) will be available from 2019.

5000-level units of study

COMP5045 Computational Geometry

Credit points: 6 Session: Semester 1 Classes: Project Work Assumed knowledge: Students are assumed to have a basic knowledge of the design and analysis of algorithms and data structures: you should be familiar with big-O notations and simple algorithmic techniques like sorting, binary search, and balanced search trees. Assessment: Through semester assessment (72%) and Final Exam (28%) Mode of delivery: Normal (lecture/lab/tutorial) day
In many areas of computer science- robotics, computer graphics, virtual reality, and geographic information systems are some examples- it is necessary to store, analyse, and create or manipulate spatial data. This course deals with the algorithmic aspects of these tasks: we study techniques and concepts needed for the design and analysis of geometric algorithms and data structures. Each technique and concept will be illustrated on the basis of a problem arising in one of the application areas mentioned above.
COMP5046 Natural Language Processing

Credit points: 6 Session: Semester 1 Classes: Lectures, Laboratory Assumed knowledge: Knowledge of an OO programming language Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit introduces computational linguistics and the statistical techniques and algorithms used to automatically process natural languages (such as English or Chinese). It will review the core statistics and information theory, and the basic linguistics, required to understand statistical natural language processing (NLP).
Statistical NLP is used in a wide range of applications, including information retrieval and extraction; question answering; machine translation; and classifying and clustering of documents. This unit will explore the key challenges of natural language to computational modelling, and the state of the art approaches to the key NLP sub-tasks, including tokenisation, morphological analysis, word sense representation, part-of-speech tagging, named entity recognition and other information extraction, text categorisation, phrase structure parsing and dependency parsing.
Students will implement many of these sub-tasks in labs and assignments. The unit will also investigate the annotation process that is central to creating training data for statistical NLP systems. Students will annotate data as part of completing a real-world NLP task.
COMP5047 Pervasive Computing

Credit points: 6 Session: Semester 2 Classes: Studio class Assumed knowledge: 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. Assessment: Through semester assessment (60%) and Final Exam (40%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This is an advanced course on Pervasive Computing, with a focus on the "Internet of Things" (IoT). It introduces the key aspects of the IoT and explores these in terms of the new research towards creating user interfaces that disappear into the environment and are available pervasively, for example in homes, workplaces, cars and carried.
COMP5048 Visual Analytics

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials Assumed knowledge: It is assumed that students will have basic knowledge of data structures, algorithms and programming skills. Assessment: Through semester assessment (60%) and Final Exam (40%) Mode of delivery: Normal (lecture/lab/tutorial) day
Visual Analytics aims to facilitate the data analytics process through Information Visualisation. Information Visualisation aims to make good pictures of abstract information, such as stock prices, family trees, and software design diagrams. Well designed pictures can convey this information rapidly and effectively.
The challenge for Visual Analytics is to design and implement effective Visualisation methods that produce pictorial representation of complex data so that data analysts from various fields (bioinformatics, social network, software visualisation and network) can visually inspect complex data and carry out critical decision making.
This unit will provide basic HCI concepts, visualisation techniques and fundamental algorithms to achieve good visualisation of abstract information. Further, it will also provide opportunities for academic research and developing new methods for Visual Analytic methods.
COMP5216 Mobile Computing

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials Assumed knowledge: COMP5214 OR COMP9103. Software Development in JAVA, or similar introductory software development units. Assessment: Through semester assessment (45%) and Final Exam (55%) Mode of delivery: Normal (lecture/lab/tutorial) day
Mobile computing is becoming a main stream for many IT applications, due to the availability of more and more powerful and affordable mobile devices with rich sensors such as cameras and GPS, which have already significantly changed many aspects in business, education, social network, health care, and entertainment in our daily life. Therefore it has been critical for students to be equipped with sufficient knowledge of such new computing platform and necessary skills. The unit aims to provide an in-depth overview of existing and emerging mobile computing techniques and applications, the eco-system of the mobile computing platforms, and its key building components. The unit will also train students with hand-on experiences in developing mobile applications in a broad range of areas.
COMP5313 Large Scale Networks

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assumed knowledge: Algorithmic skills (as expected from any IT graduate). Basic probability knowledge. Assessment: Through semester assessment (60%) and Final Exam (40%) Mode of delivery: Normal (lecture/lab/tutorial) day
The growing connected-ness of modern society translates into simplifying global communication and accelerating spread of news, information and epidemics. The focus of this unit is on the key concepts to address the challenges induced by the recent scale shift of complex networks. In particular, the course will present how scalable solutions exploiting graph theory, sociology and probability tackle the problems of communicating (routing, diffusing, aggregating) in dynamic and social networks.
COMP5318 Machine Learning and Data Mining

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assumed knowledge: INFO2110 OR ISYS2110 OR COMP9120 OR COMP5138 Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
Machine learning is the process of automatically building mathematical models that explain and generalise datasets. It integrates elements of statistics and algorithm development into the same discipline. Data mining is a discipline within knowledge discovery that seeks to facilitate the exploration and analysis of large quantities for data, by automatic and semiautomatic means. This subject provides a practical and technical introduction to machine learning and data mining.
Topics to be covered include problems of discovering patterns in the data, classification, regression, feature extraction and data visualisation. Also covered are analysis, comparison and usage of various types of machine learning techniques and statistical techniques.
COMP5328 Advanced Machine Learning

Credit points: 6 Session: Semester 2 Classes: Lectures, tutorials Assumed knowledge: COMP5318 Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
Machine learning models explain and generalise data. This course introduces some fundamental machine learning concepts, learning problems and algorithms to provide understanding and simple answers to many questions arising from data explanation and generalisation. For example, why do different machine learning models work? How to further improve them? How to adapt them to different purposes?
The fundamental concepts, learning problems and algorithms are carefully selected. Many of them are closely related to practical questions of the day, such as transfer learning, learning with label noise and multi-view learning.
COMP5329 Deep Learning

Credit points: 6 Session: Semester 1 Classes: Tutorials, Lectures Assumed knowledge: COMP5318 Assessment: through semester assessment (50%), final exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This course provides an introduction to deep machine learning, which is rapidly emerging as one of the most successful and widely applicable set of techniques across a range of applications. Students taking this course will be exposed to cutting-edge research in machine learning, starting from theories, models, and algorithms, to implementation and recent progress of deep learning. Specific topics include: classical architectures of deep neural network, optimization techniques for training deep neural networks, theoretical understanding of deep learning, and diverse applications of deep learning in computer vision.
COMP5338 Advanced Data Models

Credit points: 6 Session: Semester 2 Classes: Tutorials, Lectures Assumed knowledge: This unit of study assumes foundational knowledge of relational database systems as taught in COMP5138/COMP9120 (Database Management Systems) or INFO2120/INFO2820/ISYS2120 (Database Systems 1). Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study gives a comprehensive overview of post-relational data models and of latest developments in data storage technology.
Particular emphasis is put on spatial, temporal, and NoSQL data storage. This unit extensively covers the advanced features of SQL:2003, as well as a few dominant NoSQL storage technologies. Besides in lectures, the advanced topics will be also studied with prescribed readings of database research publications.
COMP5347 Web Application Development

Credit points: 6 Session: Semester 1 Classes: Lectures, Laboratory, Project Work Assumed knowledge: COMP9220 or COMP5028. The course assumes basic knowledge on OO design and proficiency in a programming language Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
Nowadays most client facing enterprise applications are running on web or at least with a web interface. The design and implementation of a web application require totally different set of skills to those are required for traditional desktop applications. All web applications are of client/ server architecture. Requests sent to a web application are expected to go through the public Internet, which slows the responsiveness and increases the possible security threat. A typical web application is also expected to handle large number of requests coming from every corner of the Internet and sent by all sorts of client systems. This further complicates the design of such system.
This course aims at providing both conceptual understanding and hand-on experiences for the technologies used in building web applications. We will examine how data/messages are communicated between client and server; how to improve the responsiveness using rich client technology; as well as how to build a secure web application.
At the end of this course, students are expected to have a clear understanding of the structure and technologies of web applications. Students are also expected to have practical knowledge of some major web application environments and to be able to develop and deploy simple web applications. Cloud based platform are increasingly popular as the development and deployment platform. This course will incorporate the cloud aspect of web application development as well.
COMP5348 Enterprise Scale Software Architecture

Credit points: 6 Session: Semester 1 Classes: Lectures, Laboratory Assumed knowledge: Programming competence in Java or similar OO language. Capacity to master novel technologies (especially to program against novel APIs) using manuals, tutorial examples, etc. Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit covers topics on software architecture for large-scale enterprises. Computer systems for large-scale enterprises handle critical business processes, interact with computer systems of other organisations, and have to be highly reliable, available and scalable. This class of systems are built up from several application components, incorporating existing "legacy" code and data stores as well as linking these through middleware technologies, such as distributed transaction processing, remote objects, message-queuing, publish-subscribe, and clustering. The choice of middleware can decide whether the system achieves essential non- functional requirements such as performance and availability. The objective of this unit of study is to educate students for their later professional career and it covers Software Architecture topics of the ACM/IEEE Software Engineering curriculum. Objective: The objective of this unit of study is to educate students for their later professional career and it covers topics of the ACM/IEEE Software Engineering curriculum.
COMP5349 Cloud Computing

Credit points: 6 Session: Semester 1 Classes: Lectures, Practical Labs, Project Work Assumed knowledge: Good programming skills, especially in Java for the practical assignment, as well as proficiency in databases and SQL. The unit is expected to be taken after introductory courses in related units such as COMP5214 or COMP9103 Software Development in JAVA Assessment: Through semester assessment (45%) and Final Exam (55%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit covers topics of active and cutting-edge research within IT in the area of 'Cloud Computing'.
Cloud Computing is an emerging paradigm of utilising large-scale computing services over the Internet that will affect individual and organization's computing needs from small to large. Over the last decade, many cloud computing platforms have been set up by companies like Google, Yahoo!, Amazon, Microsoft, Salesforce, Ebay and Facebook. Some of the platforms are open to public via various pricing models. They operate at different levels and enable business to harness different computing power from the cloud.
In this course, we will describe the important enabling technologies of cloud computing, explore the state-of-the art platforms and the existing services, and examine the challenges and opportunities of adopting cloud computing. The course will be organized as a series of presentations and discussions of seminal and timely research papers and articles. Students are expected to read all papers, to lead discussions on some of the papers and to complete a hands-on cloud-programming project.
COMP5415 Multimedia Design and Authoring

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides principles and practicalities of creating interactive and effective multimedia products. It gives an overview of the complete spectrum of different media platforms and current authoring techniques used in multimedia production. Coverage includes the following key topics: enabling multimedia technologies; multimedia design issues; interactive 2D and 3D computer animation; multimedia object modelling and rendering; multimedia scripting programming; post-production and delivery of multimedia applications.
COMP5416 Advanced Network Technologies

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratory Assumed knowledge: ELEC3506 OR ELEC9506 OR ELEC5740 OR COMP5116 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
The unit introduces networking concepts beyond the best effort service of the core TCP/IP protocol suite. Understanding of the fundamental issues in building an integrated multi-service network for global Internet services, taking into account service objectives, application characteristics and needs and network mechanisms will be discussed. Enables students to understand the core issues and be aware of proposed solutions so they can actively follow and participate in the development of the Internet beyond the basic bit transport service.
COMP5424 Information Technology in Biomedicine

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
Information technology (IT) has significantly contributed to the research and practice of medicine, biology and health care. The IT field is growing enormously in scope with biomedicine taking a lead role in utilising the evolving applications to its best advantage. The goal of this unit of study is to provide students with the necessary knowledge to understand the information technology in biomedicine. The major emphasis will be on the principles associated with biomedical digital imaging systems and related biomedicine data processing, analysis, visualisation, registration, modelling, retrieval and management. A broad range of practical integrated clinical applications will be also elaborated.
COMP5425 Multimedia Retrieval

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assumed knowledge: COMP9007 or COMP5211. Basic Programming skills and data structure knowledge. Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
The explosive growth of multimedia data, including text, audio, images and video has imposed unprecedented challenges for search engines to meet various information needs of users. This unit provides students with the necessary and updated knowledge of this field in the context of big data, from the information retrieval basics of a search engine, to many advanced techniques towards next generation search engines, such as content based image and video retrieval, large scale visual information retrieval, and social media.
COMP5426 Parallel and Distributed Computing

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assessment: Through semester assessment (45%) and Final Exam (55%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit is intended to introduce and motivate the study of high performance computer systems. The student will be presented with the foundational concepts pertaining to the different types and classes of high performance computers. The student will be exposed to the description of the technological context of current high performance computer systems. Students will gain skills in evaluating, experimenting with, and optimising the performance of high performance computers. The unit also provides students with the ability to undertake more advanced topics and courses on high performance computing.
COMP5427 Usability Engineering

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratory Assessment: Through semester assessment (60%) and Final Exam (40%) Mode of delivery: Normal (lecture/lab/tutorial) day
Usability engineering is the systematic process of designing and evaluating user interfaces so that they are usable. This means that people can readily learn to use them efficiently, can later remember how to use them and find it pleasant to use them. The wide use of computers in many aspects of people's lives means that usability engineering is of the utmost importance.
There is a substantial body of knowledge about how to elicit usability requirements, identify the tasks that a system needs to support, design interfaces and then evaluate them. This makes for systematic ways to go about the creation and evaluation of interfaces to be usable for the target users, where this may include people with special needs. The field is extremely dynamic with the fast emergence of new ways to interact, ranging from conventional WIMP interfaces, to touch and gesture interaction, and involving mobile, portable, embedded and desktop computers.
This unit will enable students to learn the fundamental concepts, methods and techniques of usability engineering. Students will practice these in small classroom activities. They will then draw them together to complete a major usability evaluation assignment in which they will design the usability testing process, recruit participants, conduct the evaluation study, analyse these and report the results
DATA5207 Data Analysis in the Social Sciences

Credit points: 6 Session: Semester 1 Classes: lectures, laboratories Assumed knowledge: COMP5310 Assessment: through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
Data science is a new, rapidly expanding field. There is an unprecedented demand from technology companies, financial services, government and not-for-profits for graduates who can effectively analyse data. This subject will help students gain a critical understanding of the strengths and weaknesses of quantitative research, and acquire practical skills using different methods and tools to answer relevant social science questions.
This subject will offer a nuanced combination of real-world applications to data science methodology, bringing an awareness of how to solve actual social problems to the Master of Data Science. We cover topics including elections, criminology, economics and the media. You will clean, process, model and make meaningful visualisations using data from these fields, and test hypotheses to draw inferences about the social world.
Techniques covered range from descriptive statistics and linear and logistic regression, the analysis of data from randomised experiments, model selection for prediction and classification tasks, to the analysis of unstructured text as data, multilevel and geospatial modelling, all using the open source program R. In doing this, not only will we build on the skills you have already mastered through this degree, but explore different ways to use them once you graduate.
ELEC5306 Advanced Signal Processing: Video Compression

Credit points: 6 Session: Semester 1 Classes: lectures, laboratories Assumed knowledge: Basic understanding of digital signal processing (filtering, DFT) and programing skills (e.g. Matlab/Java/Python/C++) Assessment: Through semester assessment (40%), Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study introduces digital image and video compression algorithms and standards. This course mainly focuses on fundamental and advanced methods for digital video compression. It covers the following areas: digital video fundamentals, digital image and video compression standards, and video codec optimization.
ELEC5307 Advanced Signal Processing with Deep Learning

Credit points: 6 Session: Semester 2 Classes: Lectures, laboratories Assumed knowledge: Mathematics (e.g., probability and linear algebra) and programing skills (e.g. Matlab/Java/Python/C++) Assessment: Through semester assessment (40%), Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study introduces deep learning for a broad range of multi-dimensional signal processing applications. It covers deep learning technologies for image super-resolution and restoration, image categorization, object localization, image segmentation, face recognition, person detection and re-identification, human pose estimation, action recognition, object tracking as well as image and video captioning.
ELEC5508 Wireless Engineering

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials, Laboratories Assumed knowledge: Basic knowledge in probability and statistics, analog and digital communications, error probability calculation in communications channels, and telecommunications network. Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will introduce the key ideas in modern wireless telecommunications networks. It will address both physical layer issues such as propagation and modulation, plus network layer issues such as capacity, radio resource management and mobility management issues.
The following topics are covered. Wireless channel: Multipath fading, frequency selective fading, Doppler spread, statistical models, diversity, GSM, OFDM. Capacity and Interference: Cell types, coverage, frequency reuse, interference management, SIMO, MISO, multiuser diversity, CDMA, OFDMA, beamforming, superposition coding. MIMO: SVD, waterfilling, beamforming, V-BLAST, SIC, MMSE, Power Allocation. LTE/LTE-Advanced: Uplink-downlink channels, control signals, data transmission, spatial multiplexing, CoMP, spectrum reuse, heterogeneous networks, inter-cell interference coordination, carrier aggregation. Queueing theory: basic models, queueing systems, waiting time, delay, queue length, priority queues, wireless network virtualization (WNV) queues.
ELEC5509 Mobile Networks

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assumed knowledge: Basically, students need to know the concepts of data communications and mobile communications, which could be gained in one the following units of study: ELEC3505 Communications, ELEC3506 Data Communications and the Internet, or similar units. If you are not sure, please contact the instructor. Assessment: Through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study serves as an introduction to communications network research. The unit relies on a solid understanding of data communications and mobile networks. It introduces some of the currently most debated research topics in mobile networking and presents an overview of different technical solutions. Students are expected to critically evaluate these solutions in their context and produce an objective analysis of the advantages/disadvantages of the different research proposals. The general areas covered are wireless Internet, mobility management, quality of service in mobile and IP networks, ad hoc networks, and cellular network architectures.
The following topics are covered. Introduction to wireless and mobile Internet. Wireless cellular data networks. Cellular mobile networks. Mobile networks of the future. Quality of service in a mobile environment. Traffic modelling for wireless Internet. Traffic management for wireless Internet. Mobility management in mobile networks. Transport protocols for mobile networks. Internet protocols for mobile networks.
ELEC5514 Networked Embedded Systems

Credit points: 6 Session: Semester 2 Classes: Lectures, Laboratories Prerequisites: ELEC5509 Assumed knowledge: ELEC3305, ELEC3506, ELEC3607 and ELEC5508 Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit aim to teach the fundamentals concepts associated with: Networked Embedded Systems, wireless sensor networks; Wireless channel propagation and radio power consumption; Wireless networks, ZigBee, Bluetooth, etc. ; Sensor principle, data fusion, source detection and identification; Multiple source detection, multiple access communications; Network topology, routing, network information theory; Distributed source channel coding for sensor networks; Power-aware and energy-aware communication protocols; Distributed embedded systems problems such as time synchronization and node localisation; Exposure to several recently developed solutions to address problems in wireless sensor networks and ubiquitous computing giving them a well-rounded view of the state-of the-art in the networked embedded systems field.
Student involvement with projects will expose them to the usage of simulators and/or programming some types of networked embedded systems platforms.
Ability to identify the main issues and trade-offs in networked embedded systems; Understanding of the state-of-the-art solutions in the area; Based on the above understanding, ability to analyse requirements and devise first-order solutions for particular networked embedded systems problems; Familiarisation with a simulator platform and real hardware platforms for network embedded systems through the students involvement in projects.
ELEC5616 Computer and Network Security

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials, Laboratories, Project Work - own time Assumed knowledge: A programming language, basic maths. Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit examines the basic cryptographic building blocks of security, working through to their applications in authentication, key exchange, secret and public key encryption, digital signatures, protocols and systems. It then considers these applications in the real world, including models for integrity, authentication, electronic cash, viruses, firewalls, electronic voting, risk assessment, secure web browsers and electronic warfare. Practical cryptosystems are analysed with regard to the assumptions with which they were designed, their limitations, failure modes and ultimately why most end up broken.
ELEC5618 Software Quality Engineering

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assumed knowledge: You are capable of writing programs with multiple functions or methods in multiple files. You are capable of design complex data structures and combine them in non trivial algorithms. You know how to use an integrated development environment. You are familiar and have worked previously with software version control systems. You know how to distribute the workload derived from the unit of study effectively throughout the week and make sure that time is truly productive. Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will cover software quality planning, validation and verification methods and techniques, risk analysis, software review techniques, software standards and software process improvement and software reliability.
Students who successfully complete this unit will understand the fundamental concepts of software quality engineering and be able to define software quality requirements, assess the quality of a software design, explain specific methods of building software quality, understand software reliability models and metrics, develop a software quality plan, understand quality assurance and control activities and techniques, understand various testing techniques including being able to verify and test a unit of code and comprehend ISO standards, SPICE, CMM and CMMI.
ELEC5619 Object Oriented Application Frameworks

Credit points: 6 Session: Semester 2 Classes: Project Work - in class, Project Work - own time, Presentation, Tutorials Assumed knowledge: Java programming, and some web development experience are essential. Databases strongly recommended Assessment: Through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit aims to introduce students to the main issues involved in producing large Internet systems by using and building application frameworks. Frameworks allow great reuse so developers do not have to design and implement applications from scratch, as students have done in ELEC3610 The unit lays down the basic concepts and hands on experience on the design and development of enterprise systems, emphasizing the development of systems using design patterns and application frameworks.
A project-based approach will introduce the problems often found when building such systems, and will require students to take control of their learning. A project-based approach will introduce the problems often found when building such systems, and will require students to take control of their learning. Several development Java frameworks will be used, including Spring, Hibernate, and others. Principles of design patterns will also be studied.
ELEC5620 Model Based Software Engineering

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials, Laboratories, Project Work - in class, Project Work - own time Assumed knowledge: A programming language, basic maths. Assessment: Through semester assessment (80%) and Final Exam (20%) Mode of delivery: Normal (lecture/lab/tutorial) day
Model-Based Software Engineering focuses on modern software engineering methods, technologies, and processes used in professional development projects. It covers both the pragmatic engineering elements and the underlying theory of the model-based approach to the analysis, design, implementation, and maintenance of complex software-intensive systems.
Students will participate in a group project, which will entail developing and/or evolving a software system, following a full development cycle from requirements specification through to implementation and testing using up-to-date industrial development tools and processes. At the end of the course they will provide a presentation and demonstration of their project work to the class. There is no formal teaching of a programming language in this unit, although students will be expected to demonstrate through their project work their general software engineering and architectural skills as well as their mastery of model-based methods and technologies.
Students successfully completing this unit will have a strong practical and theoretical understanding of the modern software development cycle as applied in industrial settings. In particular, they will be familiar with the latest model-based software engineering approaches necessary for successfully dealing with today's highly complex and challenging software systems.
The pedagogic grounds for this course and its focus on model-based approaches are to arm new software engineers with skills and perspectives that extend beyond the level of basic programming. Such skills are essential to success in software development nowadays, and are in great demand but very low supply. The dearth of such expertise is one of the key reasons behind the alarmingly high failure rate of industrial software projects (currently estimated at being greater than 40%). Therefore, this unit complements SQE and strengthens a key area in the program.
INFO5010 IT Advanced Topic A

Credit points: 6 Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit will cover some topic of active and cutting-edge research within IT; the content of this unit may be varied depending on special opportunities such as a distinguished researcher visiting the University.
INFO5011 IT Advanced Topic B

Credit points: 6 Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
This unit will cover some topic of active and cutting-edge research within IT; the content of this unit may be varied depending on special opportunities such as a distinguished researcher visiting the University.
INFO5991 Services Science Management and Engineering

Credit points: 6 Session: Semester 1,Semester 2 Classes: Lectures, Seminars Assumed knowledge: INFO5990. Students are expected to have a degree in computer science, engineering, information technology, information systems or business. Assessment: Through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
The service economy plays a dominant and growing role in economic growth and employment in most parts of the world. Increasingly, the improved productivity and competitive performance of firms and nations in services relies on innovative and effective design, engineering, and management of IT-centric services.
This unit offers IT graduates and professionals an understanding of the role of IT-centric services in a social, economic and business context, as well as knowledge of the principles of their design, engineering and management in a service-oriented IT framework. Delivery of the unit is driven by a critical approach to the literature, live case studies presented by industry professionals and writing a Consultants' Report. Its learning outcomes are based on industry needs. Three modules address the range of topics in Services Science, Management and Engineering (SSME).
1. Service fundamentals context and strategy: the service economy and the nature of service systems; the role IT-centric services in a social, economic and business context; IT-centric services optimisation and innovation.
2. Designing and Engineering IT-centric services: service design; service oriented enterprise and IT architecture.
3. Sourcing, governing, and managing IT-centric services: outsourcing IT-centric services (including services in the cloud); IT-centric services governance and management (COBIT and ITIL; service level agreements.
Critical analysis of articles and the persuasive use of evidence in writing are cornerstones of the unit. Students learn how to apply these skills in business consulting processes to a business case drawn from a recent consulting project at a large multinational organisation. The processes include:clarifying the client's situation and problems, researching evidence related to it, analysing the evidence, developing options for solving the problems, presenting recommendations persuasively to the client both orally and in a written Consultants' Report. These steps are scaffolded for the student, with formative assessment, and increasing levels of difficulty.
Students need to be able to read, critically analyse, and report on an article or case study every three weeks. If you are not confident of your skills in these areas, you can enroll in the free courses provided by the University's Learning Centre in Academic Reading and Writing and Oral Communication Skills. Some of these courses are specifically designed for students with a non-English speaking background. Familiarity with using Library reference tools and the ability to locate scholarly resources in the Library's electronic databases is also necessary. See the Library's Research and information skills page for help with this http://www.library.usyd.edu.au/skills/
INFO5992 Understanding IT Innovations

Credit points: 6 Session: Semester 1,Semester 2 Classes: Lectures, Tutorials Prohibitions: PMGT5875 Assumed knowledge: INFO5990 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
An essential skill for an IT manager is the ability to keep up-to-date with emerging technologies, and be able to evaluate the significance of these technologies to their organisation's business activities. This unit of study is based around a study of current technologies and the influence of these technologies on business strategies.
Important trends in innovation in IT are identified and their implications for innovation management explored. Major topics include: drivers of innovation; the trend to open information ("open source") rather than protected intellectual property; and distribution of innovation over many independent but collaborating actors.
On completion of this unit, students will be able to identify and analyse an emerging technology and write a detailed evaluation of the impact of this technology on existing business practices.
INFO6010 Advanced Topics in IT Project Management

Credit points: 6 Session: Semester 2 Classes: Lectures, Tutorials (applied workshop), E-Learning Prerequisites: INFO6007, OR 3-5 years working experience in IT Project Management Assumed knowledge: Students are assumed to understand the role of IT projects. Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will explore the limitations of IT project management and the most promising techniques to overcome project failure. It will start by reviewing case study research showing we have reached the limits of traditional IT project management practice. The theoretical base will be completed by exploring the finding that senior management have more impact on success than traditional approaches.
Participants will be introduced to and learn to apply the most promising tools and techniques needed to govern IT projects. The topics reviewed will include: 1) Strategy; 2) Organisational change; 3) Project sponsorship; 4) Programme management; 5) Performance measurement; 6) Culture; 7) Portfolio management; 8) Relevant Australian and International Standards on IT/Project Governance and new industry methodologies around portfolio, programme and change management will be reviewed.
INFO5993 IT Research Methods

Credit points: 6 Session: Semester 1,Semester 2 Classes: Seminars Assessment: Through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will provide an overview of the different research methods that are used in IT. Students will learn to find and evaluate research on their topic and to present their own research plan or results for evaluation by others. The unit will develop a better understanding of what research in IT is and how it differs from other projects in IT. Students will learn research ethics. This unit of study is required for students in IT who are enrolled in a research project as part of their Honours or MIT/MITM degree. It is also recommended for students enrolled or planning to do a research degree in IT and Engineering.
ISYS5050 Knowledge Management Systems

Credit points: 6 Session: Semester 1 Classes: Lectures, Tutorials Assumed knowledge: An undergraduate degree in Computer Science or Information Systems. Good grasp of database technologies and the role of information systems in organisations. Assessment: Through semester assessment (100%) Mode of delivery: Normal (lecture/lab/tutorial) day
The need to track and facilitate the sharing of the core knowledge resources in contemporary organisations is widely recognised. This course will provide a comprehensive introduction to the area of Knowledge Management (KM) from both technological and organisational perspectives. We will review and discuss a range of published papers, case studies, and other publications that deal with a range of important KM-related topics. One of the key knowledge management technologies, Business Intelligence Systems, will be covered in detail. It will also include hands-on work using the BI (Online Analytical Processing- OLAP) tool, COGNOS.
Some of the main themes to be covered will include: KM- Conceptual Foundations; Taxonomies of organizational knowledge and KM mechanisms; Case/Field Studies of KM Initiatives; Data Warehousing and OLAP/Business Analytics; Data, text, and web mining; Social media,crowdsourcing, and KM; Big data and actionable knowledge.


For a standard enrolment plan for Bachelor of Information Technology visit CUSP https://cusp.sydney.edu.au.