The DevOps, The Agile, and The Scrum: The Trilogy

Ernesto Gonzalez
Strategio
Published in
4 min readJan 23, 2023

As a software developer, I have come across various project management methods. Recently, I’ve been utilizing the Agile Scrum method in my side job and found it beneficial. I’ve also gained a deeper understanding of methodologies like DevOps in my last two weeks at Strategio. Moreover, I’ve learned that companies like Amazon and Netflix use DevOps to optimize their development and deployment. In this blog, I will compare and explain DevOps, Agile, and Scrum, to help people understand how they differ and can be applied in different contexts.

Defining the Methodologies

DevOps: Set of practices that aim to increase deployment frequency so that our application is continuously being deployed to end users reliably.

Agile: Project management methodology that prioritizes flexibility, customer satisfaction, and the ability to adapt to change. It emphasizes the delivery of working features in minor, incremental updates and encourages a cooperative and flexible approach for the team.

Scrum: Framework that is based on Agile principles. It is used to manage software development projects by providing a structure for delivering regular updates and the ability to adapt and respond to changes throughout the project lifecycle.

Scope

Agile is more of a philosophy. Agile requires a paradigm shift for the individual. There are four core values of agile:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change

The agile methodology is present in all aspects of a project, anywhere from design to development and deployment. Unlike Scrum, there are no specific roles that form part of Agile.

Scrum is built on the agile philosophy, which is why it is considered a framework. It specifically applies to the development process of a project. Scrum is supported by three pillars: roles, events, and artifacts. Unlike agile, it is more detailed in terms of methodologies and composition. For instance, there are three leading roles in Scrum, the product owner, the Scrum master, and the developers. All of these roles follow the agile mindset. In Scrum, a product is developed on a series of fixed-length iterations (ex., a quarter). Such iterations are called sprints and are unique to the Scrum framework.

DevOps aims to deliver functional products efficiently and reliably by utilizing small and frequent deployments and automating processes for smooth and continuous delivery. Just like Agile, DevOps requires a paradigm shift, a mindset change. DevOps focus on having a cross-functional team at all development points. DevOps aims to improve communication and collaboration between development and operations teams. DevOps is more focused on improving the quality and efficiency of software releases. At the same time, Agile and Scrum are more focused on improving the quality of project management.

Tools and Artifacts

The tools and artifacts can also vary per methodology. Some of them might not even be related to software development. For instance, the Agile philosophy can be applied to any project, not only software-related projects.

While Agile is a philosophy or concept that guides the development process, it does not prescribe specific tools. However, many tools are commonly used with Agile frameworks, such as Scrum, to aid in task management and team collaboration. Examples of such tools include JIRA, Trello, Asana, GitHub Issues, and others. These tools help teams to organize and prioritize tasks, track progress, and facilitate communication and collaboration among team members. Additionally, other tools are specific to Agile methodologies like Scrum boards and time tracking tools like burndown charts and velocity charts which help to visualize progress and measure the team’s performance.

DevOps utilizes tools similar to Agile Scrum but includes a broader range of tools and processes throughout the entire DevOps cycle. This does not mean that there are tools exclusive to DevOps, but rather it means that when it comes to DevOps, we have to go more in-depth regarding the tools being used and the order of operations.

Some of the tools used at each stage of the DevOps lifecycle.

Compared with Agile and Scrum, DevOps has a more comprehensive set of practices.

In regards to artifacts, they are concrete items that are created and used to manage a project.

Scrum artifacts include the product backlog, sprint backlog, and increment. While DevOps artifacts include the codebase, build artifacts, and deployment configuration. Here we can also notice that Agile Scrum is more directed toward project management than software release methodologies.

Benefits of each Methodology

The benefits of Agile include faster delivery of working software, better communication and collaboration among team members, and improved customer satisfaction.

The benefits of Scrum include improved project management, better alignment of team members and stakeholders, and increased transparency and predictability of progress.

The benefits of DevOps include faster delivery of new features and updates, improved reliability and scalability of services, and better monitoring and measurement of systems and applications in production.

In conclusion, DevOps, Agile, and Scrum are popular methodologies in software development and project management. Each has its own set of practices and philosophies, with DevOps focusing on deployment, Agile emphasizing collaboration and flexibility, and Scrum being a framework built on Agile principles. The choice of methodology will depend on the project’s needs. When used correctly, these methodologies can help teams deliver high-quality software and achieve their goals.

Thanks for taking the time to read this blog. Any suggestions or corrections are always welcomed!

--

--