Course Timeline

đź“… Course Timeline & Milestones #

This timeline provides a week-by-week breakdown of the course, showing lecture topics and corresponding assignments. The course is designed to progressively build your distributed systems skills from fundamentals to advanced orchestration.

🗓️ Weekly Schedule #

Week Lecture Topics Lab Assignment Deliverables
1 Microservices Fundamentals • Introduction to distributed systems• Monolithic vs microservices architecture Phase 1: Monolithic Smart Library System Working monolithic application
2-3 Transition to Microservices • Service decomposition strategies• Inter-service communication• Phase 1 evaluation & feedback Phase 2: Microservices Implementation Multiple independent services with API endpoints
4-5 API Gateway & Reverse Proxy • Nginx configuration & deployment• Load balancing strategies• Phase 2 evaluation & feedback Phase 3: Nginx Integration Centralized access point with proper routing
6-7 Containerization • Docker fundamentals• Container networking• Phase 3 evaluation & feedback Phase 4: Docker Implementation Containerized services with proper isolation
8-9 Container Orchestration Basics • Docker Compose workflows• Multi-container applications• Phase 4 evaluation & feedback Phase 5: Docker Compose Setup Multi-container application with defined dependencies
10 Advanced Orchestration • Docker Swarm architecture• Service scaling & management• Phase 5 evaluation & feedback Group Presentations: Design & Documentation Project proposal & architecture diagram
11 System Design Principles • Scalability patterns• High availability strategies Group Presentations: Implementation & documentation Progress report & technical documentation
12-13 Group Presentations • System design presentations• Industry trendy distributed systems showcase Group Presentations: Finalization & presentation prep Final presentation slides & demo
14 Course Review & Final Evaluation • Best practices review• Industry application discussion Final Assessment Course completion & project evaluation

đź“Š Grading Distribution #

  • Individual Lab Phases (1-5): Each phase will be evaluated based on functionality, code quality, and documentation. Detailed rubric will be published soon.
  • Group Project & Presentation: Assessment will focus on system design principles, technical implementation, and presentation quality. Detailed evaluation criteria will be shared before Week 10.

🔍 Important Notes #

  • Each phase builds upon the previous one, creating a complete learning journey
  • Evaluations occur regularly to provide feedback and guidance
  • Group work begins in Week 10, allowing sufficient time for comprehensive research and implementation
  • Final presentations should demonstrate both technical mastery and effective communication