"A complex system that works is invariably found to have evolved from a simple system that worked. A complex system designed from scratch never works and cannot be patched up to make it work. You have to start over with a working simple system."This is from The Poker Shrink's latest article over on PokerNews. What struck me, is that my first though wasn't about Poker, it was about work and how true this was. A simple system, that is grown into a complex system (and I mean intentionally!) works nicely. A system built complex from the start inevitably fails too meet some of its goals.
This has become known as Gall's Law and can be found in the book Systemantics: How Systems Really Work and How They Fail.
My last job had a few systems like this. Our original product was "built in two weeks" by my former manager. It was still living when I left the company. I worked with it for 5 years, and it had close to 10 years on it before that. It was a simple system that was grown to be overly complex and needed a redesign. It worked, but it failed to meet a number of its goals.
I wrote, during my first year, a complete replacement for it. The replacement failed, it was too complex. We had lost that simple system that made the original so good. The complexities that plagued the elderly version weren't replaced or lost, they were brought forward and modernized. So we got a modern elderly version wth the same problems.