A Dynamic Architecture for Runtime Adaptation of Service-based Applications

A Dynamic Architecture for Runtime Adaptation of Service-based Applications

Yousef Rastegari and Fereidoon Shams

Faculty of Computer Science and Engineering, Shahid Beheshti University, Iran

Abstract: Service-Based Applications (SBA) offer flexible functionalities in wide range of environments. Therefore they should dynamically adapt to different quality concerns such as security, performance, etc. For example, we may add particular delivery service for the golden customers, or provide secure services for the specific partners, or change service invocation based on context information. Unlike other adaptation methods which substitute a faulty service or negotiate for service level objectives, we modify the architecture of SBA, that is, the underlying services structure and the runtime services implementation. In this regard, we propose a reflective architecture which holds business and adaptation knowledge in the Meta level and implements service behaviours in the Base level. The knowledge is modelled in the form of Meta states and Meta transitions. We benefit from Reflective Visitor pattern to materialize an abstract service in different concrete implementations and manipulate them at runtime. Each service implementation fulfils a specific quality concern, so it is possible to delegate user requests to appropriate implementation instead of reselecting a new service which is a time consuming strategy. We used Jmeter load simulator and real-world Quality of Service (QoS) dataset to measure the architecture efficiency. Also, we characterized our work in comparison with related studies according to the European Software Services and Systems Network (S-CUBE) adaptation taxonomy.

Keywords: Software engineering, service-based application, software adaptation, reflection, quality of service.

Received October 28, 2015; accepted July 4, 2016
 
Read 994 times
Share
Top
We use cookies to improve our website. By continuing to use this website, you are giving consent to cookies being used. More details…