This little post series will be a bit different from the former ones as it discusses a relatively new train of thought of mine. Hence, in some places the reasoning may still feel a bit rough and not as thought out as in prior posts. If you should encounter such a place, please bear with me – and maybe help improving the reasoning via discussing the topic with me.
After introducing the concept of uncertainty as the unifying main driver of rethinking IT, I discussed the basic approach how to act under uncertainty in the previous post.
In the previous post, I introduced the concept of uncertainty as the unifying main driver of rethinking IT. I described how it breaks the certainty-based value prediction model that most of our acting (not only) in IT is based upon and why so many people and companies have difficulties to accept and adapt to uncertainty.
After a few posts discussing some aspects of software architecture, I would like to continue with the probably most important concept that I see in the world (not only) of IT today: uncertainty.
In the previous post, I mentioned the second law of program evolution that Lehman described in his paper Programs, life cycles, and laws of software evolution