With DevOps being one of the newest top priorities for IT organizations, it’s sometimes hard for IT managers to define what has to be in place before initiating a formal DevOps implementation. What are the indicators for IT organizations to know if they are ready to undertake a DevOps initiative? How can they minimize the chances of failure?
There are 5 key traits you can use to measure your organization’s readiness to adopt DevOps. Before we begin, we need to understand a little about DevOps.
DevOps is a movement to deliver quality IT solutions at the speed of the business by closely aligning software development and IT operations to increase IT software delivery speed, reduce the cost of software errors, and improve application stability and resiliency.
DevOps is NOT simply a methodology, an organization, a title, a culture or IT automation.
When you want to assess your organization’s readiness to adopt DevOps consider your maturity in the following key areas:
Organization need and commitment.
Consider how company executives and the business areas view the IT organization’s ability to deliver and maintain stable applications to serve business requirements as quickly as they are needed. Are business applications delivered quickly enough to meet business requirements and stay ahead of your business competition? How quickly can the applications be updated as capabilities or requirements change? Is Management committed to making the changes necessary and willing to provide the resources?
A successful DevOps movement requires a culture of communication and collaboration. To what extent does the business throw their requirements over the wall to Development that then throws the software code over the wall to IT operations? Do the Business, Development and IT Operations have shared goals, objectives and incentives? Is there open and honest two-way communication between both organizations and their workers? Is there a collaborative work environment? Does the organization have a safe environment where new ideas and feedback are valued and rewarded? Has the organization invested in training and skills development?
Agile development methodology maturity.
Agile software development processes are critical to deliver software required by the business quickly. However, for projects where the requirements are well known and unlikely to change, the waterfall project method can still be the best solution. To what extent are you using the values of the Agile Manifesto and 12 Agile principles? Are you using the Scrum framework including the specified roles, artifacts and meetings to manage your Agile projects? Have the Agile teams been trained to be most effective?
IT Service Management process maturity.
IT Service Management processes are essential for successful DevOps. ITIL is the most common IT Service Management methodology, but is not strictly required for DevOps. What is indeed critical is that there are formal processes in place and that these processes are mature enough. Has each IT Service Management process been defined and made available to everyone in the organization involved with the process? Does everyone use the same IT Service Management terminology? Is each process simplified and any unnecessary steps removed? Have the IT Service Management processes been automated? Have the process owners, service managers and process participants been adequately trained?
Continual improvement maturity.
DevOps is most successful in learning organizations that are constantly spending time to improve their methods and processes as well as experimentation to make continual improvements. Does the organization use Agile, Lean Tools such as Plan-Do-Check-Act, Value Stream Mapping, the Improvement Kata? Is experimentation, even failure, recognized and rewarded? Has time been allocated in each person’s week for experimentation and improvement? Are people trained in the various improvement methodologies?
By understanding your company’s maturity in each of these Top 5 traits you can better understand your readiness for DevOps and develop a plan best suited to deliver DevOps results. While DevOps uses automation to speed software delivery, automation tools are not a prerequisite for DevOps organization readiness.
Would you like to learn more about DevOps and assess your organizational readiness?