Self-Healing in Web Service-Based Systems Using QoS

Self-Healing in Web Service-Based Systems Using QoS

Mohamed Ali Bouanaka, Kamal Hamaz, Assia Tebib, Mohamed Sandeli
Copyright: © 2022 |Pages: 17
DOI: 10.4018/IJTD.306649
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Availability of components in online systems cannot be guaranteed due to the unstable nature of the web (updates, changes, etc.). A well-designed system must take this fact into account in order to ensure the availability of services which is a very difficult challenge due to the confidentiality and autonomy of each service component. An interesting solution for this is to tolerate these problems at the composite level by having a mechanism of recovery, called Self-healing. In this work, we proposed a solution that consists of implementing a formal approach, making it possible to model a business process (web service composition) by timed automata of the type daTA, while ensuring the quality of service taking into account the functional and non-functional needs of the system (in this case, the QoS represents the response time). The main objective of this project is to create a system that allows you to compare two web service compositions in pairs, to decide whether they are equivalent or not to ensure a perfect self-healing working system by the end.
Article Preview
Top

Introduction

The trend in the field of development of information systems is to design autonomous systems. These are independent applications that do not require human intervention. Indeed, thanks to technological evolution, computer systems are more and more distributed and above all, they are dematerialized (Helali et al, 2021). In such systems, data is distributed over heterogeneous components and control can no longer be ensured by a single entity. The dynamics and unpredictability of the environment in which these gigantic systems are immersed add another level of complexity and require them to constantly adapt to continue to perform their functions. The nature of these requirements has led to the proposal of the so-called “autonomous systems” proposed by IBM (Horn P, 2001). These systems are also known as auto-* (or self-*) (Berns et al, 2009) which fulfil tasks as: Self-configuration, Self-optimization, Self-healing and Self-protection. Organic Computing, represents a new paradigm characterized by solutions offering dynamic adaptation to change, thus systems based on Organic Computing make it possible to achieve the Self-* properties (Stein et al, 2018).

In an autonomous system, the Self-healing property guarantees the continuity of the execution of the system despite the presence of faults. Therefore, it must be able to perceive operating anomalies and correct itself automatically during execution. In other words, it makes the system fault tolerant (Refaat et al, 2018).

The web service paradigm has been widely used in computer science. This is motivated by certain advantages which include time/cost reduction during software development or maintenance (Garriga et al, 2015), (Kaur U, 2015). Web services are autonomous, distributed and modular applications that can be published, located and called on the network (Kadima H, 2003). Despite the large number of services already published, there may be no primitive service that can meet a specific customer request. In this case, the need for web service composition increases. Indeed, when a single service does not meet a consumer requirement, different services can be used together to create new added value to fulfil that requirement. This is because a composite service provides a new software solution with specific functionality and can be seen as an atomic component in other service compositions, or as a final solution to be used by the customer (Ramírez et al, 2017). The process of developing a web service composite is called service composition. Different standards and languages ​​have been proposed to develop the composition of Web services, such as “Business Process Execution Language for Web Services” (WS-BPEL or BPEL), which is an XML language for describing a composition where all tasks are implemented by web services. It is intended to serve as a description that can be executed by a BPEL engine. It is one of the most widely used standards for describing composite service behaviour. At each stage of the composite's execution, it invokes an available service that can perform the requested task. This fact raises an overarching question regarding the availability of component services during runtime.

On the other hand, the web service (WS) composition process relies on the integration of primitive WS’s into a single complex service (da Silva et al., 2020) that must rely on reliable and valid WS. This has become one of the great challenges in the field of service-oriented computing. Indeed, the autonomous operation of WS’s in a very dynamic environment (the Web) implies that the Quality of Service (QoS) (Huang et al, 2009) of these WS’s can change with a relatively higher frequency (Dai et al, 2009) and such a dynamic nature of the services will influence the performance of the execution of the service composite. However, advanced approaches that react to changes in the WS environment to ensure the correctness of the process composition becomes very demanding (Alwasouf et al, 2019).

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024): Forthcoming, Available for Pre-Order
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 1 Released, 3 Forthcoming
Volume 12: 4 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing