Continuous Delivery Essentials: Providing a platform as a service
Any large IT organisation will find that the introduction of agile development teams will increase the pressure on IT operations. The teams often need new capacity on short notice, but the process of delivering fully configured machines takes several days or even weeks. Teams cannot afford to wait that long. Some teams will resort to using cloud service providers like Amazon AWS : These service providers are capable of delivering capacity within minutes after a simple swipe of your credit card.
Why is it that these service providers can deliver in minutes what takes days in your organisation? And what can you do about it?
IT operations departments are split up the wrong way
A typical IT organisation is divided over departments. Each department is aligned with a speciality or profession. For example, you may see separate departments with network specialists, storage specialists, unix administrators, VMware administrators, DBA’s, application managers etc. Each application and system depends on all of the departments in order to function correctly.
When you require a new machine or environment, you potentially have to deal with a representative of every department and orchestrate the change requests among them. Each department has its own request forms, workload and service level agreements. Every time a request is handed over to the next department for processing, you have to wait until the request is accepted, planned and processed. Valuable time is wasted while waiting for the next processing step. From our experience, waiting times can accumulate to 98% of the complete turn-around time of a change.
Offer generic Infrastructure- and Platform as a Service to your internal clients
To speed up delivery of new machines, the IT department should reorganize and start offering their own Infrastructure as a Service and Platform as a Service with corresponding service levels. Both IaaS and PaaS are generic in nature and independent of specific business systems.
This independence allows for the creation of autonomous platform- and business systems teams. These teams will have strictly separated responsibilities: The IaaS and PaaS team have full responsibility for ensuring the quality and continuity of the infrastructure and platform services. The business systems teams are fully responsibility for the quality and continuity of the applications that are running on top of these services: The responsibility for operating the business systems is no longer delegated to operations. For all teams, the motto "You build it, you run it!" holds.
Introducing a platform as a service will not only speed up the delivery of new machines. As both types of teams are autonomous, they will be able to continuously improve their systems, processes and services without being dependent on others to do so. This will definitely increase the speed of change of the entire organization and form an essential step towards continuous delivery.
This post is part of a series on Continuous Delivery. Please see our tag Continuous Delivery for more posts on this subject. Or check our Continuous Delivery website to learn how Xebia can help you improve your time to market, reduce costs and improve quality using Continuous Delivery best practices.