Adaptive BPEL Service Compositions via Variability Management: A Methodology and Supporting Platform

Adaptive BPEL Service Compositions via Variability Management: A Methodology and Supporting Platform

Chang-ai Sun, Zhen Wang, Ke Wang, Tieheng Xue, Marco Aiello
Copyright: © 2019 |Pages: 33
DOI: 10.4018/IJWSR.2019010103
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Service-Oriented Architectures are a popular development paradigm to enable distributed applications constructed from independent web services. When coordinated, web services are an infrastructure to fulfill dynamic and vertical integration of business. They may face frequent changes of both requirements and execution environments. Static and predefined service compositions using business process execution language (BPEL) are not able to cater for such rapid and unpredictable context shifts. The authors propose a variability management-based adaptive and configurable service composition approach that treats changes as first-class citizens and consists of identifying, expressing, realizing, and managing changes of service compositions. The proposed approach is realized with a language called VxBPEL to support variability in service compositions and a platform for design, execution, analysis, and maintenance of VxBPEL-based service compositions. Four case studies validate the feasibility of the proposed approach while exhibiting good performance of the supporting platform.
Article Preview
Top

Introduction

Service Oriented Architectures (SOA) are a mainstream development paradigm of distributed applications for open and large networks, like the Internet (Papazoglou et al., 2008; Lazovik et al., 2006). SOA caters for the development of highly-scalable systems, whose elementary units are Web services. Individual Web services often provide limited functionalities; therefore, they are unable to meet in isolation complex requirements. Service composition is a powerful mechanism, which coordinates multiple Web services to support complex business goals. Service compositions manifest a number of interesting features, such as loosely-coupling, standard data exchanging, and protocols-based application invoking. As a consequence, service compositions provide a solid solution for application integration in the distributed, dynamic, and heterogeneous environments, and they are increasingly adopted for system re-engineering and optimization (Sun et al., 2011; Karunamurthy et al., 2012; Cheng et al., 2017).

When service compositions act as an infrastructure to realize dynamic and vertical integration of business processes, they may face frequent changes due to quickly-changing requirements or dynamic environments. Service compositions are expected to be adaptive and configurable, and many efforts have been reported to address this issue (Erradi & Maheshwari, 2005; Ezenwoye & Sadjadi, 2006; Colombo et al., 2006; Hammas et al., 2015; Sheng et al., 2009; Ardagna & Pernici, 2007; Laleh et al., 2017; Yau et al., 2009). One approach is to make service compositions adaptable resorting to the proxy (or broker) pattern (Erradi & Maheshwari, 2005; Ezenwoye & Sadjadi, 2006; Colombo et al., 2006; Hammas et al., 2015). A request message is first sent to a proxy, the message is then passed to the targeted Web service, finally the targeted Web service executes the required operations and returns the result to the proxy, and the proxy transfers the result to the invoker. This approach focuses on service selection or replacement in service composition instances at run-time. Another approach is based on annotations (Sheng et al., 2009; Ardagna & Pernici, 2007; Laleh et al., 2017). Constraints, policies or rules of service compositions are specified in a declarative manner, and then predefined goals are satisfied.

A recent trend is to address the adaptation issue via modelling the variability of service compositions (Nguyen et al., 2011; Galster & Avgeriou, 2013; Wang & Wang, 2013; Alférez et al., 2014; Nguyen et al., 2016). There are two ways, namely, imperative and declarative (Aiello et al., 2010). The imperative method focuses on the procedure of constructing a process and defining fixed sets of variations. For instance, Provop is a framework capturing all process variants in a single process model, which defines the optional element to implement the changes of the basic process model (Hallerbach et al., 2008). The declarative method focuses on expressing the logic of a process without explicitly describing its control flows. Pesic et al. (2007) proposed an approach to support variability of workflow systems via constraint-based models. Changes can be done by handling constraints and activities at run-time. Service compositions resemble workflow systems in the context of SOA, while manifesting many new features. Supporting variability of service compositions is still not mature and significant efforts are required in this direction.

Complete Article List

Search this Journal:
Reset
Volume 21: 1 Issue (2024)
Volume 20: 1 Issue (2023)
Volume 19: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 18: 4 Issues (2021)
Volume 17: 4 Issues (2020)
Volume 16: 4 Issues (2019)
Volume 15: 4 Issues (2018)
Volume 14: 4 Issues (2017)
Volume 13: 4 Issues (2016)
Volume 12: 4 Issues (2015)
Volume 11: 4 Issues (2014)
Volume 10: 4 Issues (2013)
Volume 9: 4 Issues (2012)
Volume 8: 4 Issues (2011)
Volume 7: 4 Issues (2010)
Volume 6: 4 Issues (2009)
Volume 5: 4 Issues (2008)
Volume 4: 4 Issues (2007)
Volume 3: 4 Issues (2006)
Volume 2: 4 Issues (2005)
Volume 1: 4 Issues (2004)
View Complete Journal Contents Listing