We don't need software that just works, but be able to build to adapt and most importantly build and adapt as quickly as possible. That's easier said than done. Numerous challenges slow us down in achieving the state of adaptability. "What slows us down?" Well, it's the crappy, unreadable, tightly coupled code that we have written or writing.