Most modern software systems have a decentralized, modular, distributed, and dynamic structure. They are often composed of heterogeneous components and operate on heterogeneous infrastructures. They are increasingly built by composing services; that is, components owned (designed, deployed, maintained, and run) by remote and independent stakeholders. The quality of service perceived by the clients of such a composite application depends directly on the individual services that are integrated in it, but also on the way they are composed. At the same time, the world in which applications are situated (in particular, the remote services upon which they can rely) changes continuously. These requirements ask for an ability of applications to self-adapt to dynamic changes, especially when they need to run for a long time without interruption. This, in turn, has an impact on the way service compositions are defined using ad-hoc process languages that are defined to support compositions. This paper discusses how the service setting has revamped the field of process (workflow) programming: where old problems that were identified in the past still exist now, how we can learn from past work, and where and why new challenges instead require additional research.
Process Programming in the Service Age: Old Problems and New Challenges
CUGOLA, GIANPAOLO;GHEZZI, CARLO;SALES HOLANDA PINTO, LEANDRO
2011-01-01
Abstract
Most modern software systems have a decentralized, modular, distributed, and dynamic structure. They are often composed of heterogeneous components and operate on heterogeneous infrastructures. They are increasingly built by composing services; that is, components owned (designed, deployed, maintained, and run) by remote and independent stakeholders. The quality of service perceived by the clients of such a composite application depends directly on the individual services that are integrated in it, but also on the way they are composed. At the same time, the world in which applications are situated (in particular, the remote services upon which they can rely) changes continuously. These requirements ask for an ability of applications to self-adapt to dynamic changes, especially when they need to run for a long time without interruption. This, in turn, has an impact on the way service compositions are defined using ad-hoc process languages that are defined to support compositions. This paper discusses how the service setting has revamped the field of process (workflow) programming: where old problems that were identified in the past still exist now, how we can learn from past work, and where and why new challenges instead require additional research.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.