Schedule: CS 746, Winter 2004 Software Architecture. Prof. Ric Holt, DC 2508, holt@uwaterloo.ca, Comp. Sci., U. Waterloo, Course to meet on Tuesdays, but this schedule gives dates of Mondays.

Wk  Monday 
1   Jan  5  Organizational Meeting, First class on Jan 6
            Overview, Software Architecture Terms
            Example S/W architectures
            Students present a S/W architecture they are familiar with

2   Jan 12
 [Askari  ] Bowman: Linux as Case Study: Extracted Architecture
 [Razavi  ] Garlan + Shaw: Intro to Software Architecture
 [Liew    ] Perry + Wolf: Foundations for Study of Software Architecture

3   Jan 19  
 [Seth    ] Kruchten: The 4+1 Views of Architecture
 [Tonu    ] Murphy: Reflexion model

4   Jan 26  Snow Storm, class cancelled

5   Feb 2
 [        ] Holt: Binary Relational Algebra Applied to Software Architecture
 [        ] Holt: Introduction to the Grok Programming Language
 [        ] Holt: Introduction to TA 
 [        ] Wu: LDX Pipeline Tutorial

6   Feb 9
 [Pahlevan] Tran: Forward/Reverse Repair of Software Architecture
 [Wang    ] Garlan: Architectural Mismatch 
 [Tonu    ] Muller: Rev Eng + Subsystem Identification 

7   Feb 16  READING WEEK: (there WILL be class Tues)
 [Askari  ] Hassan: Reference Architecture for Web Servers 
 [Pahlevan] Deremer: Programming in the Large. MILs - hard copy only  
 [Holt    ] Holt: On Phantom Architectures (no paper)

8   Feb 23
 [Spitzer ] Eick: Does Code Decay?
 [Seth    ] Mancoridis: Bunch: A Clustering Tool for Recovery
 [Liew    ] Tzerpos: ACDC: Comprehension-Driven Clustering
 [Wang    ] Tzerpos: Orphan Adoption 

9   Mar  1
 [Pahlevan] Stoermer: Practice Patterns for Architecture Reconstruction
 [Razavi  ] Lung: Quantitative Approach to Software Architecture Analysis
 [Tonu    ] Gannod: Verification of Recovered Software Architectures

10  Mar 8 
 [Liew    ] Parnas: Software Aging
 [Wang    ] Rotschke: Architecture Analysis Tools to Support Evolution 
 [Seth    ] Bril: Embedding Architectural Support in Industry
 [Spitzer ] Lampson: Hints for Computer System Design 

11  Mar 15 
 [Askari  ] Fowler: Who Needs an Architect?
 [Spitzer ] Torvalds: Comments on Designing Linux 
 [Razavi  ] Pal: Dynamic Interaction
	
12  Mar 22  STUDENT PROJECT DEMO + PRESENTATION
 [Askari&Seth, Wang&Spitzer]
13  Mar 29  STUDENT PROJECT DEMO + PRESENTATION
 [Tonu, Pahlevan&Liew&Razavi]

Other papers:
 [        ] Feijs, Krikharr: Relational Approach to Arch Analysis 
 [        ] Frick: A Fast Adaptive Layout Algorithm for Undirected Graphs

 [        ] Design and Architecture of the Brazil Web Application Framework
 [        ] Garlan: Software Architecture: a Roadmap

Last updated 11 Feb 2004 --- RCH