[an error occurred while processing this directive] [an error occurred while processing this directive]
[an error occurred while processing this directive]
[an error occurred while processing this directive]
Monash University

FIT3142 Distributed computing - Semester 2, 2015

Modern computer systems rely increasingly on distributed computing mechanisms, implemented often as clusters, web services, grids and clouds. Distributed computing systems can provide seamless (or web-like) access to a variety of networked resources, e.g. processing cores, large data stores and information repositories, expensive instruments, high-speed links, sensor networks, and multimedia services for a wide range of applications. This unit provides foundation knowledge and understanding of the basic mechanisms required to implement distributed computing systems, especially clouds, grids, web services and clusters. Topics covered include: Introduction to parallel and distributed computing mechanisms, concurrency and synchronisation, monitors, deadlocks, concurrent program analysis - Deadlock, Safety & Liveness properties, computational and service-oriented grids. LVS and Beowulf Clusters. Gridservices, Webservices, WSDL, HPC Portals, Home Grids, Clouds and Peer-to-Peer (P2P) networks. Distributed applications, and their performance and reliability in relation to processor and network performance constraints.

Mode of Delivery

Clayton (Day)

Workload Requirements

Minimum total expected workload equals 12 hours per week comprising:

(a.) Contact hours for on-campus students:

  • Two hours of lectures
  • One 2-hour laboratory
  • One 1-hour tutorial

(b.) Additional requirements (all students):

  • A minimum of 7 hours independent study per week for completing lab and assignment work, private study and revision.

See also Unit timetable information

Unit Relationships

Prohibitions

FIT3010

Prerequisites

(FIT2069, FIT2070 and one of FIT3141 or ECE2041) or (FIT1005/FIT2008 and FIT2022)

Chief Examiner

Campus Lecturer

Clayton

Carlo Kopp, 63/210

Consultation hours: By appointment

Tutors

Clayton

Lachlan Brumley

Consultation hours: By appointment

Your feedback to Us

Monash is committed to excellence in education and regularly seeks feedback from students, employers and staff. One of the key formal ways students have to provide feedback is through the Student Evaluation of Teaching and Units (SETU) survey. The University’s student evaluation policy requires that every unit is evaluated each year. Students are strongly encouraged to complete the surveys. The feedback is anonymous and provides the Faculty with evidence of aspects that students are satisfied and areas for improvement.

For more information on Monash’s educational strategy, see:

www.monash.edu.au/about/monash-directions/ and on student evaluations, see: www.policy.monash.edu/policy-bank/academic/education/quality/student-evaluation-policy.html

Previous Student Evaluations of this Unit

Students in previous offerings have found this unit to be intellectually stimulating.

If you wish to view how previous students rated this unit, please go to
https://emuapps.monash.edu.au/unitevaluations/index.jsp

Academic Overview

Learning Outcomes

At the completion of this unit students will be able to:
  1. understand basic problems in distributed computing, especially in relation to concurrency, parallelism, synchronisation, deadlocks, safety and liveness properties;
  2. understand differences between various distributed computing models and widely used distributed computing schemes;
  3. understand basic functional and performance concepts in grids and clouds and identify frequent causes of performance problems in grid applications;
  4. understand basic software and hardware reliability concepts in grids and identify frequent causes of reliability problems in grid applications;
  5. discuss some of the enabling technologies e.g. high-speed links, emulators and storage area networks for building computer grids and clouds;
  6. explain the use of some of the cloud computing, grid computing and clustering middleware used to implement virtual super computers, including security mechanisms;
  7. explain programming toolkits such as Parallel Virtual Machine (PVM) for writing parallel computer applications;
  8. explain HPC Portals, peer-to-peer (P2P) networking and semantic grids;
  9. elaborate some of the significant grid and cloud computing areas of application e.g. Bio-Technology, eHealth and eMedicine, Finance, and Computer Networks;
  10. install and configure a small computer grid using Globus toolkit middleware;
  11. gain basic familiarity with commonly used grid application tools and middleware interfaces;
  12. extend the grid and test these applications.

Unit Schedule

Week Activities Assessment
0   No formal assessment or activities are undertaken in week 0
1 Introduction: Inter Process Communications in networks, Distributed System concepts Tutorial 1
2 Protocols for parallel and distributed systems Tutorial 2; Lab 1
3 Sockets, RPC, CORBA/Objects Tutorial 3; Lab 2
4 Clusters, Grids Tutorial 4; Lab 3
5 Clouds, Hadoop / Distributed Storage Tutorial 5; Lab 4
6 Grid / Cloud Middleware and Security Models Tutorial 6; Lab 5
7 Concurrency, Parallelism, Synchronisation, Deadlocks, Safety Tutorial 7; Lab 6; Assignment 1 due Friday Week 7
8 Distributed Application Performance Modelling Tutorial 8; Lab 7
9 Distributed Application Performance Modelling Tutorial 9; Lab 8
10 Reliability of Distributed Applications Tutorial 10; Lab 9
11 The Design of Distributed Applications Tutorial 11; Lab 10; Assignment 2 due Friday Week 11; Tutorial report due Fri Week 11 (to be included within the Assignment 2 submission)
12 Limits to Distributed Application Performance Lab 11
  SWOT VAC No formal assessment is undertaken in SWOT VAC
  Examination period LINK to Assessment Policy: http://policy.monash.edu.au/policy-bank/
academic/education/assessment/
assessment-in-coursework-policy.html

*Unit Schedule details will be maintained and communicated to you via your learning system.

Teaching Approach

Lecture and tutorials or problem classes
This teaching and learning approach provides facilitated learning, practical exploration and peer learning.

Assessment Summary

Examination (3 hours): 60%; In-semester assessment: 40%

Assessment Task Value Due Date
Assignment 1 10% Friday Week 7 (11/Sep), 12PM
Assignment 2 15% Friday Week 11 (17/Oct), 12PM
Laboratory Work 10% Weekly (starting Week 2)
Tutorial Work 5% Friday Week 11 (17/Oct), 12PM
Examination 1 60% To be advised

Assessment Requirements

Assessment Policy

Assessment Tasks

Participation

To meet the learning objectives for this unit students are expected to attend 80% of Tutorials (MURPA) and 80% of Labs. Failure to meet these expectations may cause difficulties in passing the unit.

  • Assessment task 1
    Title:
    Assignment 1
    Description:
    This assignment will be a written report requiring some independent reading.

    Further details will be provided during the semester.
    Weighting:
    10%
    Criteria for assessment:

    Individual assessment of independent work by student:

    1. How well underlying principles and theories are demonstrated in the student's answers
    2. The appropriateness of the formatted report style
    3. The quality of the student's arguments
    Due date:
    Friday Week 7 (11/Sep), 12PM
    Remarks:
    This task covers the following learning outcomes:
    1. understand differences between various distributed computing models and widely used distributed computing schemes;
  • Assessment task 2
    Title:
    Assignment 2
    Description:
    This assignment will be a written report requiring some independent reading.

    Further details will be provided during the semester.
    Weighting:
    15%
    Criteria for assessment:

    Individual assessment of independent work by student:

    1. How well underlying principles and theories are demonstrated in the student's answers
    2. The appropriateness of the formatted report style
    3. The quality of the student's arguments
    Due date:
    Friday Week 11 (17/Oct), 12PM
    Remarks:
    This task covers the following learning outcomes:
    1. understand basic functional and performance concepts in grids and clouds and identify frequent causes of performance problems in grid applications;
  • Assessment task 3
    Title:
    Laboratory Work
    Description:
    Weekly laboratory exercises and tasks. Individual tasks and assessments.
    Weighting:
    10%
    Criteria for assessment:

    The laboratory work is group-based and it is assessed on correctness and on the quality of the solutions and on the quality of presentation/documentation. Individual marks for each group member will be derived from (i) the peer assessements made by the group under the supervision of the tutor and (ii) the overall marks achieved by the group.

    Due date:
    Weekly (starting Week 2)
    Remarks:
    This task covers the following learning outcomes:
    1. install and configure a small computer grid using Globus toolkit middleware;
    2. gain basic familiarity with commonly used grid application tools and middleware interfaces;
    3. extend the grid and test these applications.
    NB laboratory tasks are being updated in 2015 and will cover in part other learning outcomes.
  • Assessment task 4
    Title:
    Tutorial Work
    Description:
    Weekly attendance of MURPA tutorials or FIT Seminars/Colloquia (in G12A/26, Clayton) and reporting by students. The students who are unable to attend a scheduled session owing to timetabling conflicts may have the option to review the MULO recordings available at https://messagelab.monash.edu.au/MURPA and www.infotech.monash.edu.au/seminars

    This is an individual assessment, with submission required in Week 11.
    Weighting:
    5%
    Criteria for assessment:

    Individual assessment of independent work by student:

    1. How well underlying principles and theories are demonstrated in the student's answers
    2. The appropriateness of the formatted report style
    3. The quality of the student's arguments
    Due date:
    Friday Week 11 (17/Oct), 12PM
    Remarks:
    This task covers the following learning outcome:
    1. elaborate some of the significant grid and cloud computing areas of application e.g. Bio-Technology, eHealth and eMedicine, Finance, and Computer Networks;

Examinations

  • Examination 1
    Weighting:
    60%
    Length:
    3 hours
    Type (open/closed book):
    Closed book
    Electronic devices allowed in the exam:
    Non programmable scientific calculator
    Remarks:
    Exam covers the following learning outcomes:
    1. understand basic problems in distributed computing, especially in relation to concurrency, parallelism, synchronisation, deadlocks, safety and liveness properties;
    2. understand differences between various distributed computing models and widely used distributed computing schemes;
    3. understand basic functional and performance concepts in grids and clouds and identify frequent causes of performance problems in grid applications;
    4. understand basic software and hardware reliability concepts in grids and identify frequent causes of reliability problems in grid applications;
    5. discuss some of the enabling technologies e.g. high-speed links, emulators and storage area networks for building computer grids and clouds;
    6. explain the use of some of the cloud computing, grid computing and clustering middleware used to implement virtual super computers, including security mechanisms;
    7. explain programming toolkits such as Parallel Virtual Machine (PVM) for writing parallel computer applications;
    8. explain HPC Portals, peer-to-peer (P2P) networking and semantic grids;
    9. gain basic familiarity with commonly used grid application tools and middleware interfaces;

Learning resources

Reading list

George Coulouris, Jean Dollimore, Tim Kindberg and Gordon Blair, Distributed Systems: Concepts and Design, Fifth Edition, published by Addison Wesley, May 2011, ISBN 0-13-214301-1 (not prescribed)

Monash Library Unit Reading List (if applicable to the unit)
http://readinglists.lib.monash.edu/index.html

Feedback to you

Types of feedback you can expect to receive in this unit are:

  • Informal feedback on progress in labs/tutes
  • Graded assignments with comments

Extensions and penalties

Returning assignments

Resubmission of assignments

Resubmission is not permitted.

Referencing requirements

External materials must be properly cited and referenced.

Assignment submission

It is a University requirement (http://www.policy.monash.edu/policy-bank/academic/education/conduct/student-academic-integrity-managing-plagiarism-collusion-procedures.html) for students to submit an assignment coversheet for each assessment item. Faculty Assignment coversheets can be found at http://www.infotech.monash.edu.au/resources/student/forms/. Please check with your Lecturer on the submission method for your assignment coversheet (e.g. attach a file to the online assignment submission, hand-in a hard copy, or use an electronic submission). Please note that it is your responsibility to retain copies of your assessments.

Online submission

If Electronic Submission has been approved for your unit, please submit your work via the learning system for this unit, which you can access via links in the my.monash portal.

Other Information

Policies

Monash has educational policies, procedures and guidelines, which are designed to ensure that staff and students are aware of the University’s academic standards, and to provide advice on how they might uphold them. You can find Monash’s Education Policies at: www.policy.monash.edu.au/policy-bank/academic/education/index.html

Faculty resources and policies

Important student resources including Faculty policies are located at http://intranet.monash.edu.au/infotech/resources/students/

Graduate Attributes Policy

Student Charter

Student services

Monash University Library

Disability Liaison Unit

Students who have a disability or medical condition are welcome to contact the Disability Liaison Unit to discuss academic support services. Disability Liaison Officers (DLOs) visit all Victorian campuses on a regular basis.

Other

Engineers Australia Stage 1 competencies

This unit is a core unit in the Bachelor of Software Engineering accredited by Engineers Australia. Engineers Australia Accreditation Policy of Professional Engineering Programs requires that programs demonstrate how engineering graduates are prepared for entry to the profession and achieve Stage 1 competencies. The following information describes how this unit contributes to the development of these competencies for the Bachelor of Software Engineering. (Note: not all competencies may be emphasised in this unit).

Stage 1 competency How the compency is developed in this unit
 1. Knowledge and Skills base  
 1.1. Comprehension, theory based understanding of the underpinning natural and physical sciences and the engineering fundamentals applicable to the engineering discipline. This unit covers distributed computing, which falls under the computing foundation knowledge for software engineerings (SWEBOK). This element of competency is covered by lecture notes, practical exercises and assignments.
 1.2. Conceptual understanding of the mathematics, numerical analysis, statistics, and computer and information sciences, which underpin the engineering discipline. The unit deals with conceptual understanding of distributed systems. This is covered by lecture notes, practical exercises and assignments.
 1.3. In-depth understanding of specialist bodies of knowledge within the engineering discipline. The unit addresses one aspect of SWEBOK (Software Engineering Body of Knowledge) - Computing Foundations for software engineers.
 1.4. Discernment of knowledge development and research directions within th engineering discipline. The unit identifies and appraises current developments, advanced technologies and emerging issues in distributed systems.

 1.5. Knowledge of engineering design practice and contextual factors impacting the engineering discipline.

Not covered in this unit.
 1.6. Understanding of the scope, principles, norms, accountabilities and bounds of sustainable engineering practice in the specific discipline. Not covered in this unit
 2. Engineering application ability  
 2.1. Application of established engineering methods to complex engineering problem solving. Not covered in this unit.
 2.2 Fluent application of engineering techniques, tools and resources. Not covered in this unit.
 2.3. Application of systematic engineering synthesis and design processes. Not covered in this unit.
 2.4. Application of systematic approaches to the conduct and management of engineering projects. Not covered in this unit.
 3. Professional and personal attributes  
 3.1. Ethical conduct and professional accountability. Not covered in this unit.
 3.2. Effective oral and written communication in professional and lay domains. Precise languages and notations are employed in lectures and assignments. Students need also to write up reports as part of their assignment assessment.
 3.3. Creative, innovative and proactive demeanour. Developing algorithms is inherently a creative endeavour.
 3.4. Professional use and management of information. Not covered in this unit.
 3.5. Orderly management of self, and professional conduct. This is covered in the assignment assessment.
 3.6. Effective team membership and team leadership. Students form groups to work on their assignments.

Relationship between Unit Learning Outcomes and BSE Course Outcomes

No. CO 1 CO 2 CO 3 CO 4 CO 5 CO 6 CO 7 C0 8 CO 9 CO 10 CO 11 CO 12 CO 13
 1  X          X      X        
 2  X  X        X      X        
 3  X          X              
 4  X                        
 5  X                        
 6    X        X              
 7        X                  
 8    X                      

Relationship between Unit Learning Outcomes and Assessments

No. Assignments Quizzes Practical Exercises Exam
1  X      X
2  X      X
3        X
4        X
5        X
6        X
7      X  
8      X  

 

[an error occurred while processing this directive]