Hypersonic: Model Analysis and Checking in the Cloud
Vlad Acreţoaie, Harald Störrle · 2014
Context: Modeling tools are traditionally delivered as mono-lithic desktop applications, optionally extended by plug-ins or special purpose central servers. This delivery model suf-fers from several drawbacks, ranging from poor scalability to difficult maintenance and the proliferation of “shelfware”. Objective: In this paper we investigate the conceptual and technical feasibility of a new software architecture for mod-eling tools, where certain advanced features are factored out of the client and moved towards the Cloud. With this ap-proach we plan to address the above mentioned drawbacks of existing modeling tools. Method: We base our approach on RESTful Web services. Using features implemented in the existing Model Analy-sis and Checking (MACH) tool, we create a RESTful Web service API offering model analysis facilities. We refer to it as the Hypersonic API. We provide a proof of concept implementation for the Hypersonic API using model clone detection as our example case. We also implement a sample Web application as a client for these Web services. Results: Our initial experiments with Hypersonic demon-strate the viability of our approach. By applying standards such as REST and JSON in combination with Prolog as an implementation language, we are able to transform MACH from a command line tool into the first Web-based model clone detection service with remarkably little effort.