In Ivar Jacobson and Co’s new book, «The Essentials of Modern Software Engineering», it is abundantly clear that there is a powerful overarching message that grips not only the world of software engineering, but also the world of agile. This article serves as a review of the book but also expands some of its thinking beyond software engineering.
«The Essentials of Modern Software Engineering» is as triumphant in its effectively simple approach to teaching software engineering as it is progressive when applying critical thinking to methods and practices.
Having worked as a professional with agile delivery, change and transformation expertise in large enterprises for over 10 years, the basic problem the book addresses head on, namely that of “freeing the practices from the method prisons” befittingly translate outside of the software engineering domain and into the domain of agile methods and practices. Hence this perspective is the one I am using to write this review of Ivar and Co’s brilliant book, «The Essentials of Modern Software Engineering». Befittingly because the agile movement is rooted in software engineering and then evolved into the domains of business and organisations. So, 19 years later from the writing of the Agile Manifesto for Software Development, we have now come full circle; back to Software Engineering to solve our “method prisons” problem.
It was some of the most progressive software engineering minds that put that Manifesto together solving a very real problem of how we should think about developing software in an age where advancing technologies outpaced archaic management practices and tragically in many places still do. Whilst the Manifesto may have been successful to an extent and undoubtedly made software development thinking and practices better, agile has evolved beyond its previous confines of the software engineering domain and into business and organisations with the tour-de-force of a thousand management consultancies and training organisations eager to sell you an out of box agile solution.
Today, agile is being used and taught sometimes without the slightest reference to software engineering with exception perhaps to its origins story.