Automatic conformance checking for migrating software systems to cloud infrastructures and platforms. Issue 10 (12th January 2012) - Frey, Sören; Hasselbring, Wilhelm; Schnoor, Benjamin
SUMMARY: The migration of software systems to IaaS (infrastructure as a service)‐ or PaaS (platform as a service)‐based cloud environments enables SaaS providers to benefit from the cloud's merits, such as smoothly scaling up and down existing applications. Our approach, CloudMIG, aims at supporting SaaS providers to perform those migrations. Here, validating the specific constraints that are imposed by a cloud environment constitutes an important early‐phase activity. For example, the access to the file system, number of files, or calls to specific methods may be restricted by cloud providers. Those constraints have to be considered when evaluating the suitability of competing cloud environment candidates. In this paper, we describe CloudMIG's corresponding parts: a generic cloud environment model that incorporates these constraints and appropriate violation detection mechanisms. A software system's conformance can be examined with the assistance of constraint validators. They operate on extracted Knowledge Discovery Meta‐Model‐based system models and can, among others, apply metrics formulated with the Software Metrics Meta‐Model through our metrics execution engine. Additional constraint validators can be plugged into the validation process as needed. In this context, we implemented a prototype and modeled the PaaS environment Google App Engine for Java. We report on a quantitative evaluation regarding the detected constraint violations of five open‐source systems. Copyright © 2012 John Wiley & Sons, Ltd. Abstract : In the context of software migration to the cloud, the validation of constraints that are imposed by cloud environment candidates constitutes an essential early‐phase activity. We present a generic conformance checking approach that uses constraint validators and extracted abstract code models to automatically detect violations, such as not permitted method calls and the usage of forbidden types. We report on a quantitative evaluation regarding the detected constraint violations of five open‐source systems in conjunction with Google App Engine for Java.