The Doppler Quarterly Spring 2016 | Page 59

7 Steps to Choosing the Right DevOps Tools

By Mike Kavis
Most developers have moved beyond understanding the business value of DevOps and on to how best to implement it . While best practices are starting to emerge , most enterprise DevOps shops aren ’ t following them . These best practices go beyond common sense ; they get at the essence of what DevOps means for your enterprise and how to get DevOps right the first time . For most organizations , this is new stuff .
DevOps best practices
If you ’ re considering DevOps , you have many moving parts to consider . Core to this structure are automated provisioning , automated testing , and automated build and deployment . At the same time , you need to maintain continuous feedback , with information continuously moving back and forth , as well as making sure that you log pretty much everything .
As to the best practices for choosing DevOps tools you can use to approach your DevOps implementation , these can be boiled down to seven steps .
Step 1 : Understand collaboration and shared tools strategy for the Dev , QA , and infrastructure automation teams
DevOps teams need to come up with a common tools strategy that lets them collaborate across development , testing , and deployment . See Figure 1 to the left for a visual breakdown of these components .
This does not mean that you should spend days arguing about tooling ; it means you work on a strategy that includes DevOps …
• Processes
• Communications and collaboration planning
• Continuous development tools
• Continuous integration tools
• Continuous testing tools
• Continuous deployment tools
• Continuous operations and CloudOps tools
Coming up with a common tools strategy does not drive tool selection — at least not at this point . It means picking a common share strategy that all can agree upon and that is reflective of your business objectives for DevOps .
The tool selection process often drives miscommunication within teams . A common DevOps tools strategy must adhere to a common set of objectives while providing seamless collaboration and integration between tools . The objective is to automate everything : Developers should be able to send new and changed software to deployment and operations without humans getting in the way of the processes .
Step 2 : Use tools to capture requests
No ad hoc work or changes should occur outside of the DevOps process , and DevOps tooling should capture every request for new or changed software . This is different from logging the progress of soft-
SPRING 2016 | THE DOPPLER | 57