Run-time Interpretation of Information System Application Models in Mobile Cloud Environments

Nikola Tanković, Tihana Galinac Grbac

Application models are commonly used in the development of information systems. Recent trends have introduced techniques by which models can be directly transformed into execution code and thus become a single source for application design. Inherently, it has been challenging for software developers to become proficient in designing entire systems due to the complex chain of model transformations and the further refinements required to the code generated from the models. We propose an architectural framework for building the distributed information system applications in which the application models are directly interpreted during execution. This approach shortens the evaluation cycles and provides faster feedback to developers. Our framework is based on a holistic application model represented as a graph structure complemented with a procedural action scripting language that can express more complex software behavior. We present the implementation details of this framework architecture in a mobile cloud environment and evaluate its benefits in eleven projects for different customers in the retail, supply-chain management and merchandising domain involving 300 active application users. Our approach allowed engaging end-users in the software development process in the phase of specifying executable application models. It succeeded in shortening the requirements engineering process and automating the configuration and deployment process. Moreover, it benefited from the automatic synchronization of application updates for all active versions at the customer sites.