Conclusion

,

 

 

 

Fools ignore complexity. Pragmatists suffer it.
Some can avoid it. Geniuses remove it.

Alan Jay Perlis – Epigrams on Programming

 

The last quarter of a century has witnessed different periods in information system (IS) management, based on successive strategies and hopes. The initial blind faith in technological progress was first followed by cost reduction and, not long after, by value-creation strategies. Early in this book, we pointed out that there is really no single, legitimate concept of value for an IS. There are indeed many, from which we singled out three for their relevance and independence, namely the use value, the strategic value, and the particularly important sustainability value. We argued that these three concepts really cover the interest of most IS stakeholders. Acting efficiently on these values cannot be achieved using some sort of “black-box view” of information. What is needed is a more lucid understanding of the underpinnings of value creation or destruction, especially in those areas where technical and human aspects are most entangled. IT professionals and top management should progressively work towards a more lucid, “white-box view” of ISs, rather than relying excessively on mechanical rules and blind procedures. The general idea is that, ultimately, creation of value is creation of appropriate forms of simplicity for different stakeholders.

As a first step to better define simplicity, we tried, somewhat paradoxically, to understand the easier ideas of complexity! The results of information theory, considered a provider of a robust set of metaphors of complexity, taught us a number of important lessons. Just as for the idea of value, we learned that there is no single legitimate concept of complexity. At the deepest conceptual level, complexity can be related to unpredictability of a system, to randomness of a structure, or to the logical depth, that is the amount of design, that went into the system. We learned that complexity concepts that are both computable (or measurable) and universally applicable to any system simply do not exist. Specific concepts, on the other hand, do exist and they are useful, provided they are strictly applied to their limited domain of validity. Some, like cyclomatic complexity, are well known in software engineering, while others, like the horizontal and vertical complexity, that we introduced ourselves, prove useful when it comes to relating complexity and creation of value.

The second step, toward making simplicity practical, was to define six general principles. These principles were inspired by various thoughts on the design of objects. Simplicity turns out to be much harder to define than complexity. This is because, on the one hand, there is no mathematical counterpart that could guide us, but also and more importantly, because the idea of simplicity fundamentally involves non-formalized human factors. However, this difficulty, related to human factors, is precisely also what makes it more useful than complexity. The multifaceted concept of simplicity was split into six fundamental simplicity principles: simplicity by reduction, by hiding complexity, by organization, by learning, by time saving, and finally by trust. Some of these principles bear a close resemblance to the principles of the Lean Software Management for which they provide, we believe, a deeper conceptual foundation.

After identifying and organizing the main sources of uncontrolled complexity in ISs, namely growing technical heterogeneity, changing requirements, and a selection of human factors, we described how the above-mentioned simplicity principles can be used together to limit the effect of those sources and, thereby, we identified practical means of enhancing our triplet of values. In Chapter 5, we proposed a list of simplicity best practices, organized according to the layer of the IS architecture to which they apply: hardware, software, or functional architecture.

So, what could be the single most salient message of simplicity we are trying to convey? We believe that simplicity is a set of intuitions, a culture, and a set of values that do not necessarily readily translate into algorithms, templates, or frameworks. We believe it should be acknowledged, by IT professionals and top management, that, in the end, there is really only one efficient tool to master complexity: the human mind. Now, a human mind, to function efficiently, should not be used (at least not only) as a machine that merely implements algorithms and uses templates. This will inevitably create demotivation and disempowerment in the long run, which only generate more uncontrollable complexity. Higher abilities, which thus far remain the monopoly of the human mind, such as making sound critical judgments, developing simplicity intuitions, and achieving global understanding, should not be overlooked if we want to have a chance of mastering complexity. For this to be possible, stakeholders, each at their own level, should have the feeling that their work makes sense.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset