The requirements for operating web applications, especially e-commerce platforms and online stores, have changed: In the competition for the favor of store visitors, which ultimately manifests itself in a good conversion rate, the user experience is constantly being improved in order to stay ahead of the competition. Continuous changes to the functionality of the online store and improvements to the design and user interface must not be at the expense of operational reliability and performance. The competition does not forgive mistakes, and store operators expect the same quality of service as in the days when store updates were carried out on an annual basis on a managed server.
The contradiction between operation and development
This changed situation results in a conflict between development and operations. While the developers would like to bring optimizations and adjustments live as quickly as possible on behalf of the store operator, the system operators see the reliable and high-performance operation of the online store potentially at risk with every change. The agency finds itself in the uncomfortable situation of either being "too slow" or "not conscientious enough".
DevOps combines development and operation
The word DevOps is made up of "Dev" for application development (Development) and "Ops" for IT operations (Operations) and stands for the connection of two seemingly contradictory areas. Internet startups and native cloud companies use DevOps to update their applications faster and deliver them error-free. For example, at the online mail order company and cloud provider Amazon, a software update was already triggered every 11.6 seconds on average in May 2011 and delivered to an average of 10,000 servers simultaneously. Suitable tools are necessary for this. Nevertheless, DevOps is more a question of philosophy and a task for process organization. As Amazon's CTO Werner Vogels wrote about it in the Association for Computing Machinery's Queue magazine back in May 2006:
"The traditional model is that you take your software to the wall that separates development and operations, and throw it over and then forget about it. Not at Amazon. You build it, you run it. This brings developers into contact with the day-to-day operation of their software. It also brings them into day-to-day contact with the customer. This customer feedback loop is essential for improving the quality of the service."
What does the DevOps approach mean for agencies?
In agencies, too, teams of developers and system operators who share service responsibility are the answer to current and future market requirements. To do this, it is necessary to eliminate the organizational separation of development and operations. For the platforms commonly used in the agency, processes that can be automated must be developed that cover all stages of a service from development to operation: Development, Version Control, Merge and Build, Test, Package, Release, Configuration Management and Monitoring. Unlike native cloud companies that develop a limited number of products, established development and deployment processes cannot simply be adopted as is. The large number of projects and the ability for customers to make changes themselves place additional demands on the processes and individual stakeholders. Since not every small change can be subjected to a manual quality check, a high degree of automation is necessary.
The agency as a managed service provider
Ideally, the key performance indicators (KPI) to be monitored later are agreed between the agency and the customer at the very beginning of the collaboration. In this way, the KPIs can already be taken into account during the conception phase and the application as well as the infrastructure can be designed accordingly.
In addition to technical indicators such as availability and response time behavior, these KPIs should also include indicators such as search engine visibility, number of daily orders and checkout abandonment rate.
The demands placed on web application operations continue to increase along with their importance to achieving business goals. To avoid the dilemma of agency clients' change requests and stable operations at the same time, it is necessary to introduce DevOps methods and processes in the agency and to agree on KPIs with agency clients that allow both sides to monitor success. The technical and economic development will lead to further concentration at both agencies and service providers, making the introduction of DevOps without alternative.