In 2004, Bill Gates said “Web Services gives us the ability of any software component, written in any language, running on any operating system, to find and connect up to and exchange in a secure, reliable, transacted way information with another piece of software… The starting point for doing this was XML (eXtensible Markup Language). In the mid '90s Microsoft and some other people got very excited about taking that, which was really a document standard, and turning that into a data standard. And that has flourished. XML is such a phenomenal technology and the tools around it, it's been amazing. Everything we dreamed XML would become, it is becoming. When you have nuts in your shop who say XML is magic, well, basically they're right.”
One way to think about Web Services and XML is to compare it to the internet and HTML (Hypertext Markup Language). HTML provided standards so that any computer with any operating system could read the contents of a web page. This was done by attaching tags to each element on the screen with its location, font, density… In a similar way, Web Services uses XML to tag each element within a data file with its description. For example, a purchase order file has an item number and a quantity. XML would allow any system to automatically import a purchase order from another company no matter what system was used to create the PO. The system that imported the purchase order would know which field was the item number, quantity… without any customization required between companies or systems.
But has reality kept pace with the hype? In order to answer this question, I spoke to Seth Blumenstein of Asynchron Systems. I have known Seth for many years and know that the answer to my questions will be technically accurate without a marketing pitch. So here is what Seth told me recently about one if his clients.
J. Josephson (JJ), is one of the largest manufacturers of contract wallcovering in the world. JJ’s products are sold through distributors who market these products to commercial customers in hospitality, corporate, healthcare, government, education, store planning and property management.
JJ asked Seth to help the company achieve two objectives: 1) Eliminate all the manual paper work related to orders from their customers and 2) Become a third party warehouse for their customers. The paper work included rekeying the faxes and email from customers. Becoming a third party warehouse would allow JJ to increase revenues by offering an additional service to their customers, who could avoid shipping costs by having JJ ship directly to their customers (also called drop ship).
Seth’s solution for both objectives was to use XML. XML has huge advantages over the traditional methods for electronically exchanging data such as CSV (comma-separated values) and EDI (Electronic Data Interchange). CSV has been the standard format for decades in exporting electronic files that would in turn be imported by another system. One huge advantage of XML over CSV is that you can easily define multi dimensional data such as multiple order lines within one order or multiple shipping dates for one order line. EDI was considered difficult and expensive to implement.
Unfortunately there are no generally accepted XML standards for transactions such as Purchase Orders (PO’s) so Seth needed to create his own standards for JJ. The ultimate goal of web services was to create standards for electronic transactions such as PO’s so that any organization could transmit their PO’s to another organization that could in turn read/translate them without any coding or customization. So I challenged Seth on this point and said that his solution was not ideal as he was not using standard XML for his transactions and that all of JJ’s customers would need to customize their transactions to conform to the XML of JJ. Seth shot back that there will never be one standard for all PO’s. There are just too many variations by industry. For example, apparel companies track items by style, colour and size and wallpaper companies track items by colour and lot number… In any event, it’s easy for organizations to create XML files based on standards provided by their trading partners.
I asked Seth about security because the XML files could potentially be easily read if someone were to intercept the data. Seth responded that the data would be sent securely using Secure File Transfer Protocol (SFTP). SFTP provides confidentiality, authentication, and data integrity for file transfer connections. It was designed to eliminate the security weaknesses of FTP with standards-based, strong encryption and authentication.
JJ now uses XML for orders, order acknowledgements, invoices and shipments and has achieved the 1st objective in eliminating the manual paper work. The benefit to JJ is that employees can provide more service to their customers and allow the company to grow without adding staff.
XML is also used to achieve the 2nd objective by exchanging inventory movement transactions in XML format so that JJ’s customers can maintain their inventory in JJ’s warehouse. As well, JJ sends physical inventory counts using XML to their customers so that they can reconcile to the perpetual system.
So the answer to the question whether the reality of web services and XML have lived up to the hype is a qualified yes. It’s not the silver bullet initially hyped that would easily solve integration between systems. But with some XML expertise, there are huge opportunities for business process improvement.
Michael Burns, MBA, CA, PMP, is president of 180 Systems (www.180systems.com/), which provides independent consulting services, including business process review, system selection and IT audit. Contact: 416-485-2200 or mburns@180systems.com. |