We are more than 20 million software developers on the planet, with more than 100,000 methods on how to develop software. Most of what we do is nothing to be proud of. There are exceptions, for instance at Apple, Google, and Amazon. Their recipes for success are relying on a method that focuses on hiring the most brilliant people in the world and empowering them to create wonders.
On 20 April, 2018, Dr. Ivar Jacobson will instruct a public lecture at Chalmers University. During his talk, he will revisit the history of methods, explain why we need to break out of our repetitive dysfunctional behavior, and introduce Essence: a new way of thinking that promises many things, one of them being to dramatically change the way we educate in software development to increase the competency in our profession. Reserve your seat.
What about the rest of the world – banks, insurance, airlines, defense, telecom, automotive, etc? How can we get these industries to be more innovative and develop better software, faster, cheaper and with happier customers? How can we do that given that the state of the art of our discipline is in such a chaos, characterized by the multitude of competing methods out there?
Agile has now moved to Scaling Agile with methods such as SAFe, DAD, LeSS, Nexus, Scrum at Scale and many more. They are at methods war with one another, practices are locked into method prisons, method prisons are guarded by gurus, they are monolithic, they are described in a home-grown way, etc. Clearly all these methods have a lot in common; after all they are about software development. However, there is no explicit common ground so learning one new method means relearning a lot of what you already know. Clearly, these methods all have something of specific value, but that is also hidden and hard to extract for someone just interested in the differentiators.
The most powerful way to help the rest of the world to build excellent software is to dramatically increase the competency (and skill) of all of us. There are no shortcuts. Education must start from an understanding of the heart of software development, from a common ground that is universal to all software development endeavors. The common ground must be extensible to allow for any method with its practices to be defined on top of it. This would allow us to sort out the chaos and to increase the competency of all of us. As a plus, that competency increase wouldn’t hurt the brilliant people, but make them even more productive than today.
Thus, first we have to find the heart of software development. It is nothing springing from the brows of Zeus, but something that has to be identified by people not just brilliant but with significant experience in developing software. In 2009 the SEMAT (Software Engineering and Method) community was founded by Ivar Jacobson, Bertrand Meyer and Richard Soley. It quickly attracted thousands of supporters and many famous people in the world signed up for an initiative to find what is the heart, called the Essence of software engineering. Hundreds of people were engaged and in 2014 Essence became an international standard. Essence describes the essential things to work with, the essential things to do and the essential competencies to have when developing software.