2nd Middleware for Service Oriented ComputingMW4SOC Workshop of the8th International Middleware Conference 2007 Previous year: | 1st MW4SOC 2006 | |||
http://middleware2007.ics.uci.edu/ November 26 - 30, 2007 Newport Beach, California, USA |
Service Oriented Computing (SOC) is a computing paradigm broadly pushed by vendors, utilizing services to support the rapid development of distributed applications in heterogeneous environments. The visionary promise of SOC is a world of cooperating services being loosely coupled to flexibly create dynamic business processes and agile applications that may span organisations and computing platforms and can nevertheless adapt quickly and autonomously to changes of requirements or context. Consequently, the subject of Service Oriented Computing is vast and enormously complex, spanning many concepts and technologies that find their origins in diverse disciplines like Workflow Management Systems, Component Based Computing, "classical" Web applications, and Enterprise Application Integration (EAI) including Message Oriented Middleware. In addition, there is a strong need to merge technology with an understanding of business processes and organizational structures, a combination of recognizing an enterprise's pain points and the potential solutions that can be applied to correct them.
Middleware, on the other hand, is defined as the software layer in a distributed computing system that lies between the operating system and the applications on each site of the system (ObjectWeb consortium). Middleware is the enabling technology of system and enterprise application integration (EAI) and therefore it clearly and evidently plays a key role for SOC.
While the immediate need of middleware support for Service Oriented Architectures (SOA) is evident, current approaches and solutions mostly fall short by primarily providing support for the EAI aspect of SOC only and do not sufficiently address composition support, service management and monitoring. Moreover, quality properties (in particular dependability and security) need to be addressed not only by interfacing and communication standards, but also in terms of integrated middleware support. But what makes these issues so different in a SOA setting? Why - for instance - is traditional middleware support for transaction processing different to transaction processing in SOA, reflecting different types of atomicity needs? One answer lies in the administrative heterogeneity, the loose coupling between coarse-grained operations and long-running interactions, high dynamicity, and the required flexibility during run-time. Recently, massive-scale and mobility were added to the challenges for Middleware for SOC.
However, loose coupling is not always the best approach to solve a particular problem. In order to temporarily allow for a stronger (traditional) form of coupling (like group membership agreement or atomic transaction), the middleware also has to provide explicit and configurable means to change between different strengths of coupling and various communication paradigms. This will enable service-based applications to take the best from both worlds by dynamically adjusting the interactions between the composed services.
The highly dynamic modularity and need for flexible integration of services (e.g. Web service implementations) may require new middleware architectures, protocols, and services. These considerations also lead to the question to what extent service-orientation at the middleware layer itself is beneficial (or not). Recently emerging "Middleware as service" offerings, from providers like Amazon or from the open source community, support this trend towards "infrastructure services" that can be purchased and consumed over the Internet. However, this model may not be suitable for all kinds of middleware functions, including those addressing dependability (availability, reliability, integrity, safety, maintainability). Providing end-to-end properties and addressing cross-cutting concerns in a cross-organizational SOA is a particular challenge and the limits and benefits thereof have still to be investigated.
9h00-10h45: Session 1:
Service Oriented Computing allows programs to interact with each other on demand without being tightly coupled together. Unfortunately, the Web Services standard is moving rapidly towards the slippery slope of increasing complexity, elaborate standards and difficult programming, the slippery slope that engulfed CORBA and EJB. We need to find a new paradigm that can achieve the promise of Service Oriented Computing without the complexity of Web Services.
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.
Recent research advances in Peer-to-Peer (P2P) computing have enabled the P2P paradigm to be used for developing complex applications beyond file sharing and data storage. These applications have drawn significant benefits, specifically scalability and low cost, from the P2P paradigm. However, the current approach for designing P2P applications introduce issues that prevent the development of high quality complex P2P applications. These issues, namely tight coupling to P2P protocols, limited logic sharing between peers and complicated recovery processes, motivate us to introduce a service-oriented architecture for P2P applications. We have developed a middleware called CAESAR to support the development of service-oriented P2P applications applying the principles of abstraction, dynamic binding, loose coupling and information hiding. In this paper, we discuss the design principles and the components of CAESAR middleware, as well as our experiences in using CAESAR to develop several service-oriented P2P applications.
10h45-11h00: Coffee break
11h00-12h30: Session 2:
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 descr iption of algorithms. We describe how this approach can be applied to a SOA scenario involving heterogeneou s systems, and report on experimental work that demonstrates how services can be transformed in practice, using a framework approach.
From a systems point of view, large scale application environments like the Internet create scalability requirements towards distributed execution of composite (Web) services which go beyond the traditional non-distributed approach to manage composite services. First, we present a novel approach that combines those aspects by using different technologies in a distributed environment to dynamically distribute composite service execution in situations where it is beneficial or required. Second, the approach considers semantic annotation of services to facilitate new possibilities for data and service co-ordination. Third, the approach also incorporates the interfaces needed to integrate service execution with semantic service composition planners to allow for dynamic forward failure recovery by contingency service re-planning. These concepts are currently developed on the basis of the peer-to-peer platform OSIRIS NEXT which supports dynamically distributed and decentralized execution of composite semantic services that are described based on OWL-S.
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 nonfunctional properties, such as QoS and reputation parameters, but independent of predefined service description languages or third-party repositories. 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.
12h30-13h30: Lunch break
13h30-15h00: Session 3
A break-out session in smaller groups will identify the most urgent problems in practice. Consequently, research challenges will be addressed and the most important future steps will be drafted.
15h00-15h30: Coffee break
15h30-16h30: Session 4
The break-out groups will shortly present the research roadmaps they identified. These findings will be discussed in the plenary.
Karl M. Göschka (chair)
Vienna University of Technology
Institute of Information Systems
Distributed Systems Group
Argentinierstrasse 8/184-1
A-1040 Vienna, Austria
Phone: +43 664 180 6946
Fax: +43 664 188 6275
Karl dot Goeschka (at) tuwien dot ac dot at
Schahram Dustdar
Vienna University of Technology
Institute of Information Systems
Distributed Systems Group
Argentinierstrasse 8/184-1
A-1040 Vienna, Austria
Phone: +43 58801 18414
Fax: +43 58801 18491
Dustdar (at) infosys dot tuwien dot ac dot at
Frank Leymann
University of Stuttgart
Institute of Architecture of Application Systems
Universitätsstraße 38
D-70569 Stuttgart, Germany
Phone: +43 58801 18414
Fax: +43 58801 18491
Frank dot Leymann (at) informatik dot uni-stuttgart dot de
Vladimir Tosic
National ICT Australia (NICTA)
Empirical Software Engineering
Eveleigh, NSW 1430, Australia
vladat (at) computer dot org
Johannes Osrael
Vienna University of Technology
Institute of Information Systems
Distributed Systems Group
Argentinierstrasse 8/184-1
A-1040 Vienna, Austria
phone: +43 1 58801 58409
fax: +43 1 58801 18491
mw4soc@dedisys.org