Bibliography

1. M. Aiello, M. P. Papazoglou, J. Yang, M. Carman, M. Pistore, L. Serafini, and P. Traverso. A request language for Web-services based on planning and constraint satisfaction. In Proceedings of the International VLDB Workshop on Technologies for E-Services, pages 76-85, Hong Kong, China, 2002. 2. E. Akarsu, G. C. Fox, W. Furmanski, and T. Haupt. WebFlow - high-level programming environment and visual authoring toolkit for high performance distributed computing. In Proceedings of the ACM Conference on Supercomputing, Orlando, FL, Nov. 1998. ACM SIGARCH. 3. A. S. Ali and O. Rana. UDDI extensions. Cardiff University. http://www.cs.cf.ac.uk/user/ A.Shaikhali/uddie/. 4. G. Alonso, D. Agrawal, A. E. Abbadi, M. Kamath, R. Gunthor, and C. Mohan. Advanced transaction model in workflow context. In Proceedings of the International Conference on Data Engineering (ICDE), New Orleans, LA, USA, Feb. 1996. 5. G. Alonso, M. Kamath, D. Agrawal, A. E. Abbadi, R. Gunthor, and C. Mohan. Failure handling in large scale workflow management systems. Technical Report RJ9913, IBM Almaden Research Center, Nov. 1994. 6. G. Alonso and C. Mohan. WFMS: The next generation of distributed processing tools. Advanced Transaction Models and Architectures, 1997. S. Jajodia and L. Kerschberg (Eds.). Kluwer Academic Publishers, 1997. 7. T. Andrews et al. Business Process Execution Language for Web Services. Version 1.t. 8. A. Ankolekar, M. Burstein, J. Hobbs, O. Lassila, D. Martin, S. McIlraith, S. Narayanan, M. Paolucci, T. Payne, K. Sycara, and H. Zeng. DAML-S: Web service description for the Semantic Web. In Proceedings of the International Semantic Web Conference (ISWC), Sardinia, Italy, June 2002. 9. ANSA. The Advanced Network Systems Architecture. Technical report, Castle Hill, Cambridge, England: Architecture Project Management, 1989. 10. A. Arkin. Business process modeling language 1.0. Technical report, BPMI Consortium, June 2002. http://www.bpmi.orgj. 11. A. Arkin et al. Web Service Choreography Interface 1.0, 2002. http://www.w3.org/TR/wsci/. 12. ATG. ATG Dynamo Personalization Programming Guide, 2002. http://www.atg.com/en/support/producLresources/. 322 Bibliography

13. B. Atkinson et al. Web Services Security (WS-Security), Version 1.0 April 2002. http://www.ibm.com/developerworks/library/w&-secure/. 14. A. Banerji et al. Web Services Conversation Language (WSCL) 1.0. W3C technical note, Mar. 2002. http://www.w3.org/TR/wscllO/. 15. W. Bausch, C. Pautasso, and G. Alonso. Programming for dependability in a service-based grid. In Proceedings of the International Symposium on Cluster Computing and the Grid (CCGrid), Tokyo, Japan, May 2003. 16. W. Bausch, C. Pautasso, R. Schaeppi, and G. Alonso. Bioopera: Cluster-aware computing. In Proceedings of the 4th IEEE International Conference on Cluster Computing, 2002. 17. BEA Systems Inc. BEA : The Progmmming Model, 1996. http://edocs.bea.com/wle/tuxedo/main/stref.htm. 18. BEA Systems Inc. BEA WebLogic Integmtion: Application Interymtion, 2002. http://bea.com/products/weblogic/server/index.shtml. 19. BEA Systems Inc. BEA WebLogic Server 7.0 Overview, Apr. 2002. http://bea.com/products/weblogic/server. 20. T. Bellwood et al. UDDI version 3.0, July 2002. This version is available at http://uddLorg/pubs/uddi-v3.00-published-20020719.htm. The latest version is available at http://uddLorg/pubs/uddLv3.htm. 21. B. Benatallah, F. Casati, F. Toumain, and R. HamadL Conceptual modeling of Web services conversations. In Proceedings of the International Conference on Advanced information Systems Engineering (CAiSE), Klagenfurt/Velden, Austria, June 2003. 22. K. H. Bennett et al. Prototype implementations of an architectural model for service-based flexible . In Proceedings of the Thirty-Fifth Hawaii International Conference on System Sciences (HICSS-35), Jan. 2002. 23. T. Berner&-Lee and R. Cailliau. WorldWide Web: Proposal for a HyperText Project. European Laboratory for Particle Physics (CERN). 24. T. Berner&-Lee, R. Cailliau, J.-F. Groff, and B. Pollermann. World-Wide Web: The information universe. Electronic Networking: Research, Applications and Policy, 1(2):74-82, 1992. 25. P. Bernstein and E. Newcomer. Principles of Transaction Processing for the Systems Professional. Morgan Kaufmann, 1997. 26. P. A. Bernstein. Middleware: A model for distributed system services. Communications of the ACM, 39(2):86-98, 1996. 27. P. A. Bernstein, M. Hsu, and B. Mann. Implementing recoverable requests using queues. In Proceedings of the Association for Computing Machinery Special Interest Group on Management of Data (SIGMOD), pages 112-122, Atlantic City, NJ, USA, 1990. 28. A. D. Birrell and B. J. Nelson. Implementing remote procedure calls. ACM Transactons on Computer Systems, 2(1):39---59, Feb. 1984. 29. S. Bodoff et al. The J2EE tutorial. Addison Wesley, 2002. 30. Bosworth et al. Web Services Addressing (WS-Addressing), Mar. 2003. http://msdn.microsoft.com/ws/2003/03/w&-addressing/. 31. K. Boucher and F. Katz. Essential guide to object monitors. John Wiley & Sons, 1999. 32. D. Box et al. Simple Object Access Protocol (SOAP) 1.1, May 2000. This version is available at http://www.w3.org/TR/2000/NOTE-SOAP-20000508j. The latest version is available at http://www.w3.org/TR/SOAP /. Bibliography 323

33. D. Box et al. Web Services Policy Attachment (WS-PolicyAttachment), Dec. 2002. http://msdn.microsoft.com/webservices. 34. D. Box et al. Web Services Policy Framework (WS-Policy), Dec. 2002. http://msdn.microsoft.com/webservices/default.aspx?pull= /library/ en• us/dnglobspec/html/ws-policy.asp. 35. G. Bracchi and B. Pernici. The Design Requirements of Office Systems. ACM Transactions on Office Information Systems, 2(2):151-170, Apr. 1985. 36. P. Brittenham, F. Cubera, D. Ehnebuske, and S. Graham. Understanding WSDL in a UDDI Registry, September 2001. http://www.ibm.com/developerworks/webservices/library/ws-wsdl/. 37. BroadVision, Inc. Broad Vision. http://www.broadvision.com/. 38. C. Bussler. B2B protocol standards and their role in semantic B2B integration engines. IEEE Data Engineering Bulletin, 24(1), Mar. 2001. 39. C. Bussler. Process inheritance. In Proceedings of the International Conference on Advanced information Systems Engineering (CAiSE), pages 701-705, Toronto, Canada, 2002. 40. C. Bussler. Public process inheritance for business-to-business integration. In Proceedings of the International VLDB Workshop on Technologies for E-Services, pages 19-28, Hong Kong, China, 2002. 41. F. Cabrera et al. Web Services Coordination (WS-Coordination), 9 August 2002. http://www.ibm.com/developerworks/library /ws-coor/. 42. F. Cabrera et al. Web Services Transactions (WS-Transaction), 9 August 2002. IBM, Microsoft, BEA. http://www.ibm.com/developerworks/library/ws-transpec/. 43. Candle. ETEWatch: End-to-end Response Time Monitoring. http://www.candle.com. 44. H. Casanova and J. Dongarra. NetSolve: A Network Server for Solving Computational Science Problems. In Proceedings of the 1996 ACM/IEEE Supercomputing Conference, 1996. http://www.cs.utk.edu/netsolve. 45. F. Casati, S. Ceri, S. Paraboschi, and G. Pozzi. Specification and implementation of exceptions in workflow management systems. ACM Transactions on Database Systems, 24(3):405-451, 1999. 46. F. Casati, S. Ceri, B. Pernici, and G. Pozzi. Deriving active rules for workflow enactment. In Proceedings of the International Conference on Database and Expert Systems Administration(DEXA '96), Lecture Notes in Computer Science, Springer Verlag, Zurich, Switzerland, Sept. 1996. Springer-Verlag. 47. F. Casati and M.-C. Shan. Dynamic and adaptive composition of e-services. Infosystems, 24(3):211-238, Jan. 2001. 48. A. Cass, B. Lernerand, E. McCall, L. Osterweil, S. Sutton Jr., and A. Wise. Little-JIL/Juliette: A process definition language and interpreter. In Proceedings of the International Conference on Software Engineering (ICSE), Limerick, Ireland, June 2000. 49. R. Chinnici, M. Gudgin, J.-J. Moreau, and S. Weerawarana. Web Services Description Language (WSDL) Version 1.2, July 2002. http://www.w3.org/TR/wsd112. 50. Commerce One, Inc. XML Common Business Library. http://www.xcbl.org. 51. Commerce One, Inc. Order Management Recommended Use: xCBL 3.5, version 1.0, November 2001. http://www.xcbl.org. 52. Computer Associates, Inc. CA Unicenter. http://www.ca.com. 324 Bibliography

53. Connolly et al. DAML+OIL (March 2001) Reference Description. W3C note, World Wide Web Consortium (W3C), Dec. 200l. http://www.w3.org/TR/daml+oil-reference. 54. G. Coulouris, J. Dollimore, and T. Kindberg. Distributed Systems: Concepts and Design. Addison-Wesley, 3rd Edition, 2000. 55. F. Curbera, D. Ehnebuske, and D. Rogers. Using WSDL in a UDDI Registry, Version 1.07 UDDI Best Practice, May 2002. This version is available at http://www.uddi.org/pubs/wsdlbestpractices-Vl.07-0pen-20020521.pdf The latest version is available at http://www. uddi.org/pubs/wsdlbestpractices. pdf. 56. U. Dayal, M. Hsu, and R. Ladin. Business process coordination: State of the art, trends, and open issues. In Proceedings of the International Conference on Very Large Data Bases (VLDB), Rome, Italy, Sept. 2001. 57. Delphi Group. BPM 2002. Market Milestone Report, 2002. 58. M. Denny. Ontology building: A survey of editing tools. XML.com, November 2002. 59. K. K. Dickson Chiu, Qing Li. ADO ME-WFMS: Towards cooperative handling of workflow exceptions. In A. Romanovsky, C. Dony, J. L. Knudsen, and A. Tripathi, editors, Advances in Exception Handling Techniques, pages 271-288. Springer-Verlag, LNCS-20022, 2001. 60. Distributed Management Task Force (DMTF). Common Information Model. http://www.dmtf.org. 61. ebXML (Electronic Business using eXtensible Markup Language. ebXML-Enabling a Global Electronic Market. http://www.ebxml.org/geninfo.htm. 62. ebXML Registry Project Team. Using UDDI to Find ebXML RegReps. Technical report, http://www.ebxml.org/specs/rrUDDl.pdf, May 2001. 63. ebXML Technical Architecture Team. The Advanced Network Systems Architecture, v1.0A. Technical report, http://www.ebxml.org/specs/ebTA_print.pdf, February 2001. 64. J. Eder and W. Liebhart. The Workflow Activity Model WAMO. In Proceedings of the International Conference on Cooperative Information Systems (CoopIs), Wien, Austria, May 1995. 65. J. Eder and W. Liebhart. Contributions to exception handling in workflow management. In Proceedings of the EDBT Workshop on Workflow Management Systems, Valencia, Spain, Mar. 1998. 66. EDIFACT. United Nations Directories for Electronic Data Interchange for Administration, Commerce and Transport. http://www.unece.org/trade/untdid/welcome.htm. 67. J. Edwards. 3-Tier Server/Client at Work. John Wiley & Sons, 1999. 68. A. Elmagarmid. Database Transaction Models. Morgan Kaufmannn, 1992. 69. A. Emtage and P. Deutsch. Archie: An electronic directory service for the internet. In Proceedings of the Winter 1992 USENIX Conference, pages 93-110, San Francisco, California, 1991. 70. R. Fielding, J. Gettys, J. Mogul, H. Frystyk, and T. Berners-Lee. RFC 2068: Hypertext Transfer Protocol ~ HTTP/1.1, Jan. 1997. 71. Fiorano. FioranoMQ Enterprise Messaging Server. http://www.fiorano.com/. 72. M. Fisher. Introduction to web services. part of the java web services tutorial, Aug. 2002. http://java.sun.com/webservices/docs/1.0/tutorial/. Bibliography 325

73. Flashline Inc. Application Server Comparison Matrix. http://www.flashline.com/components/ appservermatrix.jsp. 74. D. Florescu, A. Grunhagen, and D. Kossman. XL: an XML Programming Language for Web Service Specification and Composition. In Proceedings of the 11th International World Wide Web Conference (WWW02), Honolulu, Hawaii, USA, May 2002. 75. S. Frolund and K. Govindarajan. Transactional conversations. In Proceedings of the W3C workshop on Web services, San Jose, CA, USA, Apr. 2001. 76. C. Frye. Move to Workflow Provokes Business Process Scrutiny. Software Magazine, pages 77-89, Apr. 1994. 77. Y. Fu, L. Cherkasova, W. Tang, and A. Vahdat. Ete: Passive end-to-end internet service performance monitoring. In Proceedings of the USENIX Annual Technical Conference, Monterey, CA, U.S.A, June 2002. 78. H. Garcia-Molina and K. Salem. Sagas. In Proceedings of the Association for Computing Machinery Special Interest Group on Management of Data (SIGMOD), San Francisco, CA, USA, Dec. 1987. 79. D. Georgakopoulos, M. F. Hornick, and A. P. Sheth. An overview of workflow management: From process modeling to workflow automation infrastructure. Distributed and Pamllel Databases, 3(2}:119-153, Apr. 1995. 80. D. Georgakopoulos, H. Schuster, D. Baker, and A. Cichocki. Managing escalation of collaboration processes in crisis mitigation situations. In Proceedings of the International Conference on Data Engineering (ICDE), San Diego, CA, USA, Feb. 2000. 81. Global Grid Forum. OSGI Working Group. http://www.gridforum.org/ogsi-wg/. 82. Y. Goldberg, M. Safran, and E. Shapiro. Active Mail- A Framework for Implementing Groupware. In Proceedings of the Conference on Computer-Supported Coopemtive Work (CSCW), pages 281-288, Toronto, Canada, October 31 - November 41992. 83. K. Gottschalk, S. Graham, H. Kreger, and J. Snell. Introduction to Web services architecture. IBM Systems Journal, vol 41, No 2., pages 170-177, 2002. 84. J. Gray. Notes on data base operating systems. In Opemting Systems, An Advanced Course, volume 60 of Lecture Notes in Computer Science, pages 393-481. Springer, 1978. 85. J. Gray. Why TP-Lite will dominate the TP market. In Proceedings of the 1993 Asilomar Conference on High Performance Transaction Processing (HPTS), 1993. 86. J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann Publishers, 1993. 87. M. Gudgin, M. Hadley, J.-J. Moreau, and H. Frystyk. SOAP version 1.2, July 2001. This version is available at http://www.w3.org/TR/200l/WD-soap12-200l0709/. The latest version is available at http://www.w3.or/TR/soap12j. 88. C. Hagen and G. Alonso. Flexible exception handling in the OPERA process support system. In Proceedings of the International Conference on Distributed Computing Systems (ICDCS), Amsterdam, The Netherlands, May 1998. 89. C. Hall. Building Client/Server Applications Using Tuxedo. John Wiley & Sons, 1996. 326 Bibliography

90. M. Hammer and J. Champy. Reengineering the Corporation: A Manifesto for Business Revolution. HarperBusiness, New York, 1993. 91. R. Hauck and H. Reiser. Monitoring Quality of Service across Organizational Boundaries. In Trends in Distributed Systems: Torwards a Universal Service Market. Proceedings of the third International IFIP/GI Working Conference, USM 2000, Sept. 2000. 92. Hewlett-Packard Company. HP Open View. http://www.openview.hp.com. 93. Hewlett-Packard Company. HP Agile Business Infrastructure Solution, 2002. http://www.hoffmanmarcom.com/IT _ebusiness/Examples/agile -.infrastructure. pdf. 94. Hewlett-Packard Company and webMethods. Open Management Interface Specification. http://www.oasis-open.org/committees / mgmtprotocoljDocs / 0 MISpecification_1.0rev I_OASIS. pdf. 95. C. Hoare. Communicating Sequential Processes. Prentice Hall, 1985. 96. I. Horrocks, P. Patel-Schneider, and F. van Harmelen. Reviewing the design of DAML+OIL: An ontology language for the Semantic Web. AAAI 2002, 2002. 97. J. Horswill and S. Miller. Designing and Programming CICS Applications. O'Reilly & Associates, 2000. 98. P. J. Houston. Introduction to DCE and Encina. Whitepaper, Transarc Corp., Nov. 1996. http:// www.transarc.com/afs/transarc.com/public/www/Public/ ProdServ/Product /Whitepapers/. 99. IBM. Getting Started with WebSphere Application Server, 2001. http://www-3.ibm.com/software/webservers/. 100. IBM. WebSph ere MQ Integrator Broker: Introduction and Planning, June 2002. 101. IBM Pittsburgh Lab. Encina online documentation. http://www.transarc.ibm.com/Library/ documentation/encina/unix/2.5/. 102. International Business Machines Corporation (IBM). IBM UDDI Business Registry Version 2. https://uddLibm.com/ubr/registry.html. 103. International Business Machines Corporation (IBM). Tivoli Software. http://www.tivolLcom. 104. International Business Machines Corporation (IBM). MQ Series Workflow for Business Integration, 1999. http://www.ibm.com. 105. S. Jablonski and C. Bussler. Workflow Management. International Thomson Computer Press, 1996. 106. S. Jajodia and L. Kerschberg. Advanced Transaction Models and Architectures. Kluwer Academic Publishers, 1997. 107. J.Bergstra and J. Klop. Algebra of communicating processes with abstractions. Journal of Theoretical Computer Science, 33:77-121, 1985. 108. JBoss. JBossMQ. http://www.jboss.org/developers/projects/jboss/jbossmq.jsp. 109. JORAM. Java Open Reliable Asynchronous Messaging. ObjectWeb Consortium. http://www.objectweb.org/joramf. 110. Jupitermedia Corporation. Webopedia: Online Dictionary for Computer and Internet Terms. http://www.webopedia.com/. 111. C. Kalbfleisch, C. Krupczak, R. Presuhn, and J. Saperia. RFC 2564: Application Management MIB, May 1999. http://www.ietf.org/rfc/rfc2564.txt. Bibliography 327

112. M. Kamath and K. Ramamritham. Failure handling and coordinated execution of concurrent workflows. In Proceedings of the International Conference on Data Engineering (ICDE), Orlando, FL, USA, Feb. 1998. 113. G. Kappel, P.Lang, S. Rausch-Schott, and W. Retschitzegger. Workflow management based on objects, rules, and roles. IEEE Data Engineering, 18(1):11-18, Mar. 1995. 114. S. Kounev and A. Buchmann. Improving data access of J2EE applications by exploiting asynchronous messaging and caching services. In Proceedings of the International Conference on Very Large Data Bases (VLDB), Hong Kong, China, Aug. 2002. 115. H. Kreger. Web Services Conceptual Architecture (WSCA 1.0). International Business Machines Corporation (IBM). http://www-4.ibm.com/software/solutions/webservices/pdf/WSCA.pdf. 116. V. Krishnamoorthy and M. Shan. Virtual transaction model for workflow applications. In Proceedings of the International Symposium on Applied Computing (SAC), Como, Italy, Mar. 2000. 117. B. Lampson and H. Sturgis. Crash Recovery in a Distributed Storage System. Technical report, Computer Science Laboratory, Xerox, Palo Alto Research Center, Palo Alto, CA, USA, 1976. 118. C. Lee and A. Helal. Context attributes: An approach to enable context-awareness for service discovery. In Third IEEE/IPSJ Symposium on Applications and the Internet, Jan. 2003. 119. F. Leymann. Web Services Flow Language. Version 1.0. Technical report, International Business Machines Corporation (IBM), May 2001. 120. F. Leymann and D. Roller. Business Process Management With FlowMark. In Proceedings of the IEEE COMPCON conference, pages 230-234, San Francisco, CA, USA, 1994. 121. F. Leymann and D. Roller. Production Workflow: Concepts and Techniques. Prentice Hall, 1999. 122. F. Leymann, D. Roller, and M.-T. Schmidt. Web services and business process management. IBM Systems Journal, 41(2), 2002. 123. M. Lorch and D. Kafura. Symphony - a java-based composition and manipulation framework for computational grids. In Proceedings of the 2nd IEEE/ACM International Symposium on Cluster Computing and the Grid, 2002. 124. D. Lowe. Client/Server Computing for Dummies. Hungry Minds, Inc. 2nd Edition, 1997. 125. N. Lynch. Distributed Algorithms. Morgan Kaufmann, 1997. 126. V. Machiraju, A. van Moorsel, and A. Sahai. Web services Management Network: An Overlay Network for Federated Service Management. In Proceedings of 8th IFIP/IEEE International Symposium on Integrated Network Management, Colorado Springs, U.S.A, Mar. 2003. 127. S. Madnick et al. Surviving and thriving in the new world of Web aggregators. Technical Report v20, Sloan School of Management, MIT, Oct. 2000. 128. T. Malone, K. Grant, K. Lai, R. Rao, and D. Rosenblitt. Semistructured Messages Are Surprisingly Useful for Computer-Supported Coordination. ACM Transactions on Office Information Systems, 5(2):115-131, 1987. 129. M. P. McCahill and F. X. Anklesaria. Evolution of Internet gopher. J. UCS: Journal of Universal Computer Science, 1(4), 1995. 328 Bibliography

130. D. McGuinness and F. van Harmelen. W3C Working Draft: Feature Synopsis for OWL Lite and OWL. Technical report, W3C, July 2002. 131. S. McIlraith, T. C. Son, and H. Zeng. Semantic Web services. IEEE Intelligent Systems, 16(2), Mar. 2002. 132. M. Mecella, F. Presicce, and B. Pernici. Modeling e-services orchestration through Petri nets. In A. Buchmann and M. Hsu, editors, Proceedings of the International VLDB Workshop on Technologies for E-Seruices. Springer-Verlag, Hong Kong, China, Aug. 2002. 133. D. Menasce and V. Almeida. Capacity Planning for Web Services. Prentice Hall,2001. 134. Microsoft Corporation. ASP.NET Web: The Official Microsoft ASP.NET Site. http://www.asp.net/. 135. Microsoft Corporation. Microsoft Open Database Connectivity (ODBC) interface. Microsoft Corporation. http://www.microsoft.com/data/doc.htm#odbc. 136. Microsoft Corporation. Microsoft UDDI Business Registry Node. http://uddi.microsoft.com/default.aspx. 137. Microsoft Corporation. Message Queuing in Windows XP, 2001. 138. Microsoft Corporation. Web Services Routing Protocol (WS-Routing), Oct. 2001. http://msdn.microsoft.com/webservices. 139. Microsoft Corporation. Microsoft Biz Talk Server 2002 Enterprise Edition, 2002. http://www.microsoft.com. 140. Microsoft Corporation. Microsoft Transaction Server, 2002. http://msdn.microsoft.com/libraryI. 141. T. Mikalsen, S. Tai, and I. Rouvellou. Transactional attitudes: Reliable composition of autonomous Web services. In Workshop on Dependable Middleware-based Systems (WDMS 2002), Washington D.C., USA, June 2002. 142. R. Milner. Communication and Concurrency. Prentice Hall, 1989. 143. R. Milner, J. Parrow, and D. Walker. A calculus of mobile processes. Information and Computation, 100(1):1-40, Sept. 1992. 144. R. Mordani and S. Boag. Java API for XML Processing. , Inc., 2002. http://java.sun.com/xml/downloads/jaxp.html. 145. N. Mukhi. Web Services Invocation F'ramework. IBM developerWorks. http://www-106.ibm.com/developerworks/libraryIws-wsif.html. 146. S. E. Mullender. Distributed Systems. Addison-Wesley, 2nd Edition, 1993. 147. National Center for Supercomputing Applications. The Common Gateway Interface. University of Illinois at Urbana - Champaign, IL, USA. http://hoohoo.ncsa. uiuc.edulcgi/. 148. Netscape Communications Corporation. Introduction to SSL. http://developer.netscape.com/docs I manualsI securityI sslin/index.html. 149. Netscape Communications Corporation. Persistent Client State: HTTP Cookies, 1999. http://wp.netscape.com/newsref/std/cookie_spec.html. 150. H. F. Nielsen et al. Direct Internet Message Encapsulation (DIME). Internet draft, draft-nielsen-dime-02, June, 2002, http://www.ietf.org/internet-drafts/draft-nielsen-dime-02.txt. 151. Object Management Group. Catalog of OMG CORBAfacilities Specifications. http://www.omg.org. 152. Object Management Group. Catalog of OMG CORBAservices Specifications. http://www.omg.org. Bibliography 329

153. Object Management Group. CORBAservices: Common Object Services Specification, 1997. 154. Object Management Group. Unified Modeling Language Specification (Version 1.3), June 1999. http://www.omg.org/technology/documents/formal/uml.htm. 155. Object Management Group. Event Service Specification, March 200l. http://www.omg.org/technology/documents/formal/event_service.htm. 156. Object Management Group. Java to IDL Language Mapping Specification. Version 1.2, Aug. 2002. http://www.omg.org. 157. U. Ogbuji. Supercharging WSDL with RDF: Managing structured web service metadata. IBM DeveloperWorks, November 2000. 158. OMG CCM Implementers Group. CORBA Component Model Thtorial, Apr. 2002. http://www.omg.org/cgi-bin/doc?ccm/2002-04-01. 159. The Open Group. Application Response Measurement. Version 1.2. http://www.opengroup.org/management/arm.htm. 160. . Oracle 9i Application Server: An Oracle White Paper, Sept. 2002. http://www.oracle.com/ip/deploy lias/. 161. Oracle Corporation. Oracle 9i Application Server: Business Intelligence Overview, Mar. 2002. http://www.oracle.com/ip/deploy /ias/bi/bLtwp.pdf. 162. R. Orfali, D. Harkey, and J. Edwards. Client/Server Survival Guide. John Wiley & Sons, 3rd Edition, 1999. 163. S. G. Parker and C. R. Johnson. SCIRun: A Scientific Programming Environment for Computational Steering. In Proceedings of the 1995 ACM/IEEE Supercomputing Conference, 1995. 164. D. Platt. Understanding COM+. Microsoft Press, 1999. 165. M. Platt. Microsoft Architecture Overview. Microsoft Corporation, July 2002. http://msdn.microsoft.com/ architecture/ default.aspx. 166. J. Postel. RFC 318: Telnet protocol, Apr. 1972. 167. J. Postel and J. K. Reynolds. RFC 959: File transfer protocol, Oct. 1985. 168. PROMATIS GmbH. PR OMA TIS. http://www.promatis.com. 169. W. Reisig and G. R. (editors). Lectures on Petri Nets I: Basic Models. Lecture Notes in Computer Science. Springer-Verlag, 1998. 170. A. Reuter, K. Schneider, and F. Schwenkreis. Contracts revisited. In S. Jajodia and L. Kerschberg, editors, Advanced Transaction Models and Architectures. Kluwer Academic Publishers, New York, 1997. 171. RosettaNet. RosettaNet: Lingua F'ranca for E-Business. http://www.rosettanet.org. 172. RosettaNet. RosettaNet Overview. RosettaNet, 1999. http://www.rosettanet.org/background. 173. RosettaNet. Understanding a PIP Blueprint, 2000. http://ibm.com/developerworks/library/ws-bpel. 174. M. Rusinkiewicz, A. Elmagarmid, Y. Leu, and W. Litwin. Extending the transaction model to capture more meaning. ACM SIGMOD Record, 19, Oct. 1990. 175. W. Sadiq and S. Kumar, editors. Web Service Description Usage Scenarios. World Wide Web Consortium (W3C), June 2002. This version of the W3C Working Draft is available at http://www.w3.org/TR/2002/WD-ws-desc-usecases-20020604 The latest version is available at http://www.w3.org/TR/ws-desc-usecases. 330 Bibliography

176. A. Sahai, V. Machiraju, M. Sayal, A. van Moorsel, F. Casati, and L. J. Jin. Automated SLA monitoring for Web services. In Proceedings of Management Technologies for E-Commerce and E-Business Applications, 13th IFIP/IEEE International Workshop on Distributed Systems: Opemtions and Management, DSOM 2002, Montreal, Canada, Oct. 2002. 177. R. Salz. Transporting Binary Data in SOAP. http://www.xml.com/pub/a/2002/08/28/endpoints.html. 178. Z. Sheng, B. Benatallah, M. Dumas, and E. O.-Y. Male SELF-SERV: A Platform for Rapid Composition of Web Services in a Peer-to-Peer Environment. In Proceedings of the International Conference on Very Large Data Bases (VLDB), Hong Kong, China, Aug. 2002. 179. A. Sheth, M. Rusinkicwicz, and G. Karabatis. Using polytransactions to manage independent data. In A. Elmagarmid, editor, Transaction Models for Advanced Database Applications. Morgan Kaufmann Publishers, 1992. 180. B. Sleeper. The Evolution of UDDI. Technical report, The Stencil Group, Inc., July 2002. http://uddLorg/pubs/the_evolution_oLuddi...20020719.pdf. 181. M. Sloman. Policy driven management for distributed systems. Journal of Network and Systems Management, 2:333, 1994. 182. Society for Worldwide Interbank Financial Telecommunication SCRL. SWIFT. http://www.swift.comj. 183. R. Srinivasan. Rpc: Remote procedure call protocol specification version 2. Technical Report RFC 1831, Sun Microsystems, Inc., Aug. 1995. 184. M. Stonebraker. Legacy systems - the Achilles heel of downsizing. In Proceedings of the Third IEEE International Conference on Pamllel and Distributed Information Systems (PDIS 94), Austin, Texas, September 28-30, 1994, page 108, 1994. 185. M. Stonebraker. Too much middleware. ACM Sigmod Record, 31(1):97-106, 2002. 186. R. Sturm and W. Bumpus. Foundations of Application Management. John Wiley & Sons, 1998. 187. R. Sturm, W. Morris, and M. Jander. Foundations of Service Level Management. Sams, 2000. 188. Sun Microsystems, Inc. Java Servlet Technology. http://java.sun.com/products/servlet/ . 189. Sun Microsystems, Inc. JavaServer Pages Technology. http://java.sun.com/products/jsp/ . 190. Sun Microsystems, Inc. JDBC Data Access API. Sun Microsystems, Inc. http://java.sun.com/products/jdbc/. 191. Sun Microsystems, Inc. The Source for Java Technology. http://java.sun.com/. 192. Sun Microsystems, Inc. Simplified Guide to the Java 2 Platform, Enterprise Edition, 1999. http://java.sun.com/j2ee/j2ee_guide.pdf. 193. Sun Microsystems, Inc. Java Management Extensions. Version 1.2., Dec. 2002. 194. Sun Microsystems, Inc. Java Message Service. Version 1.1, Apr. 2002. 195. Sun Microsystems, Inc. Sun ONE Architecture Guide, 2002. http://wwws.sun.com/software/sunone/. 196. A. Tanenbaum. Distributed Opemting Systems. Prentice Hall, Inc., 1995. 197. The Open Group. Transaction Processing Titles. The Open Group. http://www.opengroup.org/products/publications/catalog/tp.htm. Bibliography 331

198. TIBCO Software Inc. TIBCO Business Process Management solutions, 2002. http://www.tibco.com. 199. TIBCO Software Inc. TIBCO Enterprise Application Integration solutions, 2002. http://wwwl.tibco.com/solutions/tibco_eai.pdf. 200. D. Trastour, C. Bartolini, and J. Gonzalez-Castillo. A Semantic Web approach to service description for matchmaking of services. In Proceedings of the International Semantic Web Working Symposium (SWWS), 2001. 201. D. Trastour, C. Preist, and D. Coleman. Using Semantic Web technology to enhance current business-to-business integration approaches. In Proceedings of the International World Wide Web Conference (WWW03), Budapest, Hungary, May 2003. 202. D. Tsichritzis. Form Management. Communications of the ACM, 25(7):453-478, July 1982. 203. UDDI Consortium. UDDI Executive White Paper, Nov. 2001. http:// uddi.org/ pubsIUD DLExecutive_White-Paper. pdf. 204. W. van der Aalst. The application of Petri nets to workflow management. The Journal of Circuits, Systems, and Computers, 8(1):21-66, 1998. 205. W. van der Aalst and K. van Hee. Workflow Management: Models, Methods, and Systems. MIT Press, 2001. 206. W. van der Aalst and M. Weske. The. P2P approach to interorganizational workflows. In Proceedings of the International Conference on Advanced information Systems Engineering (CAiSE), pages 140-156, Interlaken, Switzerland, 2001. 207. H. Verbeek, T. Basten, and W. van der Aalst. Diagnosing workflow processes using woflan. The Computer Journal, 44(4):246-279, 2001. 208. Vitria. Business Ware: The Leading Integration Platform, 2002. http://www.vitria.com. 209. G. Vossen and G. Weikum. Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control. Morgan Kaufmann Publishers, 2001. 210. W3C. Extensible Markup Language (XML) 1.0 (Second Edition), Oct. 2000. http://www.w3.org/TR/REC-xml. 211. W3C. XML Schema part 0: Primer, May 2001. http://www. w3.org/TR/xmlschema-0/. 212. W3C. Web Services Architecture Requirements, Oct. 2002. http://www.w3.org/TR/wsa-reqs. 213. WebMethods. WebMethods Enterprise Integrator: User's Guide, 2002. 214. WebRatio. WebRatio-Model driven code generation of Web applications. http://www.webratio.com/. 215. J. E. White. RFC 524: Proposed mail protocol, June 1973. 216. G. Wiederhold, P. Wegner, and S. Ceri. Towards megaprogramming: A paradigm for component-based programming. Communications of the ACM, 35(11):89-99, 1992. 217. A. Wise. Little-JIL 1.0: Language reports. Technical Report UM-CS-1998-024, University of Massachussets, Amherst, MA, USA, 1998. 218. D. Wodtke and G. Weikum. A formal foundation for distributed workflow execution based on state charts. In Proceedings of the 6th International Conference on Database Theory, Delphi, Greece, 1997. 332 Bibliography

219. D. Wodtke, J. Weissenfels, G. Weikum, and A. Kotz-Dittrich. The Mentor project: Steps towards enterprise-wide workflow management. In Proceedings of the International Conference on Data Engineering (ICDE), New Orleans, LA, USA, 1996. 220. D. Worah and A. Sheth. Transactions in transactional workflows. In S. Jajodia and L. Kerschberg, editors, Advanced Transaction Models and Architectures. Kluwer Academic Publishers, New York, 1997. 221. Workflow Management Coalition. Workflow Management Coalition. http://www.wfmc.org. 222. World Wide Web Consortium (W3C). Semantic Web. http://www.w3.org/200l/swj. 223. World Wide Web Consortium (W3C). Web-Ontology (WebOnt) Working Group. http://www.w3.org/200l/sw/WebOnt/. 224. P. Yendluri. RosettaNet Implementation Framework (RNIF) 2.0. Technical report, RosettaNet, 2000. http://xml.coverpages.org/RNIF-Spec020000.pdf. Index

.NET, see Microsoft .NET graph, 259 I-tier architectures, 10-12, 43, 45 hierarchy, 256, 262, 275 2-tier architectures, 12-16, 33, 35, 41, in activity diagram, 204 46,52,67 in BPEL, 286 2PC, see two-phase commit model definition, 259 2PCCoordinatorPortType, 228 terminated by timeout, 273 2PCParticipantPortType, 228, 229 activity diagram, see Unified Modeling 3-tier architectures, 16-19, 29, 33, 45, Language, activity diagram 46, 68, 69, 111 describing composition, 256-260, 262, conventional, 97 277 extension of, 98 describing conversation, 204, 242, 257 3GL, see third-Generation Language describing PIP, 236 adapters, 72, 77-83, 89, 90, 92, 134, 135 abort, 49, 213, 217, 226, 230 administrative domains, 77 abstract activities, 269 administrative processes, 82, 83, 89 abstract process, see process skeleton administrative workflows, 82 accountability, 309 Advanced Research Projects Agency ACID, see Atomicity Consistency (ARPA), 94 Isolation Durability AIX,70 acknowledgement, 158, 159, 228, 235, 236 Algebra of Communicating Processes ACP, see Algebra of Communicating with Abstractions (ACP), 261 Processes with Abstractions All operator, 194 action layer, 235 all-or-nothing property, 270 activation, see WS-Coordination, Altavista, 303 activation ANSA Testbench, 35 ActivationCoordinatorPortType, 218, Apache, 111 220 Apache Software Foundation, 194 ActivationRequestorPortType, 218, 220 API, see Application Program Interface Active Server Pages (ASP), 102 applets, 5, 99-100 ActiveX, 109 transient nature of, 100 activity application logic layer, 4, 5 defined by statechart, 259 in I-tier architectures, 10-12 execution, 259 in 2-tier architectures, 12-16 334 Index

in 3-tier architectures, 16-19 Atomicity Consistency Isolation in bottom-up design, 7-9 Durability (ACID), 47, 226, 227, in multi-tier architectures, 19-21 271 in top-down design, 6-7 relaxing, 226 application management, see Enterprise auditing, 315 application management, 31{}--312, authentication, 70, 194, 235, 238 314 authorization, 238 Application Program Interface (API), Automatic Teller Machine example, 98 11, 13-15, 51, 63, 103, 104, 107, autonomy, 127 118, 248, 268 availability, 7, 52, 91, 107, 111, 312, 313 Java, 72 publish/subscribe, 76 B2B, see Business to Business standardized, 54, 63 B2B protocols, see horizontal protocols, Application Response Measurement see vertical protocols (ARM), 309, 311, 314 B2C, see Business to Consumer application servers, 34, 46, 54, 64, back end, 21, 78-80, 82, 90 102-111 back office, 21 functionality, 105 backward recovery, 88 UDDI support, 180 basic service, 141 WSDL support, 173 batch jobs, 24 application-specific client, 100 batch mode, 164, 189 Archie, 94 batch operations, 43 Ariba, 130, 165, 174 batch processing, 60 ARM, see Application Response batch systems, 60 Measurement batch transactions, 46 ARPA, see Advanced Research Projects BBN Technologies, 307 Agency BEA, 104, 215, 225, 242, 283 ARPANET,94 BEA Tuxedo, 46, 60 ASP, see Active Server Pages BEA WebLogic, 72, 83, 104 ASP.NET,102 billing statement, 235 assertion, see policy assertion binary data, 165 asynchronous interaction, 22-26, 34, 43, BinarySecurityToken, 193 50, 59, 60, 63, 67, 92, 152, 156, binder, 39 158, 164-166, 168, 171, 196,201, binding 235, 298, 300 dynamic, see dynamic binding asynchronous message, see asyn• in RPC, see Remote Procedure Call, chronous interaction binding in asynchronous operation, 172, 204 in SOAP, see Simple Object Access asynchronous single-action PIP activity, Protocol, protocol binding 238 in UDDI, see Universal Description, ATG Dynamo, 111 Discovery and Integration, binding ATM example, see Automatic Teller information Machine example in WSDL, see Web Services De• atomic transaction, see transaction, scription Language, protocol see WS-Transaction, atomic binding transaction static, see static binding atomic unit, 64 to EJB, see Enterprise Java Bean, atomicity, 47, 48, 87, 212, 226, 242, 270, binding to 271 to interface, see interface binding Index 335

to resources, see resource binding business registry, see Universal Descrip• BioOpera, 266 tion, Discovery and Integration, blackboard, 266, 267, 288 174 blind relay, 96 business rules, 5 blocking activity, 258 business scenario blocking call, 22-24, 63 in ebXML, 240, 241 business signal message, 235, 236, 238 blocking operation, see blocking call Business to Business (B2B), 113, 119, bottom-up design, 7-9 142, 174, 189,207,295,299,303 BPEL, see Business Process Execution hub, 305, 308 Language for Web Services integration, 135 BPEL4WS, see Business Process before Web services, 13{}-131 Execution Language for Web middleware limitations, 127-130 Services motivation, 125-127 BPML, see Business Process Modeling problem, 133, 302 Language with Web services, 131 Broadvision, 111 interactions, 136, 164, 188, 295 browser as client, 99, 112 legal issues, 299 business action message, 235, 236, 238 Business to Consumer (B2C), 98, 305 business agreement, 190, 241, 281 BusinessAgreement CoordinatorPort• business arrangement, 241 Type, 232 business goals, see business objectives BusinessAgreement ParticipantPort• business intelligence, 104 Type, 232 business logic, 5, 79, 83, 139, 199, BusinessAgreement protocol, 230, 232 206, 213, 226, 230, 233, 245, 246, BusinessAgreement With Complete 248-251, 257, 271, 277, 279-281 CoordinatorPortType, 232 business management, 312 BusinessAgreement With Complete business metrics, 312 ParticipantPortType, 232 business objectives, 84, 234, 235, 312 BusinessAgreement WithComplete protocol, 230, 232 business operational view, 235 business procedures, see business C language, 35, 38, 41, 46, 78, 286 processes C2C, see Consumer to Consumer Business Process Execution Language C# language, 59, 248 for Web Services (BPEL), 138, cache, 229 141, 245, 248, 255, 257, 261, 266, Calculus of Concurrent Systems (CCS), 269, 271, 275, 281, 283-293, 296, 261 312 callback, 50, 63 relationship to DAML-S, 307 Cancel message, 233 Business Process Modeling Language Canon, 155 (BPML), 248, 271, 283 Carnegie Mellon University, 307 business process reengineering, 83 CCM, see CORBA Component Model business processes, 5, 69, 84, 90, 91, 93, CCS, see Calculus of Concurrent 126, 127, 226, 240, 241, 253, 312 Systems business profile Cedar, 35 in ebXML, 240 central coordination, 216, 219-222, 225 business protocols, see vertical pro• Central Processing Unit (CPU), 41 tocols, 137, 138, 140, 207, 239, CERN, see European Laboratory for 312 Particle Physics 336 Index certificate, 193 Internet Inter-ORB Protocol (HOP), certification services, 305, 308 see Internet Inter-ORB Protocol CGI, see Common Gateway Interface service selection and invocation, chaining 55-57 of coordinators, see coordinator, Communicating Sequential Processes chaining (CSP),261 Changengine, 271 compensate activity, 291, 292 ChangeOrder document, 239 Compensate message, 232, 233 CICS, see Customer Information and compensation, 242, 271-273, 292 Control Systems burden of implementing, 272 CIM, see Common Information Model handler, 291, 292 client stubs, 37-42, 48, 55, 56 logic, 226, 271, 272, 291 client/server, 5, 13, 14, 16, 17, 24, 26, mechanism, 226 41, 45, 68, 69, 95, 151, 296, 297 operation, 226, 227, 233 Close message, 232 protocol, 271-273 closed communities, 303-304 Complete message, 230, 232 code templates, 38 Completed message, 230, 233 Collaboration Partner Agreement completion nodes (CPA), 314 in workflows, 84 Collaboration Partner Agreement Completion protocol, 228, 230 (CPA), 241 CompletionCoordinatorPortType, 228, Collaboration Protocol Profile (CPP), 230 241 CompletionParticipantPortType, 228, COM object 229 as Web service, 185 Completion WithAck CoordinatorPort• COM+, see Component Object Model Type, 228 CommerceOne, 130,239 Completion WithAck ParticipantPort- commit, 213, 217, 226, 229, 230 Type, 228, 229 Commit message, 230 Completion WithAck protocol, 228 Committed message, 230 complex interaction, 198 common data representation, 57 Component Object Model (COM+), 54, Common Gateway Interface (CGI), 108 100-102, 108, 124 composite service, 141, 142, 245, overhead of, 102 247-252, 257, 258, 267, 268, 270, Common Information Model (CIM), 271, 274-276, 281, 283, 284, 288, 309, 317-319 289, 292, 293 Common Information Model using compensation, 292 XML (XMLCIM), 316-319 conversation, 252 Common Object Request Broker execution, 256, 266, 271, 293 Architecture (CORBA), 19, 22, specification, 251, 267 33, 43, 53-59, 105, 108, 110, 113, composition, see service composition 132, 137, 139, 147, 206, 225, 254, management, 311 270,309 protocol, 276 architecture, 54 schema, 249-251, 256, 257, 259, drawback of, 254 265-267, 276-282, 284, 292 Dynamic Invocation Interface (DII), composition data 56, 189 application specific, 264, 265 encapsulation, 57-58 control flow, 264 Index 337 composition engine, 250, 263, 265, 267, parallel, 204 271, 273, 280, 282-283, 289, 292, procurement example, 200-209 311 properties, see properties, conversa- composition execution, 251 tion Computer Associates Unicenter, 309 relationship to coordination protocol, condition 199, 200 branching, 279, 280 role, see role, in conversation deadlock, 260 role-specific view, see role-specific exception, 274 view join, 287 scope, 229 race, 266, 286 sequence diagram, see sequence runtime, 249 diagram, describing conversation switch,286 state, 200, 209 transition, 259, 287 state machine, see state machine, confidentiality, 127, 128, 132 describing conversation configurability, 309 conversation controller, 209-213, 225, configuration management, 309 243, 251, 252, 279, 282-283, 311 connection pooling, 107 relationship to protocol handler, 213 consistency conversation identifier, 211, 212, 214, in transactions, 47 225, 243 of interaction, 197 conversation routing, 209-212, 214, 216, constraints, 199, 245, 262, 263, 276, 284, 222 286 coordination, 197-244 in ebXML, 240 framework, 215 Consumer to Consumer (C2C), 304 middleware, 250-253 content transformation rules, 75 need in Web services, 198-199 context, see WS-Coordination, peer-to-peer, 225 coordination context, 198, 212 protocol, 245, 257, 276-282, 284, 293 execution, 11 scope, 221, 223 maintaining the, 14 coordination context, see WS• switch, 11, 14, 52 Coordination, coordination transactional, 48 context continuation strategy, 275 coordination protocol, 197-244 contract, 107, 172, 190 infrastructure, 209-215 ConTracts, 271 relationship to conversation, see control action, 309 conversation, relationship to control flow, 83, 88 coordination protocol control interfaces, 309, 313 relationship to UDDI, 205-206 conversation, 137, 140, 199-204, 246, relationship to WSDL, 205-206 248, 251, 252, 276, 281-284 role-specific view, see role-specific activity diagram, see activity view diagram, describing conversation coordination type, see WS• alternatives, 202, 204 Coordination, coordination between multiple parties, 200-204 type between two parties, 199-200 coordinator, 216-225 describing, see conversation, modeling chaining, 223, 224, 227, 228, 232 exceptions in, 202, 242 local, 225 management, 311 primary, see primary coordinator, 224 modeling, 199-204 proxy, see proxy coordinator 338 Index

transactions, 225 DARPA Agent Markup Language CORBA, see Common Object Request + Ontology Inference Layer Broker Architecture (DAML+OIL), 306, 307 CORBA Component Model (CCM), DARPA Agent Markup Language 108 Services (DAML-S), 307 CORBA object data collection interfaces, 309 as Web service, 185 data flow, 83, 266 core Web technologies, 93, 94, 97 data layer, 6 correctness data translation, 96 of interaction, 197 Database Management System correlation, 211, 243, 311 (DBMS),264 in vertical protocols, 212 databases transparent, 212 integrating two, 29 correlation set, 292 RPC interface to, 33, 186 correlator, 243 XML extensions, 186 cost of service, 138 DBMS, see Database Management CPA, see Collaboration Partner System Agreement, 241 DCE, see Distributed Computing CPP, see Collaboration Protocol Profile Environment CPU , see Central Processing Unit DCOM, see Distributed Component CreateCoordinationContextRequest Object Model message, 218, 224, 229 deadlines, 88 decryption, 193 CreateCoordinationContextResponse Defense Advanced Research Projects message, 218 Agency (DARPA), 307 Crew, 271 deletLbinding operation, 180 CRM, see Customer Relationship delete_business operation, 180 Management delete_service operation, 180 cross-enterprise, 130, 208, 310, 317, 318 delete_subscription operation, 180 management, 312-315 delete_tModeloperation, 180 CSP, see Communicating Sequential dependencies, 266, 276-283 Processes deserializing, 38, 42 Customer Information and Control design-time discovery, 178, 190, 205, Systems (CICS), 45, 46, 48 206, 251, 296 Customer Relationship Management Desktop Management Task Force (CRM), 69, 72 (DMTF), 309, 316, 317, 320 cXML,174 digital signature, 236, 238 DIl, see Common Object Request DAML, see DARPA Agent Markup Broker Architecture, Dynamic Language Invocation Interface DAML+OIL, see DARPA Agent DIME, see Direct Internet Message Markup Language + Ontology Encapsulation Inference Layer Direct Internet Message Encapsulation DAML-S, see DARPA Agent Markup (DIME),165 Language Services directory service, see name and DARPA, see Defense Advanced directory services, see Universal Research Projects Agency Description, Discovery and DARPA Agent Markup Language Integration (DAML),307 discard_authToken operation, 180 Index 339 discovery, 306 EDIFACT, see Electronic Data In• Diskette Operating System (DOS), 41 terchange For Administration, dispatching, 191, 209, 210, 251, 252 Commerce and Transport Distributed Component Object Model EJB, see Enterprise Java Beans, 210, (DCOM),54 211 Distributed Computing Environment Electronic Business using eXtensible (DCE),43-45 Markup Language (ebXML), 214, Cell directory service, 44 240-242, 281, 312 Distributed file service, 44 Electronic Components (EC), 234 Security service, 44 Electronic Data Interchange (EDI), 164, Thread service, 44 174, 189, 207, 239, 240 Time service, 44 Electronic Data Interchange For distributed coordination, 216, 222-225 Administration, Commerce and distributed information systems, 3-27, Transport (EDIFACT), 115-118, 36, 48, 50, 59, 60 130, 189 architecture, 9-22 Encina, 248 communication in, 22-26 encoding rules, see Simple Object design, 4-9 Access Protocol, encoding, see DMTF, see Desktop Management Task XML encoding, 158, 159, 169 Force encryption, 193, 235, 238 DNS, see Domain Name System SOAP message, 193 Document Type Definitions (DTD), endpoint, see Web Services Definition 118, 119 Language, port Domain Name System (DNS), 133 reference, 191, 284, 289 reference properties, 191 domain protocols, see vertical protocols Enterprise Application Integration DOS, see Diskette Operating System (EAI) , 67, 123, 125, 126, 129, DTD, see Document Type Definitions, 134-135, 143, 227, 245, 252-254, 236 299 dumb terminals, 10-12 as evolutionary technology, 295 durability, 47, 226 conventional middleware and, 68-71 dynamic attributes, 313 interactions, 129 dynamic binding, 35, 39, 40, 53, 136, middleware, 127, 130 139, 154, 155, 175, 178, 179, 186, relationship to closed communities, 189-191, 205, 248, 256, 267-269, 303-304 304 Enterprise application management, see dynamic operation selection, 267, 269, application management, 309 270 Enterprise Java Beans (EJB), 106-109 as Web service, 185, 211 e-commerce storefront example, 97 binding to, 107 EAI, see Enterprise Application container, 107 Integration entity, 106 eBay, 305 message driven, 107 ebXML, see Electronic Business using session, 106 eXtensible Markup Language, 298 stateful, 106 ebXML registry, 240 stateless, 106 EC, see Electronic Components Enterprise Resource Planning (ERP), ECA, see Event-Condition-Action 72 EDI, see Electronic Data Interchange ERP, see Enterprise Resource Planning 340 Index

Ethernet, 94 dealing with, 15, 31, 64, 114, 190 European Laboratory for Particle handling, 87 Physics (CERN), 94, 95 managing system, 62 event nodes recovering from, 47 in workflows, 88 resilient, 309 event notification, 25 resume after, 30 Event-Condition-Action (ECA) robust to, 62, 64 paradigm, 263 robustness to, 52 rules, 88, 275 short lived, 65 events, 25, 88, 259, 262, 263, 275, 286 support, 88 handler, 291 temporary, 65 ExactlyOne operator, 194 fat clients, 13 exception handling, 256 fault handler, 290--292 exceptional situations Fault management, Configuration managing, 65 management, Accounting, Perfor• exceptions mance management, and Security dealing with, 15 management (FCAPS), 309 handling, 88, 89, 91, 259, 263, fault tolerance, 21, 24, 25 273-276, 290, 291 in 2PC, 49 flow-based, 273-274 Faulted message, 230, 233 rule-based, 275-276 FCAPS, see Fault management, Config• try-catch-throw, 274-275 uration management, Accounting, in coordination protocols, 242 Performance management, and languages for handling, 88 Security management Exited message, 230 FDDI, see Fiber Distributed Data Exotica, 271 Interface Extensible Markup Language (XML), Fiber Distributed Data Interface 33, 110, 115, 118-119, 124, 125, (FDDI),94 131, 137, 148, 152, 156, 248, 265, File Transfer Protocol (FTP), 94, 115, 295 316 binary data, 165, 188-189 find_binding operation, 179 blob, 165 find_business operation, 179 data type, 265 find_service operation, 179 document, 254, 265, 284 find_tModeloperation, 179 messages, 256, 264 FioranoMQ,64 query language, 288 firewall, 96, 113-115, 152, 155 schema, 265 tunneling, 114-115, 152, 189 element, 288 flow chart model, 204 type, 288 flow graphs, 84, 85, 87 validation, 118 Forget message, 232, 233 Extensible Markup Language Schema forward recovery, 88 (XML Schema), 118, 137, 156, forwarding agent, see proxy 159, 167-169, 302, 307 FTP, see File Transfer Protocol external architecture, 142-144, 146, functional service view, 236 148, 149 external middleware, 142, 144, 146, 149 gateway, 96 General Inter-ORB Protocol (GlOP), factory, 210 58, 113-115, 131,297 failures generic activities, see abstract activities Index 341

get-authToken operation, 180 POST,95 get-bindingDetail operation, 179 PUT,95 get-businessDetail operation, 179 request method, 95 get-serviceDetail operation, 179 server, 95 get-subscriptionResults operation, 180 stateless, 94, 97 get-subscriptions operation, 180 Version 1.1, 95 geUModelDetail operation, 179 HyperText Transfer Protocol over get-transferToken operation, 180 Secure Sockets Layer (HTTPS), GGF, see Global Grid Forum 96, 97, 109, 180, 193 GlOP, see General Inter-ORB Protocol Global Grid Forum (GGF), 316, 317, IBM, 83, 155, 165, 174, 194, 215, 225, 319,320 283 Gopher, 94 IBM WebSphere, 104 Graphical User Interface (GUI), 94, IDL, see Interface Definition Language 262,293 HOP, see Internet Inter-ORB Protocol green pages, 175 HS, see Microsoft Internet Information Grid services, 317, 319 Server guaranteed delivery, 209 implementation framework view, 236 GUI, see Graphical User Interface in-memory state change, 229, 230 information dissemination, 25 homogeneous components, 135 information hiding, 206 horizontal protocols, 207-209, 211, information model, 309 213-215, 217, 234, 239, 242 inheritance, 53, 55 relationship to vertical protocols, 208 instrumentation, 310 HP,309 instrumentation interfaces, 309, 313 HP OpenView, 309 Intalio, 242 HP-UX,70 inter-enterprise application integration, HTML, see HyperText Markup 93, 114 Language interaction HTML filter, 20 consistency, see consistency, of HTTP, see HyperText Transfer Protocol interaction HTTPS, see HyperText Transfer correctness, see correctness, of Protocol over Secure Sockets interaction Layer interaction style, 158, 168, 169, 171 hub and spoke, 71 interface binding, 56 HyperText Markup Language (HTML), Interface Definition Language (IDL), 32, 94, 95, 97, 99, 101, 102, 109, 110, 35, 36, 55-58, 115, 116, 151-154, 115, 144 166, 167, 170, 172, 206, 255, 297 HyperText Transfer Protocol (HTTP), compiler, 32, 37, 38, 55, 58 33, 94-96, 99, 100, 102, 103, CORBA, 54, 55 109-111, 115, 125, 131, 137, 139, mapping from, 58 152, 155, 156, 161-164, 169, 170, standard, 70 180, 186, 238, 256, 297 interface repository, 56 client, 95 intermediate representation, 41 cookie, 97 internal architecture, 141, 143, 144, 149 DELETE,95 internal middleware, 141, 144, 149 GET,95 Internet Inter-ORB Protocol (HOP), limitations, 96-97 58, 110, 113-115, 131, 297 OPTIONS, 95 Internet Protocol (IP), 94 342 Index intra-enterprise application integration, load balancing, 19, 39, 50, 52, 74, 89, 93 96, 114 Inventory Management cluster, 238 Local Area Networks (LAN), 16, 26, 29, IP, see Internet Protocol 113, 119 isolation residing on the same, 29 in transactions, 47, 226 location independence, 58 IT infrastructure, 295, 299 location transparency, 53 locking, 50, 208, 226, 230 J2CA, see J2EE Connector Architecture logging, 19, 33, 49 J2EE, see Java 2 Enterprise Edition long-running transaction, 226, 227, 230 J2EE Connector Architecture (J2CA), loosely-coupled, 9, 81 107 loosely-coupled applications, 152, 156 Java, 248, 274, 275, 286 loosely-coupled architecture, 92, 164 Java 2 Enterprise Edition (J2EE), 54, loosely-coupled interaction, 155 93, 103-107, 109 Lycos, 147 Java Database Connectivity (JDBC) , 18, 103, 107 mainframe, 10, 12, 14, 18, 21, 26, 41, Java Management eXtensions (JMX), 45, 50, 67, 68 309 managed application, 309 Java Message Service (JMS), 63, 64, 72, management, 308-320 76, 79, 106, 107 cross-enterprise, see cross-enterprise, Java Naming and Directory Interface management (JNDI) , 106, 107 in conventional middleware, 309 Java Open Reliable Asynchronous in Web services, 309-312 Messaging (JORAM), 64 of relationships, 310 (JVM), 99 outsourcing, 316 JavaServer Pages (JSP), 102, 109, 111 remote, see management, outsourcing JBossMQ,64 standards, 309, 315, 317-320 JDBC, see Java Database Connectivity through Web services, 316-317 JMS, see Java Message Service Management Information Base (MIB), JMX, see Java Management Extensions 309 JNDI, see Java Naming and Directory Management Service Provider (MSP) , Interface 316 join condition, 287 management system, 309, 315 JORAM, see Java Open Reliable Manufacturing cluster, 238 Asynchronous Messaging market makers, 305, 308 JSP, see JavaServer Pages Marketing Information Management JVM, see Java Virtual Machine cluster, 238 markup languages, 110, 118 lack of trust, 127-129, 132, 208, 313, marshaling, 37,41 315 mediation, 315 LAN, see Local Area Network megamodules, 87 layers, 4-6 megaprogramming, 87 legacy systems, 7-12, 50, 132 message authentication, 129 libraries, 32, 36 message brokers, 24, 33-35, 42, 43, link semantics, 287 71-83, 90, 105, 127, 128, 144 Linux,70 a critical view of, 81-82 literal encoding, 160, 169 distributed administration of, 77 Little-JIL, 262, 275 EAI with a, 77-81 Index 343

historical background, 71-72 standardize the interfaces between, need for, 72-73 19 message dispatching, see dispatching support provided by the, 19 message encryption, 129 too much, 20, 34, 188 message order module, 242 types of, 33--34 message queues, 62-63 vendor, 83 message-based interaction, 60, 75 middleware protocols, see horizontal message-based interoperability, 60-61 protocols, 132, 208 Message-Oriented Middleware (MOM), MIME, see Multi-Purpose Internet Mail 34, 42, 45, 59-65, 71-74, 77, 78, Extensions 89, 165 MOM, see Message-Oriented Middle- extending, 73--75 ware historical background, 59--60 monitoring, 50, 309, 311 messages, 24 MQSeries Workflow, 266 forwarding, 223 MSP, see Management Service Provider header, 210 MTS, see Microsoft Transaction Server messages body, 63 multi-party conversation, see conver- messages header, 63 sation, between multiple parties, meta-protocols, 140, 142, 214, 225 201 meta-specification, 215 Multi-Purpose Internet Mail Extensions MIB, see Management Information (MIME), 95, 238, 265 Base Multi-purpose Internet Mail Extensions Microsoft, 155, 165, 174,215,225,283 (MIME), 94 Microsoft .NET, 54, 66, 103-105 multi-threading, 33, 44 Microsoft BizTalk, 83, 174 multi-tier architectures, 19--21, 35, 45, Microsoft Internet Information Server 87,308 (lIS), 111 Microsoft MSMQ, 60 Microsoft Transaction Server (MTS), 46 N-tier architectures, see multi-tier middleware, 17, 29-69 architectures abstractions, 30-32 name and directory servers, 39, 44, 50 adding tiers, 188 name and directory services, see application integration and, 68 Universal Description, Discovery centralized, 226 and Integration, 32, 35, 56, 65, conventional, 29, 295 131, 139, 142, 145, 151, 153, 174, convergence, 34-35 297,304 distribute the, 19 Naming service evolutionary technology, 295 in CORBA, 56 heterogeneity, 188, 215 NASSL, see Network Accessible Service implemented in the, 21 Specification Language infrastructure, 18, 27, 32-33, 68 negotiation, 203 layer, 18, 26 Netscape, 96 platform extension, 299 Netscape Enterprise Server, 111 platforms, 21, 26, 29--36, 44, 46, 54, Network Accessible Service Specification 58, 59, 69, 81, 91 Language (NASSL), 165 properties, see properties, middleware Nokia, 307 publish/subscribe, see pub- non blocking calls, 22, 24-26, 42, 63 lish/subscribe non-repudiation, 238 simplicity, 188 notification, 168 344 Index

OASIS, see Organization for the orchestration, 256-264, 269-271, 274, Advancement of Structured 275, 284-288, 290 Information Standards Orchestration nets, 260 object brokers, 33-35, 53-59, 62, 81 orchestration schema, see orchestration historical background, 53-54 Order document, 240 object lifecycle management, 53, 54 order management, 239 Object Management Group (OMG), 33, Order Management cluster, 237 53,54,56 ordering constraint, 203, 204, 239, 242, object monitors, 34, 35, 42, 58-59 245, 262, 284, 286 Object Request Broker (ORB), 113 OrderResponse document, 240 Object Transaction Manager (OTM), Organization for the Advancement of 225 Structured Information Standards Object Transactional Services (OTS), (OASIS), 133, 174, 184,240,283, 59, 225 316, 317, 320 object-oriented OSF, see Open Software Foundation applications, 53 OTM, see Object Transaction Manager concepts, 55 outcome notification protocol, 217 interfaces, 34, 35 OutcomeNotification CoordinatorPort- languages, 33, 34 Type, 228 model, 53, 57 OutcomeNotification P articipantPort- ODBC, see Open Database Connectiv• Type, 228, 229 ity OutcomeNotification protocol, 228 office automation, 82 output transition, 200 OGSI, see Open Grid Services outsourcing, 317 Infrastructure OWL, see Ontology Web Language OLTP, see On-Line Transaction OWL-DL,307 Processing OWL-Full,307 OMG, see Object Management Group OWL-Lite, 307 OMI, see Open Management Interface On-Line Transaction Processing P2P, see peer to peer (OLTP),75 participant, 216-225 one-way, 156, 168, 258, 274, 285 Partner Interface Processes (PIP), 234, Ontology Web Language (OWL), 307 238 open communities, 300-301, 304-305 blueprint, 235, 236 Open Database Connectivity (ODBC), business process flow diagram, 236 18, 103 directory, 234 Open Grid Services Infrastructure partner role, 236 (OGSI), 316, 317, 319 properties, 234 Open Group, 48 specification, 234-238 Open Management Interface (OMI), Partner Product and Service Review 316, 317, 319 cluster, 237 Open Software Foundation (OSF), 43 partner type, 235 operation, see Web Services Definition PCs, see Personal Computers Language, operation, 200 PDA, see Personal Digital Assistant ordered execution, see conversation, peer-to-peer (P2P), 132, 133, 139, 140, 198, 199, 201, 203 142, 145, 147, 148, 182, 222, 225, sequence of, 198, 206 227, 281, 298 Oracle 9i AS, 105 performance, 4, 7, 11, 15, 17, 19, 22-24, ORB, see Object Request Broker 34-36, 39, 46, 49, 50, 52, 63, 75, Index 345

91, 102, 107, 108, 111, 165, 188, Price and Availability Request 190, 229, 31D-313 document, 237 performance management, 89 Price and Availability Response persistence, 19, 31, 53, 54 document, 237 Personal Computers (PCs), 12, 68 primary coordinator, 224, 227 Personal Digital Assistant (PDA), 110 private registry, see Universal Descrip• personalization, 111 tion, Discovery and Integration, Petri nets, 85, 256, 26D-261 private registry PhaseZero message, 230 procedure call, see Remote Procedure PhaseZero protocol, 228, 230 Call PhaseZeroComplete message, 230 RPC primitive, 38 PhaseZeroCoordinatorPortType, 228 procedure call using broadcast, 39 PhaseZeroParticipantPortType, 228, procedure registration, 38 229 process 7r-calculus, 256, 261-262 definition, 256, 267, 284 PIP, see Partner Interface Processes instance, 256 pipeline architecture, 192 skeleton, 279 policy, see WS-Policy, 311, 314 Process Price and Availability Request domain specific, 194 activity, 237 policy assertion, 193 procurement scenario, 125 Product Information cluster, 237 alternatives, 194 production workflows, 83 grouping, 194 programming abstractions, 32-34 mutually exclusive, 194 programming interface, 32 set of, 194 properties policy framework, 193, 194 conversation, 212, 213 policy subject, 194 middleware, 208, 215 polymorphism, 53, 55 transaction, see Atomicity Consis• polytransactions, 271 tency Isolation Durability port, see Web Services Definition protocol binding, see Simple Object Language, port, 216, 217, 221 Access Protocol, protocol binding, port type, see Web Services Definition see Web Services Definition Language, port type Language, protocol binding, 186, preamble, 238 235 preferences, 193 protocol compliance, see protocol Prepare message, 230 verification, 251, 282 prepare to commit, 48, 49, 213, 228 protocol constraint, 276 Prepared message, 230 protocol handler, 212-214 presentation layer, 4, 97, 103, 105, for horizontal protocols, 212 108-111 relationship to conversation con• in I-tier architectures, 1D-12 troller, see conversation controller, in 2-tier architectures, 12-16 relationship to protocol handler in 3-tier architectures, 16-19 protocol infrastructure diagram, 207 in bottom-up design, 7-9 protocol language, 212, 215 in multi-tier architectures, 19-21 protocol stack, 139 in top-down design, 6-7 protocol verification, 209, 212, 214, 216, presumed abort, 49 222, 225 presumed commit, 49 protocols presumed nothing, 49 classification, 207-209 346 Index proxy, 37, 55, 96, 153, 163 Remote Procedure Call (RPC), 13, 18, proxy coordinator, 223, 224, 227 24, 30-46, 152, 154, 156, 158, 159, public process, see process skeleton 161-164, 186, 197, 208, 248, 254, public registry, see Universal Descrip- 256, 297, 298 tion, Discovery and Integration, abstractions, 30, 32 public registry asynchronous, 25, 33, 34, 42, 43, 60 publish/subscribe, 25, 75-77 binding in, 39-40 publishers, 75, 77 calls, 33 pull, 86 client, 32 purchase order, 69, 70, 72, 76, 84, 106, communication handler, 42 113, 117, 168, 189, 191, 198, 235 extensions to, 42-43, 47 push,86 heterogeneity and, 41-42 historical background, 35-36 QoS, see Quality of Service interaction, 32 Quality of Service (QoS), 138 interface, 33, 38 queues, see message queues, see limitations of, 72 transactional queues, 24, 26, 34, properties, 158 60, 62-65, 71, 73-75, 77, 86, 87, RPC systems, 33, 71, 92 90, 164, 165, 189 stubs, 38 persistent, 34, 60 transactional, 31, 42, 46-49, 89, 208 queuing systems, 33, 34, 42, 43, 46, 50, replication, 19, 50, 52 60,72 Request Price and Availability activity, 237 rating services, 304-305, 308 Request Price and Availability PIP, 237 RDF, see Resource Description request-response, 168, 201 Framework resource adapter, 107 RDFS, see Resource Description resource assignment, 87 Framework Schema resource binding, 89 ready to commit, 49 resource broker, 89 receiving agent, see gateway Resource Description Framework recovery, 45, 50 (RDF), 306, 307 procedures, 30, 31 Resource Description Framework Register message, 219 Schema (RDFS), 306, 307 RegistrationCoordinatorPort Type, resource management layer, 68, 69, 103 218-221, 223, 224 in I-tier architectures, 10-12 Registration CoordinatorPort Type port in 2-tier architectures, 12-16 type, 222 in 3-tier architectures, 16-19 RegistrationRequestorP ortType, 218-220 in bottom-up design, 7-9 registry, see Universal Description, in multi-tier architectures, 19-21 Discovery and Integration in top-down design, 6-7 relay point, see tunnel resource managers, 68, 107, 111, 112, reliability, 36, 46, 208, 213, 225, 234 114 reliable message delivery, 213 resource naming, 89 reliable messaging, 192, 238 resource rules, 89 reliable messaging module, 241 resource selection, 86, 89 remote client support, 97-102 resources remote management, 317 in workflows, 86, 88-90 Remote Method Invocation (RMI), 110, response time, 311 114 RFC0318, see telnet protocol Index 347

RFC0524, see Simple Mail Transport routing conditions, 85, 87 Protocol routing logic, 73-75, 77 RFC0959, see File Transfer Protocol routing nodes RFC2068, see HyperText Transfer in workflows, 84, 86, 87 Protocol routing rules, 74 RFC2616, see HTTP Version 1.1 RPC, see Remote Procedure Call RMI, see Remote Method Invocation run-time binding, see dynamic binding, RNIF, see RosettaNet Implementation 205, 206 Framework role S/MIME, see Secure Multi-purpose in conversation, 202-204, 216 Internet Mail Extensions in coordination, 205, 206, 214, 215, sagas, 226, 271 217,223 rollback, 271 in ebXML, 241 SAP, 242, 283 in RosettaNet, 235-237 save_binding operation, 179 in transaction, 228 save_business operation, 179 in xCBL, 239 save_service operation, 179 role-based diagram, 236 save_subscriptions operation, 180 role-specific view, 206, 242 save_tModeloperation, 179 rollback, 47, 64, 65, 87, 226, 229, 271 schema definition language, see RosettaNet, 138, 207, 234-240, 270, Extensible Markup Language 298, 301, 302, 312 Schema business action message, see business SCL, see SOAP Contract Language action message screen scraping, 11 business dictionary, 234-236 SDL, see Service Description Language business modeling, 235 Secure Multi-Purpose Internet Mail business process, 234 Extensions (S/MIME), 238 business signal message, see business Secure SHell (SSH), 115 signal message Secure Sockets Layer (SSL), 96, 97, 236 clusters, 237 secure transport, 236 data format, 234 security, 96, 105, 107, 108, 110, 111, dictionary, 234 157, 192, 213, 234, 238, 313 goals, 234-235 application-level, 193 message guideline document, 235 end-to-end, 193 messaging services, 234 hop-by-hop, 193 partner role, see role, in RosettaNet security constraints, 110 PIP, see Partner Interface Processes security mechanism, 96 PIP blueprint, see Partner Interface Semantic Web, 306-308 Processes, blueprint obstacle, 308 PIP classification, 237 semantics, 156, 172, 174, 191,207,226, relationship to DAML, 308 230, 239 relationship to SOAP, 239 Semiconductor Manufacturing (SM), segments, 237 234 services, 236 sequence diagram technical dictionary, 234, 235 describing conversation, 203-204 RosettaNet Implementation Framework serializing, 37, 41, 288 (RNIF), 234, 235, 238-239 server stubs, see skeletons, 37-41, 48 RosettaNet Support cluster, 237 Service and Support cluster, 238 routing, 71, 72 service composition, 199, 297 348 Index

basics of, 246-252 encoding, 159, 160, 169 dependencies, 276-283 envelope, 157 middleware, 245, 248, 269, 273, 293, extensions, 300 294 addressing, see WS-Addressing conversation integration, 284 coordination, 225 elements of, 249-250 routing, see WS-Routing limitations, 253-254 security, see WS-Security opportunities, 254-255 goals, 155 versus coordination, 250-253 header, 157, 214, 216, 221, 223, 229, models, 256-276 230 success for, 252-255 header block, 157, 191, 192 Service Description Language (SDL), implementation, 163-164 165 interaction style, see interaction style service layer, 236 intermediary, 157, 158, 161, 192 Service Level Agreement (SLA), 314 messages, 157, 217, 230 Service Level Agreement (SLA), 312, nodes, 157, 160-162, 192 315 path, see WS-Routing, 160, 162, 192 Service Level Management (SLM), 312 processing, 156, 160-161, 192 service management, 208, 309 processing roles, 160 service registry, see Universal Descrip• mustUnderstand, 161 tion, Discovery and Integration, next, 160, 161 146, 147 none, 160, 161 servlet, 102 ultimateReceiver, see Simple Object Short Message Service (SMS), 86 Access Protocol, ultimate receiver, short-duration transaction, 227 160, 161 Siebel,283 properties, 192 signatures, 35, 37-40 protocol binding, see Web Services Simple Mail Transfer Protocol (SMTP), Definition Language, protocol 94, 110, 114, 115, 152, 156, 161, binding, 155, 156, 161-162, 171, 162, 169, 238 191 Simple Network Management Protocol relationship to WSDL, see Web (SNMP), 309, 314 Services Definition Language, Simple Object Access Protocol (SOAP), relationship to SOAP 33, 110, 115, 125, 140, 151, 152, routing, see WS-Routing, 162 155-165, 180, 211, 248, 254, 256, RPC-style interaction, see Web 264, 265, 282, 293, 295-298, 301, Services Definition Language, 303, 308, 312 RPC-style operation, 152, 156, addressing, see WS-Addressing, 162 158, 160, 164, 169, 171 asynchronous interaction, see structure, 157 asynchronous interaction transport protocol, see Simple Object attachements, 241 Access Protocol, protocol binding binary data, 165 ultimate receiver, 157 body, 157 wrappers, 171 body block, 157 XML encoding, 155 content, 157 skeleton generation, see stub generation, document-style interaction, see Web 206 Services Definition Language, skeletons, 55, 57, 58, 173 document-style operation, 158, SLA, see Service Level Agreement 164, 169, 188 SLM, see Service Level Management Index 349

SM, see Semiconductor Manufacturing supply chain partners, 234 SMS, see Short Message Service supply chain scenario, 125 SMTP, see Simple Mail Transport SWIFT, see Society for Worldwide Protocol Interbank Financial Transactions SNMP, see Simple Network Manage• swimlane, 236 ment Protocol synchronous interaction, 22-24, 34, 42, SOAP, see Simple Object Access 168,235 Protocol synchronous message, 156 SOAP Contract Language (SCL), 165 synchronous operation, 172, 204 SOAP router, 163, 186, 187, 211, 311 Society for Worldwide Interbank TCP, see Transmission Control Protocol Financial Transactions (SWIFT), TCP lIP, 94, 152, 154 164, 174 technical model, see Universal Descrip• sockets, 31 tion, Discovery and Integration, Solaris, 70 tModel solicit-response, 168, 201 telnet protocol, 94 specifications, see Web service thin clients, 13 specifications third-Generation Language (3GL), 87 SQL, see Structured Query Language thresholds, 312 SRI International, 307 Tibco ActiveEnterprise, 72 SSH, see Secure SHell Tibco BPM, 83 SSL, see Secure Sockets Layer tiers, 3, 9-22, 39, 68 standardization, 132-134 tightly-coupled, 6, 39, 81, 189 standards proliferation, 187-188 , 307 time constraint, 243 start nodes timeout, 273, 275, 333 in workflows, 84 Tivoli,309 state machine tModel, see Universal Description, describing conversation, 200, 203 Discovery and Integration, tModel statecharts, 256, 259-260 top-down design, 6-7 stateful bean, 106 total cost of ownership, 108 stateless bean, 106 TP monitor, see Transaction Processing static attributes, 313 monitor static binding, 39, 40, 139, 155, 186, TP-heavy, 18, 22, 33 256, 267, 268, 289 TP-lite, 22, 33, 46 stored procedures, 18, 36, 46, 164 tracking, 192 as Web service, 185-187 Trader service WSDL,173 in ANSA Testbench, 35 Structured Query Language (SQL), in CORBA, 56, 57 106, 107, 181 traders, 40 stub compiler, 172, 173 trading partner, 234, 237, 241 stub generation, 136, 153, 172, 186 trading partner relationship, 234, 240 stubs, 37, 38, 40-42, 48, 55, 57, 163, transaction broker, 147 173, 186 transaction context, see WS- client, see client stubs Coordination, coordination server, see server stubs, see skeletons context, 158, 229, 230 Sun, 155, 242 transaction layer, 236 Sun One, 105 transaction management, 47, 48, 147 supply chain, 234, 235, 238 transaction managers, 48-50, 52 350 Index

Transaction Processing monitor (TP see Web Services Definition monitor), 18, 33-35, 43, 45-52, 81, Language, protocol binding, 32, 105, 108, 147, 197, 248 33,39, 152 architecture, 51-52 triggerable rule, 263 communication manager, 52 trouble ticket management, 317 functionality, 50 trust, see lack of trust historical background, 45-46 trust domain, 208, 227 integrate databases with, 68 trusted third party, 315 interface, 51 try-catch-throw, 88, 274-275, 290, 291 program flow, 51 tunnel, 96, 114-115 router, 51 tunneling, see firewall, tunneling services, 52 Tuxedo, see BEA Tuxedo transaction manager, 52 two-phase commit (2PC), 48, 49, 52, workflows and, 89 129, 132, 140, 197, 208, 212, 213, wrappers, 52 216, 217, 226, 228-230, 243, 270, transactional file system, 50 271 transactional queues, 64-65 master, 216 Transactional RPC, see Remote slave, 216 Procedure Call, transactional, see two-way, 156 Transaction Processing monitors Transactional-C, 46, 248 UDDI, see Universal Description, Transactional-C++, 248 Discovery and Integration transactions, 33, 45, 47-49, 157, 158, UDDI Search Markup Language 192, 197, 203, 207-209, 212, 213, (USML),182 217, 225-230, 242 ultimate receiver, see Simple Object centralized coordination, 227 Access Protocol, ultimate receiever compensation, see compensation UML, see Unified Modeling Language in databases, 226 UNjCEFACT,240 long-running, see long-running Unified Modeling Language (UML), transaction, see WS-Transaction, 257, 259, 262 business activity activity diagrams, 84 operational model, 226 Uniform Resource Identifier (URI), 95, outcome, 229 124, 137, 148, 153, 186, 190, 191, outcome notification, see outcome 229, 267-269 notification protocol Uniform Resource Locator (URL), 95, peer-to-peer coordination, 227 96, 100-102, 124, 162, 259, 265, resource, 226 267 resource model, 226 unique identifier, 210, 216, 222, 243 scope, 230 Universal Business Registry (UBR), short-duration, see short-duration 175, 184 transaction universal client, 98 transfeLcustody operation, 180 Universal Description, Discovery and transfeLentities operation, 180 Integration (UDDI), 124, 125, 138, transition, 259, 260, 287 139, 151, 153, 174-185, 189-191, condition, 287 213, 240, 255, 269, 293, 295, 296 Transmission Control Protocol (TCP), API, 154, 174, 179-181 94, 95, 204 attaching policy, 194 transport protocols, see Simple Object authentication, 180 Access Protocol, protocol binding, binding information, 175, 176 Index 351

binding Template, see Universal versions, 296 Description, Discovery and wsdlSpec, 182, 183 Integration, binding information, UNIX, 41 205 unmarshaling, 38, 42 business information, 175 URB, see Universal Business Registry businessEntity, see Universal Descrip• URI, see Uniform Resource Identifier tion, Discovery and Integration, URL, see Uniform Resource Locator business information UsernameToken, 193 businessService, see Universal USML, see UDDI Search Markup Description, Discovery and Language Integration, service information consistency, 184 vertical protocols, 207-209, 211, 212, current usage, 301 234, 239, 242 custody transfer API, 180, 181 relationship to horizontal proto• directories, 296 cols, see horizontal protocols, distributed discovery, 182 relationship to vertical protocols fault tolerance, 190 vertical standards, 138, 302, 304, 305 inquiry API, 179, 181 visibility, 313-315 inter-registry interaction, 180-182, Vitria BusinessWare, 83 184 vocabulary, 234 load balancing, 190 overviewDoc, 177, 179, 182, 183, 187 W3C, see World Wide Web Consortium, private registry, 175, 184, 303 155 public registry, 175, 184 WalMart, 130 publishing, 182-183, 186 WAMO,271 publishing API, 179 WAN, see Wide Area Networks query, see Universal Description, WAP, see Wireless Application Protocol Discovery and Integration, search Web server as interface, 100 registry, 240, 241, 297, 300, 303, 304 Web services regulations, 184 access mechanism, 166 relationship to coordination proto• address, see Simple Object Access col, see coordination protocol, Protocol, addressing, see U niver• relationship to UDDI sal Description, Discovery and relationship to WSDL, 182-183 Integration, binding information, replication, 180 see Web Services Definition replication API, 180 Language, Web service address, search, see Universal Description, see WS-Addressing, 166 Discovery and Integration, inquiry advertising, see Universal Descrip• API, 181-182, 190 tion, Discovery and Integration, security API, 180 publishing semi-private registry, 184 architecture, 141-148, 151, 296-300 service information, 175, 176 facets of, 141-143 shared registry, 184 attaching policy, see WS- storing, see Universal Description, Policy Attachment, 194 Discovery and Integration, choreography, see Web Services publishing Choreography Interface subscription API, 180 classification, 175, 179 tModel, 176-179, 182, 183, 186, 187, communication, see Simple Object 190, 205, 206, 302 Access Protocol 352 Index

composition, see service composition, search, see Universal Description, 141 Discovery and Integration, search coordination, see WS-Coordination, security, see WS-Security 197-244 state, 313, 319 coordination protocols, 197-244 state of the art, 296--300 defined, 124-125 transactions, see WS-Transaction description, see Universal Descrip• vertical protocols, 207-209 tion, Discovery and Integration, Web Services Choreography Interface see Web Services Definition (WSCI), 242-243 Language, 136-138 Web Services Conversation Language discovery, see Universal Description, (WSCL), 138, 200 Discovery and Integration, Web Services Definition Language 138--139 (WSDL), 125, 137, 140, 151-153, distributed discovery, see Universal 165-174, 199, 200, 225, 227, Description, Discovery and 254-257, 284-286, 293, 295-298, Integration, distributed discovery 301, 303, 308, 313, 316 dynamic interaction, 30D-301 abstract part, 167-168, 171, 172, 195 endpoint, see endpoint, see Web attaching policy, 194 Services Definition Language, port competing vertical standards, events, 313 173-174 external architecture, 144-148 concrete part, 167, 169-171 external management architecture, document-style operation, see Simple Object Access Protocol, 313 document-style interaction, 169 for EAI, 299-300 endpoint, 169, 194 future, 300 Web Services Definition Language horizontal protocols, 207-209 (WSDL) interaction, see Web services, fault message, 290 communication, 139-141 future, 300 internal architecture, 143-144 generation, 173, 297 internal management architecture, interaction style, see interaction style 312 interface binding, 169 management, see management, message encoding, 169 308-320 message type, 288 measurements, 313 messages, 167, 168, 211, 286 policy, see WS-Policy operation, 167, 168, 201, 226 port, see Web Services Definition ordered operations, see Web Services Language, port Choreography Interface port type, see Web Services Definition part, 168 Language, port type port, 169 protocols, 197-244 port type, 167, 168, 228, 286, 289 classification, 207-209 port type extension, 168 publishing, see Universal Description, protocol binding, see Simple Object Discovery and Integration, Access Protocol, protocol binding, publishing 166--171, 174,194 registry, see Universal Description, relationship to coordination proto• Discovery and Integration, 199 col, see coordination protocol, revolutionary vs. evolutionary, 295 relationship to WSDL routing, see WS-Routing relationship to DAML-S, 307 Index 353

relationship to RDF, 308 in workflows, 84-89 relationship to SOAP, 171 Workflow Management Coalition relationship to UDDI, see Universal (WfM:C), 83, 254 Description, Discovery and Workflow Management Systems Integration, relationship to WSDL (WfM:S), 34, 82-91, 144, 199, 253, reuse, 171 272 RPC-style operation, see Simple API for, 253 Object Access Protocol, RPC-style benefits and limitations of , 90--91 interaction, 169 historical background, 82-83 service, 169 WorkFlow nets, 260 structure, 167-170 workflow process, 84 type system, 167 workflow systems, see Workflow Web service address, 166, 168, 169, Management Systems 171 workflows, 84, 245, 246, 248, 252-257, wrappers, 171 265, 266, 271, 281 Web Services Flow Language (WSFL), applications, 88, 90 248, 266, 269, 283, 286 as programming in the large, 87-89 Web Services Invocation Framework defined, 84-86 (WSIF), 194-195 design, 91 provider, 194, 195 engine, 86, 89 Web services specifications execution, 86-88 difficulties, 301-302 instance, 84, 86-89 domain specific, 187, 189 languages, 35, 83, 89, 91 generality, 187 models, 91 relationship between, 187-191 node, 88 Web technologies technology, 89 core, 93, 94, 97 variables, 85, 87, 89 WebLogic, see BEA WebLogic vendors, 83 WebLogic Integration, see BEA workstations, 12, 68 WebLogic World Wide Web (WWW), 95 WebMethods Enterprise, 60, 72 World Wide Web Consortium (W3C) , Webopedia, 125 95, 124, 125, 133, 148, 319, 320 WebRatio, 111 wrappers, 8, 26, 33, 52, 92, 134, 135, WebSphere, see IBM WebSphere 143, 144, 149, 253, 265 WebSphere MQ, see IBM WebSphere, WS-Addressing, 191, 257, 289 60,72,83 WS-Coordination, 140, 208, 215-225, WfM:C, see Workflow Management 298 Coalition activation, 216-220, 223-225 WfM:S, see Workflow Management central coordination, see central Systems coordination white pages, 175 components, 216-219 Wide Area Networks (WAN) coordination context, 216-218, integration across, 91, 92 220--225, 227, 229, 230, 232 Wireless Application Protocol (WAP) , coordination messages, 220 110 coordination type, 217, 218, 228-230, Wireless Markup Language (WML), 232 110 coordinator, see coordinator WML, see Wireless Markup Language distributed coordination, see work nodes distributed coordination 354 Index

goals, 215-216 WSDL compiler, 186, 187 operational messages, 220 WSFL, see Web Services Flow Language participant, see participant WSIF, see Web Services Invocation protocol-specific messages, 220 Framework registration, 216-220, 222-225 WWW, see World Wide Web relationship to WS-Transaction, see WS-Transaction, relationship to X.25,94 WS-Coordination X.509,70 sub-context, 223, 230 X/Open, 19, 48 WS-Policy, 193-194 XA transactions, 107 WS-PolicyAttachment, 194 xCBL, see XML Common Business WS-Routing, 192 Library, 239-240 WS-Security, 140, 192-193 XDR,41 WS-Transaction, 140, 208, 225-233, XL, 248, 265 243, 255-257, 270, 271 XLANG, 261, 271, 281, 283 atomic transaction, 217, 218, 227-230 XML, see Extensible Markup Language business activity, 227, 230-233 XML Common Business Library compensation, see compensation (xCBL), 207, 212, 240, 281 relationship to WS-Coordination, XML encoding, 165, 168, 171 227, 229 XML parser, 118 WSCI, see Web Services Choreography XMLCIM, see Common Information Interface Model (CIM) using XML WSCL, see Web Services Conversation XPath, 257, 288 Language WSDL, see Web Services Definition Yahoo, 147, 303 Language yellow pages, 175