Teaching Scheme Credits Assigned
Course Course
Code Name Theory Practical Tutorial Theory Practical/Oral Tutorial Total
TEITC602 Distributed 04 02 --- 04 01 --- 05
Systems Hr/Week Hr/Week
Examination Scheme
Theory Marks
Course Course
Code Name Internal assessment Term
End Sem. Practical Oral Total
Work
Avg. of Exam
Test1 Test 2
2 Tests
Distributed
TEITC602 20 20 20 80 25 25 --- 150
Systems
Course Objectives:
Distributed Systems form a significant field in Information Technology. The course aims
to provide solid foundation in the concepts of distributed systems along with its design
and implementation. Synchronization, Message Passing, Remote Communication,
Consistency Management and Application development using different Distributed
Technologies form part of core concepts to be studied under this course.
Course Outcomes:
The student gains clear understanding of fundamental principles of Distributed Systems
along with design and implementation of key mechanisms, Clock Synchronization,
Election Algorithms, Mutual Exclusion, Message Communication, Process and Resource
Scheduling etc.
The student understands the message communication, remote procedure call and Remote
method invocation (RPC and RMI) along with group communication.
Emphasis is on developing applications using current distributed computing technologies
like EJB, CORBA and .NET.
Student should be able to develop/design distributed system/applications for an enterprise
using SOA
University of Mumbai, Information Technology (semester V and VI) (Rev-2012) Page 35
DETAILED SYLLABUS:
Sr. Module Detailed Content Hours
No.
48
1 Fundamentals Introduction, Distributed Computing Models, Software 4
Concepts, Issues in designing Distributed System, Client –
Server Model
2 Communication Message Passing , Introduction to Message Passing, 8
Advantages and features of Message Passing, Message
Format, Message Buffering, Multi Data gram Messaging ,
Group Communication
Remote Procedure Call (RPC): Basic RPC Operations,
Parameter Passing, Extended RPC Models
Remote Object Invocation: Distributed Objects, Binding a
Client to an Object, Static Vs Dynamic RMI, Parameter
Passing, Java RMI
Message Oriented Communication: Persistence and
synchronicity in communication, Message Oriented
Transient and Persistent Communications
3 Processes Threads, Code Migration: Approaches to Code Migration, 4
Migration and Local Resources, Migration in
Heterogeneous Systems
4 Synchronization Clock Synchronization, Physical and Logical Clocks, 8
Global State, Election Algorithms, Mutual Exclusion,
Distributed Transactions, Deadlocks
5 Consistency and Introduction, Data-Centric Consistency Models, Client 8
Replication Centric Consistency Models, Distributed Protocols
6 Distributed Overview of EJB S/W Architecture, view of EJB 5
Technologies and Conversation, Building and Deploying EJB, Roles in EJB,
Frameworks Types of Enterprise Beans, Lifecycle of Beans ,
Developing Applications using EJB Framework.
University of Mumbai, Information Technology (semester V and VI) (Rev-2012) Page 36
In Introduction to CORBA, CORBA Components and 4
architecture, Method Invocation, Static and Dynamic
Invocation in CORBA, CORBA IDL, Developing
Application using CORBA
Introduction to .NET, .NET architecture, . NET Remoting 3
Comparison of RMI, CORBA, EJB, .NET 1
7. Service Oriented Defining SOA, Business value of SOA, SOA 3
Architecture characteristics, Concept of a service, SOA Architecture,
Deploying SOA applications.
Text Books:
Sunita Mahajan, Seema Shah, “ Distributed Computing”, Oxford, second edition.
Andrew S. Tanenbaum & Maarten van Steen “ Distributed Systems : Principles and
paradigms” Prentice Hall of India Private Limited
G. Sudha Sadasivam, Radha Shankarmani, "Middleware and Enterprise Integration
Technologies " , Wiley Precise Textbook
References:
1. Pradeep K. Sinha “Distributed Operating Systems”, Prentice Hall of India Private
Limited
2. Thomas Erl "Service Oriented Architecture : Concepts, Technology and Design" Prentice
Hall
3. G. Coulouris, J. Dollimore and T. Kindberg “Distributed Systems :
Term work: 25 marks
Term work should consist of at least 10 practical experiments with 1 mini project
and assignments covering the topics of the syllabus
Distribution of marks for term work shall be as follows:
Laboratory work (10 Experiments) 10 Marks
Mini Project 05 Marks
Assignments 05 Marks
Attendance 05 Marks
University of Mumbai, Information Technology (semester V and VI) (Rev-2012) Page 37
Suggested Practical List :
1. Client Server based program using RPC
2. Client Server based program using RMI
3. Implementation of Clock Synchronization (logical/physical)
4. Implementation of Election algorithm.
5. Implementation of Mutual Exclusion algorithms
6. Program multithreaded client/server processes.
7. Program to demonstrate process/code migration.
8. Write a distributed application using EJB
9. Write a program using CORBA to demonstrate object brokering.
10. Use .Net framework to deploy a distributed application.
11. Mini Project : For Eg. using SOA
Theory Examination:
1. Question paper will comprise of 6 questions, each carrying 20 marks.
2. Total 4 questions need to be solved.
3. Q.1 will be compulsory, based on entire syllabus wherein sub questions of 2 to 3 marks
will be asked.
4. Remaining question will be randomly selected from all the modules.
5. Weightage of marks should be proportional to number of hours assigned to each module.
University of Mumbai, Information Technology (semester V and VI) (Rev-2012) Page 38