DevOps: What it is and its Power in IT Service Management
You may have heard the term DevOps or DevOps at some time, but either you don’t quite place it or don’t know what it refers to specifically.
In this article, if that is your case, we will try to explain the curious origins of this term and its power in IT service management.
Table of Contents
The Origin of the term and the DevOps Movement
If you are curious about the term DevOps, you should know that this movement was born accidentally. Indeed you have read about the Agile movement, based on dividing complex processes to optimize them and focusing on the customer.
This movement remains closely linked to this philosophy. It was in Toronto in 2008 when the establishment of this work philosophy stood marked.
Andrew Clay is considered the creator of the DevOps philosophy, along with the Belgian Patrick Debois. Both began working in 2008 to bring the Agile philosophy to the world of systems administration. His work would be made public in San José (California) in 2009 and a year later in Europe. The hashtag on Twitter #DevOps was top worldwide.
Of course, sometimes DevOps and Agile are confused when they have points in common -they both come from the same philosophy-, but they have differences that we will see below.
But What is DevOps, and What is it not?
How to define this Management or Work Model?
One of the help is providing by Wikipedia, which defines DevOps like this:
DevOps (English acronym for development -development- and operations -operations-) is a software engineering practice that aims to unify software development (Dev) and software operation (Ops). The DevOps movement’s main characteristic is to vigorously advocate for automation and monitoring in all steps of software construction, from integration, testing, release to deployment, and infrastructure management. DevOps targets shorter development cycles, higher deployment frequency, more reliable releases, closely aligned with business goals.
Thus, we can define DevOps from some key ideas familiar to practitioners of the Agile philosophy.
- The DevOps stands to focus on systems administration.
- DevOps is a method of creating software.
- DevOps stays based on the integration between system administrators and software developers in teams.
- It allows you to create high-quality and fast software, ensuring a high frequency of updates.
But let’s Solve Some Questions.
What do we mean by the integration between system Administrators and Software Developers?
This philosophy’s ultimate goal is to create software, which requires integrating personnel from both disciplines without making a new way of developing software itself. Software creation remains the same, depending on how it should stay done. It changes the way you approach design.
On the other hand, we cannot confuse this methodology with the methodology applied by some start-ups.
Let’s be honest: in the first moments of a start-up, everyone should know how to do a little of everything. Although this ‘initial dynamics’ of work applies to software development, in the long run adopting DevOps should not mean that developers become bosses or have more responsibilities but rather adopt dynamics that optimize work times.
DevOps Tools
DevOps has different tools that it integrates into a functional work structure.
Here is no single tool or system, but many are applied in one way or another depending on the work to stay done. These tools should fit into different categories that reflect aspects of the development process:
- The code: it is the base of the software, and DevOps implements different tools in the administration of the source code and the fusion of the code
- Construction: continuous integration consists of making automatic integrations of a project with high frequency to detect failures. It applies to compiling and running tests on an entire project.
- Testing: continuous tests to be able to detect the flaws and weaknesses of the project
- Package: creating a repository of artifacts that perform specific tasks before the software’s final distribution.
- Releases: release management, different versions, and constant updates.
- Infrastructure setup for distribution
One of the suites designed for DevOps is Puppet Labs, created by Andrew Clay in 2006, and it works on all operating systems. It remains also used by companies such as Disney, NYC Stock Exchange, or Google.
Is DevOps a Culture like Agile is?
Well, no, DevOps is not in itself a culture like Agile. However, its implementation needs to be preceded by a significant change in collaboration, communication, and integration in the middle of the company’s different areas that will be affected.
It is true that once DevOps has stood implemented in the work-flows of the company. The cultural change is very significant, and there is hardly any going back.