CISC 322: Software Architecture, Fall 2011

Instructor: Emad Shihab, emads at 
Office Hours: by appts. 
Teaching Assistant: Amartya Banerjee, banerjee at, by appts. 
Monday 10:30AM to 11:30AM BIOSCI-1120, 
Tuesday 9:30AM to 11:30AM JEFF-102,
Wednesday 9:30AM to 10:30AM BIOSCI-1120,
Friday 8:30AM to 9:30AM BIOSCI-1120 

Text: No text, see assigned readings on course page

Class Schedule

Week Day Topic (slides) Readings Notes


Sep. 12

Intro/Admin What is a software Architecture?, Peter Eeles 
Characteristics of a software architect, Peter Eeles
  Tues Course & Project Overview Project Details  
  Wed Requirements

Introducing the Case Study, Ian Gorton 
Software Quality Attributes, Ian Gorton

Sample Specifications Doc

  Fri Non Functional Requirements (NFR) and Quality Attributes    


Sep. 19

Non Functional Requirements (NFR) and Quality Attributes (2)    
  Tues Software Architecture: Intro and Styles (Part 1) An Introduction to Software Architecture, David Garlan and Mary Shaw  
  Wed Software Architecture: Intro and Styles (Part 2)    
  Fri Software Architecture: Intro and Styles (Part 3)    


Sep. 26

Software Architecture: Intro and Styles (Part 4)  
  Tues Group Meeting    
  Wed Linux Architecture

Linux as a Case Study: Its Extracted Software Architecture, Ivan T. Bowman, Richard C. Holt and Neil V. Brewster

  Fri No class


Assignment 0 due


Oct. 3

Reference Architecture

A Reference Architecture for Web Servers, Ahmed E. Hassan and Richard C. Holt

  Tues Group Meeting    

Reference Architecture

A Case Study in Architectural Analysis: The Evolution of the Modern Web Browser, Alan Grosskurth and Michael W. Godfrey  
  Fri 4+1 Views The 4+1 Views Model of Architecture, Philippe Kruchten  


Oct. 10

No class   Thanksgiving
  Tues Group Meeting    
  Wed Midterm Review    
  Fri Midterm Exam   Midterm


Oct. 17

Reflexion Models Using Development History Sticky Notes to Understand Software Architecture, Ahmed E. Hassan and Richard C. Holt  
  Tues Conceptual Architecture Presentations 2    
  Wed Conceptual Architecture Presentations Wrap Up    
  Fri Conceptual Architecture Meeting   Assignment 1 due


Oct. 24

No Class Design patterns : elements of reusable object-oriented software, Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides  
  Tues Group Meeting    
  Wed Design Patterns (Part 1)    
  Fri Design Patterns (Part 2)    


Oct. 31

Design Patterns (Part 3)    
  Tues Group Meeting    
  Wed Concrete Architecture   Group Meeting
  Fri Concrete Architecture   Group Meeting


Nov. 7

Concrete Architecture   Group Meeting
  Tues Concrete Architecture Presentation 1    
  Wed Concrete Architecture Presentation 2    
  Fri Concrete Architecture Presentation 3    


Nov. 14

Project Scheduling (Part 1)   Assignment 2 due
  Tues Project Scheduling (Part 2)    
  Wed Group Meeting   No class
  Fri Group Meeting   No class


Nov. 21

Software Cost Estimation (Part 1)    
  Tues Group Meeting    
  Wed Software Cost Estimation (Part 2)    
  Fri Group Meeting   No class


Nov. 28

Architecture Enhancement Presentations 1    
  Tues Architecture Enhancement Presentations 2    
  Wed Architecture Enhancement Presentations 3    
  Fri Final review   Assignment 3 due



1. This year's project is Firefox 6.0

2. Source Code Download

3. Concrete Architecture Analysis tool and Extracted Data

4. Project Details

5. Documenting a Software Architecture by Ian Gorton

6. UML tutorial slides

Marking Scheme

Assignment Presentation Report
A1 A1 Presentation A1 Report
A2 A2 Presentation A2 Report
A3 A3 Presentation A3 Report

Group Websites

Group Members
The Flaming Pandas Alex Szczuczko, Carey Metcalfe, Mallory Ketcheson, Nick Barron, Zach Klebanoff
Fully Optimized eXperience James Brereton, Rob Staalduinen, Gordon Krull, Katie Tanner
Volpe Inferno Valerie Sugarman, Joey Frohlinger, Adam (Robert) Bunn, Danny Hamilton
The Fighting Mongooses Alex Richardson, Cameron Downs, Chris Hewitt, Chris Price
Team Phoenix Mark Simon, Colin Murdoch, Boris Madzar, Matt Jewett, Michael Bertoia
Fox Bytes Yazdan, Mark, Erin, Jon and David
The Firey Foxes Draco Li, Peter Hamilton, Sean Nguyen, Rachel Tigner, Franziska Schmidt

Last year's course website