DevOps is a hot trend lately, but it’s not a new thing. This term is becoming real popular in recent years, (just like other terms as machine learning and agile methodologies),
This chart is tricky since there weren’t that many Google
internet users at 2004 to 2009 but still you can see the big raise of search numbers in recent years
So… what is DevOps exactly? According to the Agile Admin. This term is all about agile operations and the value of collaboration between development and the operations staff throughout all stages of the development lifecycle when creating and operating a service.
Developers + Operations = ??? = profit
In other words, DevOps is the cooperation between the development and operations team and the people involved in the project to have a satisfactory delivery. It encapsulates the continuous delivery, automate deployment, designing the operability and monitoring.
The DevOps and the Agile methodologies are very tied together, nevertheless, DevOps and Agile are not the same thing.
In my experience, the DevOps team is the team everyone blames when a push is made into the development or any other phase and it doesn’t work properly. They are the sysadmins or masters of /Jenkins/Travis/etc… but this is not exactly the truth. DevOps is the answer to the fast pace of the modern world technology.
Continuous integration in testing
Thanks to the continuous integration which is a part of DevOps which is based on Agile, a developer can download a source code, test, build the system and verify the test! So mistakes made by developers are caught fast. So both DevOps and System tests in agile methods share the idea of “automate builds” including the verification tests. Sadly this process takes time, so the test have to be fast!
Like all the popular stuff, some people won’t like it (either having a reason or not). DevOps is popular so… some people say it’s the same thing sysadmins been doing forever just with more ceremonies and the agile principles. But I guess DevOps is a perfect solution for software development because more than just a term is a combination of tools, values, principles and practices that allow the delivery of projects at a higher velocity.