Agile, DevOps and DevSecOps

In my other article on DevOps & ITIL both are essential in Enterprise IT, we discussed on how DevOps and ITSM are completing each other to achieve the Enterprise IT goal, to improve the speed and stability in Enterprise IT processes. Let’s now shift the discussion to Agile, DevOps and DevSecOps, on how they relate to each other.

What is DevOps?

The word “DevOps” was coined in 2009 by Patrick Debois, who became one of it’s early founder / father of DevOps. The term DevOps was formed by combining “development” and “operations”, and initially refer to the movement for practitioners to share on how to deliver better service with technology called DevOpsDays.

“DevOps represents a change in IT culture, focusing on rapid IT service delivery through the adoption of agile, lean practices in the context of a system-oriented approach. DevOps emphasizes people (and culture), and seeks to improve collaboration between operations and development teams. DevOps implementations utilize technology— especially automation tools that can leverage an increasingly programmable and dynamic infrastructure from a life cycle perspective”, Gartner.

The DevOps movement started back from 2007 and growing until now.

DevOps implementation and thinking are based on three core principles called “The Three Ways”, which are:

The Three Ways of DevOps

These principles are enabled by several technical practices such as: Continuous Integration (CI), Continuous Testing, Continuous Delivery / Continuous Deployment (CD), Continuous Monitoring and Collaboration. Combining all practices and roles in the value stream (development and operations) and bringing them together leads to increased transparency and flow of value.

Implementing DevOps in an Enterprise is more complex, it requires several factors to work in harmony.

Jez Humble, the co-author of ‘The DevOps Handbook’, coined the acronym “CALMS” (Culture, Automation, Lean, Measurement and Sharing) as the DevOps Values that are required in implementing DevOps.

Agile and DevOps

There is a strong interconnection between Agile and DevOps. While Agile emphasizes on the collaborative culture, ownership and the mindset of delivering on what matters to our customer and focus on outcome. DevOps concentrates on bringing the code into production and enhancing the process with automation and engineering practices. DevOps ensures that new inventions are quickly passed on to the operation and business unit without interruption.

I believe DevOps enables Agile promises of Continuous Delivery in Enterprise

When Agile and DevOps work together during the software development life cycle, the outcome is a shorter cycle with resource flexibility and transparency from external and internal feedback. In other words, DevOps provides bridging of collaboration between all roles in value stream, engineering practices and the automation for Agile teams to deliver work faster to the customer.

Agile DevSecOps

DevOps and DevSecOps

While DevOps enables transparent and fast flow of value through automation and enables collaborative culture between all roles in the value stream, the security aspect is usually forgotten.

And the purpose of DevSecOps movement is to build on the mindset that “everyone is responsible for security” with the goal of safely distributing security decisions at speed and scale to those who hold the highest level of context without sacrificing the safety required.

In DevSecOps, team perform security test / assessment as part of the delivery process with help of automation pipeline with speed and scale, starting from planning, development, integration to deployment and release.