Watching the spread of practices such as Agile, DevOps and Lean Enterprise, I am excited to consider that software development is maturing. However, with such practices growing in popularity we really need to consider more deeply “are we building the right products and features?”.
Anyone involved in planning, designing, creating or delivering software needs to be aware that no matter how efficient we make the development cycle; no matter how beautifully we craft the code and no matter how efficient the path to production is: if your software entombs systemic business failures in technology you’ll only ever succeed in further damaging the business.
One way to address this is to take a Systems Thinking approach – such as the Vanguard Method – in order to improve business processes as a precursor to IT intervention. This approach can often have the added advantage of simplifying the requirements for our IT. Removing causes of failure demand, duplication and other inefficiencies can only serve to decomplect the business and our software.
There is no point in doing the wrong thing better and faster – we need to make sure we build the right thing first.