Split Tech City is a community composed of well-intentioned and progressive companies, startups, associations, initiatives, institutions and individuals. Together we encourage and develop the IT sector of Split and the surrounding region.Support our community
Table of Contents
The DevOps approach has gathered a lot of momentum over the past couple of years. A Global Market Insights report says the size of the DevOps market crossed $8 billion in 2022 and is further projected to grow at 20% CAGR from 2023 to 2032.
Why is the DevOps process currently trending? How did it rise from a simple concept by Patrick Debois in 2009 to the most in-demand software deployment methodology on the market?
Beginning in the 70s, when computers started becoming mainstream in business, most companies have managed software projects using the waterfall method.
It is a linear, sequential approach to the software development cycle, where each stage relies on information from the previous stage and begins only when that previous stage is completed.
The waterfall methodology requires getting everything prepared and documented up-front and is layered into seven development stages:
However, once computers became cheaper and more powerful, communicating more easily with the clients and applying changes within days became the norm. In 2001, the Agile Manifesto was launched.
Rapidly, a new form of methodology started to take over more suitable for long, complex, and ongoing projects.
The Agile methodology is a modern and iterative system development technology. Instead of separate phases, it follows a flexible and adaptive process of cycles, such as planning, analysis, design, development, testing, and deployment. The Development, QA, and Operations Team now work in cycles called sprints that usually last for a few weeks.
The agile methodology is suitable for complex and dynamic projects with changing requirements and feedback. Although It presents its challenges, the model allows for faster delivery, higher quality, and more customer satisfaction.
Traditionally, it is an ‘us‘ and ‘them‘ environment between the Development and Operations teams. Although working on the same project, the two teams rarely communicate with each other. Because of those communication barriers, bugs found in the last stages of the Waterfall model by the Ops team could be costly to fix.
Furthermore, as time passed, Operations eventually grew to be very manually intensive.
If it was somehow manageable when using the Waterfall methodology, the Ops team has to repeat the deployment every cycle when using the Agile, highly increasing their workload.
Also, one of the reasons why Operations became manually intensive is that Operation Engineers who are technical and can do some programming, are not programmers and have different skills as well as different goals than their teammates.
Therefore, DevOps, first founded in 2009, aims to optimize the workflow between development and operations.
The DevOps methodology is a cutting-edge and collaborative system deployment methodology. It follows a continuous and integrated process of development, testing, and deployment.
It aims to bridge the gap between the developers and the operations teams by using tools, practices, and culture that enable automation, communication, and feedback.
The DevOps methodology is suitable for fast-paced and innovative projects that require frequent updates and improvements. It enables faster delivery, lower costs, and higher reliability.
However, it can also require a significant shift in mindset, skills, and processes for the teams involved.
The adoption of the DevOps methodology for software development is growing as a consequence of its effectiveness in delivering a well-finished product with zero (or the minimum number of) errors. According to a 2022 Statista survey of companies that have software products, almost 47% of respondents state using a DevOps method for software development.
DevOps covers a wide range of practices across the application lifecycle. Teams often start with one or more of these practices in their journey to DevOps success.
Version control is the fundamental practice of tracking and managing every change made to source code and other files. Version control is closely related to source code management.
Continuous Integration (CI) enables multiple developers to contribute and collaborate in a shared code base at a rapid pace. Without continuous integration, developer collaboration is a tedious manual process of coordinating code updates and merges.
Continuous Delivery (CD) is the process of automating build, test, configuration, and deployment from a build to a production environment. CD works in conjunction with CI, they are commonly referred to together as CI/CD.
Shift left is a term for shifting security and testing much earlier in the development process. Doing this can help speed up development while simultaneously improving code quality.
Still relatively new, the DevOps approach has a significant impact on organizations by increasing the speed and quality of software development while significantly lowering the error rate and costs.
In the years to come, DevOps is set to continue growing and changing the mindset in the IT culture by closing the lasting gap between Development and Operations.
This article was written by: Tamara Habensus