1 research outputs found
Designing fault-tolerant SOA based on design diversity.
Background: Over recent years, software developers have been evaluating the
benefits of both Service-Oriented Architecture (SOA) and software fault tolerance
techniques based on design diversity. This is achieved by creating fault-tolerant
composite services that leverage functionally-equivalent services. Three major design
issues need to be considered while building software fault-tolerant architectures based
on design diversity: (i) selection of variants; (ii) selection of an adjudication algorithm to
choose one of the results; and (iii) execution of variants. In addition, applications based
on SOA need to function effectively in a dynamic environment where it is necessary to
postpone decisions until runtime. In this scenario, control is highly distributed and
involves conflicting user requirements. We aim to support the software architect in the
design of fault-tolerant compositions.
Methods: Leveraging a taxonomy for fault-tolerant systems, this paper proposes
guidelines to aid software architects in making key design decisions. The taxonomy is
used as the basis for defining a set of guidelines to support the architect in making
decisions related to fault tolerance in SOA. The same taxonomy is used in a systematic
literature review of solutions for fault-tolerant composite services.
The review investigates how existing approaches for fault-tolerant composite services
address design diversity issues and also specific issues related to SOA.
Results: The contribution of this work is twofold: (i) a set of guidelines for supporting
the design of fault-tolerant SOA, based on a taxonomy for fault tolerance techniques;
and (ii) a systematic literature review of existing solutions for designing fault-tolerant
compositions using design diversity.
Conclusion: Although existing solutions have made significant contributions to the
development of fault-tolerant SOAs, there is a lack of approaches for fault-tolerant
service composition that support strategies with diverse quality requirements and
encompassing sophisticated context-aware capabilities. This paper discusses which
design issues have been addressed by existing diversity-based approaches for
fault-tolerant composite services. Finally, practical issues and difficulties are
summarized and directions for future work are suggested