top of page

DevOps and Agile - Hand in Glove


DevOps has been deemed one of the main verticals by the pioneers of IT Industry not without a reason. My goal here is to draw attention to the problems DevOps can address and how. DevOps has helped organizations to improve their agility and significantly reduce time to market for their products. 


We are aware of the challenges of a typical deployment pipeline in an organization. In the end IT operations teams are always worried about service level agreements and the stability of the system before deploying on pre-production or production environment. 

Despite the best attempt to produce stable changes updates deployments on higher environments frequently cause things to break. This is because of the difference in environments caused by different configurations, dependencies, data, and other aspects of instance, storage, and network settings which is handled by the IT operations teams. IT operations view changes as potential problems and introduce detailed processes that involve checklists, meetings, approvals etc. to ensure changes are deployed only after sufficient scrutiny. This slows down the process of taking an idea all the way from inception to the users. All these effort go un-noticed in absence of DevOps scope!


The introduction of agile implementations unified business, development, and QA roles into cross-functional teams. In their quest for enhanced agility, agile teams produced integrated product increments more frequently. They infused good agile practices such as test-driven development and refactoring code to produce stable releases. The code quality was improved, but this would often break things in the deployment phase because of the rapid cadence of shipped increments. Agile approaches did not explicitly leave out IT operations, but it was often an afterthought


IT operations started to see frequent product increments as a nightmare because now the changes that could break infrastructure were being pushed more frequently. This is the Problem/Gap that DevOps attempts to solve.


DevOps: The solution


DevOps is the culture and practice of closer cooperation between developers and QA teams, or dev, and IT operations, or ops, DevOps. This type of cooperation is not created in a vacuum, it's created by a change in mindset, which includes collective responsibility throughout the SDLC. 

It includes learning and implementing integration practices and patterns. It also includes the use of tools to automate various processes, ranging from build automation to automated acceptance testing, to programmatically provisioning and configuring infrastructure to automated monitoring of deployed applications. 

DevOps enables organizations to deploy hot fixes and change requests to users quickly and keep deployments more stable across multiple environments. This reduces the turn around time on the deliverables, which is perfectly aligned with the Lean Principles

There are three key aspects to DevOps:

  • Continuous Integration (CI) - ability to trigger an automated build.

  • Continuous Deployment (CD) - Ability to automatically deploy the product incremental build to production or a production-like environment.

  • Continuous Delivery - capability to always keep a product in a stable state post deployment.


Agile and DevOps complement each other. They can be viewed as two sides of the same coin. But DevOps implementation will not be effective without a cultural change in the organization. The organization needs to transition away from manual steps, silos and hand-offs, and introduce closer cooperation between developers and IT teams with improved automation and collective responsibility of the deployment pipeline!




https://www.linkedin.com/pulse/devops-agile-hand-glove-nitu-saksena-pmp

Commentaires


Subscribe Form

©2020 by Discovering everything Cloud. Proudly created with Wix.com

bottom of page