Thoughts on Responsible Building
In my last blog post, I wrote about the new 11-week mission structure that we are working on for all GOV.UK projects. A large part of this new structure is delivering new and improved functionality without creating large amounts of technical debt. We’ve already spent a long time trying to clear up existing technical debt without creating more of it.
In a recent blog post on Inside GOV.UK, I wrote about the “iron triangle” of resources, time and scope. For me, responsible building means always choosing time and scope over resources. That means locking down the timeframe and the size of your project, and then deciding what resources you need to complete it. That way, you have a much better chance of avoiding scope creep, or rushing the job and having to hack together solutions at the last minute. That is what responsible building means to me.
Here’s what I wrote in full:
Software development has the concept of the “iron triangle” of resources, time and scope. You get to choose 2 of the 3 each time you start a new project. For me, responsible building means always choosing time and scope over resources.
Firstly, your project should have a small, fixed scope.
Secondly, it should have a fixed schedule that matches this scope. This will allow the developers to plan for both building the software in a maintainable manner with little technical debt, and also documenting what they’ve done for the benefit of people working on it in the future.
Both a constantly changing scope and an open-ended schedule inevitably lead to an incoherent product with no overall plan or execution. Such products are very difficult to maintain or understand and are prone to breaking – the opposite of responsible building.
If this sounds like a good place to work, take a look at Working for GDS - we’re usually in search of talented people to come and join the team.