Distributed Computing

Program: Post Graduate Program in IT Engineering
Program Level: Post Graduate
Language: English
Subject Syllabus

Subject Overview

An advanced study of distributed computing principles, architectures, algorithms, platforms and management practices. The subject integrates classical theory with cloud-native systems, distributed data processing, edge computing, distributed AI, security, governance, reliability engineering and strategic technology decision-making.

Learning Goal

Enable students to design, analyze, implement, evaluate and govern scalable, secure and fault-tolerant distributed systems; justify architectural and managerial decisions using theoretical models, quantitative evidence, case analysis and contemporary industry practices.

Syllabus

1. Foundations of Distributed Computing

Learning Objective: Define distributed systems and their goals, terminology, characteristics, design challenges, limitations and evolution; examine transparency, heterogeneity, openness, concurrency, scalability, partial failure and the end-to-end principle.

Category: foundation

2. Distributed Architectures and System Models

Learning Objective: Compare client–server, multi-tier, peer-to-peer, service-oriented, microservices, event-driven, serverless and decentralized architectures; analyze physical, architectural, interaction and failure models and apply CAP and PACELC reasoning.

Category: foundation

3. Communication and Distributed APIs

Learning Objective: Analyze message passing, sockets, RPC/RMI, REST, gRPC, publish–subscribe, message queues and event streaming; address serialization, interface contracts, timeouts, retries, backpressure, idempotency and delivery semantics.

Category: core

4. Time, Ordering and Global State

Learning Objective: Apply physical clock synchronization, logical and vector clocks, causal ordering, consistent cuts, snapshots and distributed event ordering; explain the effects of asynchronous execution and clock uncertainty.

Category: core

5. Coordination, Consensus and Membership

Learning Objective: Evaluate leader election, mutual exclusion, group membership, quorum systems and consensus; study Paxos, Raft, Byzantine agreement and impossibility results including FLP, with attention to safety and liveness.

Category: core

6. Replication and Consistency

Learning Objective: Design replicated services using primary–backup, active replication, quorum and anti-entropy approaches; compare linearizability, sequential, causal and eventual consistency, conflict resolution, CRDTs and session guarantees.

Category: core

7. Fault Tolerance and Resilience Engineering

Learning Objective: Model crash, omission, timing and Byzantine faults; apply redundancy, failure detection, checkpointing, recovery, circuit breakers, bulkheads and graceful degradation; quantify availability, reliability, recovery objectives and resilience trade-offs.

Category: core

8. Distributed Storage, Databases and Transactions

Learning Objective: Examine partitioning, sharding, distributed file systems, object stores, NoSQL and NewSQL databases; apply ACID, isolation levels, concurrency control, two-phase commit, sagas and compensating transactions to distributed workflows.

Category: core

9. Distributed Data Processing and Analytics

Learning Objective: Design batch, stream and graph-processing pipelines using MapReduce, dataflow, actor and event-stream models; evaluate partitioning, locality, windowing, state management, exactly-once claims, data quality and real-time analytics.

Category: application

10. Cloud, Cluster and Edge Computing Platforms

Learning Objective: Assess virtualization, containers, orchestration, service discovery, scheduling, autoscaling, load balancing, service meshes, serverless computing, fog and edge systems; compare cloud deployment and multi-cloud operating models.

Category: application

11. Distributed Application Engineering and DevOps

Learning Objective: Apply domain-driven decomposition, API and event design, configuration management, infrastructure as code, CI/CD and progressive delivery; test distributed systems using simulation, fault injection, chaos engineering and reproducible environments.

Category: application

12. Performance, Observability and Capacity Decisions

Learning Objective: Use logs, metrics, traces and profiling to diagnose systems; analyze latency, throughput, contention, queuing, tail behavior and scalability; conduct benchmarking, capacity planning, cost optimization and service-level objective management.

Category: application

13. Security, Privacy, Ethics and Governance

Learning Objective: Address distributed identity, authentication, authorization, zero-trust networking, encryption, key management and supply-chain security; govern privacy, data sovereignty, auditability, responsible monitoring, regulatory compliance and ethical system use.

Category: strategic

14. Distributed AI and Intelligent Systems

Learning Objective: Examine distributed training, data and model parallelism, parameter servers, federated learning, inference serving and MLOps; evaluate communication costs, privacy, bias, reproducibility, accelerator scheduling and reliable AI operations.

Category: contemporary

15. Architecture Strategy and Emerging Directions

Learning Objective: Lead build-versus-buy, platform, migration and digital-transformation decisions using risk, cost, sustainability and business-value analysis; evaluate case studies and emerging developments in confidential computing, Web3, quantum networking, autonomous operations and sustainable distributed systems.

Category: strategic

Distributed Computing
Post Graduate Program in IT Engineering