Schedule: CS746, Fall 2008 Software Architecture. Prof. Ric Holt, DC 2508,, Comp. Sci.,U. Waterloo

Sep 11
Organizational meeting
Website: Course organization, assignments and project
Website: Overview, software architecture terms
Volunteer to present Garlan/Shaw paper next wk (Sep 18)
Example S/W architectures
Sep 18
Demo of extraction and lsedit
Sergey Savinov
Garlan/Shaw: Intro to Software Architecture
Sep 25
Jonathan Rodriguez
Kruchten: The 4+1 Views of Architecture
Kah-Kuen Fu
Bowman: Linux as Case Study: Extracted Architecture
Oct 02
Jason Jiang
Perry/Wolf: Foundations for Study of S/W Arch
Ahmad Alyoubi
Murphy: Reflexion Model
Sarah Nadi
Tran: Forward/Reverse Repair of Software Architecture
Oct 09
Holt: Grokking SW Arch
Leong Fong
Eick: Does Code Decay?
Omer Beg
Parnas: Software Aging
Oct 16
Thomas Parry
Example Architecture
Oct 23
Yu-Ling Chang
Garlan: Architectural Mismatch 
Hiren Patel
Lindgren: Software Architecture & Release Planning 
Kan Yang
Hassan: Reference Architecture for Web Servers 
Oct 30
Amod Gupta
Dagtas: Software Architecture for Mobile Business Applications 
Sergey Savinov
Aldrich: ArchJava
Muhammad Furkan Khan
Klein: Architecture, Goals, and Technology in Call Center Systems 
Nov 06
Fabien Benureau
Mockus: Two Case Studies of Open Source Development
Kush Patel
Bass: Evaluating Software Architecture Competence of Organizations 
Denis Yuen
Foote: Ball of Mud 
Nov 13
Fida-E Zaheer
Gorton: MeDICi: Platform for High Performance Data Streaming 
Mohammad AlRamahi
Fowler: Who Needs an Architect?
Constantine Murenin
Siddha: Getting maximum mileage out of tickless
Nov 20
Student Project Presentations
2. Kush Patel, Hiren Patel
3. Jonathan Rodriguez, Fabien Benureau, Constantine Murenin, Fida-E Zaheer
4. Yu-Ling (Betty) Chang, Denis Yuen, Kah-Kuen Fu
Nov 27
Student Project Presentations  Last day of classes
5. Changzhong Jiang, Amod Gupta, Kan Yang
6. Mirza Beg, Muhammed Khan, Ahmad Alyoubi
1. Leong Fong, Sarah Nadi, Mohammad Alramahi, Sergey Savinov
New papers (From WICSA 2008)
Goossen: Media Player Software in a System of Subsystems 
Other papers
Storey: Manipulating And Documenting Software Structures
Sim: Browsing and Searching Software Architectures 
Clements: Survey of Architecture Description Languages  
Askari: Info Theoretic Evaluation of Change Prediction
Ball: Software Visualization in the Large
Feijs, Krikhaar: Relational Approach to Arch Analysis 
Tzerpos: ACDC: Comprehension-Driven Clustering
Mancoridis: Bunch: A Clustering Tool for Recovery
Tran: Forward/Reverse Repair of Software Architecture
Tzerpos: Orphan Adoption 
Mockus: Two Case Studies of OSS Development
Pal: Dynamic Interaction
Torvalds: Comments on Designing Linux 
Medvidovic: Stemming Architecture Erosion
Bril: Embedding Architectural Support in Industry
Rotschke: Arch Analysis Tools to Support Evolution 
Holt: NBA (Nested Box and Arrow Model), Binary Relational Algebra
Holt: Introduction to TA
Wu: LDX Pipeline Tutorial
Muller: Rev Eng + Subsystem Identification 
Deremer: Programming in the Large. MILs. Hardcopy only  
Holt: Software Architecture as a Shared Mental Model
Stoermer: Practice Patterns for Arch Reconstruction

Last updated 19 Aug 2008 --- RCH