Main Concept Clause Samples
Main Concept. A virtualized computing environment, such as a cloud, is an execution environment with elastic resource provisioning, several stakeholders, and a metered service at multiple granularities for a specified level of quality of service [82]. A host of a virtualized system presents a number of services to client applications, including infrastructure and platform functionalities and software services for virtualizing deploy- ment of resources. This virtualization provides an elastic amount of resources to application-level services, thus making it possible, for example, to allocate a changing processing capacity to a service ac- cording to the demand. Figure 3 (from top to bottom) illustrates the end-user layer, the application-level services layer, and the resource- level services layer of a virtualized system. In virtualized systems, resource provisioning is regulated by a le- gal contract between the service owner and the virtualized system provider, called a Service-Level Agreement (SLA in brief). However, these legal contracts are by their very nature not integrated in the soft- ware artifacts. In ENVISAGE, we propose to formalize SLAs as part of a design-by-contract methodology for service engineering. This is a key concept which enables the composition of services with respect to the quality of service, and allows us to address the challenges posed Application-level Services Resource Adaptability balancing Resource-level Services Figure 3: Services in a virtualized computing en- vironment such as the cloud. by virtualization for the software-as-a-service abstraction. Today these challenges are not satisfactorily addressed by general purpose application engineering. In particular, the current modeling and analysis techniques make it highly problematic for the software developer to realistically predict the resource requirements of the developed service at an early design stage. Languages and tools for application development lack high-level support to systematically analyze performance under different resource assumptions and to compare different resource management policies. Varia- tions in end-user scenarios, value-added services, and dynamic service composition further complicate the picture by extending the functionalities of an application-level service at the expense of potentially changing its cost profile. Services for virtualized environments require descriptions of resource-dependent and resource-aware behaviors that are based on abstract yet pr...
