Note: This unit is an archived version! See Overview tab for delivered versions.
COMP2121: Principles of Distributed Systems and Networks (2011 - Semester 2)
Unit: | COMP2121: Principles of Distributed Systems and Networks (6 CP) |
Mode: | Normal-Day |
On Offer: | Yes |
Level: | Intermediate |
Faculty/School: | School of Computer Science |
Unit Coordinator/s: |
Associate Professor Zhou, Bing Bing
|
Session options: | Semester 2 |
Versions for this Unit: |
Campus: | Camperdown/Darlington |
Pre-Requisites: | INFO1103 AND INFO1105. Introductory Java programming unit, Data Structures |
Co-Requisites: | (COMP2007 OR COMP2907). Algorithms |
Brief Handbook Description: | 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). |
Assumed Knowledge: | None. |
Additional Notes: | 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). |
Lecturer/s: |
Dr Chan, Jason
|
|||||||||||||||
Timetable: | COMP2121 Timetable | |||||||||||||||
Time Commitment: |
|
|||||||||||||||
T&L Activities: | The lectures will provide the theoretical and conceptual foundations of the material. The lab classes will present more specific examples of particular systems and network protocols in detail, with a focus on the programming aspects of the material. The use of these complementary modes of delivery will enhance the students` learning experience, by reinforcing the concepts presented in the lectures with practical examples and realisation of solutions to conceptual problems, and by allowing the students to gain hands-on experience with implementing those solutions. |
Attributes listed here represent the key course goals (see Course Map tab) designated for this unit. The list below describes how these attributes are developed through practice in the unit. See Learning Outcomes and Assessment tabs for details of how these attributes are assessed.
Attribute Development Method | Attribute Developed |
The tasks and assignments in the unit will provide ample opportunity for students to exercise design and problem solving skills, particularly in the programming tasks that will require development of original solutions. The issue of plagiarism will be addressed. | Design and Problem Solving Skills (Level 2) |
The task and assignment give students opportunities to identify, integrate and synthesise knowledge on distributed systems and programming to solve problems under constraints. | Discipline Specific Expertise (Level 2) |
The students will be given various problems that they will need to solve, requiring research of the appropriate background information using resources such as the university library and the Internet. Students will also be required to understand different types of information and its representation and use in distributed systems, and will be exposed to standards that ensure the consistency and quality of such information. | Information Skills (Level 2) |
The students will be required to produce written assignments and reports and develop professional quality, well-documented software that can be understood and reused by other programmers. | Professional Communication (Level 2) |
The students will become familiar with the ethical issues pertaining to the use of large-scale distributed systems, and will understand the risks involved with the access to and processing of large quantities of information and the importance of its security and privacy. | Professional Values, Judgement and Conduct (Level 3) |
For explanation of attributes and levels see Engineering/IT Graduate Attribute Matrix 2009.
Learning outcomes are the key abilities and knowledge that will be assessed in this unit. They are listed according to the course goal supported by each. See Assessment Tab for details how each outcome is assessed.
Design and Problem Solving Skills (Level 2)Assessment Methods: |
|
||||||||||||||||||||||||||||||
Assessment Description: |
The unit will use programming assignments, a mid-term and a final exam. The mid-semester exam and final exam will test the students’ understanding of the theoretical material and concepts and ability to put it in the appropriate context of solving problems. The programming assignments will enable students to develop and test their practical skills and benchmark them against set criteria. |
||||||||||||||||||||||||||||||
Assessment Feedback: | Marks will be awarded for the assignments and mid-term exam and will reflect the students’ understanding of the assessed material and their ability to apply it in a programming task. The tutor(s) will encourage interactive learning and provide an opportunity for students to test their understanding in a classroom setting. The solutions of the assignments will be discussed in the tutorial/lab classes and provide an opportunity for the students to learn by comparing their solutions to the recommended ones. |
||||||||||||||||||||||||||||||
Grading: |
|
||||||||||||||||||||||||||||||
Policies & Procedures: | IMPORTANT: School policy relating to Academic Dishonesty and Plagiarism. In assessing a piece of submitted work, the School of IT may reproduce it entirely, may provide a copy to another member of faculty, and/or to an external plagiarism checking service or in-house computer program and may also maintain a copy of the assignment for future checking purposes and/or allow an external service to do so. Other policies Faculty policies regarding academic honesty and plagiarism, special consideration and appeals in Engineering and Information Technologies can be found on the Faculty's policy page at http://www.eng.usyd.edu.au/policies"> http://www.eng.usyd.edu.au/policies. School and Faculty policies are governed by Academic Board resolutions whose details can be found on the Central Policy Online site at http://www.usyd.edu.au/policy/"> http://www.usyd.edu.au/policy/. Policies regarding assessment formatting, submission methods, late submission penalties and assessment feedback depend on the unit of study. Details of these policies, where applicable, should be found above with other assessment details. |
Prescribed Text/s: |
Note: Students are expected to have a personal copy of all books listed.
|
Recommended Reference/s: |
Note: References are provided for guidance purposes only. Students are advised to consult these books in the university library. Purchase is not required.
|
Note that the "Weeks" referred to in this Schedule are those of the official university semester calendar https://web.timetable.usyd.edu.au/calendar.jsp
Week | Description |
Week 1 | Lecture: Introduction to distributed systems: concepts and abstractions, applications in society |
Week 2 | Lecture: Components of a distributed system: processing, memory, storage, naming and addressing, communication |
Week 3 | Lecture: Naming and addressing |
Week 4 | Lecture: Distributed programming concepts (1): sockets, client-server and peer-to-peer paradigms, application programming interfaces (API) |
Week 5 | Lecture: Distributed programming concepts (2): sockets, client-server and peer-to-peer paradigms, application programming interfaces (API) |
Assessment Due: Programming Assignment 1 | |
Week 6 | Lecture: Parallel and distributed computation techniques: synchronization, serialization, mutual exclusion and locking |
Week 7 | Lecture: Introduction to communication networks: interoperability and scalability, the layer model and functions |
Assessment Due: Mid-Sem Exam | |
Week 8 | Lecture: Resource management in distributed systems and networks (1): dedicated vs shared resources, contention, error control; routing, scheduling and load balancing |
Week 9 | Lecture: Resource management in distributed systems and networks (2): dedicated vs shared resources, contention, error control; routing, scheduling and load balancing |
Week 10 | Lecture: Distributed storage (1): file systems and databases, failures, reliability and consistency |
Week 11 | Lecture: Distributed storage (2): file systems and databases, failures, reliability and consistency |
Assessment Due: Programming Assignment 2 | |
Week 12 | Lecture: Information sharing and implications: vulnerabilities and protection, privacy and security, ethical considerations |
Week 13 | Lecture: Summary and review |
Exam Period | Assessment Due: Final Exam |
Course Relations
The following is a list of courses which have added this Unit to their structure.
Course Goals
This unit contributes to the achievement of the following course goals:
Attribute | Practiced | Assessed |
Design and Problem Solving Skills (Level 2) | Yes | 32.5% |
Discipline Specific Expertise (Level 2) | Yes | 47.5% |
Information Skills (Level 2) | Yes | 12% |
Professional Communication (Level 2) | Yes | 3% |
Professional Values, Judgement and Conduct (Level 3) | Yes | 5% |
These goals are selected from Engineering/IT Graduate Attribute Matrix 2009 which defines overall goals for courses where this unit is primarily offered. See Engineering/IT Graduate Attribute Matrix 2009 for details of the attributes and levels to be developed in the course as a whole. Percentage figures alongside each course goal provide a rough indication of their relative weighting in assessment for this unit. Note that not all goals are necessarily part of assessment. Some may be more about practice activity. See Learning outcomes for details of what is assessed in relation to each goal and Assessment for details of how the outcome is assessed. See Attributes for details of practice provided for each goal.