Business Technology: Keep Apps Simple As Possible, No SimplerBusiness Technology: Keep Apps Simple As Possible, No Simpler
<B>Bob Evans</B> says keeping apps simple as possible, not simpler, is the solution to increasing software complexity.
Tax codes, space shuttles, zone traps, teenagers, linear equations, foreign relations, Hungarian syntax, and 3-D chess: The common thread is complexity. In some cases, massive complexity. Each requires significant amounts of time, energy, and thought just to comprehend, much less master. And after all those expenditures, just when we think we've become subject-matter experts, we find the object of our study has yet again changed, forcing us once again back to the observation stage.
But in the world of business technology, we don't have a nearly inexhaustible supply of time with which to try to wear down complexity. We seem conversely to have settled on the idea that the only solution to complexity is greater complexity, heaped on in staggering abundance in the hope that enough of it will allow the ever-expanding beast to be hidden from the user, the customer, the consumer. An example is Microsoft's forthcoming operating system, code-named Longhorn: Some inside Microsoft have speculated that the pumped-up Windows operating system will grow well beyond its current 50 million lines of code.
Why does application integration still rank near the top of all lists of CIO challenges? Look at the major enterprise-application vendors--as customers unflinchingly demand greater levels of up-front proof that these highly sophisticated applications will deliver rapid and substantial business-process improvements, competitive advantage, and ROI, the software makers are working feverishly to make their products easier to use. Web services offer enormous promise, but just how long will it be until they truly deliver? I'm a big believer in the theory--the problem is, the theory is predicated on hiding the maddening layers of complexity and incompatibility and workarounds behind a facade that has to present a "simple" interface to users but also be "robust" enough to pound all of the existing demons into submission.
How much complexity--or do I mean simplicity?--is enough? How much of the former will customers tolerate, and how much will they pay to get the latter? Is it wise for software companies to add, say, 30% more code to a new product to deliver, say, a 10% increase in customer satisfaction? What about the trade-offs and potential hidden costs--what potential security vulnerabilities or bugs or just sheer waste lie within that expanded base of code? Call it the law of compound complexity--and defy it at your peril.
I am not a Luddite--like anyone with a pulse, I can see the astonishing advances information technology has brought to our personal lives, our businesses, the education of our children, and our future. But we should be more than a little willing to square up to the issue of rapidly escalating complexity, because vendors are stuffing it into their technology tools in ever-increasing volumes even as customers are screaming for more simplicity, more accessibility, more security. We could easily add into this mix more reliability and more accountability. And my question is: Is more complexity the only solution?
Perhaps, in the end, it is. If so, then I'd suggest that we shift not only the language of the debate but also its objectives away from complexity and toward simplicity--away from the problem and toward the solution, away from the aggravation and toward the opportunity. Along the way we should bear in mind the words of Albert Einstein: "Everything should be as simple as possible, and no simpler."
Bob Evans,
Editor in Chief
[email protected]
To discuss this column with other readers, please visit Bob Evans's forum on the Listening Post.
To find out more about Bob Evans, please visit his page on the Listening Post.
About the Author
You May Also Like