Much has been written about DevOps from a cultural point of view and I can personally vouch for the significant effort required to land such a change within a large organisation. But it is worth reflecting for a moment on the benefits which await you:
‘DevOps is a model that stresses communication, collaboration, integration, automation and measurement of cooperation between software developers, product owners, business analysts, systems engineers, DBA’s and all other information-technology professionals whom are the pursuit of delivering Customer value at pace’.
- There is no more “them” and “us” between Developers and Tech Engineers
- Hand-offs between teams are eliminated, so no more tickets
- Developers and Engineers work together and are aligned to deliver specific product streams
- Engineers working alongside the Developers help remove all the technical blockers associated with software development and allow us to build better products faster
- This foundation is built on Trust and it gets the full backing of our Security professionals
In our organisation, we have created a Hybrid job role known as an Application Engineer. They are trusted to build, test, configure and deploy to production their features, services and applications. Of course the build pipeline and continuous engineering practices play a major role in enabling this capability.
And so we should be ‘chuffed’. The software development process is on steroids and changes are delivered daily.
Improving only part of the system (as Lean advocates will tell you) just isn’t enough. If the stakeholders are prioritising requirements that are not valuable to the Customer or even worse, requesting features that only ‘they’ want, then the “system” breaks down because crap-in equals crap-out.
It may sound a little harsh but it’s a fact – DevOps is not enough and one needs to improve the entire end to end system that provides the input in order to deliver value.
We have developed a program, project, feature based prioritisation process called #TotalFlow that is an end to end Product Development Flow Framework which couples Lean/KanBan Software Management with Continuous Engineering and DevOps, to deliver Customer value faster.
To give you a small flavour of what we do, we start with the Portfolio Wall which allows us to prioritise the “Big Stuff”….and of course some smaller things! Projects are defined in terms of value to the Customer and are prioritised accordingly. This also involves some modelling around when the likely delivery might occur.
Like a Salmon swimming upstream, the prioritised projects end up on what’s known as the Green Project Wall just before the development capacity is ready to take on the work. This is where we break down the work into smaller packages, prioritise the Customer value again at a feature level and prepare the stories for the development teams. I can’t underestimate how significant this work is for the success of a project and the efforts of the Product Owners & Business Analysts are key to keeping the flow alive.
The Feature teams “pull” the work into their own individual KanBan Systems. This ensures the flow of features through the various development and test practices. In fact BDD (Behavioural Driven Development) has become an absolute must in terms of streamlining the flow process. I can’t show you an actual live board for obvious competitive reasons but you get the picture!
These Boards are different for each team and we practice a strict WIP (work in progress) limit on the requested features. Once completed, a feature is deployed to production via an automated pipeline that includes security testing which is built into the process – where even the change request is automated.
DevOps just ensures that there are no blockers to getting the features out the door as fast as possible.
Weekly showcases by the teams demonstrate the value delivered and also enables the flow of knowledge share. Plus it gives the teams the chance to show off!
Lean software management is probably the best way to describe #TotalFlow and if you thought that DevOps was a huge cultural challenge, you can’t even begin to imagine what a herculean cultural challenge it will be implementing a Lean system such as #TotalFlow…..but believe me it’s absolutely worth it!!
More next time……