Service-Oriented Architectures (SOA) are built as compositions of inter-organizational services. These services are deployed and published by providers who are responsible for provisioning the services with sufficient resources. However, even though services are implemented by technologies providing a wide range of adaptation related features, such as configurable component models and communication infrastructures, state-of-the-art approaches to adaptive SOA systems do not provide principled solutions to exploit application layer adaptation mechanisms. Our technology-agnostic adaptation middleware has been designed for integrating and exploiting technology-specific adaptation technologies and mechanisms. In this paper, we describe how this middleware can support a cross-layer adaptation of SOA systems. In particular, we focus on the server-side perspective of SOA, and we show that our middleware is able to exploit both service interface and application layers technologies for supporting a coordinated adaptation of both layers.
{"title":"Cross-layer self-adaptation of service-oriented architectures","authors":"Eli Gjørven, Romain Rouvoy, F. Eliassen","doi":"10.1145/1462802.1462809","DOIUrl":"https://doi.org/10.1145/1462802.1462809","url":null,"abstract":"Service-Oriented Architectures (SOA) are built as compositions of inter-organizational services. These services are deployed and published by providers who are responsible for provisioning the services with sufficient resources. However, even though services are implemented by technologies providing a wide range of adaptation related features, such as configurable component models and communication infrastructures, state-of-the-art approaches to adaptive SOA systems do not provide principled solutions to exploit application layer adaptation mechanisms.\u0000 Our technology-agnostic adaptation middleware has been designed for integrating and exploiting technology-specific adaptation technologies and mechanisms. In this paper, we describe how this middleware can support a cross-layer adaptation of SOA systems. In particular, we focus on the server-side perspective of SOA, and we show that our middleware is able to exploit both service interface and application layers technologies for supporting a coordinated adaptation of both layers.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"54 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132219083","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
In today's practice, we see readily precomposed commercial service bundles, such as a spam-free email box, consisting of more elementary services like mail storage and a spam-filter. However, these bundles may be suboptimal from the customer's perspective in terms of price and/or the elementary services that constitute the bundle. It would be advantageous to the customer if a service bundle more closely fulfilled the customer's individual requirements, by selecting the most appropriate elementary services included in the bundle. Also, by obtaining the bundle from a consortium of suppliers, rather than just one single supplier, the elementary services of each supplier with the best cost/benefit ratio can be selected. To put this vision into reality, we need middleware facilitating the automated composition of multisupplier bundles out of basic commercial services available online. We take the stand that the business nature of commercial services imposes leading requirements on the technical design of the middleware. Most importantly, the middleware should be fair in the sense that no single supplier obtains a preferred position in terms of service selection to satisfy a specific customer need. Also, the middleware should be able to deal with alternative services as offered by many competing suppliers, not to speak about the combinatoric explosion, resulting from combining the available services into candidate services bundles. We present a list of problems to be solved to arrive at middleware for multi-supplier service selection, bundling and provisioning. Also, we review existing work, usable to build a fair and efficient middleware solution for commercial service provisioning.
{"title":"Technical challenges in market-driven automated service provisioning","authors":"A. Chmielowiec, G. Pierre, J. Gordijn, M. Steen","doi":"10.1145/1462802.1462807","DOIUrl":"https://doi.org/10.1145/1462802.1462807","url":null,"abstract":"In today's practice, we see readily precomposed commercial service bundles, such as a spam-free email box, consisting of more elementary services like mail storage and a spam-filter. However, these bundles may be suboptimal from the customer's perspective in terms of price and/or the elementary services that constitute the bundle. It would be advantageous to the customer if a service bundle more closely fulfilled the customer's individual requirements, by selecting the most appropriate elementary services included in the bundle. Also, by obtaining the bundle from a consortium of suppliers, rather than just one single supplier, the elementary services of each supplier with the best cost/benefit ratio can be selected. To put this vision into reality, we need middleware facilitating the automated composition of multisupplier bundles out of basic commercial services available online.\u0000 We take the stand that the business nature of commercial services imposes leading requirements on the technical design of the middleware. Most importantly, the middleware should be fair in the sense that no single supplier obtains a preferred position in terms of service selection to satisfy a specific customer need. Also, the middleware should be able to deal with alternative services as offered by many competing suppliers, not to speak about the combinatoric explosion, resulting from combining the available services into candidate services bundles. We present a list of problems to be solved to arrive at middleware for multi-supplier service selection, bundling and provisioning. Also, we review existing work, usable to build a fair and efficient middleware solution for commercial service provisioning.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"32 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125008065","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Many interesting emerging applications involve the coordination of a large number of service instances, for instance, as targets for dissemination or sources in information gathering. These applications raise hard architectural, scalability, and resilience issues that are not suitably addressed by centralized or monolithic coordination solutions. In this paper we propose a lightweight approach to service coordination aimed at such application scenarios. It is based on gossiping and thus potentially fully decentralized, requiring that each participant is concerned only with a small number of peers. Although being obviously simple and scalable, it has been shown that gossip-based protocols lead to emergent strong resilience guarantees. We illustrate the approach with WS--PushGossip, a proof-of-concept coordination protocol based upon the WS--Coordination framework. Besides presenting WS--PushGossip, we illustrate its usefulness with a sample application, and outline a middleware implementation based on Apache Axis2.
{"title":"Gossip-based service coordination for scalability and resilience","authors":"F. Campos, J. Pereira","doi":"10.1145/1462802.1462812","DOIUrl":"https://doi.org/10.1145/1462802.1462812","url":null,"abstract":"Many interesting emerging applications involve the coordination of a large number of service instances, for instance, as targets for dissemination or sources in information gathering. These applications raise hard architectural, scalability, and resilience issues that are not suitably addressed by centralized or monolithic coordination solutions.\u0000 In this paper we propose a lightweight approach to service coordination aimed at such application scenarios. It is based on gossiping and thus potentially fully decentralized, requiring that each participant is concerned only with a small number of peers. Although being obviously simple and scalable, it has been shown that gossip-based protocols lead to emergent strong resilience guarantees.\u0000 We illustrate the approach with WS--PushGossip, a proof-of-concept coordination protocol based upon the WS--Coordination framework. Besides presenting WS--PushGossip, we illustrate its usefulness with a sample application, and outline a middleware implementation based on Apache Axis2.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"30 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121649343","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The OSGi Service Platform is becoming the de facto middleware for deploying modularized Java applications. It is a dynamic platform that relies on a service oriented approach for loose coupling, but the absence of separate object spaces for isolating services of different modules cannot guarantee that service providers from uninstalled modules will no longer be referenced by active code. This may lead to memory retention and inconsistencies (e.g. a stale service that provides invalid cached data) that can introduce silent faults in the system by propagating invalid information. We present our ongoing work where we introduce an isolation layer between service consumer and provider by using dynamic proxies for services. When the corresponding service becomes unregistered (i.e. uninstalled) the mechanism is able to: 1) Guarantee that no consumers directly refer to the service provider; 2) allow finding out the misreferencing consumer code by using a fail-stop mechanism. We have tested this mechanism in different OSGi based applications and benchmarked it against other approaches for accessing services in the OSGi platform.
{"title":"Using fail-stop proxies for enhancing services isolation in the OSGi service platform","authors":"Kiev Gama, Walter Rudametkin, D. Donsez","doi":"10.1145/1462802.1462804","DOIUrl":"https://doi.org/10.1145/1462802.1462804","url":null,"abstract":"The OSGi Service Platform is becoming the de facto middleware for deploying modularized Java applications. It is a dynamic platform that relies on a service oriented approach for loose coupling, but the absence of separate object spaces for isolating services of different modules cannot guarantee that service providers from uninstalled modules will no longer be referenced by active code. This may lead to memory retention and inconsistencies (e.g. a stale service that provides invalid cached data) that can introduce silent faults in the system by propagating invalid information.\u0000 We present our ongoing work where we introduce an isolation layer between service consumer and provider by using dynamic proxies for services. When the corresponding service becomes unregistered (i.e. uninstalled) the mechanism is able to: 1) Guarantee that no consumers directly refer to the service provider; 2) allow finding out the misreferencing consumer code by using a fail-stop mechanism. We have tested this mechanism in different OSGi based applications and benchmarked it against other approaches for accessing services in the OSGi platform.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130853588","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
The management of Service Level Agreements (SLA) in the development of business processes in a Service Oriented Architecture (SOA) often requires much manual and errorprone effort by all parties throughout the lifecycle of the processes. The formal specification of SLAs into development tools can simplify some of this effort. In particular, the runtime provisioning and monitoring of processes can be achieved by an autonomic system that adapts to changing conditions to maintain the SLA's goals. A cost model allows the efficient execution and monitoring of processes, based on a declarative, user-specified optimality function. Experiments demonstrate that the system can indeed adapt to changing workload conditions, saving roughly 70% of the network bandwidth in one particular experiment.
{"title":"SLA-driven distributed application development","authors":"Vinod Muthusamy, H. Jacobsen","doi":"10.1145/1462802.1462808","DOIUrl":"https://doi.org/10.1145/1462802.1462808","url":null,"abstract":"The management of Service Level Agreements (SLA) in the development of business processes in a Service Oriented Architecture (SOA) often requires much manual and errorprone effort by all parties throughout the lifecycle of the processes. The formal specification of SLAs into development tools can simplify some of this effort. In particular, the runtime provisioning and monitoring of processes can be achieved by an autonomic system that adapts to changing conditions to maintain the SLA's goals. A cost model allows the efficient execution and monitoring of processes, based on a declarative, user-specified optimality function. Experiments demonstrate that the system can indeed adapt to changing workload conditions, saving roughly 70% of the network bandwidth in one particular experiment.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2008-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127449377","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Simone Grassi, Stephen Barrett, Francesco Sordillo
Our work addresses the issue of software adaptation in Service Oriented Architecture (SOA) environments. We aim to support a wide range of adaptations using a new formulation of Web Service (WS) model based on client driven service adaptation via ontological description of algorithms. We describe how this approach can be applied to a SOA scenario involving heterogeneous systems, and report on experimental work that demonstrates how services can be transformed in practice, using a framework approach.
{"title":"Ontology based algorithm modeling: obtaining adaptation for SOA environment","authors":"Simone Grassi, Stephen Barrett, Francesco Sordillo","doi":"10.1145/1388336.1388339","DOIUrl":"https://doi.org/10.1145/1388336.1388339","url":null,"abstract":"Our work addresses the issue of software adaptation in Service Oriented Architecture (SOA) environments. We aim to support a wide range of adaptations using a new formulation of Web Service (WS) model based on client driven service adaptation via ontological description of algorithms. We describe how this approach can be applied to a SOA scenario involving heterogeneous systems, and report on experimental work that demonstrates how services can be transformed in practice, using a framework approach.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"98 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133000418","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Mobile data services in combination with profluent Web services are seemingly the path breaking domain in current information systems research. In mobile Web services sphere, resource constrained mobile terminals are used as both Web services clients and providers. While service delivery and management from Mobile Host are technically feasible, the ability to provide proper quality of service (QoS) and discovery mechanisms for the huge number of services possible with Mobile Hosts is observed to be very critical. We have studied the security, scalability and discovery aspects of the mobile Web services and the analysis has identified the necessity of a mediation framework. This paper summarizes our QoS and discovery research and discusses the realization details and features of our enterprise service bus technology based integration framework for mobile Web service provisioning.
{"title":"Mobile web services mediation framework","authors":"S. Srirama, M. Jarke, W. Prinz","doi":"10.1145/1388336.1388337","DOIUrl":"https://doi.org/10.1145/1388336.1388337","url":null,"abstract":"Mobile data services in combination with profluent Web services are seemingly the path breaking domain in current information systems research. In mobile Web services sphere, resource constrained mobile terminals are used as both Web services clients and providers. While service delivery and management from Mobile Host are technically feasible, the ability to provide proper quality of service (QoS) and discovery mechanisms for the huge number of services possible with Mobile Hosts is observed to be very critical. We have studied the security, scalability and discovery aspects of the mobile Web services and the analysis has identified the necessity of a mediation framework. This paper summarizes our QoS and discovery research and discusses the realization details and features of our enterprise service bus technology based integration framework for mobile Web service provisioning.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"41 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130441827","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
With the growing number of service advertisements in service marketplaces, there is a need for matchmakers which select and rank functionally similar services based on non-functional properties, such as QoS and reputation parameters. Current matchmakers only support predefined service description languages and predefined third-party repositories of service description documents, which both are hard-coded inside their internal structure, forcing providers to publish their services using a specific service publishing component. Therefore, current matchmakers are not able to look for existing services which are published using different service publishers. In this paper, we propose a flexible matchmaker for service discovery, selection, and ranking, taking both functional and non-functional properties of the services into account. The matchmaker provides an expressive language for the clients to define service requests, specifying involved repositories, non-functional properties and a utility function for ranking Web services. The proposed matchmaker enables clients to search inside existing UDDI and third-party repositories and match already published services, while supporting different service description languages as well as emerging languages. Independency from the service description language and the type of the third-party repository is preserved as long as very basic constraints are satisfied.
{"title":"Flexible matching and ranking of web service advertisements","authors":"N. Ahmadi, Walter Binder","doi":"10.1145/1388336.1388341","DOIUrl":"https://doi.org/10.1145/1388336.1388341","url":null,"abstract":"With the growing number of service advertisements in service marketplaces, there is a need for matchmakers which select and rank functionally similar services based on non-functional properties, such as QoS and reputation parameters. Current matchmakers only support predefined service description languages and predefined third-party repositories of service description documents, which both are hard-coded inside their internal structure, forcing providers to publish their services using a specific service publishing component. Therefore, current matchmakers are not able to look for existing services which are published using different service publishers.\u0000 In this paper, we propose a flexible matchmaker for service discovery, selection, and ranking, taking both functional and non-functional properties of the services into account. The matchmaker provides an expressive language for the clients to define service requests, specifying involved repositories, non-functional properties and a utility function for ranking Web services. The proposed matchmaker enables clients to search inside existing UDDI and third-party repositories and match already published services, while supporting different service description languages as well as emerging languages. Independency from the service description language and the type of the third-party repository is preserved as long as very basic constraints are satisfied.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129691137","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
D. Fournier, Sonia Ben Mokhtar, N. Georgantas, V. Issarny
Context-awareness is a key challenge for pervasive computing, as it is a prime requirement towards delivering applications to users in a way that best matches user requirements, digital resources availability and physical conditions. However, enabling anytime, anywhere context-awareness, as targeted by pervasive computing, is further challenged by the openness of the environment, which requires making available context information in various computing environments. This then calls for the ad hoc networking of context sources and of context-aware applications, so that applications may always benefit from a context knowledge base, although it may be more or less rich, depending on the specific environment. Building upon the context management literature, and the Service-Oriented Architecture (SOA) paradigm that is a major enabler of open ad hoc networking, this paper sketches key context-aware system concepts that need be incorporated in the SOA style towards enabling context-aware services for pervasive computing.
{"title":"Towards ad hoc contextual services for pervasive computing","authors":"D. Fournier, Sonia Ben Mokhtar, N. Georgantas, V. Issarny","doi":"10.1145/1169091.1169097","DOIUrl":"https://doi.org/10.1145/1169091.1169097","url":null,"abstract":"Context-awareness is a key challenge for pervasive computing, as it is a prime requirement towards delivering applications to users in a way that best matches user requirements, digital resources availability and physical conditions. However, enabling anytime, anywhere context-awareness, as targeted by pervasive computing, is further challenged by the openness of the environment, which requires making available context information in various computing environments. This then calls for the ad hoc networking of context sources and of context-aware applications, so that applications may always benefit from a context knowledge base, although it may be more or less rich, depending on the specific environment. Building upon the context management literature, and the Service-Oriented Architecture (SOA) paradigm that is a major enabler of open ad hoc networking, this paper sketches key context-aware system concepts that need be incorporated in the SOA style towards enabling context-aware services for pervasive computing.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116865872","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Web services can be aggregated to create composite workflows that provide streamlined functionality for human users or other systems. Although industry standards and recent research have sought to define best practices and to improve end-to-end workflow composition, one area that has not fully been explored is the scheduling of a workflow's web service requests to actual service provisioning in a multi-tiered, multi-organisation environment. This issue is relevant to modern business scenarios where business processes within a workflow must complete within QoS-defined limits. Because these business processes are web service consumers, service requests must be mapped and scheduled across multiple web service providers, each with its own negotiated service level agreement. In this paper we provide heuristics for scheduling service requests from multiple business process workflows to web service providers such that a business value metric across all workflows is maximised. We show that a genetic search algorithm is appropriate to perform this scheduling, and through experimentation we show that our algorithm scales well up to a thousand workflows and produces better mappings than traditional approaches.
{"title":"Heuristics-based scheduling of composite web service workloads","authors":"T. Phan, Wen-Syan Li","doi":"10.1145/1169091.1169096","DOIUrl":"https://doi.org/10.1145/1169091.1169096","url":null,"abstract":"Web services can be aggregated to create composite workflows that provide streamlined functionality for human users or other systems. Although industry standards and recent research have sought to define best practices and to improve end-to-end workflow composition, one area that has not fully been explored is the scheduling of a workflow's web service requests to actual service provisioning in a multi-tiered, multi-organisation environment. This issue is relevant to modern business scenarios where business processes within a workflow must complete within QoS-defined limits. Because these business processes are web service consumers, service requests must be mapped and scheduled across multiple web service providers, each with its own negotiated service level agreement. In this paper we provide heuristics for scheduling service requests from multiple business process workflows to web service providers such that a business value metric across all workflows is maximised. We show that a genetic search algorithm is appropriate to perform this scheduling, and through experimentation we show that our algorithm scales well up to a thousand workflows and produces better mappings than traditional approaches.","PeriodicalId":376035,"journal":{"name":"Middleware for Service Oriented Computing","volume":"132 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-11-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134197806","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}