Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

So why do we often feel the pressure to add more features to a system than is desirable? Often times designers make their systems more complicated by allowing edges cases to complicate the core of a simple design.

Or we have committees that don’t understand the problems the are solving well enough.

This is a real problem.

Every extra unnecessary option one uses in a solution has a multiplier impact in complexity. Sometimes I refer this as factorial complexity. Factorial numbers are like 5! which means 5 * 4 * 3 * 2 *1 = 120.

...

System B is roughly 6 times as complicated as system A.So why do we often feel the pressure to add more features to a system than is desirable? See don’t let edges cases complicate the core of a simple design.