ARTIST: A tool-supported method to cloudify applications
As far as (Model Driven) Reverse Engineering is concerned, the most challenging aspects are still related to the comprehension of the existing system (e.g. notably via understanding techniques such as model slicing, as currently experienced in ARTIST): how to provide sufficient views to different stakeholders (having different roles and expertise) so that they can get a better knowledge of their existing systems for various purposes (migration is one, but there are also others). Work has been focusing notably on static/structural constructs so far and less so on more dynamic/behavioural ones. With respect to cloud, further research can be done in cloud provider SLA compliance verification processes and benchmark tools in terms of the offered SLA metrics, including abstracted tools and methods. Also, in PaaS level abstractions in terms of deployment and cloud service usage. With regards to software evolution, the tracking of the lifecycle of software development artefacts by collecting data from different systems (e.g. SCM, BugTrackers), and subsequently correlate and mine the information to support software evolution are also items to be further researched in the near future.
The main result of the project is a tool-supported methodology to assist software companies in the migration of their applications to the cloud. This methodology is customised to the specific migration project and consists of three main phases: feasibility analysis, migration and verification. In the feasibility analysis phase, ARTIST provides several tools that analyse the technical and business viability of migration, helping in the decision of whether the migration is worthwhile or not. Then, in the migration phase, through reverse engineering, we gather the knowledge and understanding of the application. Through forward engineering, we refactor and optimise the existing application and adjust the business model so it can be delivered on the cloud. Furthermore, we help users in selecting the best cloud provider for their needs. Finally, during the verification phase, we validate the behavioural equivalence of the migrated application and the fulfilment of the optimisation requirement. Moreover, we certify that it is cloud-complaint.
The project exploitation is based on a methodology that combines standard business strategy tools e.g. the Osterwalder business model canvas, among others. The process started with an analysis of the market and business requirements. This was followed up by an exploration of the project activities to elucidate the value chain. From the value chain, business scenarios were derived and then further analysed. Once the pros and cons of each model are well understood, partner buy-in is required and a plan to set it in motion can be adopted. The joint exploitation path selected is based on forming a perpetual ARTIST consortium, based initially on the project consortium, but open to new members, through which to fund, in cash and in kind, the sustainability of the results. Then, every partner has analysed internally their business interest in the common scenario and has decided the role they want to play and the investment, which is ready to be provided. We have identified the activities in this scenario that will generate revenue and cost. We have estimated the initial required investment and expected income, firstly to keep the project alive, but further to make it profitable. A legal agreement and ownership model will be also developed.
Since our presence at the last Concertation meeting, ARTIST has intensified its collaboration with ModaClouds and PaSaage in the definition of a common cloud modelling language (CloudML). Several cross-project meetings have been organised and a group of people in each project is working on this joint task force. The development of the language is progressing by creating model transformations that allow the understanding of the three different instances of the language in the three projects, since each project is focused on different aspects of cloud modelling (at infrastructure, platform or application levels). A joint paper is planned once the work was completed to publicly publish the performed work. Fruitful collaboration is also happening with many support actions by defining cross-shared dissemination mechanisms (events, newsletters, social networks, etc.). These CSAs are: OCEAN, PROSE, CloudingSMEs, CloudWATCH, CloudCatalyst and SUCRE. Finally, ARTIST is cooperating with the Modisco project in Eclipse about model discovery and with the cloud working group of SPEC RG about benchmarking cloud providers and profiling applications.