Formal Approaches for Behavioral Modeling and Analysis of Design-time Services and Service Negotiations

University dissertation from Västerås : Mälardalen University

Abstract: During the past decade service-orientation has become a popular design paradigm, offering anapproach in which services are the functional building blocks. Services are self-containedunits of composition, built to be invoked, composed, and destroyed on (user) demand.Service-oriented systems (SOS) are a collection of services that are developed based onseveral design principles such as: (i) loose coupling between services (e.g., inter-servicecommunication can involve either simple data passing or two or more connected servicescoordinating some activity) that allows services to be independent, yet highly interoperablewhen required; (ii) service abstraction, which emphasizes the need to hide as manyimplementation details as possible, yet still exposing functional and extra-functionalcapabilities that can be offered to service users; (iii) service reusability provided bythe existing services in a rapid and flexible development process; (iv) service composabilityas one of the main assets of SOS that provide a design platform for services to be composed anddecomposed, etc.One of the main concerns in such systems is ensuring service quality per se, but alsoguaranteeing the quality of newly composed services. To accomplish the above, we consider two system perspectives: the developer's and the user's view, respectively.In the former, one can be assumed to have access to the internal service representation:functionality, enabled actions, resource usage, and interactions with other services.In the second, one has information primarily on the service interface and exposed capabilities(attributes/features).Means of checking that services and service compositions meet the expected requirements,the so-called correctness issue, can enable optimization and possibility toguarantee a satisfactory level of a service composition quality.In order to accomplish exhaustive correctness checks of design-time SOS,we employ model-checking as the main formal verification technique, which eventually providesnecessary information about quality-of-service (QoS), already at early stages of system development.~As opposed to the traditional approach of software system construction,in SOS the same service may be offered at various prices, QoS, and other conditions,depending on the user needs.In such a setting, the interactionbetween involved parties requires the negotiation of what is possible at request time,aiming at meeting needs on demand.The service negotiation process often proceeds with timing, price, and resource constraints,under which users and providers exchange information on their respective goals, until reachinga consensus. Hence, a mathematically driven technique to analyze a priori various ways to achieve such goals isbeneficial for understanding what and how can particular goals be achieved.This thesis presents the research that we have been carrying out over the past few years, which resulted in developingmethods and tools for the specification, modeling, and formal analysisof services and service compositions in SOS. The contributions of the thesis consist of: (i)constructs for the formal description of services and servicecompositions using the resource-aware timed behavioral language called REMES; (ii) deductive andalgorithmic approaches for checking correctness of services and service compositions;(iii) a model of service negotiation that includes different negotiation strategies, formally analyzedagainst timing and resource constraints; (iv) a tool-chain (REMES SOS IDE) that provides aneditor and verification support (by integration with the UPPAAL model-checker) to REMES-based service-oriented designs;(v) a relevant case-study by which we exercise the applicability of our framework.The presented work has also been applied on other smaller examples presented in the published papers.

  This dissertation MIGHT be available in PDF-format. Check this page to see if it is available for download.