The term "DevOps" is on everyone's lips, the definition of it all the less. We clarify what the term means.
Whether at conferences or on the Internet, the term "DevOps" is encountered again and again in various places. Why? IT companies are often characterized by delayed projects, questionable product quality and missed deadlines. With DevOps all sorts of challenges in the IT environment are to be mastered.
What is DevOps really?
DevOps is not a tool, software or technology. It is neither a methodology nor a process. DevOps is understood as a corporate culture with certain principles that a company aspires to and pursues in the long term.
The term consists of Development (Dev), which stands for the software developers, and Operations (Ops), representative of the IT operation. The combination of both should enable a process improvement approach in the areas of software development and system administration. Supporters of this corporate culture value cooperation, the joy of experimenting and the willingness to learn. More specifically, the aim is more effective and efficient cooperation between different sectors: development, operations and quality assurance. These pursue the goal of rapid implementation of stable, high-quality software. Starting with the concept to the customer or user.
Explanation of Terms
DevOps currently allows a wide range of interpretations, which often leads to misunderstandings. In general, there is agreement that DevOps will enable more efficient and smoother development and operations collaboration.
John Willis, a veteran of the DevOps movement, describes the framework of the management strategy with five basic principles:
Culture: Mutual trust, steady flow of information, willingness to learn
Automation: Automation of certain operations
Lean: Avoid waste, generate value, transparency, holistic process optimization
Measurement: Uniform evaluation criteria (also beyond the application and its components)
Sharing: Willingness to share knowledge, learn from each other, and share knowledge proactively
These five components form the basis for more efficient collaboration and better quality of the final product. Although DevOps is not itself a tool, software tools for automation and measurement are important building blocks in successful implementation. But the heart of DevOps is the staff. Especially their way of working with others.
DevOps in practice
First and foremost, DevOps is a philosophy and a concept. The concept is composed of mutual understanding of tasks, acceptance and good cooperation between the developers. Only in the second step is it about organizational matters - IT managers have to adapt the structures and responsibilities in order to realize the advantages of the concept.
The DevOps approach translates agile methods into the IT domain and connects standard models for software development and IT operations. Because the procedures throughout the software process are identical, shorter release cycles occur and the risk of untested elements decreases.
Employees should be included in as many decision-making processes as possible. Especially when it comes to the decision of the supporting tools, because in the end, they ensure daily satisfaction.
The more the DevOps philosophy is lived, the more the overall IT performance improves. It may be necessary to use "hikers", who understand several sides and can mediate between contradictions.
It should be noted that no one company is going to change its internal structures and development processes from one day to the next and work according to new, more agile methods. An introduction of DevOps will not bear fruit immediately, but will gain in value over time.