University of Sydney Handbooks - 2016 Archive

Download full 2016 archive Page archived at: Fri, 13 May 2016 14:40:30 +1000

Computer science engineering unit of study descriptions

COMP – Computer Science Engineering unit of study descriptions

COMP2007 Algorithms and Complexity

Credit points: 6 Teacher/Coordinator: Dr Anastasios Viglas Session: Semester 2 Classes: Lecture 2 hrs/week; Tutorial 2 hrs/week. Prerequisites: INFO1105 or INFO1905. Assumed knowledge: MATH1004 or MATH1904 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides an introduction to the design and analysis of algorithms. The main aims are (i) to learn how to develop algorithmic solutions to computational problem and (ii) to develop understanding of algorithm efficiency and the notion of computational hardness.
Textbooks
Jon Kleinberg and Eva Tardos/Algorithm Design//
COMP2022 Formal Languages and Logic

Credit points: 6 Teacher/Coordinator: A/Prof Kalina Yacef Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. Prerequisites: INFO1103 or INFO1903 Assumed knowledge: MATH1004 or MATH2069 or MATH2969 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit aims at providing a deeper understanding of computing systems and of what computation is in general. It covers two essential theoretical aspects of computer science and gives students the foundations to understand the power as well as the limitations of computers. It covers various abstract models for computation such as finite automata, grammars and regular expressions, and the different classes of formal languages that these models recognize such as regular and context-free languages. It also covers the concept of formal proofs in propositional and predicate logic. The course concludes with Turing machines, as well as the notions of computability and decidability.
COMP2121 Distributed Systems and Network Principles

Credit points: 6 Teacher/Coordinator: Guillaume Jourjon Session: Semester 2 Classes: Lecture 2 hrs/week; Tutorial 2 hrs/week. Prerequisites: (INFO1103 or INFO1903) and (INFO1105 or INFO1905) Corequisites: (COMP2007 OR COMP2907) Assumed knowledge: Introductory Java programming unit, Data Structures, Algorithms Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
Note: The unit will provide the introductory platform for students interested in more advanced units in the area of distributed systems and networks, such as ELEC3506 (Data Communications and the Internet), COMP5116 (Internet Protocols), COMP5416 (Advanced Network Technologies), and COMP5426 (Parallel and Distributed Computing).
The unit will provide a broad introduction to the principles of distributed systems and their design; provide students the fundamental knowledge required to analyse and construct various types of distributed systems; explain the common architectural principles and approaches used in the design of networks at different scales (e.g. shared medium access and routing); introduce the programming skills required for developing distributed applications, and will cover the use of Java class libraries and APIs; cover common approaches and techniques in distributed resource management (e.g. task scheduling).
Textbooks
Tanenbaum & van Steen/Distributed Systems Principles and Paradigms, 2nd edition/2007//
COMP2129 Operating Systems and Machine Principles

Credit points: 6 Teacher/Coordinator: Dr John Stavrakakis, Dr Masahiro Takatsuka Session: Semester 1 Classes: Lecture 2 hrs/week; Laboratory 2 hrs/week. Prerequisites: INFO1103 or INFO1903. Assumed knowledge: INFO1105 OR INFO1905. Assessment: Through semester assessment (60%) and Final Exam (40%) 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.
Textbooks
TBA during first lecture//
COMP2555 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP2556 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP2557 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP2558 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP2591 Advanced Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 1a,Semester 1b,Semester 2,Semester 2a,Semester 2b Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP2592 Advanced Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 1a,Semester 1b,Semester 2,Semester 2a,Semester 2b Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP2907 Algorithms and Complexity (Advanced)

Credit points: 6 Teacher/Coordinator: Dr Anastasios Viglas Session: Semester 2 Classes: Lecture 3 hrs/week; Tutorial 2 hrs/week. Prerequisites: Distinction level result in INFO1105 or INFO1905 Assumed knowledge: MATH1004 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
An advanced alternative to COMP2007; covers material at an advanced and challenging level.



This unit provides an introduction to the design and analysis of algorithms. The main aims are (i) to learn how to develop algorithmic solutions to computational problem and (ii) to develop understanding of algorithm efficiency and the notion of computational hardness.
Textbooks
J. Kleinberg and E. Tardos/Algorithm Design//
COMP3109 Programming Languages and Paradigms

Credit points: 6 Teacher/Coordinator: Dr Ben Lippmeier, Dr Josiah Poon, Dr Bernhard Scholz Session: Semester 2 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week; Independent Study, Prerequisites: COMP2007 or COMP2907 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit provides an introduction to the foundations of programming languages and their implementation. The main aims are to teach what are: grammars, parsers, semantics, programming paradigms and implementation of programming languages.
Textbooks
Michael Scott/Programming Language Pragmatics/Second Edition/2000//
COMP3308 Introduction to Artificial Intelligence

Credit points: 6 Teacher/Coordinator: A/Prof Irena Koprinska Session: Semester 1 Classes: Tutorial 1 hr/week; Lecture 2 hrs/week. Prohibitions: COMP3608 Assumed knowledge: COMP2007. Programing skills (e.g. Java, Python, C, C++, Matlab) Assessment: Through semester assessment (55%) and Final Exam (45%) 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, and knowledge representation. 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.
Textbooks
S. J. Russell and P. Norvig/Artificial Intelligence, A Modern Approach/Third/2010//
COMP3419 Graphics and Multimedia

Credit points: 6 Teacher/Coordinator: Dr Tom Cai Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 2 hrs/week. Prerequisites: (COMP2007 or COMP 2907), and 6 credit points of Junior Math 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 to meet the diverse requirements of application areas such as entertainment, industrial design, virtual reality, intelligent media management, medical imaging 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 Teacher/Coordinator: A/Prof Bing Bing Zhou Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 2 hrs/week. Prerequisites: COMP2129 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will provide a comprehensive dicsussion 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.).
Textbooks
William Stallings/Operating Systems, Internals and Design Principles/Sixth Edition/2009//
COMP3530 Discrete Optimization

Credit points: 6 Teacher/Coordinator: Dr Julian Mestre Session: Semester 2 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. Prerequisites: COMP2007 or COMP2907 Assessment: Through semester assessment (50%) and Final Exam (50%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit introduces students to the algorithmic theory and applications of discrete optimization. The main aims of this unit are: (i) learn how to model various practical problems as abstract optimization problems, (ii) learn the theory underlying efficient algorithms for solving these problems, (iii) learn how to use these tools in practice.
Specific topics include: Linear and integer programming, polyhedral theory, min-cost max-flow problems, approximation algorithms, and fixed parameter tractability.
COMP3556 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP3557 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP3558 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP3559 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP3608 Intro. to Artificial Intelligence (Adv)

Credit points: 6 Teacher/Coordinator: A/Prof Irena Koprinska Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. Prerequisites: Distinction-level results in some 2nd year COMP or MATH or SOFT units. Prohibitions: COMP3308 Assumed knowledge: COMP2007 or COMP2907. Programming skills (e.g. Java, Python, C, C++, Matlab) are required to complete the assignment. Assessment: Through semester assessment (55%) and Final Exam (45%) 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.
Textbooks
S. J. Russell and P. Norvig/Artificial Intelligence - A Modern Approach/Third/2010//
COMP3615 Software Development Project

Credit points: 6 Teacher/Coordinator: Prof Judy Kay Session: Semester 2 Classes: Project Work - in class 2 hrs/week; Site Visit 1 hr/week; Project Work - own time 8 hrs/week; Meeting 1 hr/week. Prerequisites: INFO3402 AND COMP2129 AND (COMP2007 OR COMP2907 OR COMP2121) Prohibitions: INFO3600 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.
COMP4011 Computer Science Honours A

Credit points: 12 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
Students enrolled in the Honours programs study various advanced aspects of Computer Science. The program may include lectures, tutorials, seminars and practicals. They will undertake a research project. Assessment will include the project and may include examinations and classwork.
COMP4012 Computer Science Honours B

Credit points: 12 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
Students enrolled in the Honours programs study various advanced aspects of Computer Science. The program may include lectures, tutorials, seminars and practicals. They will undertake a research project. Assessment will include the project and may include examinations and classwork.
COMP4013 Computer Science Honours C

Credit points: 12 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
Students enrolled in the Honours programs study various advanced aspects of Computer Science. The program may include lectures, tutorials, seminars and practicals. They will undertake a research project. Assessment will include the project and may include examinations and classwork.
COMP4014 Computer Science Honours D

Credit points: 12 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
Note: Department permission required for enrolment
Students enrolled in the Honours programs study various advanced aspects of Computer Science. The program may include lectures, tutorials, seminars and practicals. They will undertake a research project. Assessment will include the project and may include examinations and classwork.
COMP4551 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP4552 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP4553 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP4554 Computer Science Exchange

Credit points: 6 Teacher/Coordinator: Dr Josiah Poon Session: Semester 1,Semester 2 Mode of delivery: Normal (lecture/lab/tutorial) day
This unit of study is for University of Sydney students in the Exchange program studying at an overseas University.
COMP5045 Computational Geometry

Credit points: 6 Teacher/Coordinator: Dr Joachim Gudmundsson Session: Semester 1 Classes: Project Work - in class 12 hrs/week. 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.
Textbooks
M. de Berg, O. Cheong, M. van Kreveld and M. Overmars./Computational Geometry: Algorithms and Application/3rd edition/2008/978-3-540-77973-5//
COMP5046 Statistical Natural Language Processing

Credit points: 6 Teacher/Coordinator: DrJames Curran Session: Semester 1 Classes: Lecture 2 hrs/week; Laboratory 1 hr/week. 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 answer; machine translation; and classifying and clustering of documents. This unit will explore state of the art approaches to the key NLP sub-tasks, including tokenisation, morphological analysis, word sense disambiguation, part-of-speech tagging, named entity recognition, text categorisation, phrase structure and Combinatory Categorial Grammar 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.
Textbooks
Christopher D. Manning & Hinrich Schutze/The Foundations of Statistical Natural Language Processing/1999//
COMP5047 Pervasive Computing

Credit points: 6 Teacher/Coordinator: A/Prof Bob Kummerfeld Session: Semester 2 Classes: Studio class 3 hrs/week. 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 in HCI, Human Computer Interaction, with a focus on Pervasive Computing. It introduces the key aspects of HCI 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 or work.
COMP5048 Visual Analytics

Credit points: 6 Teacher/Coordinator: Dr Masahiro Takatsuka Session: Semester 2 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. 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, Visualisaiton 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 Teacher/Coordinator: Dr Tom Cai Session: Semester 2 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. Assumed knowledge: COMP5214 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 Teacher/Coordinator: Dr Vincent Gramoli Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. 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
Note: Department permission required for enrolment
The growing connectedness 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, game theory and probability tackle the problems of communicating (routing, diffusing, aggregating) in dynamic and social networks.
Textbooks
D. Easly and J. Kleinberg/Networks, Crowds and Markets - Reasoning about a Highly Connected World/2010/978-0-521-19533-1//
COMP5318 Knowledge Discovery and Data Mining

Credit points: 6 Teacher/Coordinator: A/Prof Ramos Fabio Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. Assumed knowledge: INFO9120 OR COMP5138 Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
Knowledge discovery is the process of extracting useful knowledge from data. 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 knowledge discovery and data mining.
Objectives: Topics to be covered include problems of data analysis in databases, discovering patterns in the data, and knowledge interpretation, extraction and visualisation. Also covered are analysis, comparison and usage of various types of machine learning techniques and statistical techniques: clustering, classification, prediction, estimation, affinity grouping, description and scientific visualisation
Textbooks
P.-N. Tan, M. l. Steinbach and V. Kumar/Introduction to Data Mining/2006/0-321-32136-7//
COMP5338 Advanced Data Models

Credit points: 6 Teacher/Coordinator: Dr Ying Zhou Session: Semester 2 Classes: Tutorial 1 hr/week. Assumed knowledge: This unit of study assumes foundational knowledge of relational database systems as taught in COMP5138/ INFO9120 (Database Management Systems) or INFO2120/2820 (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 Teacher/Coordinator: Dr Ying Zhou Session: Semester 1 Classes: Lecture 2 hrs/week; Laboratory 1 hr/week; Project Work - own time 3 hrs/week; Independent Study, Assumed knowledge: INFO9220 or COMP5028. The course assumes basic knowledge on OO design and UML diagrams. Assessment: Through semester assessment (40%) and Final Exam (60%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit will focus on technological advances supporting the development of e-commerce applications and systems. This includes client and server side development of e-commerce applications. AJAX is the core client side technology covered in this course. Both server scripting and server page technology are covered as key server side technology. It will also examine the emerging trend of web services and its role in E-commerce systems. This unit aims at providing both conceptual understanding and hand-on experiences for the technologies covered.
Textbooks
Bryan Basham, Kathy Sierra & Bert Bates/Head First Servlet & JSP/2nd/2008// Leon Shklar and Rich Rosen/Web Application Architecture/2nd/2009//
COMP5348 Enterprise Scale Software Architecture

Credit points: 6 Teacher/Coordinator: Prof Alan Fekete Session: Semester 1 Classes: Lecture 2 hrs/week; Laboratory 1 hr/week. 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 Teacher/Coordinator: A/Prof Uwe Roehm Session: Semester 1 Classes: Lecture 2 hrs/week; Practical Labs 2 hrs/week; Project Work 3 hrs/week. 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 INFO9103 Software Development in JAVA Assessment: Through semester assessment (40%) and Final Exam (60%) 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 Teacher/Coordinator: Prof David Feng, Dr Xiu Ying Wang Session: Semester 2 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. Assumed knowledge: COMP5114 or COMP9419. 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 Teacher/Coordinator: Dr Vincent Gramoli Session: Semester 2 Classes: Lecture 2 hrs/week; Laboratory 1 hr/week. 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.
Textbooks
James F. Kurose, Keith W. Ross/Computer Networks, a top-Down Approach/2013/2012/978-0-273-76896-8//
COMP5424 Information Technology in Biomedicine

Credit points: 6 Teacher/Coordinator: Dr Tom Cai Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. 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 utilizing 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, visualization, registration, modelling, compression, management, communication and security. Specialist areas such as Picture Archiving and Communication Systems (PACS), computer-aided diagnosis (CAD), content-based medical image retrieval (CBMIR), and ubiquitous m-Health, etc. will be addressed. A broad range of practical integrated clinical applications will be also elaborated.
Textbooks
David Dagan Feng/Biomedical Information Technology/First Edition/2008/9780123735836//
COMP5425 Multimedia Retrieval

Credit points: 6 Teacher/Coordinator: Dr Zhiyong Wang Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. 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 generated an extremely challenging job in effective and efficient retrieval techniques demanded by users to meet their information needs. This unit provides students with the most updated knowledge in order to address this issue in the context of big data, from the basics of textual information retrieval, to many advanced techniques in the field, such as large scale retrieval and social media.
Textbooks
D. Feng, W. C. Siu, and H. J. Zhang/Multimedia Information Retrieval and Management-Technological Fundamentals and Applications/2003//
COMP5426 Parallel and Distributed Computing

Credit points: 6 Teacher/Coordinator: A/Prof Bing Bing Zhou Session: Semester 1 Classes: Lecture 2 hrs/week; Tutorial 1 hr/week. Assumed knowledge: COMP5116 Assessment: Through semester assessment (40%) and Final Exam (60%) 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 optimizing 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.
Textbooks
A. Grama, A. Gupta, G. Karypis and V. Kumar/Introduction to Parallel Computing/Second Edition/2003/0 201 64865 2//
COMP5427 Usability Engineering

Credit points: 6 Teacher/Coordinator: Prof Judy Kay Session: Semester 2 Classes: Lecture 2 hrs/week; Laboratory 2 hrs/week. 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.
Textbooks
Hartson, Rex, and Pardha S. Pyla./The UX Book: Process and Guidelines for Ensuring a Quality User Experience./[http://www.theuxbook.net/]/2012//
COMP5456 Introduction to Bioinformatics

This unit of study is not available in 2016

Credit points: 6 Session: Summer Main Classes: Laboratory 2 hrs/week; Lecture 2 hrs/week. Prohibitions: COMP3456 Assumed knowledge: Some experience with basic programming (coding) in Java, C, C++ or Perl; Some proven ability in mathematical or information sciences (as evinced in the prerequisites); Some knowledge of molecular biology either through first year BIOL papers or MBLG1001. Assessment: Through semester assessment (30%) Final Exam (70%) Mode of delivery: Normal (lecture/lab/tutorial) day
This unit brings together a wide range of skills that are routinely practised in bioinformatics, from the 'hard' subjects of mathematics, statistics and computer science, to the 'soft' subjects in the biological / health sciences and pharmacology. The unit covers the essentials of bioinformatics data gathering, manipulation, mining and storage that underpin bioinformatics research. It further provides additional practice in the graduate attributes of Research and Inquiry, Information Literacy and Communication through analysis of scientific research, use of large bioinformatics data sets, and writing of reports.