======================================================================== Title ======================================================================== Part 1: Foundations of Web Services: Architectures, Description, Engagement Part 2: Foundations of Web Services: Engagement, Discovery, Composition ======================================================================== Presenter Contact Information ======================================================================== Munindar P. Singh and Michael N. Huhns singh@ncsu.edu, huhns@sc.edu ======================================================================== Aims and learning objectives ======================================================================== To understand the principles and practice of service composition. To review Web service concepts and architectures from the ultimate purpose of composing services. To understand techniques for service composition. ======================================================================== Scope ======================================================================== Web services are becoming increasingly important and the basic infrastructure for Web services is becoming quite common. This tutorial will address sophisticated approaches for describing, discovering, and engaging Web services, leading up to service composition. Key topics include semantics, transactions, business processes, agents, quality of service, compliance, and trust. As the basic infrastructure for Web services has spread, the above concepts and techniques are becoming increasingly important. We expect these will attract considerable interest from conference attendees in Spring 2004. ======================================================================== Keywords ======================================================================== Web services, service composition, semantics, ontologies, business process integration, agents, advanced transaction concepts, service agreements, compliance, trust ======================================================================== Target audience ======================================================================== Active practitioners; advanced developers; graduate and senior undergraduate students. ======================================================================== Prerequisite knowledge of audience ======================================================================== Some experience with Web programming; basic concepts of distributed computing. ======================================================================== Brochure Description: Foundations of Web Services: Architectures, Description, Engagement ======================================================================== Web services have become an important paradigm for information technology architectures and applications. The basic standards and existing literature on Web services have been focused on the lower-level, infrastructural matters. But as these become well-understood, emphasis has shifted to deeper foundational topics. In particular, in emerging practice, the classical Web services triangle of publish, find, and bind is being upgraded to sophisticated descriptions, discovery, and engagement. This upgrade requires the introduction of techniques for information and process semantics, specifically, conceptual modeling, ontologies, matchmaking, messaging, transactions, and processes. Some of the relevant concepts have been developed in diverse parts of computer science, especially, heterogeneous databases, distributed computing, artificial intelligence, and multiagent systems. This tutorial presents the necessary concepts, architectures, theories, techniques, and infrastructure to understand Web services in this upgraded form. However, it is self-contained, and gives the essential background for anyone planning to learn about and contribute to the principles and applications of services. It guides practitioners by highlighting best practices in service-oriented computing and introduces students and advanced developers to the key trade-offs as well as the limitations of current approaches. This tutorial emphasizes architectures, description techniques and standards, and basic forms of engagement; its sequel discusses advanced engagement, and discovery, and composition. This tutorial is presented at a senior or beginning graduate student level. It is accessible to Web programmers, advanced developers, and students. ======================================================================== Brochure Description: Foundations of Web Services: Engagement, Discovery, Composition ======================================================================== This tutorial has a prequel, which emphasizes concepts of basic services, semantic Web techniques, and transactions and business processes. Attendees with sufficient background may skip the prequel. In emerging practice, the classical Web services triangle of publish, find, and bind is being upgraded to include sophisticated descriptions, discovery, and engagement. This tutorial discusses advanced engagement, and discovery, and composition. Its prequel tutorial emphasizes architectures, description techniques and standards, and basic forms of engagement. Some of the key techniques were developed in the areas of databases, distributed computing, artificial intelligence, and multiagent systems. These are generally established bodies of work that can be readily adapted for services. Some additional techniques are being developed from scratch to better address the essential openness and scale of Web applications that previous work did not need to address. This tutorial seeks to introduce and evaluate techniques for exceptions, process modeling and enactment, monitoring and compliance, reputation and trust, agents, protocols, contracts, planning, and negotiation. This tutorial is presented at a senior or beginning graduate student level. It is accessible to Web programmers, advanced developers, and students. ======================================================================== Full description ======================================================================== The services metaphor is catching on rapidly for the development of complex Web applications. Because of the heterogeneity and autonomy of Web sites, it is only natural that we model them as independent services. The first generation of the work on Web services has concentrated on the basic infrastructural needs, such as directory services, description languages, and invocation standards. The whole point of having Web services is that they be composed into more complex and more valuable services. First-generation Web services techniques address the challenges of composition only to a limited extent. Instead they tend to borrow classical programming techniques (some of which, such as procedure calls, were developed for traditional closed systems). Web services require a strong open systems perspective. For example, services in general are not invoked but are engaged, meaning that the interactions one has with them are quite unlike method invocations and are better modeled as parts of extended conversations. Protocols, in this sense, replace programming interfaces as an abstraction for programming. Similarly, discovering the right service is more than simply looking up a directory with a method signature, and involves considerations of application-level trust. Some of the key techniques for Web services were developed in the areas of databases, distributed computing, artificial intelligence, and multiagent systems, and can be readily adapted for service composition. Other techniques must be developed from scratch, so as to address the essential openness and scale of Web applications that previous work did not need to address. This tutorial seeks to discuss the key concepts for Web services leading up to service composition. Its intent is to formulate the foundational concepts of Web services, to evaluate existing approaches, and to present existing techniques from other areas that can be adopted for services, and lastly to introduce emerging techniques for addressing challenges that are unique to services. ======================================================================== Detailed Outline: Foundations of Web Services: Architectures, Description, Engagement ======================================================================== For this half-day tutorial (with 3.5 hours = 210 minutes of face time), we expect to allocate about 30, 40, 60, 60, and 20 minutes, respectively, to the following sections. I. Introduction Brief history of information technology Distributed computing in the large Motivations for composition Challenges for composition Enterprise architectures II. Web Services Architectures and Standards Basic concepts Directory services WSDL SOAP UDDI Upgrading the WS Triangle III. Description: Modeling and Representation Integration versus interoperation Conceptual modeling Ontologies and knowledge sharing Relevant standards: RDF, RDFS, and OWL Inferencing and tools Matchmaking IV. Engagement Basics Peer to peer computing Messaging Distributed transactions Business processes Evaluation of current architectures and standards V. Discussion Key challenges Status and trends ======================================================================== Detailed Outline: Foundations of Web Services: Engagement, Discovery, Composition ======================================================================== For this half-day tutorial (with 3.5 hours = 210 minutes of face time), we expect to allocate about 30, 50, 50, 50, and 20 minutes, respectively, to the following sections. I. Introduction Key challenges Key trends Overview of approaches II. Advanced Engagement Exception handling Relevant standards: BPEL4WS, WSCL, WS-Tx, WS-C, ebXML Relaxed transactions Monitoring and compliance III. Discovery and Selection Distributed credentials Quality of service Application-level trust Reputation mechanisms Referral systems IV. Composition Describing compositions Agents Protocols Commitments and contracts Planning Negotiation Consistency maintenance Relevant standards: FIPA, OWL-S V. Synthesis User interfaces Engineering composed services Status and trends ======================================================================== Presenter Biographies ======================================================================== The presenters have a long track-record in the theory and practice of large-scale software systems, and have been actively studying Web services. They also have extensive experience in teaching and in making tutorial presentations. Specifically, they have given graduate courses related to this tutorial, are writing a text in this area, and have presented tutorials at a number of international conferences. ==================================== MUNINDAR P. SINGH Department of Computer Science North Carolina State University Raleigh, NC 27695-7535, USA singh@ncsu.edu +1.919.515.5677 (voice) +1.919.513.4357 (fax) http://www.csc.ncsu.edu/faculty/mpsingh/ Munindar is a full professor in the department of computer science at North Carolina State University. From 1989 through 1995, he was with the Microelectronics and Computer Technology Corporation (MCC). Munindar's research interests include multiagent systems and Web services, where he specifically addresses the challenges of trust, service discovery, and business processes and protocols in large-scale open environments. Munindar is widely published and has over 150 articles to his name. Munindar's 1994 book Multiagent Systems, was published by Springer-Verlag. He coedited Readings in Agents, which was published by Morgan Kaufmann in 1998. Munindar is editing the Practical Handbook of Internet Computing to be published by CRC Press in 2004 and is coauthoring a new text, tentatively titled, Web Services and Beyond. Munindar was the editor-in-chief of IEEE Internet Computing from 1999 to 2002 and continues to serve on its editorial board. He is also a member of the editorial boards of the Journal of Autonomous Agents and Multiagent Systems and the Journal of Web Semantics, and serves on the steering committee for the IEEE Transactions on Mobile Computing. Munindar's research has been recognized with awards and sponsorship from the National Science Foundation, IBM, Cisco Systems, and Ericsson. Munindar obtained a B.Tech. in Computer Science and Engineering from the Indian Institute of Technology, Delhi in 1986 and a Ph.D. in Computer Sciences from the University of Texas at Austin in 1993. ==================================== MICHAEL N. HUHNS Department of Computer Science and Engineering University of South Carolina Columbia, SC 29208, USA huhns@sc.edu +1.803.777.5921 (voice) +1.803.777.8045 (fax) http://www.engr.sc.edu/faculty/huhns/ Mike is a full professor in computer science and engineering at the University of South Carolina, where he also directs the Center for Information Technology. Previously he was a Senior Member of the Research Division at the Microelectronics and Computer Technology Corporation. Prior to joining MCC in 1985, he was an associate professor of electrical and computer engineering at the University of South Carolina, where he also directed the Center for Machine Intelligence. Mike has been an adjunct professor in computer sciences at the University of Texas. Mike is a member of Sigma Xi, Tau Beta Pi, Eta Kappa Nu, ACM, IEEE, and AAAI. He is the author of over a hundred technical papers in machine intelligence and an editor of the books "Distributed Artificial Intelligence," Volumes I and II, and "Readings in Agents." His research interests are in the areas of distributed artificial intelligence, machine learning, enterprise modeling and integration, and software engineering. He writes a column "Agents on the Web" for IEEE Internet Computing. Mike is an associate editor for the Journal of Autonomous Agents and Multiagent Systems. He is on the editorial boards of IEEE Transactions on Mobile Computing, IEEE Internet Computing, International Journal on Intelligent and Cooperative Information Systems, and Journal of Intelligent Manufacturing. Previously, Mike was an associate editor for IEEE Expert and the ACM Transactions on Information Systems. He is on the Advisory Board for the First International Conference on Multiagent Systems, 1995, and has been on the Advisory Boards for several of the International Workshops on Distributed Artificial Intelligence. Mike received the B.S.E.E. degree in 1969 from the University of Michigan, Ann Arbor, and the M.S. and Ph.D. degrees in electrical engineering in 1971 and 1975, respectively, from the University of Southern California, Los Angeles.