Service Oriented Computing (SOC) allows programmers to build distributed applications by putting together (i.e., orchestrating) existing services exported by remote providers. The main source of complexity in building such kind of orchestrations is the need for anticipating and explicitly handling (i.e., programming ad-hoc countermeasures) possible changes in the external environment that may affect them, like faults invoking services removed by their providers. To ease the job of programmers we developed DSOL, an innovative infrastructure supporting design and execution of service orchestrations. It combines a declarative approach to model the orchestration with planning mechanisms to actually run it. In this paper we focus on the mechanisms provided by DSOL and its associated execution engine to deal with changes that may happen at runtime. In particular, we show how the declarative nature, the modularity, and the dynamism inherent in the DSOL approach allows changes to be easily managed, both those that were forecasted at design time and those that require the workflow to be changed while the orchestration is running.
Dealing with Changes in Service Orchestrations
SALES HOLANDA PINTO, LEANDRO;CUGOLA, GIANPAOLO;GHEZZI, CARLO
2012-01-01
Abstract
Service Oriented Computing (SOC) allows programmers to build distributed applications by putting together (i.e., orchestrating) existing services exported by remote providers. The main source of complexity in building such kind of orchestrations is the need for anticipating and explicitly handling (i.e., programming ad-hoc countermeasures) possible changes in the external environment that may affect them, like faults invoking services removed by their providers. To ease the job of programmers we developed DSOL, an innovative infrastructure supporting design and execution of service orchestrations. It combines a declarative approach to model the orchestration with planning mechanisms to actually run it. In this paper we focus on the mechanisms provided by DSOL and its associated execution engine to deal with changes that may happen at runtime. In particular, we show how the declarative nature, the modularity, and the dynamism inherent in the DSOL approach allows changes to be easily managed, both those that were forecasted at design time and those that require the workflow to be changed while the orchestration is running.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.