Before Patterns: Motorola
Factors preventing software reuse
Strong coupling of classes/objects
Short-term needs superseded longer-term
Architecture specifications suffered from
Ambiguity and lack of precision in the specs
Differing terminology
No direct access to the architects