University of Information Technology

Distributed Programming

Course Description

This course covers introductory concepts of distributed Computing, System Administration, Web Programming and Middleware: CORBA, Advanced Communication: Synchronous and asynchronous invocation, Message oriented middleware, From Objects to Components, CORBA Component Model, Client-server programming with sockets and HTTP protocol in Distributed programming. This course covers three broad categories of topics: (a) CORBA architecture; (b) network architecture and (c) web application with CGI in distributed system.

The objectives of this course make the students

  • To explain python language as distributed programming in the distributed system.
  • To explain CORBA middleware architecture.
  • To describe the basic concept of network programming using socket.
  • To discuss the basic concept of web architecture and Common Gateway Interface (CGI) application.
  • To explain python data science libraries.

Intended Learning Outcomes (ILO)

Upon the successful completion of this course, students should be able to:

  • Apply the basic concept of CORBA and its components
  • Create distributed applications using socket
  • Develop web applications using Common Gateway Interface (CGI)
  • Apply python libraries in Data Science Application
  • Apply Distributed programming for wide range of computer platforms, ranging from mobile devices to cloud computing services

Text and References Books

Textbooks:

  1. Python Essential Reference, Fourth Edition, David M. Beazley
  2. Python Data Science Handbook, First Edition, Jake VanderPlas

References:

  1. Python Cookbook, Alex Martellf and David Ascber
  2. Core Python Applications Programming, Third Edition, Wesley J, Chun
  3. High Performance Python, Micha Gorelick and Lan Ozsvald, First Edition, 2014
  4. Python for Unix and Linux System Administration, Noah Gift and Jeremy M. Jones, OREILY

Assessment System

Evaluation Marks Percentage
Class Participation 10 Marks 10%
Tutorial 10 Marks 10%
Assignments 10 Marks 10%
Project 10 Marks 10%
Final Examination 60 Marks 60%