Orchestration as organisation: using an organisational paradigm to achieve adaptable business process modelling and enactment in service compositions
Creators: name: Kapuruge, Malinda Kaushalye
Publisher: name: Swinburne
Year: 2024

description: Service Oriented Computing (SOC) has gained popularity as a computing paradigm due to its ability of easily composing distributed services in a loosely coupled manner. These distributed services are orchestrated to support and enable business operations according to well-defined business processes, which is known as service orchestration. Many methodologies and standards have been proposed to support and realise service orchestrations. Business requirements are subject to change. New business opportunities emerge and unforeseen exceptional situations need to be handled. The inability to respond to such changes can impact on the survival of a business in competitive environments. Therefore, the defined service orchestrations have to change accordingly. On the one hand, the changes to service orchestrations defined following rigid standards can incur substantial costs. On the other hand, the unchecked flexibility in changes to service orchestration definitions can lead to violations of the goals of the service aggregator, service consumer as well as service providers. At the same time, the way SOC is used has evolved. Software-as-a-Service and Service Brokering applications have emerged, profoundly advancing the basic SOC principles. These developments demand changes to the ways how services are composed and orchestrated in conventional SOC. This has created a few additional requirements that should be satisfied by the service orchestration methodologies. As such, the flexibility of a multi-tenanted SaaS application needs to be afforded without compromising the specific goals of individual tenants that share the same application instance. The commonalities among multiple business processes need to be captured and variations need to be allowed, but without compromising their maintainability. A service broker has to ensure the goals of underlying service providers are protected while meeting the consumers' demands. Moreover, the service compositions need to be continuously in operation with minimal interruptions, while the changes are being made. A system restart is no longer a viable option. This thesis introduces a novel approach to composing and orchestrating business services, called Serendip, to address the above mentioned requirements. In this work, we view a service composition as an adaptive organisation where the relationships between partner services are explicitly captured and represented. Such a relationship-based structure of the organisation provides the required abstraction to define and orchestrate multiple business processes while sharing the partner services. It also provides the stability to realise continuous runtime evolution of the business processes, achieving change flexibility but without compromising the business goals of the stakeholders. Serendip makes three main research contributions. Firstly, Serendip provides an organisation-based meta-model and language for modelling service orchestrations with controlled change flexibility in mind. The meta-model extends the Role Oriented Adaptive Design approach for adaptive software systems. The flexibility for change is achieved on the basis of the adaptability and loose-coupling among the organisational entities and the event-driven nature of process models. The structure and processes (behaviour) of the organisation can be changed during system runtime. The controllability of changes is achieved by explicitly capturing and checking the achievement and maintenance of, the goals (requirements and constraints) of the aggregator and collaborating service providers. Secondly, Serendip has a novel process enactment runtime infrastructure (engine) and a supporting framework. The runtime engine and supporting framework manage the orchestration of services in a flexible manner in a distributed environment, addressing such issues as multi-process execution on shared resources, management of control and message flows, and coordination of third party services. Thirdly, Serendip's adaptation management mechanism has been designed by clearly separating the functional and management concerns of an adaptive service orchestration. It supports runtime changes to process definitions and process instances, enabling evolutionary and ad-hoc business change requirements. The complete Serendip framework has been implemented by extending the Apache Axis2 web services engine. The Serendip meta-model, language and framework have been evaluated against the common change patterns and change support features for business processes. An example case study has been carried out to demonstrate the applicability of this research in highly dynamic service orchestration environments. Furthermore, a performance evaluation test has been conducted to analyse the performance penalty of the runtime adaptation support in this work as compared to Apache ODE (a popular WS-BPEL based process orchestration engine). Overall, this research has provided an approach to orchestrating services in a flexible but controlled manner. It facilitates changes to business processes on-the-fly while considering the business goals and constraints of all stakeholders, providing more direct and effective business support.