Chapter 35. Package Design


If you were plowing a field, which would you rather use? Two strong oxen or 1024 chickens?

 --Seymour Cray


If some package X is widely depended upon by the development team, it is undesirable for X to be very unstable (going through many new versions), since it increases the impact on the team in terms of constant version re-synchronization and fixing dependent software that breaks in response to changes in X (version thrashing).

This sounds—and is—obvious, but sometimes a team does not pay attention to identifying and stabilizing the most depended-upon packages, and ends up experiencing more version ...

Get Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development, Third Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.