DevOps as a Service is a delivery model for a set of tools that facilitates collaboration between an organization's software development team and the operations team. In this delivery model, the DevOps as a Service provider provides the disparate tools that cover various aspects of the overall process and connects these tools to work together as one unit. DevOps as a Service is the opposite of an in-house best-of-breed toolchain approach, in which the DevOps team uses a disconnected collection of discrete tools.
The aim of DevOps as a Service is to ensure that every action carried out in the software delivery process can be tracked. The DevOps as a Service system helps to ensure that the organization achieves desired outcomes and successfully follows strategies such as continuous delivery (CD) and continuous integration (CI) to deliver business value. DevOps as a Service also provides feedback to the developer group when a problem is identified in the production environment.
DevOps as a Service advantages
DevOps as a Service can appeal to organizations that lack internal DevOps expertise, or the budget to obtain or train up employees with those skills. This approach also hides the complexities of data and information flow management up and down the toolchain. Various individuals and teams involved with the DevOps process can use intuitive interfaces to call on the aspects of the tooling they require, without having to understand how the entire toolchain works. For example, using the same DevOps as a Service offering, a developer can call upon source code management tools, a tester can check application performance management tools and the IT operations team can make changes with configuration management tools. This allows the team to monitor and report on activities that occur in the toolchain.
By integrating chosen elements of DevOps tooling into a single overarching system, DevOps as a Service aims to improve collaboration, monitoring, management and reporting. An effective DevOps as a Service strategy enables a business to adopt a more flexible approach to its markets, and bring forth new products and services as the market changes. DevOps and DevOps as a Service can coexist with traditional development and deployment processes.
DevOps as a Service disadvantages
Discussion of DevOps as a Service offerings presumes that there is agreement on a single complete toolchain for DevOps that effectively meets any organization's needs, much less one that a provider could offer in a managed services model. Most DevOps toolchains incorporate some type of a CI/CD pipeline and monitoring capabilities, from the software development process to deployment into production, but organizations' needs and preferences will vary.
A managed DevOps services model also may limit an organization's options for tools and specific capabilities versus specific evaluation and selection of best-of-breed tools that are integrated in-house. Managed DevOps providers may offer fewer choices among individual tools, whether their own or from partners.
Other potential challenges with a DevOps-as-a-Service model involve tradeoffs in speed versus security, and a service provider's ability to meet availability and reliability requirements. An organization must keep a close eye on its use of services and associated tools, to keep costs under control.
Moreover, an organization's internal staff still must understand how the managed DevOps services and hosted tools interact and integrate with each other, as well as within the organization's own IT infrastructure and chosen cloud platform, so they can support applications after deployment to production.
The DevOps as a Service market
DevOps as a Service providers include DevOps tools vendors, public cloud platform providers, systems integrators and even IT teams that curate a toolchain and integrate it in-house. A DevOps as a Service vendor typically offers at least one of the following:
- a complete proprietary stack created, managed and maintained by the provider;
- strategies for the user to manage the cultural change involved in blending tasks traditionally performed by siloed software application development and systems operations teams;
- a more open stack wherein the vendor creates a proprietary interoperability system, allowing for some hosted open source components; or
- an orchestration layer that uses open application programming interfaces to integrate with existing tools.
Top DevOps-as-a-Service tools and products. A wide range of providers offer some form of DevOps as a Service -- major public cloud platforms, large and small managed services providers, global consultancies and DevOps-specific consulting firms.
Vendors may offer as-a-service versions of their tools that represent individual links in the DevOps toolchain, and integrate them with other tools in the DevOps toolchain. Typically, however, those vendors do not span and support an entire DevOps toolchain, especially ones that incorporate tools from multiple providers.