Bits, Clumps, and Just Right

One of the most common "moves" as a software designer is to take what was one element and divide into two or more connected elements... Some separations are helpful and others are not. Here is a framework for evaluating partition decisions.

Kent Beck reasons about dividing up software and the impact of making these decisions.