DEV Community

Michael Cade
Michael Cade

Posted on

#90DaysOfDevOps - Day 4

This post originates from https://github.com/MichaelCade/90DaysOfDevOps come and get involved, star and fork the repo and start your own journey. You don't need to follow what I am doing but the sections might help.

DevOps & Agile

I think a good place to start is understanding a little more about a common angle I have seen in learning this area and that is DevOps vs Agile even though they have similar goals and processes. In this section, I am going to summarise this hopefully.

The biggest difference I can see here between the two though is the automation that comes with DevOps, tools are very similar but automation is where the main difference. But there are some more differences that we will cover now.

Do you know the difference between DevOps and Agile they were formed as standalone concepts? But now the two terms are getting fused in this post we will examine the crucial differences between agile and DevOps and find out why the two are connected so tightly let's start with definitions

Agile Development

Agile is an approach that focuses on delivering small results faster rather than releasing one big interaction of the product software is developed in iterations the team releases a new version every week or month with non-incremental updates the final goal of agile is to deliver an optimal experience to the end-users

DevOps

We have been covering this for the past few days with a few different ways of describing the end goals of DevOps, DevOps usually describes software development
and delivery practices based on cooperation between software developers and operations specialists the main DevOps benefits are delivering a simplified development process and minimising miscommunication.

What is the difference between Agile and DevOps

Different participants

Agile focuses on optimising communication between end-users and developers while DevOps targets developers and operation team members. We could say that agile is outward-oriented towards customers whereas DevOps is a set of internal practices.

Team

Agile usually applies to software developers and project managers the competencies of DevOps engineers lie in the intersection of development, QA and operations they are involved in all stages of the product cycle.

Applied Frameworks

Agile has a lot of management frameworks to achieve flexibility and transparency. Scrum > Kanban > Lean > Extreme > Crystal > Dynamic > Feature-Driven >. DevOps focuses on the development approach in collaboration but doesn't offer specific methodologies

Feedback

In Agile the main source of feedback is the end user in DevOps the feedback from stakeholders and the team itself has a higher priority on them.

Target areas

Agile focuses on software development more than on deployment and maintenance DevOps focuses on software development as well but its values and tools also cover deployment and post-release stages

Documentation

agile prioritises flexibility and tasks at hand over documentation and monitor DevOps on the other hand regards project documentation as one of the essential project components seven risks agile risks derived from the flexibility of the methodology agile projects are difficult to predict or evaluate as priorities and requirements are continually changing DevOps risks derive from a misunderstanding of the term and the lack of suitable tools some people see DevOps as a collection of software for the deployment and continuous integration failing to change the underlying structure of the development process

The Tools Used

Agile tools are focused on management communication collaboration, metrics and feedback processing the most popular agile tools include JIRA, Trello, Slack, zoom SurveyMonkey and others. DevOps uses tools for team communication software development deployment and integration like Jenkins, GitHub Actions, BitBucket, even though agile and DevOps have slightly different focuses and scopes the key values are almost identical therefore you can combine the two

Bring it all together… good idea or not? Discuss?

The combination of Agile and DevOps brings the following benefits you get

  • Flexible management and powerful technology
  • Agile practices help DevOps teams to communicate their priorities more efficiently
  • It leads to strengthening the team adopting agile practices will improve collaboration increase the team's motivation and decrease employee turnover rates
  • As a result, you get better product quality

Agile allows coming back to previous product development stages to fix errors and prevent the accumulation of technical debt how to adopt agile and DevOps
simultaneously just follow 7 steps

  1. Unite the development and operation teams
  2. Create build and run teams all development and operational concerns are discussed by the entire DevOps team
  3. Change your approach to sprints assign priority ratings to offer tasks by the same scale that you use to great development projects encourage development and operations teams to exchange their opinion on other teams workflow and possible issues
  4. Include QA in all development stages
  5. Choose the right tools
  6. Automate everything you can
  7. Measure and control by using tangible numeric deliverables

What do you think? Do you have different views? I want to hear from Developers, Operations, QA anyone that has a better understanding of Agile and DevOps that can pass comments and feedback on this?

Resources

Top comments (0)