Software Design
Introduction
Design is a relative term
Agenda
Vocabulary
Module Specification
Inadequate Specification
Better Specification
Modularization
Stepwise Refinement
Cohesion & Coupling
Levels of cohesion
Levels of coupling
Designing for reuse & integration
Modularization and optimization
Information hiding
Envisionment through scenarios
Scenario for Meeting Scheduling
Scenario Exercise(Groups of three)
Example Modularization(Assuming Calendar is part of system)
Modularization Exercise
Software Architecture
Design Description
Summary
Where to get more information
Home Page: www.cc.gatech.edu/~potts
Download presentation source