We've all seen it. You make a change to one small part of your design but that one change requires you to make other changes to compensate. Those changes lead to yet more changes throughout the system. This is a sign that your code is suffering from rigidity. A system is rigid if even small changes are difficult to make because they have wide-sweeping ramifications. You should be trying to follow the Local Change Local Effect Principle. If you design your system with low coupling and good isolation, local changes in one part of the system will only require a small number of local effects. You won't have to make sweeping changes throughout the system.
Download