ASTRO-CAptEvo is a comprehensive framework for defining highly adaptable service-based systems (SBSs) and supporting their context-aware execution. It supports two adaptation mechanisms: vertical and horizontal adaptation. The first one is based on the idea that business processes are not ``hardcoded'' at design time but rather automatically refined during their execution, when the actual operational context is known. The run-time vertical adaptation consists in automatically composing the currently available services, provided by other actors and systems, according to the execution context and the goal of the process to be refined. The second mechanism realizes run-time adaptation to unexpected or improbable context changes that may result in process failure. Once such a critical situation is detected, the system tries to derive and execute an adaptation process, which is again an orchestration of available services, that ensures that the execution of the main process can be resumed successfully. Both adaptation mechanisms rely on sophisticated AI planning techniques for the automated composition of services.

Domain Models

Adaptive context-aware service-based systems are modeled by defining a set of entities. Each of them features its own business process and its provided services. Business processes are modeled as Adaptable Pervasive Flows (APFs), an extension of traditional workflow language (e.g., BPEL) which makes them more suitable for adaptation and execution in dynamic environments. In addition to the classical workflow language constructs, APFs add the possibility to model abstract activities. An abstract activity is defined at design time in terms of the goal it needs to achieve and is dynamically refined at run-time into an executable process, considering the set of available services, the current execution context and its goal. Each entity can provide a set of services to the other entities. We consider services to be stateful: they can expose complex protocols (e.g., BPEL) combining traditional service actions (i. e., sending/receiving messages to/from services) with control flow structures (e.g. switch, while, pick). The application context is modeled as a set of context properties, each describing a particular aspect of an application domain. Every context property is modelled with a context property diagram, which is a state transition system capturing all possible property values and value changes. Each transition is labeled with a corresponding context event. A context property may evolve as an effect of service invocations, which corresponds to the “normal” behavior of the domain, but also as a result of volatile – “exogenous” – changes.

System Operation

The framework is composed by three layers, namely the Presentation, Execution and Adaptation layers.  The Presentation  layer provides two-way interaction with the user. The Execution  layer comprises all the facilities for simulating the application domain, e.g., a number of entities cooperating with each other by means of a service-based system. The Adaptation  layer is responsible for generating solutions to various violations happening in the Execution layer .

Car Logistics Scenario

The motivating case study is inspired by the operation of the sea port of Bremen, Germany. The port receives ships loaded with cars and has to organize their delivery. The operation  of the system involves numerous entities (Ships, Cars, Gates, Landing Manager, Unloading Managers, Terminals, Treatment Areas, Delivery Managers, Delivery Gates, Trucks..), each being responsible for specific tasks and characterized by its own needs and requirements.

Car Logistics Demonstrator
We have created a visualization environment enabling interaction between the framework and the user and simulating execution and adaptation of business processes in the car logistics case study. In particular, it can:

  1. run the Car Logistics scenario and simulate the execution and adaptation of each business process attached to each entity;
  2. view the different adaptation strategies supported by our framework and how they are used during the scenario execution
ASTRO-CAptEvo Flyer Download
ASTRO-CAptEvo Video Download
Car Logistics Demonstrator Download