Guinea Montalvo Sam Jesus Alejandro
Present position: Contract professor
|Thesis title:||Dynamo: a Framework for the Supervision of Web Service Compositions|
|Research area:||Advanced Software, Architectures and Methodologies|
SOAs (Service Oriented Architectures) are becming a well known paradigm for the flexible coordination between business partners in ever evolving and heterogenous environments. SOAs use technologies —such as Web services— to obtain business goals in which collaboration with third parties and interoperability between distributed systems is mandatory. The ownsership of the components that make up the system is distributd among different stakeholders. This makes it extremely complicated to guarantee a system’s functional and non-functional properties, as well as its correctness. Standard techniques for static verification and validation are no lonoger appropriate. The set of services used to compose the system, in fact, can be in continuos evolution, both in number and in typology. This can potentially dimish the degree of trust we pose in the system.
My research concentrated on three main aspects: the definition of a lan- guage for the specification of the functional and non functional properties a system must guarantee, the definition of a language for the specification of complex “recovery” strategies thata should be enacted when an anomaly is discovered, and the design of a framework capable of “monitoring” the run-time execution of the system and of intervening when an anomaly arises. The final goal is to produce composite service (defined using the de-facto standard BPEL) that are “self-healing”.
Starting from the presumption that the internal correctness of the process can be established throught traditional verification and validation techniques, I assume that anomalies can arise due to the interaction between the process and the external services that are not under its jurisdiction. For this reason I propose a specific language called WSCoL (Web Service Con-
straint Language) with which a designer can define pre- and post-conditions on these interactions. I have also defined the WSReL (Web Service Recovery Language) language, which the designer can use to define the corrective measures that should be attempted when an anomaly arises.
For the run-time support of such specifications, I have designed a “supervision” (a term used to indicate the monitoring and the recovery operations) framework called Dynamo. It can be used together with hatever execution environment the designer of the system might already have in place. The approach follows the well known “separation of concerns” paradgm. The supervision rules and the business logic, in fact, are defined separately. This allows us to deploy un-supervised systems. It is Dynamo’s responsability to manage the run-time monitoring and recovery operations. This also allows us to minimize the umber of deployed processes. A process is only deployed once, regardless of the number of kinds of supervisions we might desire throughout the system’s entire lifecycle. Within the thesis I illustrate two possible implementations of Dynamo, one proxy-based and one based on ActiveBPEL and AspectJ.