Based on my experience here are some top reasons why you and your IT organization need to start doing DevOps. If you recognize at least some of these symptoms in your reality you should definitely take a look under the hood.
- Releases are big and complex (several months, lots of overtime) and the consequences during release cannot be monitored
- You cannot choose parts of deliveries for production setting, everything is delivered at once
- Requirements work forces costly re-planning and already developed functionality may be thrown in the bin (this can be called “Scope out”, more on this and the solution “Scope in” in the next post)
- Functionality have been developed which you discovered afterwards was not needed
- The time for delivery is risky and stressful
- It’s complicated to install test and production environments and it is easy to do something wrong, which creates extra work.
- It is difficult to make sure that test and production environments look the same which creates different results for the same set of tests.
- Testers and architects have to wait for test and production environments to become available
- It is difficult to integrate and merge different components at delivery
- A lot of testing is done “just to be sure”, which testers know is waste of time
- Many problems and bugs are found late, the quality isn’t good
- Integration and merge takes a long time and looks like a “big bang”
- The feedback time to developers is counted in months
Some root causes I very often see are the following. These causes does not have any particular order of priority since they all make up a system and are reinforcing each other.
- The requirements process (especially on the business side) does not take the capacity of the development organization into consideration, you are trying to do to much.
- Waterfall development including the project steering model and the organization creates large batches of changes, many handovers and lack of collaboration
- There are strong dependencies between systems and a lack of long term architecture
- Test and delivery is handled manually
- Test strategy is missing or insufficient and you are not testing intelligently
I hope this gave you some inspiration for digging into the problems in you IT organization and start looking onto DevOps, Continuous Delivery, Enterprise Agile and Lean!
- “Big 5” dangers for your software company - March 10, 2015
- How to produce successful change - November 19, 2014
- Guest blog: Stepping Stones into the Future through Leadership Agility at Ericsson - September 1, 2014
Copyright © 2014 Emil Vikström. All Rights Reserved.