December 20072 Topics The Design Process Design Principles Design Concepts-Abstraction & Refinement modularity—compartmentalization of data and function Software Architecture hiding—controlled interfaces Program Partitioning Coupling and Cohesion Refactoring—a reorganization technique that simplifies the design
{}