Building Clouds
The highly automated and scalable nature of cloud computing encourages practitioners and scholars to reconsider software delivery processes. To efficiently leverage the benefits of elastic clouds, applications are typically provisioned and deployed several times a day in different environments and regions. Related procedures must support agile development and deployment of software components as well as the associated management of different versions and configurations. To efficiently utilize auto-scaling mechanisms, the latency produced by provisioning and deployment activities needs to be reduced while ensuring consistency, repeatability and reliability. In this chapter, an integrative process-oriented approach to improve the overall quality and performance of deployment processes is presented. Based on a comprehensive analysis of requirements, the proposed process considers the link between deployment and configuration management as well as tools and organizational aspects. Further, related research challenges and a case study focusing on the Adobe Shared Cloud are presented.