Cloud computing has been increasing its data centres due to demand. This newly emerging paradigm is heavily based on Software as a Service concept, which provides services on demand utilising resources more effectively within the Cloud environment. The Cloud architecture, its layers and its composition of components and services need to be designed for scalability and re-configurability, as they support services and their agreements (e.g. service level agreements). The resource management of Cloud computing is the key to achieving potential benefits. Therefore, it is essential to design Cloud applications as web service components based on well-proven CBSE (component-based software engineering) methods and techniques with appropriate security controls. This chapter proposes a number of component models which have been designed for supporting Cloud design characteristics and their associated architectural layers. We have also developed a number of best practice design guidelines for components-based design that supports componentising Cloud applications explicitly. This chapter also proposes a process model based on CBSE, which is specifically customised for developing Cloud applications. A case study on Amazon Cloud EC2 has been designed based on software component model for Cloud computing. The results show a number of good practice guidelines satisfaction index which is promising.
Ramachandran, M. (2011). Component-Based Development for Cloud Computing Architectures (pp. 91–114). https://doi.org/10.1007/978-1-4471-2236-4_5