Introduction to Cloud Computing

About

  • Instructor: Yogesh Simmhan (www | mail)
  • TAs: Varad Kulkarni, Priyanshu, Daksh, Teams Copilot Agent
  • Course Code: DS 252
  • Credits: 3:1
  • Semester: Aug, 2025
  • Schedule:
    • Lectures: MW 1130-1PM
    • First class: Mon 11 Aug, 2025, Laptop mandatory.
    • Tutorials: Fridays, TBD
  • Room: CDS 419
  • Teams Link: DS252: Introduction to Cloud Computing (Aug 2025)

Pre-requisites

  • Knowledge of Data Structures, Programming and Algorithm concepts.
  • Programming experience required, preferably in Python, Java or C++.
  • One of the following courses or prior instructor approval is required: DS 221 (Introduction to Scalable Systems), E0 251 (Data Structures and Algorithms), DS 295 (Parallel Programming), E0 225 Design and Analysis of Algorithms, E0 253 (Operating Systems) or equivalent.
  • PG/PhD students who have a BE/BTech degree in Computer Science but none of the above courses may take this course with prior approval of the instructor.
  • UG students who have taken UMC 201 (Data Structures and Algo) but none of the above courses may take this course with prior approval of the instructor.

Introduction

Cloud computing is a key distributed systems paradigm that has grown popular in the last two decades. Cloud technologies are pervasive, touching our daily lives any time we access the Internet, use a an AI agent, or make a purchase on an app. Most enterprise applications are all cloud-native. While innovative Cloud services are offered by major providers, Cloud computing is also grounded in foundational distributed systems and scalable software systems principles, and is an active area of research by the academic community.

This introductory hands‐on graduate course on Cloud computing will teach both the fundamental concepts of how and why Cloud systems works, as well as Cloud technologies that are based on these concepts. Spread across 5 modules, you’ll gain familiarity with virtualization and distributed architectures, then dive into the service models (IaaS/PaaS/SaaS) that power Cloud vendors such as Amazon AWS, Microsoft Azure and Google GCP. Then you will be introduced to cloud storage services, followed by serverless design patterns and orchestration. Would will then learn about cloud manageability and DevOps pipelines. Then you will level-up with specialized topics on MLOps, edge‐cloud continuum, quantum computing in the cloud and AI‐driven “agentic” workflows. These should give you a comprehensive overview of cloud computing to help you understand, design and build cloud applications.

Each week combines an instructor overview and summary, AI-driven in-class learning and peer-based learning, along with regular hands‐on labs. You will also take on an ambitious capstone project where teams assisted by AI agents architect, deploy and secure a full-stack cloud-based application.

Students who perform well in this course will be eligible to undertake their final year M.Tech./UG project in the DREAM:Lab under the instructor’s supervision.

AI-based Teaching Methodology

This course pioneers a new teaching paradigm: AI Agents we have designed using Teams Copilot will serve as your teaching instructor for the various modules that have been designed.

  • You will collaborate directly with the Agents as intelligent and personalized study partners to learn the topics for the course. This will be in-class as well as offline. Laptops are mandatory in class.
  • You will also engage in peer learning cohorts among your fellow students in class to better grasp your understanding from the Agent.
  • The (human) instructor will offer an overview and summary of each module, help fill your gaps in understanding, and be closely available to guide you in your learning, and conduct assessment. The instructor will with offer targeted lectures on challenging topics. TAs will lead regular lab sessions for hands-on activities for each module.
  • You will also have a major capstone programming project as a team, including active use of AI agents to build a complex cloud-based application. You will use AI agents to design your application requirements, write a bulk of the code, and test it.

Students should be open to this non-traditional modality of study. You’ll experiment with novel interactive workflows, share real-time feedback, and shape the evolution of our teaching methods. As early adopters of AI-driven learning, you’ll not only master state-of-the-art cloud concepts and technologies—you’ll also help define how we educate the next generation of graduate students.

We will also conduct regular anonymous surveys to gauge the feedback from the students for this new learning approach and include that to improve the teaching process.

Learning Modules

  • Module 1: Systems Foundations and Cloud Deployment Models
    • Week 1: Virtualization & Container Runtimes Fundamentals
    • Week 2: Distributed Systems & Storage Foundations
  • Module 2: Cloud Computing and Storage
    • Week 3: Cloud Service & Deployment Models
    • Week 4: Cloud Storage, Scaling & Cost Models
    • Week 5: Kubernetes Orchestration & Service Mesh
    • Week 6: Serverless & Event-Driven Architectures
  • Module 3: Cloud Manageability
    • Week 7: DevOps & Infrastructure as Code
    • Week 8: Security, Compliance & Observability
  • Module 4: Emerging Topics on Cloud
    • Week 9: Cloud-Native MLOps Pipelines
    • Week 10: Edge Computing & the Cloud Continuum
    • Week 11: Quantum Computing & Agentic Cloud Workflows
    • Week 12: Multi-Cloud & Hybrid Strategies

Assessment

Given the AI-driven learning paradigm, the assessment will also be novel. This is the proposed evaluation approach. This may be revisited during the term based on outcomes.

  • Study summary of AI-driven learning: You will submit the Teams Copilot transcripts of the conversations you have had with our AI instructor during class and outside of class. This will be evaluated for level of information you were able to elicit from the agent, your engagement in the learning process, and self assessment quizzes you take. You will also submit weekly surveys on your learning experience. [4 modules * 4 points ~= 15 points]
  • Collaborative learning: You will collaborate with other students in groups that we form to help understand the module better, and together prepare reports/quiz questions that reflect your understanding of the topics in the module. There will also be a peer evaluation within the group that gauges your participation in the discussions. [4 modules * 4 points = 20 points]
  • Quizzes: You will have a quiz at the end of each module to evaluate your understanding of the module [4 modules * 5 points = 20 points] We will have an instructor-led lecture to revise topics after each quiz based on the performance of the students. We will also have one final exam [20 points]. These will be closed-book proctored in-class exams.
  • Capstone Project: Student teams of 2-4 will complete a major cloud application development project with the active assistance of AI agents. Given the access to AI agents, this project will be ambitious in nature. It will evaluate your ability to design, build and test large cloud apps with the active involvement of LLMs. Sample project topics will be provided or you can propose your own. You will be evaluated on the specification/design of the application [5 points], its implementation during a midterm [5 points] and a final demo/presentation/evaluation [10 points], and the testing of the application by other teams [5 points] for a total of [25 points].

Attendance

Attendance will be taken for this course. You will need a minimum attendance of 75% for the in-class lectures. Students must bring a laptop to class.

Academic Integrity

Students must uphold IISc’s Academic Integrity guidelines. Failure to follow them will lead to penalties.

As part of the learning process you are required to the the AI agent provided by the course. You should only submit the transcripts of your own Teams Copilot chat with our AI agent, without any changes to them. You may also use additional sources for your learning.

All quizzes and exams must be answered in-class, independently by you, without any assistance by other humans, AI agents, Internet, books, notes, etc.

Project work should be done with the active help of AI agents. You will also submit a summary of work done by each of the team members, and by the AI agents. You may not directly copy code from external sources and websites.