Architectural Design Flashcards
Architectural Design?
Architectural Design is concerned with breaking a system into components (packages)
Package Cohesion Principles?
Release-Reuse Equivalency Principle
Common Closure Principle
Common Reuse Principle
Package Coupling Principles?
Acyclic Dependencies Principle
Stable Dependencies Principle
Stable Abstraction Principle
Package Cohesion Principles?
Release Reuse Equivalency Principles
The Common Closure Principle
The Common Reuse Principle
Release Reuse Equivalency Principle?
The granule reuse is the granule of release.
Common Closure Principle?
Classes that change together, belong together.
Common Reuse Principle?
The classes in a package are reused together. If one is reused then all are reused.
Feasibility of Code Reuse?
For code reuse to be feasible, the reusable code must be cohesive so that it is all useful.
Acyclic Dependencies Principle?
The dependencies between packages must not form cycles
Stable Dependencies Principle?
Depend in the direction of stability
Stable Abstractions Principle?
Packages that are maximally stable should be maximally abstract