|
Practice Repeatable workspaces and builds help developers collaborate effectively on a code level and give you practice building and running the application in a variety of environments. By having a private system build that allows anyone to build, configure and run product teams can quickly identify configuration and environment aspects that vary, and make the build and configuration mechanisms more robust. [Berczuk]. Continuous integration practices give you the ability to develop reliable integration testing practices, in addition to simply ensuring that the build works in a “canonical” environment. [Duvall]. The next logical step to improve product quality is to get more practice with your deployment practices and consider continuous deployment [ Humble]. While automating and practicing your deployment practices will address some of the issues you might have with deployment quality, just executing the practice that developers implement is not enough, you want your system to have a deployment process that serves the needs of the key stakeholders in that process: the operations team. To enable this, you can benefit from considering what makes agile software development effective. The Agile Difference The technical practices that are most obvious in an agile team are developer testing, continuous integration, and automation. Testing is no longer a hands-off process, reserved for a QA team. And by building the software ( and running automated tests) after every commit you work to ensure that your code always build and works. In an ideal world, you can release your product at any point. While continuous integration is a necessary precondition for software to deploy, it is not sufficient for deployment into a production environment if your deployment mechanisms, these mechanisms are development centric. To be successful at creating reliable deployment processes you need to extend your agile stakeholder model to include the operations team and their concerns. On to Dev ops The next logical step is to routinize deployments into production. For this to happen the project team needs to incorporate operation issues into the backlog early, and incorporate operations team roles into the core development team. Some concrete steps that teams can take to move towards a dev ops perspective are:
Why Dev Ops Matters References [Berczuk]Berczuk, S. P. and B. Appleton (2003). Software configuration management patterns : effective teamwork, practical integration. Boston, Addison-Wesley. [Duvall] Duvall, P. M., S. Matyas, et al. (2007). Continuous integration : improving software quality and reducing risk. Upper Saddle River, NJ, Addison-Wesley. [Humble] Humble, J. and D. Farley (2010). Continuous delivery : reliable software releases through build, test, and deployment automation. Upper Saddle River, NJ, Addison-Wesley. [Cowham] Cowham, Robert, (2010-October) Agility Throughout the LifeCycle – the Rise of DevOps http://www.cmcrossroads.com/component/content/13763 About the Author Steve Berczuk is a consultant and developer who works with Agile teams. He has over 20 years experience developing application, often as part of geographically distributed teams. In addition to developing software he helps teams use Software Configuration Management effectively in their development process. Steve is co-author of the book Software Configuration Management Patterns: Effective Teamwork, Practical Integration and a Certified ScrumMaster. He has an M.S. in Operations Research from Stanford University and an S.B. in Electrical Engineering from MIT. You can contact him at steve@berczuk.com
Set as favorite
Bookmark
Email this
Hits: 2078 Trackback(0)Comments (0)
|




While it’s good that the idea of considering production issues early now has a name (Dev Ops), what matters in the end is delivering software more reliably, reducing waste in the product delivery process, and making stakeholders happy. Since product’s don’t deliver value until they are deployed and working it’s good to take a step back and consider operations and deployment processes and team as first class stakeholders earlier.
