|
The schedule is subject to change as the semester
progresses. This page may not be updated once the semester starts. At that
point, please refer to the RamCT calendar for the most current
information.
Week 1
Introduction and Preliminaries
(Jan 18 - 24)
|
Topics
|
Course policies, syllabus
Characterization of distributed systems (Text chapter 1)
System models (Text Chapter 2)
|
Assignment
|
A1. Java RMI: Given Jan 21, Due Feb 18
|
Week 2
Distributed objects and remote invocation
(Jan 25 - 31)
|
Topics
|
Broker architectural pattern
Java RMI
|
Assignment
|
No new assignment
|
Week 3
Distributed objects and remote invocation
(Feb 02 - 07)
|
Topics
|
From text chapters 4 and 5
Programming models
Request-reply protocols
External data representation
Remote references
Object models
Failure models
|
Assignment
|
No new assignment
|
Week 4
Distributed objects and remote invocation
(Feb 08 - 14)
|
Topics
|
From text chapters 4 and 5
Invocation semantics
Implementation of remote method invocation
Distributed garbage collection
Event notifications
|
Assignment
|
No new assignment
|
Week 5
Aspect-oriented software development
(Feb 16 - 18)
|
Topics
|
The AOSD paradigm
Crosscutting concerns
Join point model
Pointcuts
Aspect weaving
AspectJ
|
Assignment
|
A1 due Feb 18
|
Surveys of adaptive software development
Week 6
(Feb 22 - 28)
|
Topics
|
Guest lecture by Chris Wilcox
IBM paper on autonomic computing
Survey of compositional adaptation
|
Assignment
|
A2 AspectJ: Assigned Feb 23, due Mar 9
|
Week 7
Component-based software development
(Mar 01 - 07)
|
Topics
|
CBSD paradigm
CBSD using UML
Java Beans model
CORBA object model (Text chapter 20)
|
Assignment
|
A2 due Mar 4
|
Week 8
CBSD and Midterm
(Mar 08 - 14)
|
Topics
|
CORBA component model (papers)
Enterprise Java Beans model
|
Assignment
|
No new assignment
|
EXAM
|
Midterm on March 11
|
Week 9
Spring break
(Mar 15 - 21)
|
Week 10
EJB, Design Patterns
(Mar 22 - 28)
|
Topics
|
Enterprise Java Beans model
Interceptor pattern
|
Assignment
|
Project proposal due Mar 25.
|
Week 11
Design patterns
(Mar 29 - Apr 4)
|
Topics
|
Component configurator pattern
Overview of OSGi
Synchronization patterns
|
Assignment
|
April 1: Document describing use cases and high level design (in class)
|
Week 12
Adaptive software development
(Apr 5 - 11)
|
Topics (Guest lectures)
|
FRACTAL (Minhazur Rahman)
Reactor Pattern (Aritra Bandyopadhyay)
|
Assignment
|
April 8-9: Schedule demo of sample application that uses the technology
you will incorporate in your project
|
Week 13
Technologies
(Apr 12 - 18)
|
Topics
|
Proactor pattern
Introduction to the Spring Framework
|
Assignment
|
April 15-16: Iteration 1. First implementation of application
(need not include adaptive features). Schedule a demo in the lab/office.
|
Week 14
Service oriented architectures
(Apr 19 - 25)
|
Topics
|
Introductory concepts (Text chapter 19 and other sources)
Loose coupling
Stateful vs stateless
Idempotent requests
Web services
SOAP RPC
Choreography
|
Assignment
|
April 22-23: Iteration 2. Second implementation of application
(must include at least one adaptive feature). Schedule a demo in the lab/office.
|
Week 15
Student project presentations
(Apr 26 - May 2)
|
Topics
|
Team 1: April 27
Team 2: April 29
|
Assignment
|
Prepare for final demo and report.
|
Week 16
Student project presentations
(May 3 - 9)
|
Topics
|
Team 3: May 04
Team 4: May 06
|
Assignment
|
April 4-6 final demos
Final project report due May 7
|
Week 17
FINAL EXAM WEEK
(May 10 - 14)
|
EXAM
|
Final exam May 12, 3:40 -- 5:40 PM
|
|