Course Title: Distributed Systems
Part A: Course Overview
Course Title: Distributed Systems
Credit Points: 12.00
Terms
Course Code |
Campus |
Career |
School |
Learning Mode |
Teaching Period(s) |
COSC1195 |
City Campus |
Postgraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Sem 1 2006, Sem 1 2007, Sem 1 2008, Sem 1 2009, Sem 1 2010, Sem 1 2011, Sem 1 2012, Sem 1 2013 |
COSC1197 |
City Campus |
Undergraduate |
140H Computer Science & Information Technology |
Face-to-Face |
Sem 1 2006, Sem 1 2007, Sem 1 2008, Sem 1 2009, Sem 1 2010, Sem 1 2011, Sem 1 2012, Sem 1 2013 |
Course Coordinator: Prof. Zahir tari
Course Coordinator Phone: +61 3 9925 3782
Course Coordinator Email: zahir.tari@rmit.edu.au
Course Coordinator Location: 14.11.18
Pre-requisite Courses and Assumed Knowledge and Capabilities
Enforced requisite: COSC1073 Programming 1 OR COSC1284 Programming Techniques
Note it is a condition of enrolment at RMIT that you accept responsibility for ensuring that you have completed the prerequisite/s and agree to concurrently enrol in co-requisite courses before enrolling in a course.
For your information the RMIT Course Requisites policy can be found at Course requisites – 7.29.1.6: http://www.rmit.edu.au/browse;ID=twx09y07zi1c
Course Description
The course aims to provide an understanding of the principles on which the Internet and other distributed systems are based; their architecture, algorithms and how they meet the demands of contemporary distributed applications. The course covers the building blocks for a study of distributed systems, and addressing the characteristics and the challenges that must be addressed in their design: scalability, heterogeneity, security and failure handling being the most significant.
This course also covers issues and solutions related to the design and the implementation of distributed applications.
The course assumes a general knowledge of computers, and the assignments require Java programming skills.
Objectives/Learning Outcomes/Capability Development
This course is an elective so it is not required to contribute to Program Learning Outcomes.
Course Learning Outcomes
Upon successful completion of this course you should be able to:
- CLO 1: demonstrate knowledge of the basic elements and concepts related to distributed system technologies;
- CLO 2: demonstrate knowledge of the core architectural aspects of distributed systems;
- CLO 3: design and implement distributed applications;
- CLO 4: demonstrate knowledge of details the main underlying components of distributed systems (such as RPC, file systems);
- CLO 5: use and apply important methods in distributed systems to support scalability and fault tolerance;
- CLO 6: demonstrate experience in building large-scale distributed applications.
Overview of Learning Activities
The learning activities included in this course are:
- Key concepts and well-known methods will be explained in lectures, classes or online, where syllabus material will be presented and the subject matter will be illustrated with demonstrations and examples;
- Tutorials will focus on problem solving and they will provide practice in the application of theory and procedures, allow exploration of concepts with teaching staff and other students, and give feedback on your progress and understanding;
- Computer laboratory sessions provide practices in the application of developing basic distributed applications using RPC;
A total of 120 hours of study is expected during this course, comprising:
Teacher-directed hours (48 hours): lectures, tutorials and laboratory sessions. Each week there will be 2 hours of lecture and tutorial plus 2 hours of computer laboratory work. You are encouraged to participate during lectures through asking questions, commenting on the lecture material based on your own experiences and by presenting solutions to written exercises. The tutorial / laboratory sessions will introduce you to the tools necessary to undertake the assignment work.
Student-directed hours (72 hours): You are expected to be self-directed, studying independently outside class.
Overview of Learning Resources
The course is supported by the Blackboard learning management system which provides specific learning resources. See the RMIT Library Guide at http://rmit.libguides.com/compsci
Overview of Assessment
The assessment for this course comprises one programming assignment, a written report and a formal written-end-semester examination.
Note: This course has no hurdle requirements.
Assessment tasks
Assessment Task 1: Programming Assignment
Weighting 20%
This assessment task supports CLOs 1, 2, 3, 4
Assessment Task 2: Programming Assignment
Weighting 30%
This assessment task supports CLOs 1, 2, 3, 4, 5
Assessment 3: End-of-semester Examination
Weighting 50%
This assessment supports CLOs 1, 2, 3, 4, 5, 6