This is the schedule as of March 21. It's likely to change as the term proceeds.
Monday |
||
Introduction & Course Overview Kernel of Alloy: relations and relational operators |
||
Alloy Language Signatures, functions, assertions | Modelling Idioms Relational model of behaviour Mutation: modularizing change |
|
No class -- Presidents' Day, MIT Holiday |
Intermediate Peer Review: Models (DJ at IFIP 2.9) |
|
Review of Modelling Discussion of elevator problem |
Other Modelling Languages Z, OCL and ASM |
|
Analysis Patterns |
Problem Frames |
|
Modules 1: Cardelli's model of linking | Modules 2: Units Component composition with Units Jiazzi and Knit |
|
Modules 3: ML 1 Elements of ML programming |
Modules 4: ML 2 Objective Caml's module system |
|
No class -- Spring Break |
No class -- Spring Break |
|
Aspects and Features |
No class -- Passover |
|
Intermediate Peer Review: Program Structuring (DJ at ETAPS) |
TBD: Reflection Mechanisms? (DJ at ETAPS) |
|
No class -- MIT Holiday |
Decoupling 1 Parnas's uses graph; module dependences Baldwin & Clark's theory |
|
Decoupling 2: Axiomatic Design Independence axiom; application to software |
Decoupling 3 |
|
Java Modeling Language (JML) Frame conditions in OOP |
Design Patterns |
|
Typeclasses in Haskell |
TBD |
|
Project Presentations |
Project Presentations |