MAKE THE SMART MOVE TOWARDS TOTAL BUSINESS INTEGRATION Chris Horak
Chris Horak
The Age of Web Services Software AG Corporate Headquarters
THE XML COMPANY
MAKE THE SMART MOVE TOWARDS TOTAL BUSINESS INTEGRATION DIV/42E0202 032
Uhlandstraße 12 64297 Darmstadt Germany Tel: +49-61 51-92-0 Fax: +49-61 51-92-11 91 www.softwareag.com
THE XML COMPANY
Make the Smart Move Towards Total Business Integration The Age of Web Services
By Chris Horak VP of Business Development and Chief Evangelist February 2002
Software AG Headquarters Uhlandstr. 12 64296 Darmstadt Germany Tel.: +49-61 51-92-0 Fax: +49-61 51-92-11 91 www.softwareag.com
First published in Germany in 2002 © Software AG 2002
All rights reserved; no parts of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means (electronic, mechanical, photocopying, recording, or otherwise) without the prior written permission of the Publishers, exept in the case of brief quotations embodied in articles or interviews. The authors and publishers have made every effort in the preparation of this book to ensure the accuracy of the information. However, the information in this book is provided without warranty, either expressed or implied.
Table of Contents
Make the Smart Move Towards Total Business Integration Introduction
7
Chapter 1 The Path to the Unbounded Enterprise 1.1 Unbounded Thinking 1.2 Unbounded Applications 1.3 Total Business Integration 1.4 Summary of Chapter 1
9 11 14 16 18
Chapter 2 The Age of Web Services 2.1 Demystifying Web Services 2.2 The Seven Cs of Web Services 2.2.1 Connectivity 2.2.2 Context 2.2.3 Content 2.2.4 Component 2.2.5 Company 2.2.6 Community 2.2.7 Commerce 2.2.8 Summary of the 7 Cs 2.3 Outlook: The Age of Web Services
20 22 29 30 31 32 33 34 36 37 38 39
Chapter 3 Web Services Technologies and Standards 3.1 Overview 3.2 WSDL, or How to Describe a Web Service 3.3 UDDI, or How to Register a Web Service 3.4 SOAP, or How to Invoke a Web Service 3.5 The Path to Web Services – A Pragmatic Approach
41 41 42 43 44 46
Chapter 4 Conclusion
49
Appendix A Some Ideas for Web Services Applications A-1 Customer Relationship Web Services A-2 Executive Information Web Services A-3 Shared Logistics Web Services A-4 Summary of Appendix A
51 51 53 54 55
Appendix B Web Services Frequently Asked Questions
57
Appendix C About Software AG
63
Make the Smart Move Towards Total Business Integration
6
Chapter 1 The Path to the Unbounded Enterprise
INTRODUCTION Total business integration. Business agility. The unbounded enterprise. A business without limits, in terms of either thinking or technology. A business that recognizes that profits come from managed processes and that change is constant and must be celebrated rather than avoided. A business using innovative technology to achieve its vision, mission, goals and objectives. A business that easily runs secure, reliable transactions with customers, partners and suppliers over the Internet. At the push of a button. At a reasonable cost. This is your dream company to run, work for and do business with. And then you wake up. Reality check. You have seen it all before: the buzzwords, the claims, the visions. New technologies promising breakthrough results and then making things even more complicated and expensive than before. Wave upon wave of hype, miracles promised and results undelivered, and IT costs spiraling out of control. Not a dream, but a nightmare. "The future, according to some scientists, will be exactly like the past, only far more expensive.” - John Sladek Do you agree? Maybe you are even smiling. So far, so good. But now, another paper about technology? Another set of claims? Another diatribe about transforming your business with technology? ”Oh no,” you may be thinking. ”Not now, not for me. Please, I don’t have time to read this! I have a business to run, problems to solve, products to develop, markets to conquer. These papers are not worth my time.” Right? Wrong, in our opinion. Business does not have to be this way!
7
Make the Smart Move Towards Total Business Integration
Software AG would like you to read this paper because we believe that it contains information that will help you make the right decisions to run your business, solve problems, develop products, and conquer new markets. ”The Age of Web Services” is the topic of this paper. It’s a paper for CEOs, not for technologists. A paper that explains the technologies that are available today, that can deliver the results. A paper for CEOs and other top managers that wish to know how to achieve the vision of an unbounded enterprise based on the use of innovative software technology called Web services. This paper shows you a path of how you can get from vision to reality in a simple process. Read this paper. Call us. We’d love to hear from you. Chris Horak, Vice President of Business Development and Chief Evangelist Software AG
8
Chapter 1 The Path to the Unbounded Enterprise
CHAPTER 1 THE PATH TO THE UNBOUNDED ENTERPRISE Over the past 50 years of information technology evolution, it has become clear that technology harbors the power of business transformation. We have achieved productivity in leaps and bounds by replacing filing systems with databases, paper spreadsheets with electronic spreadsheets, typewriters with word processing software and paper trails with electronic documents such as e-mail. This first phase of innovation has been all about data. The data sets comprising ABCs and 123s are now well under control. Yet, in many companies, the true assets of the enterprise – the business knowledge and the business processes that your company’s business depends on – are still buried beyond reach in data centers and proprietary applications. For some reason, all the technology has not been able to truly deliver the vision of the unbounded enterprise: an enterprise that is enabled by technology, not limited by technology. Why is that? The premier reason the unbounded enterprise is still an unrealized vision in many companies is not a lack of technology. The main factor preventing companies from realizing the full potential of Information Technology is a fundamental lack of understanding how to make best use of the existing systems and technologies to achieve business goals. There are many examples. Word processing systems offer hundreds of features that are not being used. Database management systems that need dozens of administrators to run and hundreds of developer hours to adapt to changing business needs. E-mail systems that do not increase the productivity of your employees, but bury them under a flood of irrelevant information. And then there is the Internet. The hype! The promises! And then the letdown and disillusionment. The Internet has been hailed as the most significant technology innovation of the past decade. Yet, everything the Internet delivers is just a reimplementation of previously existing ideas and puzzle pieces: from user interfaces to connectivity protocols, mail systems, and enterprise applications. The Internet has been about re-inventing the IT wheel based on open, standards-based technologies. However, the impact of the Internet on individuals and businesses alike has been more than stunning. How can 9
Make the Smart Move Towards Total Business Integration
something that is truly not more than the re-invention of existing ideas be so powerful? Here is why: The true power of the Internet lies in its openness, in its ability to dynamically adapt to the fluid demands of its worldwide user base. On the Internet, innovation is driven by users and communities, not by a single dominating entity, such as a central IT organization or a single vendor dominating the architecture. When you look carefully, the Internet is not about technology. It is just based on technology. In that way it is comparable to your business. Your business is also not about technology, but increasingly, it is based on technology. ”So?” You might say. ”What is the conclusion? What are you trying to tell me here?” The conclusion is that, in order to unleash the power of transformation in technology, your company has to acquire attributes of the Internet. In order to take full advantage of the Internet age, you have to stop looking at the Internet as something that is running between businesses, as a system that lives at the ”edge” of your business. You have to put the Internet ”inside” your business, and your business managers have to accept a number of facts that have helped the leading companies in the world to transform their business based on innovative, open technology based on standards, including: • • • • • • •
the the the the the the the
fact fact fact fact fact fact fact
that that that that that that that
the user drives the requirements, not the data center. interfaces have to be open and based on standards. business processes have to be fluid and adaptable. infrastructure has to be scalable to millions of users. specifications are out of date the minute they are written. true innovation is an incremental community process. change is a constant; the only constant in your business.
This is a huge challenge for most enterprises, whose thinking is bound by the systems that implement their business processes. Instead of asking, ”By when can we achieve this?” company managers are asking, ”Can our systems handle this?” So the first and foremost step towards the unbounded enterprise is unbounded thinking. This is what the next chapter is all about. 10
Chapter 1 The Path to the Unbounded Enterprise
1.1 UNBOUNDED THINKING Let’s begin with an experiment. Think about a business goal you would like to accomplish. Did technology play a role in it? If not, you are missing a key piece in the thought process of applying technology in today’s business environment. Many company leaders split their decision making process into two succinct pieces: the business goals and the technology needed to accomplish the business goals. This is a very dangerous path. If you do not include technology in the process of developing business plans from the start, you run the risk of ending up with a great business plan that is then stopped by the lack of implementation possible with the systems you have at hand. And if you think that simply by buying a new piece of technology you will be able to solve your business problems, you run the same risk. Every purchase of technology should be accompanied by a business vision from the start. This is the power of unbounded thinking. Here are some examples of unbounded thinking:
Bound Thinking We need to reach more customers to stimulate demand for our new product. Let’s do a marketing campaign.
Unbounded Thinking Let’s assume that we can combine the customer bases of our own database with those of our most important channel partners. Let’s leverage one message through all of our communication channels. Let’s assume we can combine the data into one demand creation system.
11
Make the Smart Move Towards Total Business Integration
Bound Thinking Our contracts are too complicated for our sales force. Let’s design a new, simpler contract template and send it to everyone.
Unbounded Thinking Let’s assume we can take the contract process online and let the users tell us what is missing. Let’s build a system that can be adapted to the various customer and employee types. Let’s assume that we can integrate this with our existing contracts database.
Bound Thinking We are spending too much money on raw materials and components. Let’s find a new supplier.
Unbounded Thinking Let’s assume that we can link our purchasing systems with those of our suppliers. Let’s assume that we can get online quotes from our top ten certified vendors. Let’s assume we can reduce materials cost by having real-time information about the best deal available.
Bound Thinking Productivity is down. Let’s bring a management consultant in to look at our business processes.
12
Unbounded Thinking Let’s assume that our business process is fine, but it is not well understood by our employees. Let’s take the business process information online and give our employees an incentive to find the productivity problems. Let’s document the process and change it incrementally.
Chapter 1 The Path to the Unbounded Enterprise
This list could go on forever. Experience shows that bound thinking is one of the main reasons technologies are underused or incorrectly used in many enterprises. Therefore, the first step to the unbounded enterprise is to embark on a journey towards unbounded thinking. Collect your team into a workshop and try to discover the boundaries in your corporate assumptions. Discuss your challenges. Look for sentences like: • • • • • •
We can’t expand due to… We can never be global because… We may (or may not) be acquired/merge because… Our sales or profits are inadequate due to… We can't do that with what we have… We can’t afford to do that, or It's too expensive…
After the workshop, give your team the task of discovering how technology can be used to overcome these challenges. Make the following assumptions: • • • •
The technology to enable your business goals is available. Any IT project can be implemented in a cost-neutral fashion. Your existing IT infrastructure can be reused and extended. Your people are better than you think, but they might not have the right information available. • Any new technology can and should be made to work with your existing business processes. Once you have completed the unbounded thinking exercise, you are ready to move to evaluate the process for getting to unbounded applications, applications that use the Internet ”inside” to deliver the promised value of the Internet Age to your corporation.
13
Make the Smart Move Towards Total Business Integration
1.2 UNBOUNDED APPLICATIONS In many enterprises, business processes are defined and therefore limited by applications. Many of these applications are decades old, and often the programmers that wrote the systems are no longer available. So what is the answer? Buy a new application and replace the old one, right? Wrong! You will just end up in the same place several years from now. The fact remains that you cannot buy business innovation. Business innovation has to come from you, from inside the core values and differentiation of your business. The right approach is to seek out and find the boundaries of your applications and extend these applications based on the feedback of the users of the system. Here are some examples of what you can easily and effectively do with technology today based on accepted market standards and open, extensible technologies such as the innovations delivered by the Internet: Business Situation
?
Our field organization needs real-time information about key business metrics. They wish to see this information three times a day on their mobile device. The information is stored in a variety of systems, across multiple platforms. Our current system does not offer this functionality, but the version from XYZ does. It would cost one million dollars and nine months to implement the new solution.
Technology Solution
!
14
Standardize on a few mobile devices that are allowed inside your corporation. Build a data staging area that collects the key information from various systems. Develop a small software layer that allows your users to chose the information elements they wish to see and when. Build the system on a small scale and expand it as you go, one successful step at a time. Use proven market standards and Internet technologies to implement these solution components. When using XML, a new Internet standard, the first project can be live in less than six weeks at a fraction of the cost of a packaged new solution and with enough flexibility to adapt to the fluid needs of your user base.
Chapter 1 The Path to the Unbounded Enterprise
Again, the list of potential business situations is too large to be covered in a short paper like this. But so is the list of standard, off-the-shelf technology that is available to help you solve these problems. On time and on budget. These technologies include XML – the Extensible Markup Language – that can help you make better use of existing data assets. The list also includes other Internet-based solutions such as Web content management systems that can drive down the cost of Web site management. Or supply chain solutions that can drive down the cost of procurement. Or enterprise information portals that can deliver new information channels to users, customers and partners alike. These are just examples of Internet-based technologies that can drive down the cost of communication and speed up your path to revenue. However, the secret to success lies in avoiding the overdesign of any solution you wish to implement. Start with a single, welldefined problem. Fix it. Move on to the next problem. Do not assume that you need to throw away anything that you have built in the past. You can integrate your systems, extending their useful life, while adding phenomenal value by turning your applications into unbounded applications. And remember you can do this one application at a time, based on standards such as XML. Another key concept you will encounter in this process is the new architecture of Web services. Web services are a recent innovation driven by IT leaders such as IBM and Microsoft. Web services are the ”killer application” for XML, because they provide a simple and intuitive design center of XML that will help to bring the benefits of XML to bear on your most important business problems. (Chapters 2 and 3 will focus on Web services. If you would like to find out more about XML, read the book ”The XML Shockwave” by the same author.) If you follow this pragmatic, stepby-step approach, you will be surprised how fast you can get results. Start now. Your competitors probably already have.
15
Make the Smart Move Towards Total Business Integration
1.3 TOTAL BUSINESS INTEGRATION Once you have accomplished the unbounded thinking and unbounded application exercises, you are ready for the third and essential step towards the unbounded enterprise. You can now begin planning for total business integration (TBI), which lays the technology foundation to make your business as agile as you desire. TBI is about the use of standard technology to remove enterprise boundaries, boundaries in the way you partner, develop and enforce processes, and make your standards ubiquitous in your organization to increase productivity of your employees. Total business integration assumes first and foremost that you have decided to use technology strategically to enable your business. Second, it assumes that you have identified the boundaries in your thinking. Third, that you know about the boundaries in your existing technologies and applications. Before you can succeed with total business integration, you must assume that your business can be run on technologies that enable the seamless communication and collaboration between people, between people and applications, between applications, between people and businesses, and between businesses. Once your mind is made up, you can rest assured that the standards based technology you need is available and at your disposal. Today. One project at a time. Fortunately for you, there is a standard to facilitate total business integration. A standard that allows you to facilitate the collaboration between people, applications and businesses. A standard that enables you to build a single, application view across business boundaries. The standard is called XML. XML describes a broad family of standards and technologies guided by the World Wide Web Consortium (W3C). XML helps companies and software vendors alike to define open, standards-based interfaces and data descriptions that can enable the simple and effective integration of any kind of information across systems, platforms, applications and data types. XML is a key technology definition that can take the pain out of integration. XML
16
Chapter 1 The Path to the Unbounded Enterprise
can make integration more efficient and can build the foundation for an open business services architecture. This architecture can change and grow with your requirements and with the requirements of your customers and partners. And, best of all, every day more and more technologies and business applications are based on native XML to make it easier and easier to achieve total business integration and therefore speed you on your way towards the unbounded enterprise. By using XML strategically in your enterprise, you can implement your own personal declaration of independence based on: • • • •
independence of software applications, which can now be extended. independence of server platforms, which can all work with XML. independence of client platforms, which can all be reached by XML. independence of change to your business process, which can be modeled and described in open XML documents. • independence of infrastructure you have, which can be ”hidden” underneath an open and flexible integration layer.
Note: In chapter 2, you will find out more about a new architecture called Web services that is fully based on XML and that will help your enterprise take advantage of this new declaration of independence with a minimum of time and effort.
17
Make the Smart Move Towards Total Business Integration
1.4 SUMMARY OF CHAPTER 1 Today, any business depends on technology. It is hard to imagine a company without cash registers, printers, e-mail, accounting systems or a system that runs its production line. But we are also keenly aware that our business strategies and goals should not be dependent on the technology we have installed to help us run the business. In the first phase of information technology, we have managed to bring data under control, to empower our employees with productivity tools and to increase the efficiency of our internal business processes. Now it is time to leave this first phase behind us and to embark on the vision of using technology to empower our business vision: a vision of unbounded enterprise that assumes that technology can be used to leverage our investment in existing systems and to build new flexible systems that can extend our business to new customers, partners or channels. The vision of the unbounded enterprise, however, cannot be realized in a single step. First, companies need to unbind their thinking. They must include technology in their strategic planning process from the start, just as they need to include the business goals in every decision about technology. Enterprises need to accept that technology is an integral part of their strategic planning process, and that there is enough technology available today to build a foundation for innovative business applications. If you can envision it, it can be built. Second, companies need to unbind their applications. They need to discover the hidden roadblocks in existing system architectures and they need to discover the power of application integration and application extensibility based on standards. The Internet itself is the living proof of the power of standards and the power of end-user communities. Use this power in your own organization.
18
Chapter 1 The Path to the Unbounded Enterprise
Build on standards and you will see boundaries disappear. Third, customers need to learn about the concept of total business integration, meaning the process of laying a foundation for any entity of your business process, be it people, applications, customers or partners to collaborate across boundaries based on a common standards-based platform. TBI is based on XML, a worldwide standard that can help companies achieve their own declaration of independence, independence of applications, languages, platforms, processes and systems. Build on XML and the road to the unbounded enterprise will become clear. If companies embrace this process, the true power of standards-based information technology can be unleashed. The vision of the unbounded enterprise can become real much faster and with much more positive business impact than you can currently envision.
19
Make the Smart Move Towards Total Business Integration
CHAPTER 2 THE AGE OF WEB SERVICES After reading chapter 1, you should have a basic understanding of the key concepts around the unbounded enterprise. The unbounded enterprise is an agile corporation that is not limited by the legacy of its IT systems. Technology has become an enabling business platform. This platform not only allows you to scale your business up, in terms of more transactions, more users and more data, but also allows you to scale your business out in terms of more partners, more suppliers and the skills to handle more complex business problems in an automated fashion. This ability to scale out your business is largely driven by the adoption of XML as a common format to define and distribute the information needed to run your business. XML is the standard that makes the Internet programmable. The adoption of XML since its introduction in 1998 has been more than phenomenal. But XML, as simple, powerful and accepted as it may be, is only a standard that helps developers to describe and create data that can easily flow between applications and that can easily be transformed based on embedded business rules. XML is an important core technology, but it is not a model for application development. Until recently, XML was missing a ”design center,” or a common way to view the process of building ”native” XML applications. This design center needed to be designed for applications that take full advantage of all key benefits of XML: standardization, extensibility, ease-of-use, market acceptance, plug-and-play compatibility and the ability to run over existing infrastructures. Such applications harbor the potential of bringing your company closer to the vision of the unbounded enterprise. This is where the concept of Web services comes in.
20
Chapter 2 The Age of Web Services
Web services are the design center that can enable your company to rapidly take advantage of XML. Web services are based on XML and are the application model adopted by the giants of the IT industry. Companies such as Microsoft, IBM, Sun, HP, BEA and Software AG are building the technologies that will make the vision of Web services a reality. In this chapter, we will explore what Web services are and how you can take advantage of them by building a simple Web services architecture for your company. This architecture is entirely based on standards, but at the same time allows you to reuse existing infrastructure.
By now you should have heard something about Web services. The topic is hard to avoid. The media machine is busy cranking out the hype that has become so typical of our industry. ”Revolutionary.” ”A breakthrough.” ”Microsoft, SAP, HP, Sun and IBM joining ranks.” ”Transforming software into services.” The buzzwords keep flying. There is not an IT publication today that does not spout forth a never ending flood of abbreviations like WSDL, UDDI, SOAP, RDF, XSLT, etc. And, like with so many other technologies, the average reader is left with the question: ”What is in it for me?” This chapter is devoted to demystifying the topic of Web services and to explaining what Web services are and how to apply them to increase revenue for your corporation and to drive down the IT cost associated with building new products, services and revenue channels. If the information in this chapter whets your appetite, there is plenty of additional information available on the Internet. Just type ”Web services” into your favorite search engine and prepare to be blown away by the wealth of information available on this topic. For now, the most important fact to remember is that Web services form the design center around XML, the most important IT standard for the next two decades.
21
Make the Smart Move Towards Total Business Integration
2.1 DEMYSTIFYING WEB SERVICES Let’s begin with looking at the term Web services. The use of the term ”Web” implies that Web services are based on the World Wide Web. While this is true, it is actually quite misleading. Although the technologies for Web services are based on the standards that have evolved in the World Wide Web Consortium (W3C), Web services are really not limited to the Web itself. (Remember that the Web is really the graphical user interface that made the Internet easy to use.) Web services are a new approach for building, extending, integrating and deploying applications based on XML. This new approach builds applications that can facilitate the communication process between humans and machines (the Web), as well as the communication process between machines (the Internet) and the communication process between applications (application integration). By simplifying communications between humans, machines and applications based on a common standard (XML), Web services are an important building block on the path to total business integration and the unbounded enterprise. (See chapter 1.) Web services allow your IT department to do a number of extremely significant things, including but not limited to: • • • • •
reuse existing applications. tie existing applications into a single view. make these applications available to employees, partners and customers. build application extensions that model your business process. flow information across departments, business units or corporations.
If this sounds interesting to you, you should also know that these things can be accomplished very quickly and at a very low cost when compared to traditional approaches. The main reason why Web services are finding such rapid approval in the IT industry is their ability to reduce IT costs while delivering the capability of building new revenue models based on your core business. In addition, Web services can be the model for new application types that need to be deployed very rapidly. You might wonder: ”Why is this different? Have we not seen these claims before?” The answer is
22
Chapter 2 The Age of Web Services
yes, we have seen the claims, but there has been a crucial element missing in the equation. That element is called XML – the Extensible Markup Language. XML has been accepted in the industry as the de facto standard for storing, exchanging and publishing electronic documents. (More information about XML can be obtained in the book ”The XML Shockwave” by the same author.). So what does XML have do with Web services? Everything. Period. Web services (and their benefits of cost reduction and speed of implementation) are based on the assumption that every single element and every single buzzword in the family of Web services technologies must work with XML, and, as a matter of fact, are driven by the concept of XML documents. To some extent, Web services are the ”killer application” for XML, much in the same way the Web browser was the killer application for the Internet. The Web browser made the Internet easy to use and spawned an explosion of new applications that allow average users to access information. There are a lot of benefits to this approach, and the fact that more than 400 million people are using the Web proves that there is ample demand for this kind of approach. There is a downside, however. The Web is all about graphical user interfaces to applications. What the Web fails to accomplish is the ability for applications and machines to communicate directly and automatically based on common standards. This is where a huge potential for internal cost savings still remains untapped. According to research done at the Massachusetts Institute of Technology (”The Unfinished Revolution,” by Michael Dertouzos) about 50 percent of the world economy is based on office work. This is a huge number. What this means is that in order to gain more productivity, we need to build more automation into our business processes. We cannot continue to assume that a human being sitting in front of a Web browser is the answer to the productivity challenge every company faces. We need simple, automatic, machine-to-machine and application-to-application communication. But how? How can this be done without the huge cost that used to be associated with integration software such as CORBA and EDI?
23
Make the Smart Move Towards Total Business Integration
Enter XML. XML is the standard accepted worldwide that helps corporations and IT companies define the meaning of data. Once you have defined the meaning of data, you can build XML documents that describe themselves that can be stored, exchanged and published with a minimum of effort. XML is the technology that enables standards-based machine-tomachine communications and application integration, process integration and business automation. XML is well accepted. According to Giga Corporation, about 95 percent of companies surveyed have already started using XML, and about 30 percent of companies have put their first missioncritical projects in place based on XML. But XML is a basic technology that needs an approach, a model and a design center to succeed in the long term. Web services are the design center for XML based applications. XML is taking the world of IT by storm, and the adoption of the Web services model is becoming the killer application for XML. To understand this a bit more, we need to look at the second part of the term Web services, i.e. services. Like the term Web in Web services, the word services is correct in describing what Web services seek to accomplish, but it is also misleading. A Web Service really is a self-contained application that is fully XMLenabled. A Web Service can do the following things automatically, without requiring human intervention: • Describe a business function that is available in your corporation, for example a request for credit. • Publish that business function to other applications or end users based on standard Internet technology such as Web servers, application servers, integration servers or XML servers. • Receive XML documents as valid input to this business function. • Store those XML documents to preserve the integrity of the request and to enable auditing and tracking. • Evaluate and process that input. • Route that input into a processing application that could be another Web service or a traditional application.
24
Chapter 2 The Age of Web Services
• Produce a result, for example the approval of credit. • Store that result to preserve the integrity of the output and to enable auditing and tracking. • Route the result to the consumer of the business function, which could be a user, a device such as a mobile phone, a PC, a mainframe or any other entity that can be reached over the Internet. Note: Based on the above example, Web services should really be called XML service components. But as often happens, technologies are not always named for what they do. So, confused? Description too technical? Let’s describe a different example, this time using a service we all know and love: the example is the ordering of a pizza. Here is a scenario that should be familiar. Example: Joe has just arrived in the Hotel Nikko in San Francisco. It is late at night, and room service has closed for the day. But Joe is hungry and he does not feel like going out. So Joe grabs the yellow pages from the nightstand, looks for a 24-hour delivery service that offers vegetarian pizza and accepts credit cards. Joe picks up the phone, orders the pizza, charges the pizza to his credit card and waits for the meal. 45 minutes later, Joe is well-fed and ready to go to bed for a good night’s sleep before his big meeting the next morning. Joe is one happy customer. If you understood the above example, you understand the concept of Web services. What Web services are trying to accomplish is the same simplicity and ease of use Joe experienced when ordering his pizza when it comes to automation of business transactions over the Internet. Let’s compare the process, using the example of a large-scale pizza chain reordering tomato sauce based on the availability information of this key ingredient in the warehouse. 25
Make the Smart Move Towards Total Business Integration
Human Process Example Joe is hungry.
Web Services Process Example The warehouse is down to 20 crates of tomato sauce. The required minimum level is 40 crates of sauce.
Human Process Example Joe calls room service, discovers it is closed and picks up the yellow pages.
Web Services Process Example The supply chain application looks at the Web Service of the preferred provider of tomato sauce, discovers it cannot deliver in 24 hours and looks into the Web services registry to find another certified supplier.
Human Process Example Joe picks a pizza shop and orders the pizza, giving his credit card number to the clerk.
Web Services Process Example The supply chain application discovers another provider, orders the 20 crates of sauce and passes payment information over a secure Internet connection.
Human Process Example Joe receives the pizza and consumes it.
26
Web Services Process Example The warehouse receives the 20 crates of pizza sauce the next day.
Chapter 2 The Age of Web Services
Note: The interesting fact about this example is how similar these scenarios really are. Human Process Example Joe has looked up information in a local registry that shows a list of services providers.
Web Services Process Example The Web services application is using the Web services registry UDDI (Universal Description, Discovery, and Integration) to look up providers.
Human Process Example Joe is using the standard infrastructure of the telephone to place his request.
Web Services Process Example The Web services application is using the standard infrastructure of the Internet to place the request.
Human Process Example Joe is using his voice to communicate with a service assistant on the other end of the line.
Web Services Process Example The Web services application is using SOAP (Simple Object Application Protocol) to communicate with a Web service on the other end of the line.
Human Process Example Joe is using the English language to communicate his request to the service provider using terms such as ”margarita,” ”pizza” and ”extra cheese,” etc.
Web Services Process Example The Web services application is using XML to define the document that drives the automatic transaction.
27
Make the Smart Move Towards Total Business Integration
By now you should have a good view of what Web services can deliver: simple, yet powerful ways to describe a business function (reordering an item), announcing that business function to another application (yellow pages) and handling the request in an automated fashion. And best of all, this can be done very rapidly and generally based on existing infrastructure. Even your existing skills can be applied, especially if you have already built up XML skills in your corporation. Imagine what Web services can do for you and what XML Service Components can deliver to your corporation! Wherever there is a need for automation, the Web services model can help you achieve it based on the standards developed by and for the global Internet. The key technologies that are needed for building Web services are already here. There is no reason to wait any longer. Your competitors are probably already completing their first Web services projects to drive their IT cost down and to build new channels of communication. You can get started with your first Web services application within days and assume that you will see results in a very short amount of time. And, most importantly, with an absolutely stunning cost efficiency when compared to proprietary ways of application development and integration. If this approach seems sensible to you, read on for a short overview of the technologies needed to make Web services a reality in your corporation.
28
Chapter 2 The Age of Web Services
2.2 THE SEVEN CS OF WEB SERVICES Web services are the design center for building and deploying XML-based applications. Web services assume the infrastructure of the Internet, which is one of the reasons they are so easy to build and so cost effective. Existing routers, firewalls, Web servers, applications servers, integration servers and XML servers can all be reused. This is good news. The bad news is that not all applications are built natively for the Internet. As a matter of fact, probably more than 90 percent of enterprise applications running global corporations today were designed and built before the Internet became a global phenomenon in the middle of the 1990s. Connectivity between these existing platforms and applications is accomplished with a heterogeneous set of protocols, architectures and standards. It is not easy to connect these existing platforms among themselves, let alone turn them into a Web Service platform overnight. Data that is stored in these applications is highly redundant even among a single corporation. And the problem becomes even more complex when you have to discover the context of a data element (such as a customer number) between applications running in different corporations. In addition, the data that is needed to run applications in the Internet age has become more complex in general. Whereas we used to be able to run our businesses with ABC and 123 alone, today we have to include word processing files, spreadsheets, multimedia presentations, Web pages, images and more into the overall business process. This proliferation of content is becoming more and more of a challenge, and the Web services architecture is providing a solution. ”So?” you might be asking yourself, ”Are you telling me that the Web services idea is just another crazy vision created by the software industry? This sounds like a very complex problem to solve!” The answer is no, Web services are for real. Web services can deliver a very simple and pragmatic answer to building applications and extending applications, especially when it comes to handling more complex environments. Because Web services are based on XML, they can span the multiple layers of your enterprise architecture, from connectivity to context and content all the way to communities and commerce applications. But if you are still a bit skeptical 29
Make the Smart Move Towards Total Business Integration
about Web services, this is not without reason. There is more than one problem to solve and more than one layer of architecture to manage to realize the vision of Web services. To explain how Web services fit into the big picture of your IT environment, let’s explore the different components of a model Web services architecture. The seven main layers of such an architecture are: connectivity context content component company community commerce In order to build new Web services applications that seamlessly integrate existing and new systems over the Internet, companies need to explore these seven Cs of the Web services architecture. While in most cases up to 80 percent of the existing infrastructure can be re-used to accomplish the goal of an integrated Web services architecture, some new technologies are recommended, and sometimes needed, to speed up the adoption of a Web services architecture. In the next section, we will explore the seven layers in more detail while still keeping a high-level view of the overall purpose of the Web services model. 2.2.1 Connectivity Connectivity is needed to connect your existing platforms into a single architecture. This is typically accomplished through the use of middleware technology which makes systems work together even if they were not built to work together. There is a full range of technologies available on the market today that can deliver connectivity across different servers and hardware platforms. Software AG offers EntireX Communicator as a platform to 30
Chapter 3 Web Services Technologies and Standards
deliver high-speed connectivity across any enterprise platform. As the model of Web services is being implemented across the industry, connectivity will increasingly be accomplished using the basic infrastructure of the Internet. When companies do this, they are putting the Internet ”inside” of their corporate architecture. Over time, this allows them to replace proprietary messaging and workflow architectures with Internet-based technologies. This will deliver immense cost savings and massively increased flexibility when compared to traditional connectivity approaches. All middleware technologies on the market will evolve toward such architectures, using XML as their basic internal message format. The main value of such XML-based connectivity systems lies in the system component called message brokers. Message brokers are able to discover, compose and mediate XML-based interactions based on the XML content delivered to them from online forms, applications or other processes. The message brokers then take the XML message and route the content of the message to the processing application. Software AG offers such an XML-based message broker with EntireX Orchestrator. The combination of EntireX Communicator and Orchestrator delivers a complete connectivity solution for companies that wish to implement integration projects on their path to Web services. No matter what technology you apply however, you will need to build connectivity bridges between the heterogeneous platform components of your IT landscape to lay the foundation for a Web services architecture. 2.2.2 Context Everything needs context to have meaning. The core concept of Web services is the automatic processing of applications over the Internet. We know from real life, however, that even humans have problems with communication, especially when things are taken out of context. Take, for example, Joe, who was using the term margarita to order a plain cheese pizza. If the restaurant he was calling also served cocktails, he might have received a tequila-based drink instead of a pizza. The same factor becomes even more important when we attempt to make machines talk to machines or applications to applications. So in order to enable automatic communications between applications, context management is needed to allow Web services to map into the definitions, processes, terminology and agreements that 31
Make the Smart Move Towards Total Business Integration
form the basis for your business. Fortunately, once developed, these definitions are easily mapped into XML schemas. XML schemas allow your IT department to describe and standardize the business terminology and document types needed to describe your business. These schemas also allow you to describe the business of the partners you work with and to enable the automatic mapping of information between applications and business units. There is a broad range of XML-based technologies available that use XML schemas to provide the context management needed for Web services. Software AG Tamino is a native XML Server that uses XML schemas to define the relationship between data elements. With Tamino XML Server, you can store, exchange and publish electronic documents that are based on XML schemas, thereby providing a context management center for your Web services applications. Most application vendors have announced new versions of products that will use XML schemas to provide the context management that will make Web services easy to build, deploy and manage. Independent of the technology you use, your IT department is probably already busy defining, mapping and distributing information about the context of your information assets using the XML schema model. It is important to know that organizations such as RosettaNet, OASIS and others are developing industry-specific schemas that can make it very easy for your organization to participate in Web services transactions. These open XML schemas can be easily downloaded and adapted to your specific internal applications, saving you months in implementation time and bringing you into close alignment with the relevant processing standards in your industry. 2.2.3 Content Content is the current industry term for the broad range of data, documents and objects needed to describe a business process. Content includes Web pages, invoices, brochures, contracts, process descriptions, multimedia data such as images and sounds and more. As the industry moves to the Web services model that will eventually drive automatic transactions over the Internet, the standardization of content based on XML is an important first step. Once the standards are set in your corporation, you can easily Store, Publish and Exchange these Electronic Documents, gaining SPEED in 32
Chapter 3 Web Services Technologies and Standards
the process. There is a broad range of content management systems on the market today. Most of these systems do not support XML content in a direct fashion, but add layers that map existing content formats to the XML standards. Other systems such as Tridion, are using XML throughout the entire architecture of the content management system, which delivers more flexibility and performance when handling XML content. Software AG offers a content server with Tamino XML Server. In addition to handling XML natively, without any cumbersome mapping, Tamino XML Server is also able to perform full text retrieval and can store any multimedia object you need to include in business transactions. Since XML documents are the elements that drive Web services, every Web services application will require an XML server to provide a high-speed storage system to guarantee the delivery of such content. Once such an XML server is deployed, advanced XML content management systems such as Tridion, Stellent and TXT Polymedia can simply ”snap” into the content server and facilitate the administration and deployment of content to Web services or Web browsers. No matter what technology you use to store and manage your content today, the rapid adoption of Web services and XML will shift your content management architecture more and more in the direction of native XML services. The closer your content management architecture is to XML, the closer you are to Web services and the closer you are to cost savings in the automatic management, distribution and transformation of XML content, which is the foundation for the Web services model. 2.2.4 Component If you have ever visited a manufacturing plant, looked at an assembly line or built something with Legos™, you have an intuitive understanding of the concept of components. As in industrial manufacturing of consumer goods based on prefabricated components, there in an increasing trend in the software industry towards industrial manufacturing of software components. As in the ”real world,” the virtual world needs standards to design these components and an assembly line to fit these components into the end product. Web services are a component model for software applications, whereby the standards and infrastructure of the Internet form the assembly line. But this is where the analogy falls apart. As a matter of fact, 33
Make the Smart Move Towards Total Business Integration
most of the components of the Web services applications of the future will comprise existing applications that have been ”mapped” or ”wrapped” into the Web services standards model. Therefore, in the Web services architecture, components are the elements that ”map” existing applications or new application code into the Web services model. Components will be a key to the success of Web services, since no enterprise can afford to throw away decades of investment in customized enterprise applications. As a matter of fact, the most reasonable approach to Web services migration is to turn existing applications into components of the Web services architecture. To accomplish this, developers need simple tools to extract business functions from these existing applications and to make them look like a Web Service. This unbundling of existing business functions is typically referred to as wrapping. There is a whole range of wrapping tools on the market including products from Cape Clear and Shinka Technologies, who provide a set of Web services development tools. Software AG delivers a set of easy wrapping tools with the EntireX product line. Using this product, customers can make existing enterprise applications look like Web services if they are written in older languages such as COBOL or C or in more modern languages such as Natural, Java or Visual Basic. No matter what technology you use to build Web services components, always keep in mind the road map laid out in chapter 1 of this paper. If you want to ”unbind” your applications, first you have to ”unbind” your thinking and your approach to doing business based on technology. 2.2.5 Company You might be relieved that after explaining such technical concepts as connectivity, context, content and components, all of a sudden we have arrived at a concept that should be more familiar. The company – the entity you manage. This chapter should be easy to understand, right? Well, in this context, the author has decided to take the word company in a different context. The company element in the Web services architecture relates to the sum of all existing business processes that are deployed in your company. Take for example the processes of selling, buying, writing a contract, hiring an employee and paying salaries. Many of these business processes are typically managed by packaged applications from companies such as 34
Chapter 3 Web Services Technologies and Standards
SAP, Siebel, PeopleSoft or Baan. Other processes are managed by applications you have built in-house and others are managed by people. As a company manager, you are probably constantly reviewing your company processes to decide which ones can be streamlined or even automated. And, if you are like thousands of other corporate managers worldwide, you have increasingly put your company into the hands of packaged application vendors by outsourcing the management of core business processes to the application and professional services companies that run your company’s automatic business processes on your behalf. This is why Web services are so important to you as a company manager. Web services allow you to bring more processes online, to automate more, while reducing the dependency you have on your IT vendors. How? By ”unbinding” the applications that you have in place. Web services are based on open connectivity, open context management, open content and open component models. Web services allow you to connect your company internally as well as externally: faster and at lower cost than any model the IT world has been able to offer you in the past. It is imperative that you speak with the IT vendors of your choice to let them explain the Web services strategy to in terms of the benefits it will deliver to your company. If the vendors that your have on your list are not committed to Web services, they are not committed to XML and therefore not committed to openness, standards, cost reduction and the development of an architecture that will move you ahead on your path to unbounded enterprise. But be careful. Although many IT vendors have announced their intention to move to the Web services model, it will take several years before they have rebuilt their applications and several more years before your company has migrated to these new packaged versions of enterprise applications. In addition, the partners and customers you wish to integrate might have different versions of these applications deployed. This requires a different integration approach, which is called total business integration. (See chapter 1 for more information.) With total business integration, customers are employing a combination of middleware, message brokers and application adapters to integrate packaged application into a single view without coding. Once this integration is accomplished, simple tools can be used to model workflows and business processing monitoring applications on this ”integrated landscape” of com35
Make the Smart Move Towards Total Business Integration
pany applications. The market for total business integration technology is evolving quite rapidly and all TBI vendors have announced their intentions to move to XML to enable Web services. Software AG is providing EntireX Orchestrator to deliver the messaging, message broker and application adapter suite required to integrate enterprise application into a single view. In addition, EntireX Orchestrator offers lightweight tools to model the message and business flow for these applications. Independent of the technology you use to integrate your company, Web services are a mechanism to open your company to new business opportunities based on technology, not dependent on technology. 2.2.6 Community The next layer in the Web services architecture is community, again a concept that should be very familiar to you. We all live in communities, and the standards set in these communities determine our lives at a fundamental level. Communities regulate, for example, when stores are open and closed, if and where you can build a new home, how much tax you pay for your car or if the pizza delivery service has the right to ship you two kinds of margaritas, one being the pizza, the other being the alcoholic drink. In business, we are increasingly becoming part of the global community of electronic business. In addition, each industry has its own, highly specific set of standards and regulations that we need to comply with to run our business. Local standards compound the problem, as each local community imposes rules and regulations on your business as well. These global, industry-wide and local standards are both a challenge and an opportunity. If you are able to quickly embrace new standards, even leverage such standards, the community can be a platform for competitive differentiation for your business. The community layer in the Web services architecture relates to the fact that your business is part of a larger business community which often requires the support of very specific standards. Examples of such standards include HL7 in the health care industry, XBRL in the financial services industry and many more. As the industry moves to XML and Web services, these standards for communications, content and transactions will be defined in the XML format and made publicly available. This is an enormous benefit to corporations and application developers who do 36
Chapter 3 Web Services Technologies and Standards
not have to develop the standard definitions themselves. The Web services model supports this kind of standardization through the use of public repositories, the yellow pages of the Internet. (In the Web services model, this registry of services is called Universal Discovery, Description, and Integration or UDDI) For corporations to take advantage of the power of Web services architecture, they need to build private yellow pages that describe the business functions they wish to offer that can then be linked to public yellow pages that allow you to access business functions over the Internet. The good news for companies is that there is a growing number of public yellow pages or UDDI repositories that will be hosted by companies such as IBM, HP, Sun, SAP and others. To complete the picture, companies can then simply deploy XML servers inside their corporation that provide the link between the private and public views of business functions. Software AG's Tamino XML Server is fully compliant with the standards required to build private and public yellow pages for Web services. Tamino XML Server can be deployed inside corporations to implement an internal repository and registry for Web services or Tamino at the edge of your corporation to provide a high-performance, secure Web services registry for other companies to access and use your public business functions. No matter what technology you use to connect your company to the business community, Web services architecture is a great approach to leverage standards that relate to your company on a global, industry-wide or local level. These standards are the foundation for automatic commerce, which brings us to the seventh level of Web services architecture: commerce. 2.2.7 Commerce Commerce is a term that has been overdefined and misused over the past decade, and the author does not wish to belabor the point of defining it yet again. For the purposes of this paper, commerce shall be defined as the element of your business where payment is involved. No matter if you are talking business-to-consumer (B2C) or business-to-business (B2B), if there is no payment involved, we are talking about noncommercial use of IT, or business-to-nobody (B2N). Web services, however, are about automatic processing of applications over the Internet, and these applications, by definition, will include commercial transactions or payments. And when we 37
Make the Smart Move Towards Total Business Integration
speak about commercial transactions, we need to speak about security, auditing and nonrepudiation. This is why the commerce layer forms the final layer of the Web services architecture. This is the layer where secure payment processes are being implemented. The industry is moving rapidly to provide standards technologies to deliver an extremely high level of security and transaction performance to enable robust commerce between applications. Here, the whole ”stack” of Internet technologies deployed over the past seven years can be reused. Web Servers can deliver the highperformance connection management and security mechanisms needed for commercial transactions and payment processes. Firewalls can be reused to make sure only the right kind of application can access your business functions. Application Servers can form the scaleable infrastructure for new application components written in Java. Integration Servers can hook existing applications into the Web services model and XML servers can provide the reliable, secure, high-performance content storage required to deliver auditing and tracking capabilities to your Web services architecture. Tamino XML Server from Software AG can seamlessly integrate with firewalls, Web servers, application servers and integration servers and can form the component of your Web services architecture. Tamino XML Server can ensure that the key driver of Web services, the XML documents, are aggregated, staged and delivered to the requesting Web services applications. Independent of what technology you use to secure the performance of commercial transactions, Web services can and should be linked to this existing infrastructure. If you follow this model, your first secure Web services-based transactions can add to your top line revenue in a very short time and at minimal cost. 2.2.8 Summary of the 7 Cs In summary, Web services architecture comprises a number of layers that need to work together to provide a deep foundation for this new model of applications. The best news about Web services architecture is the fact that Web services are based on XML. This pervasive use of XML ensures that you can reuse existing technology by providing XML integration components as the first step and then migrate to a native XML implementation of Web services architecture over time. Customers such as Sabre Systems, 38
Chapter 3 Web Services Technologies and Standards
DaimlerChrysler and Sky Broadcasting are already moving to this model, using Web services architecture as a ”Web surface.” This Web surface delivers the standards-based communications, service description and service delivery framework of the Web services architecture while reusing existing enterprise transaction systems that lie below it.
2.3 OUTLOOK: THE AGE OF WEB SERVICES By now you should have a basic understanding of Web services. You know that Web services are about automatic processing of applications over the Internet; that Web services are the design center for XML, the key standards for data, application and process interoperability for the next two decades; and that Web services are a model that can allow you to reuse the infrastructure you have in place to extend your applications, reach out to customers and partners alike and to drive down the cost of application integration. It almost sounds too good to be true. Based on the hype we have seen in the past decade, the author does not blame those who are taking Web services with a sizeable grain of salt. So, the key question remains: are Web services hype? Or is the Web services model here to stay? The answer is: both. Web services are hype in that vendors will continue to do their best to claim that their technology is the only one that can make this model happen. Please don’t be taken in. Take the time to review vendors’ offerings, taking especially good care to see how deeply they have embedded XML into their products since there are no Web services without XML. The fact is, Web services are a model that can be implemented with a broad range of technologies, and you can reuse most of the applications you already have to take the first, all-important steps. But Web services are also potential hype because it is simply unrealistic to assume that the vast majority of transactions in the world will run in a fully automatic fashion, Web services or not. This fully automatic, effortless, error-free Web will not happen in our lifetime. Many business processes are too complex and too dynamic to be fully automated. Human interaction will still be a very important component in the future of business. But then again, many business processes are simple and repetitive. Many transactions look the same 39
Make the Smart Move Towards Total Business Integration
across industries. Many applications offer redundant functionality in your corporation. And many of your employees are wasting hours every day in the process of manual discovery, entry and change of data needed to drive your business. And the Web services model provides an approach that can add value and help you with solving a lot of these problems, right now and with a minimum of additional investment in time and know-how, especially if you have chosen native XML technology already. Web services also provide a vision of delivering application integration based on standards. Analysts, vendors and customers have realized that integration is a key to productivity in any company, and that integration needs to be pursued with relentless drive. But integration must not come at undue cost. Integration must be based on standards. Web services are here to stay because they are based on XML, the most widely deployed standard for describing and exchanging information. XML is the key to making the Internet programmable and to providing a common platform for data integration. Web services are the killer application for XML, because they deliver a design center for XML that is easy to use, cost effective and supported by all the major players in the IT industry including Microsoft, IBM, SAP, Sun, BEA, Software AG and others. Move to Web services. You will be surprised how quickly you will see results.
40
Chapter 3 Web Services Technologies and Standards
CHAPTER 3 WEB SERVICES TECHNOLOGIES AND STANDARDS 3.1 OVERVIEW Web services are a concept rather than a packaged solution to a welldefined set of problems. Web services are based on XML and form a design center around XML, which in itself comprises a number of standards. It would go beyond the scope of a paper like this to list all of the relevant technologies and standards components that might be included in an overall Web services architecture. (Much more information is available on the Internet, and the author strongly recommends keeping up-to-date with the rapidly evolving technologies related to Web services.) Over the past two years, a number of companies have been involved in the development of the Web services architecture, most notably IBM and Microsoft, who have been playing a vital role in bringing the first three components of the Web services model to the point of standardization. These three key Web service technologies are: • a standardized way to describe Web services (Web Services Description Language, or WSDL). • a standardized way to publish and discover Web services (Universal Description, Discovery, and Integration, or UDDI). • a standardized way to invoke Web services (Simple Object Access Protocol, or SOAP). Based on these three concepts, companies such as SAP, HP, Sun, Software AG, Cape Clear, Shinka Technologies, BowStreet and others are moving ahead to complete Web Service architecture, and to deliver a complete answer to the seven Cs of Web services described in chapter 2. Let’s take a deeper look at the three key technologies of Web services today.
41
Make the Smart Move Towards Total Business Integration
3.2 WSDL, OR HOW TO DESCRIBE A WEB SERVICE The Web Service Description Language (WSDL) is one of the three key components of Web services. WSDL is based on XML and is therefore very easy to understand and use once you have understood the basic concepts of XML. More and more tools such as CapeClear’s Cape Studio, EntireX from Software AG and Shinka Technologies’ Web services toolkit are capable of generating WSDL code automatically. WSDL is extensible to allow description of application endpoints and their messages regardless of what message formats or network protocols are used to communicate. Services are described with standardized elements including type, messages, ports, binding, etc. Since Web services have to be extremely flexible to allow your company to execute any kind of business transaction using the Web services model, WSDL provides four different kinds of communication models that Web services application endpoints can support. These communication models are: • One-way. The endpoint receives a message. Programmers can use this model to ”open up” an existing application to new types of information coming in from the Internet or an Intranet connection. • Request-response. The endpoint receives a message and sends a correlated message. This mode is the most common model for query processing with traditional applications. It is easily mapped into the existing reporting and query models your programmers are using for existing databases and applications today. • Solicit-response. The endpoint sends a message and receives a correlated message. This model is absolutely essential if you want to automate business processes over the Internet. Instead of sending a message to a screen, where a human operator responds to it, the application can send a message to another application or Web Service. • Notification. The endpoint sends a message. This model is essential to reroute information from traditional endpoints such as screens and browsers to other applications that need to be notified of events.
42
Chapter 3 Web Services Technologies and Standards
Overall, WSDL is simple and straightforward, like most of the standards related to XML and Web services. Use this URL for more detailed technical information: http://www.w3.org/TR/wsdl
3.3 UDDI, OR HOW TO REGISTER A WEB SERVICE According to UDDI.org, the standards body responsible for defining the Universal Description, Discovery, and Integration effort, UDDI is ”the building block that will enable businesses to quickly, easily and dynamically find and transact business with one another using their preferred applications.” This is a wonderful vision, and while the industry is diligently working towards this vision, companies are using UDDI for their internal integration processes to quickly, easily and dynamically find and transact business inside the corporation based on standards-based applications. This effort will enable these companies to participate in open Web services transactions without additional coding as soon as the company and its trading partners are read to do so. More and more companies are jumping on the UDDI bandwagon, and SAP, IBM, HP and others have agreed to host UDDI repositories. Why is UDDI such a great idea? Have we not had multiple approaches for business-to-business integration in the past decade and have they not all failed to deliver on their promises? In the past, companies had no alternative but to depend on time-consuming research, manual comparisons of potential vendors and personal recommendations. In the future, online UDDI directories will help to make the Web services jungle much more penetrable. This is what Ariba, IBM, Microsoft, Software AG and more than 130 other companies are presently striving to achieve. Since September 2000, they have been collaborating on the UDDI project with the goal of developing electronic business directories. These directories will be made accessible to the public in the same way as yellow pages. Organizations will be able to use them to enter and search for Web services. They will offer far more than any ordinary telephone directory possibly can, and tracking down the perfect service is only the beginning. The virtual yellow pages will contain not just data about businesses, but, more 43
Make the Smart Move Towards Total Business Integration
importantly, information about the services provided by the Web-based applications and software components. The full function Web services platform is built on a pyramid of inter-dependent standards that maintain the ubiquity and simplicity of the Internet. With UDDI, each organization can describe itself, its products and its services with the help of these consistent publishing and discovery standards. The backbone of the UDDI architecture is a Business Registry consisting of three distinct components: white, yellow and green Pages. Whereas the white pages contain the names, addresses and other identifiers of companies in all branches of industry and commerce, the yellow pages allow clients to search for these companies according to industry categories based on standard taxonomies. Their job is to describe details of product ranges and provide contact information. The green pages list the Web services offered by each registered enterprise. Overall, UDDI is a very open and simple concept that can be used inside of your corporation or to open your corporation to online processing with customers and partners. UDDI is based on XML and easy to implement. Use this URL for more detailed technical information: http://www.uddi.org/
3.4 SOAP, OR HOW TO INVOKE A WEB SERVICE According to the World Wide Web Consortium (W3C), the Simple Object Access Protocol (SOAP) is ”a lightweight protocol for exchange of information in a decentralized, distributed environment.” SOAP is the third key component of Web services, but, as already alluded to in chapter 2, its very definition does not limit it to the Web. The definition of the standards body of the W3C rather broadens its scope to decentralized and distributed environments in general. This is good news, since a lot of integration challenges on the road to Web services and the unbounded enterprise lie within company boundaries at this time. And here, the usage of SOAP is growing rapidly. SOAP offers a broad range of functionality without subjecting companies to the drawbacks suffered when using proprietary connection methods. The most significant things about SOAP are: 44
Chapter 3 Web Services Technologies and Standards
• SOAP is easy to use and implement. • SOAP runs over the existing Internet protocols TCP and HTTP and is therefore very cost effective. • SOAP is based on XML and offers an easy way to describe what a message is, how to process it and how to encode data types needed. To better understand SOAP, let’s take a look at two application examples that use SOAP in conjunction with the other two key technologies described in this chapter. The first example is Pizza Company X that wishes to find another supplier of tomato sauce using Web services architecture. First, the Web services framework of Pizza Company X calls the UDDI Discovery Service. It retrieves relevant information about a potential partner and about the services that this partner has described to the business registry on the basis of the publishing standard UDDI. Pizza Company X chooses a partner, Company Y, and contacts the latter directly using the information contained in the registry. From now on, the business process between companies X and Y is managed as a peer-to-peer relationship between the two partners. Both companies can use SOAP as a neutral method of data transfer. It is important to understand that SOAP makes the communication process between these 2 companies completely independent of the underlying IT infrastructure of Company X or Company Y. Company X could be using an R3 implementation while Company Y could be using a home-grown application written ten years ago in the C programming language and converted into a Web Service application using EntireX only six weeks ago. SOAP makes these differences irrelevant to the participating companies since it is based on common protocols and standards that are universally accepted. The second Web services scenario involves a logistics company, a bank, a supplier and a retail shop that all use different protocols for communication between application components. The shop application at the retailer needs functions from all these applications. With traditional middleware, the retailer application would have to speak CORBA (a communication protocol) to the bank application, DCOM (another communication protocol) to the logistics application and DCE RPC (yet another communication 45
Make the Smart Move Towards Total Business Integration
protocol) to the supplier's application. Making the required applications' functions available as Web services via SOAP allows the retailer's shop application to access these various services via the existing Internet infrastructure including TCP/IP and HTTP. These two examples should exemplify the concept of Web services, which are based on XML and SOAP. But nothing is as powerful as finding such an example in your own company, making the decision to implement a prototype and then seeing the first application run in this way in a matter of weeks. Overall, SOAP is simple and straightforward, just like the other two key elements of Web services. Use this URL for more detailed technical information about SOAP: http://www.w3.org/TR/soap
3.5 THE PATH TO WEB SERVICES – A PRAGMATIC APPROACH Web services are a great concept. By now, you should agree that Web services have the potential of revolutionizing the software industry by providing an intuitive, simple design center around XML. Yet, great as it may be, the idea of Web services poses a substantial challenge to businesses: making sure their existing applications as well as new application are ”Web Service capable” without spending an inordinate amount of time and money on the process. Surely the first step is to carry out some analysis on which of the company's business processes should be automated and what effort is necessary to transform these processes into Web services. Then, two separate tasks have to be tackled: • Existing applications have to be converted into functional components that are capable of working independently and of being combined with other components. • An integration layer that allows flexible access to these components has to be set up. 46
Chapter 3 Web Services Technologies and Standards
As far as the first task is concerned, there are two available options, data integration and component wrapping. Data integration entails the company allowing access to applications by reading and converting just the data streams. In other words, the information that is delivered as the result of the application is surrounded with functions and interfaces to make that information reusable. The advantage of this method is that the application itself does not need to be altered. Unfortunately, the information components generated in this way are very inflexible since the actual behavior of the application does not change. If the behavior of your business changes, this new behavior still cannot be mapped to your application and you might have to employ custom coding to map the new business process. Future modifications inevitably prove extremely complex in Data Integration and it is no longer the preferred method for moving to Web services. The second approach, component wrapping, means creating real functional components. The initial effort here might seem greater, because each company has to modify its existing applications by encapsulating individual parts of them. This approach has the advantage, though, of delivering exceptionally flexible encapsulated modules. Once created, they can be reused again and again. This is possible since the developer does not wrap existing data into a set of behaviors, but rather follows the inverse path, starting from the desired behavior, and collecting the data relevant to support that behavior. Component wrapping allows enterprises to transform their applications gradually. While they are busy encapsulating one function, all the others continue working as normal. As the component set grows, however, the number of interfaces and data sets required to support the evolving Web services architecture increases accordingly and it becomes necessary to create an integration layer with simple access functionality. Powerful middleware products such as EntireX from Software AG permit all components to be accessed using a single interface. Businesses can continue using their existing architectures internally, be they CORBA, COM or RPC, while implementing the nonproprietary SOAP transfer protocol and WSDL (the XML-based description language for 47
Make the Smart Move Towards Total Business Integration
Web services) for external communication. The middleware takes care of the important job of integration between the ”old world” and the Internet by standardizing the technical interfaces and thus providing a single point of entry. At the same time, it simplifies interface maintenance and administration. More and more organizations are using this approach on their path to Web services.
48
Chapter 4 Conclusion
CHAPTER 4 CONCLUSION More and more companies realize that information technology is no longer just an enabler for business. Instead, IT has become part of the business, or even is the business. Now more than ever, business executives have to respond to IT challenges quickly, decisively and often personally. They have to respond by setting a new mandate for corporate IT, a mandate that sets the corporate IT organization on a path towards unbounded enterprise, where applications can communicate without limitations, both internally and externally. On this path to unbounded enterprise, relentless standardization will play a key role, and the Internet has become the incubator for one of the most compelling standards the IT industry has ever seen: XML. XML enables the description, delivery, exchange and transformation of information without limits. When using XML, boundaries between platforms, systems and applications disappear, and with them, the boundaries between processes and companies can disappear as well. This is the foundation for unbounded enterprise that can run its business based on IT, but never again dependent on IT vendors or proprietary technologies. But XML, great and ubiquitous as it may be, is not enough. Companies need an approach, an architecture and a design center to bring this key new standard to bear on the problems they are facing in their day-to-day business. Challenges related to building new applications, extending existing applications, integrating applications and combining components into composite applications that might span multiple platforms, systems, business units or even corporations. This design center for XML is now available. It is a concept called Web services. And Web services, just like the underlying XML technology, include a number of key technologies that are widely accepted by industry leaders such as IBM, Microsoft, Sun, HP, SAP, Software AG and many more. Web services are a model to allow organizations to take any business process online with a minimum of effort, to publish these online business processes over the Internet and to conduct peerto-peer business transactions over the standardized infrastructure of the global Internet. Web services are transforming the software industry. They 49
Make the Smart Move Towards Total Business Integration
have the potential to transform your business as well. Use Web services. See results. Thanks for reading and all the best on your path to the unbounded enterprise based on XML and Web services. Chris Horak Darmstadt, February, 2002
50
Appendix A Some Ideas for Web Services Applications
APPENDIX A SOME IDEAS FOR WEB SERVICES APPLICATIONS Now that you have a basic understanding of Web services, you have three options on how to proceed from here: • Ignore Web services, i.e. adopt a ”wait-and-see” stance since this architecture does not seem to be relevant to your business. This is highly unlikely if you have a need to integrate applications or to open up your business process to customers, employees or partners. • Explore Web services, i.e. drill more deeply and ask your staff to tell you more about it. This is the most common scenario since Web services are not yet fully understood by most IT organizations. • Embrace Web services, i.e. adopt the innovation offered by Web services and instruct your team to begin the first project. This is the preferred scenario, since the value of Web services is most easily proved in smallscale project. If you happen to be in the latter two categories, this section offers you some ideas for Web services applications. Any of these applications might help you to transform your business based on the open architecture of Web services. These ideas are described in terms of case studies that should be easy to understand and relatively easy to implement with Web services technologies based on XML.
A-1
CUSTOMER RELATIONSHIP WEB SERVICES
In the age of Web services, more and more customers will expect a customized service experience. Yet, the existing CRM solutions are ”one-sizefits-all” products that really don’t map into your process 100 percent. This lack of customization usually requires a high amount of custom programming and integration to truly meet the requirements of your customers.
51
Make the Smart Move Towards Total Business Integration
Here is the idea: • Select a small group of customers (1–5). • Interview the customers about the top three things they would like to see improvement on. • Find the common denominator and design a small Web Service that can accomplish the goal in a short amount of time. An example could be a Web Service that automatically provides a list of your best-selling products as an XML document, derived from your product shipment database. This XML document can be provided to the customers online as component of your Web Site, as a file or as a message to their mobile phone using XML style sheets. • Once you have this information on bestsellers available as Web services (which should only take a few days or weeks), your customers can link their own in-house applications to this Web service using a secure Internet connection. • The benefit of this type of approach is a high level of customization for your best customers, who can now automatically obtain information in XML format that can be easily viewed by their in-house applications. They can even maintain a Word document or PowerPoint file that can be automatically updated whenever the secure Internet connection to your Web Service is activated. You should be able to produce your first Web services fairly rapidly. Once you have the first successful project, you can move on to improving your customer service experiences one step at a time. You will be surprised how many ideas regarding improved customer service your team might be able to develop once they have understood the simplicity and power of the Web services approach. The basic approach described in this example is generally applicable to all Web services. The most important thing to remember is that IT systems always have a customer. Even when you are talking about in-house information systems such as revenue reporting, forecasting or HR systems, there are always users that are looking for improvements. Talk to the ”customers” of these systems. Identify the improvement they are looking for. 52
Appendix A Some Ideas for Web Services Applications
Build a Web service that they need. Move on to the next needed Web service. In the remainder of this section, you will read about two projects, both inhouse, that relate to your partners and suppliers.
A-2
EXECUTIVE INFORMATION WEB SERVICES
When is the last time you had a really great report delivered to your desk? Usually reports get defined once and then never change fast enough to reflect the rate of change in your business. Now, with Web services, your IT organization can bring information together into a coherent view much quicker and at much lower cost than before. You can ask for the report you have always wanted and get it delivered to your favorite application automatically. Here is the idea: • Define your key business indicators. • Define a report template (such as a text document or presentation file) that contains these indicators or metrics in the format you wish to view them. • Submit this sample report to your IT organization. • Your IT organization can use total business integration (TBI) middleware to pull the information about your business together into a composite XML document. (See the first part of the paper for more information on TBI.) This information might comprise in-house information from your ERP and CRM system, information from your suppliers and partners or even public information obtained from the Internet. • The set resulting from this information retrieval process can then be staged in an XML server and can be instantly transformed and published to your favorite viewing application be it a browser, desktop, Personal Digital Assistant or mobile phone. • Once you have the first key metrics of your business on your desk every day, or even every few hours, you will see the potential of using Web services architecture for decision-making in your business.
53
Make the Smart Move Towards Total Business Integration
The key to this example is that you pull your decision-makers into the design process of the application by allowing them to define their dream report. They will quickly find out that the information they need usually resides in a number of different systems, and that only the combination of information from both in-house and external sources can really satisfy their information needs. For example, market data can be compared to your shipping information. Or your stock price can be automatically compared to public information about equities, etc. Simply put, Web services can help you obtain more SPEED in decision-making (meaning Storing, Publishing and Exchanging Electronic Documents). Of course, Web services cannot be a solution when the information itself is not available. But Web services, when enabled by total business integration technology and XML servers, can deliver an automatic view of shared information that can help you deliver better service at reduced cost.
A-3
SHARED LOGISTICS WEB SERVICES
Every sizable company has a logistics operation that delivers goods to customers and partners or even to internal production facilities. Yet most trains, planes and automobiles are rarely loaded to capacity, leading to a substantial waste of fuel and time. For example, a truck delivering parts from one part of the country to another might only be filled to 50 percent capacity. En route, there is another load that becomes ready for pick-up in a city that is only a few miles away from the route the truck is taking that day. The reason why the truck driver does not stop to pick up the additional load is usually a lack of information. This lack of information is usually due to the lack of information gathering about capacities and load availability at the pick-up points. Here is how to solve that problem: • Instruct your operations group to ”open up” the scheduling application with a Web services interface based on XML documents (the foundation of Web services). • Build a small Web services application that you can deliver to the ”nodes” of your logistics network. This can be a small, browser-based 54
Appendix A Some Ideas for Web Services Applications
application written in Java, or you can use a pre-fabricated application adapter such as the one provided with Software AG’s EntireX product line. • Collect both the capacity information as well as the load information into a logistics information hub. Link the logistics information hub into your scheduling application. The application will see the hub just like an operator sitting in front of a screen. This hub can be easily installed using an XML server. • Now, not only the administrator of the operation can schedule a load, but the application can receive load information from any Web servicesenabled application. This information might come in from any of your offices, from your partners or even from customers who need to ship a load back to your distribution center. • Once you are done with this application, you can deliver up-to-date scheduling information to your transportation providers in their desired format, be it an XML document for further processing or a message to their mobile device. This information distribution and linking can be easily accomplished with total business integration technology. The main point of this example is that you can probably make this application pay for itself in fuel cost savings over time. The concept is fairly simple and involves the use of standard technologies such as the Internet itself, Java and XML. The basic application that you already have in place does not have to be changed. It just gets Web services-enabled and now has better and more current information to work with.
A-4
SUMMARY OF APPENDIX A
This section should have given you some basic ideas on how you can use Web services. It does not matter where you start, just that you start with a small, contained project. The main areas that can benefit from Web services are:
55
Make the Smart Move Towards Total Business Integration
• customer service • executive information • shared logistics Of course there are many more ideas that cannot be covered in a short paper like this. Your staff will surely come up with many more ideas once they have understood the main concept of Web services and XML. As you might have discovered, there are several common points in the application examples: • Every organization today is enabled by IT applications and, therefore, in many ways limited by IT applications. Web services can be used to remove these limitations. • Every business today needs to constantly improve its relationships. These relationships include customers, employees and partners, and each of these relationships can be improved by standardizing communications based on XML and Web services. • Total business integration technology, such as EntireX from Software AG and XML servers, such as Tamino from Software AG lay the foundation for a Web services architecture and can deliver an approach for getting to results on time and on budget. The next section summarizes a few of the most commonly asked questions about Web services. If you need more detailed information about total business integration, Web services or XML servers, remember you are only one mouse-click away from the Software AG Web site, which contains a wealth of information on these topics. http://www.softwareag.com/
56
Appendix B Web Services Frequently Asked Questions
APPENDIX B WEB SERVICES FREQUENTLY ASKED QUESTIONS In this section you will find a list of the most frequently asked questions regarding Web services. Although the list does not claim to be complete, you will find some useful summaries of some of the key Web services topics clearly explained. Question
?
Who owns Web services?
Answer
!
Nobody owns Web services. Web services are a model for integrating business functions over the Internet. The standards that form the Web services model are defined by the World Wide Web Consortium (W3C) and are submitted by companies such as Microsoft, Ariba, IBM and others.
Question
Answer
?
!
What are the main benefits of Web services when compared to other approaches to business function integration?
Web services provide a completely open model of integration that is not dominated by a single vendor. Web services are based on a set of XML standards that are widely accepted in the IT industry. When using Web services, your company’s trillion-dollar investment in Internet infrastructure can be reused, which delivers huge cost benefits.
57
Make the Smart Move Towards Total Business Integration
Question
?
58
What are the risks of Web services and how can a company mitigate such risks?
Answer
!
There are a number of risks inherent in the Web services model. Once your company decides to ”expose” key business functions to the Internet, these functions are subject to security risks such as malicious entry (hacking) or involuntary exposure of key business data (security leaks). One of the key things that will be added to the Web services model is a strong security component to help companies manage this risk. In addition, existing firewalls, encryption and user authorization technologies can be used in the Web services model as well. Most companies are using the Web services model for internal company integration, where the security challenge is less critical.
Appendix B Web Services Frequently Asked Questions
Question
?
Do Web services replace existing integration approaches and technologies?
Question
?
If Web services are so great, why have we not invented this sooner?
Answer
!
In the longer term, the Web services model will surely lead to a new set of integration technologies that are based on XML. In the meantime, existing frameworks such as CORBA, EDI, DCOM and others will not simply cease to exist, but will be gracefully integrated into the Web services model. This reuse of existing technology is both desirable and inevitable due to the huge investments already made in such technologies. In addition, most enterprise applications are not based on native XML and will need a level of wrapping that can be accomplished with current technology, including messaging middleware, message brokers, EAI frameworks and XML Servers.
Answer
!
The key ingredients of Web services are XML and the Internet infrastructure. Both technologies have now matured to the point to enable the building of loosely coupled models such as Web services. The rapid adoption of XML and therefore Web services shows that the industry has been waiting for a simpler model to achieve business function integration.
59
Make the Smart Move Towards Total Business Integration
Question
?
Are Web services like object oriented computing where I had to hire a group of rocket scientists to make things work?
Answer
!
No. Although Web services achieve a lot of the objectives of object oriented computing such as abstraction, encapsulation and inheritance of business functions, Web services do not require object-oriented developers to succeed. Web services can be developed with simple tools and deployed to any client you might use in your business environment, from Web browsers to mobile phones to Microsoft Office applications to ERP applications.
Question
Answer
?
!
60
What is the typical time to market for a Web services application?
Experience shows that customers can deploy the first Web services within weeks. This can only be accomplished however if the customer has adopted an Internet-based architecture and has begun using XML in their company. But even when you start from scratch, your first Web services can be developed and deployed in a matter of months, as opposed to years when compared to traditional technologies.
Appendix B Web Services Frequently Asked Questions
Question
?
Is it true that Web services are universally accepted? Usually some vendors oppose technologies just to be different.
Question
?
What about .NET from Microsoft? Do I need .NET to move to Web services?
Answer
!
Unlike the CORBA-DCOM wars, the browser wars, or the Java wars, Web services seems to be a ”peaceful” technology. This probably stems from the fact that Web services don’t belong to a single vendor, but are instead driven by the W3C, which also drives XML. On the other hand, vendors such as Sun, IBM, HP, Microsoft, Software AG and other will provide Web services technologies that will employ quite different approaches to deliver the same result. The choice of technology should always be guided by your business goals, but you are well advised to look deep into the level of XML support in the individual product, and if the products are available across different platforms.
Answer
!
No. .NET is only one of the architectures that can enable you to move to Web services. SUN ONE is another model and IBM has it own Web services architecture. At HP, the E-Speak architecture is moving towards the overall Web services model as well. Software AG offers a complete range of products to help you succeed with Web services across platforms. 61
Make the Smart Move Towards Total Business Integration
Question
?
62
Where can I get the most neutral view of Web services?
Answer
!
The page of the W3C is the most neutral source of information regarding Web services as well as XML. It is highly recommended to begin finding out about Web services from there and then drill into vendor-specific technologies.
Appendix C About Software AG
APPENDIX C ABOUT SOFTWARE AG Software AG has been in the business of providing system technologies for mission-critical business applications for more than 30 years. We are pioneers in this business and have helped more than 5,000 customers worldwide to run and extend their business based on cutting-edge software technologies. Software AG leads the market with its XML-based system technologies that can work with any kind of entity included in your business process, including people, devices, platforms and applications, to store, publish and exchange any kind of business information. Now, Software AG is blazing a path for corporations to take advantage of Web services without having to leave decades of investments behind. All Software AG products are Web services enabled, from Adabas and Natural, the high-performance transaction platform, to EntireX, the leading framework for total business integration, to Tamino, the market-leading XML server. Since Web services are based on XML, this comes naturally to Software AG, the XML company. In addition to market leading technology, our award-winning global Professional Services organization is available to help you achieve your vision of the unbounded enterprise based on your existing transaction systems. We know it can be done because we do it for our customers every day. The technology is here and now. Our team is standing by to help you. The rest is up to you. Don’t wait. Give us a call. www.softwareag.com
63
MAKE THE SMART MOVE TOWARDS TOTAL BUSINESS INTEGRATION Chris Horak
Chris Horak
The Age of Web Services Software AG Corporate Headquarters
THE XML COMPANY
MAKE THE SMART MOVE TOWARDS TOTAL BUSINESS INTEGRATION DIV/42E0202 032
Uhlandstraße 12 64297 Darmstadt Germany Tel: +49-61 51-92-0 Fax: +49-61 51-92-11 91 www.softwareag.com
THE XML COMPANY