570 likes | 652 Views
eBusiness and web services Smorgasbord. Open Forum 2003 on Metadata Registries 2:00pm to 3:00pm January 23, 2003. Presenter. David Webber co-author of ‘ebXML – the new global standard for doing business via the internet’, New Riders Publishing Chair of the OASIS CAM TC
E N D
eBusiness and web services Smorgasbord Open Forum 2003 on Metadata Registries 2:00pm to 3:00pm January 23, 2003
Presenter • David Webber • co-author of ‘ebXML – the new global standard for doing business via the internet’, New Riders Publishing • Chair of the OASIS CAM TC • Co-chair of OASIS/CEFACT ebXML JMT • Pioneering XML eBusiness drrwebber@acm.org http://drrw.net
Agenda • Part 1 – web services and ebXML • Transports • Alignment – business process automation • Alignment – common semantic mechanisms • Deployment Coordination • Part 2 – assembly mechanisms • Where can you use this? • Address example • Review of XML mechanisms
Part1Web services and ebXML Enabling better eBusiness
Web service – brief history • Trigger point – weakness of HTML model for e-commerce solutions. • Emergence of XML and SOAP messaging. • Bowstreet early market definition and mission. • Formation of UDDI cartel – to facilitate and exploit automation of e-commerce.
Acronym Soup • XML – Standard Language for denoting information content and process control • SOAP - (Simple Object Access Protocol) XML based Messaging Protocol • UDDI - (Universal Description, Discovery and Integration) Yellow Pages for Web Services • WSDL - (Web Services Description Language)
Summary of eBusiness Needs • Ability to easily and cost-effectively connect business processes and business information exchanges together • Enable a broad interoperable electronic marketplace • Interface to existing applications
eBusiness Technology Goals • Solutions and tools that enable customers to reduce costs and improve efficiency by better exploiting information within their eBusiness domains and industries.
Information Landscape • XML enabled • Pervasive across desktop and enterprise solutions • Ad hoc architecture (desktop components), or using formal architecture (eBusiness integration)
XML itself is not enough. • XML, by itself, does not solve interoperability problems yet it is an important tool for doing so. • XML does not provide instant semantics. • XML by itself is not the magic bullet. • What we need are clear policies and vision of how electronic information enables interoperability
Business Layers Designing for Flexibility 2 1 Components Architectural Conceptual UDDI 5 ebXML CPA } 3 Constraints, Context, & Structure Business Layers Logical • BODs, MIGs, PIPs • Documentation 4 Process BPSS • transaction • schema • instance Implementation Physical
Business Layers: Objectives • Reduce complexity of managing large numbers of transaction formats - document the differences • Want to speed adoption by formalizing business rules • Want context-driven transaction generation • Empowers business users to build interchange details • Need to define in a neutral format: works with variety of structures, not just XML. • Augment current standards and industry specifications • Provide multi-step process support – UDDI weak here
World view models • SMALL - Simple consistent integration for day-to-day small business applications (accounting, taxes, catalogues, inventory…) • BROAD - Simple consistent integration across industry verticals (insurance, healthcare, transportation, food services…) • LARGE - And complex large system integration
Sample Use Cases • eGov – how do I apply for this service on-line? • Business facilitation – can anyone in the organization provide this answer? • If ‘Yes’ how can my software access it?
ebXML Vision “A semantic registry is the key foundation block upon which global electronic business exchanges will be built”.
Why Use a Registry? • Foster a collaborative environment across departments, agencies, industry domains • Provide human facing access to resources – portal • Provide machine level access to business semantics and content
Registry Layers High level modelling systems integration Business Process Definitions Workflow Control Interchange Profiles Modelling and Workflow Integration UML Tools Business Transaction Generators Dictionary Content Transformation Services Scripting Tools and services XML Content Domains Content Discovery Topics and Packages Dynamic Process Component Enabling HTML forms XML Calls Web User Interface Program API Support Information Store Industry Dictionary Business Processes Business Transactions Business Forms Metadata Information Registry/Repository Communications Layer
Classifications (Ontology) • All registry objects are classified • Objects can be classified under multiple classifications • Classifications can represent different industries, or product categorizations • Classifications are controlled by the registry owner and completely editable • Upload as a full scheme, or create (or edit) schemes node by node
UDDI Registry • Yellow, White and Green Pages • Registration of “tModels” • Fixed classification model • Provides discovery for web service POPs and then ability to configure to those • Internal use stronger story than external currently
Move to standards work • Submissions to W3C of SOAP / WSDL • Formation of OASIS TC’s • UDDI moved to OASIS (http://www.oasis-open.org) • Four initiatives on work flow / business process - BPMI, BPSS, BPM, BPEL4WS -> need just one! (aka SMIL for media flows) (see - http://www.ebpml.org) • Re-alignment with ebXML? (http://www.ebXML.org)
Polarization of Web Services • eAI vendors – inward facing focus • The bulk of the (Web services) work for the next 18 months will be inside the firewall, and it will be integration.” • When questioned about the role of WS in exposing legacy data assets, the answer was resoundingly simple “That is not going to happen,” but a more traditional approach will be used.
Outward facing • e-Commerce Solution vendors • Use their engines to parametrically drive custom web applications. • Use their engines to manage web applications based on profiles . • Empower business managers to create, customize and manage profiles, which drive the generation of unique application instances. • Assign and manage application variations by User IDs, J2EE roles, rules, entitlements or any other data such as time of day.
Web Service behaviour? “A web service is a software component that represents a business function (or a business service) and can be accessed by another application (a client, a server or another Web service) over public networks using generally available ubiquitous protocols and transports (i. e. SOAP over HTTP).” -Gartner Group
ebXML and eBusiness architecture Combining best-of-breed components
The Emerging Solution: XML Integration Services 2002+ 1990’s 1980’s SHIFT SHIFT Ad Hoc Hub n’ Spoke, EDI and EAI XML Integration Services
Building eBusiness Orchestration • Define business ideas and needs • Capture steps and workflow • Then describe the business processing • Top layer – rules and context • Middle layer – industry/application integration • Implementation layer – physical application systems and content delivery / exchange
Enterprise Service Bus (ESB) • Communications layer • ebXML messaging services • Web services • Internet • Business Process workflows and orchestration • Registry services for metadata and discovery • Content integration at point of use • XML payloads with content vocabulary definitions as well as schema structural layouts • Security and Control mechanisms
Key Capabilities • Link content to/from existing applications • Provide ebXML and web service delivery mechanisms • Common Business Process Orchestration Server • Industry metadata and templates management • Enable marketplaces with partner discovery and cooperation
Web services and ebXML Web Services ebXML Type Request/response Collaboration Communication RPC-style synchronous communication between tightly coupled services, Document-style asynchronous communication between loosely coupled services Synchronous, asynchronous communication Business Service Interface description WSDL CPP, CPA(WSDL within CPP, CPA under research) Protocol and Formats SOAP, XML ebXML Message Service (over SOAP), XML, BPSS (as "business" protocol) Content Standards None Recommended Standards (e.g. OAGI BODs) How to find business partners UDDI Registry ebXML Registry(UDDI Registry may point to an ebXML Registry or Registry objects (e.g. CPA)) With thanks to Alan Kotok from his recent article : http://www.webservices.org/index.php/article/articleview/451/1/22/
ebXML adoption today • Automotive industry • Food services industry • Energy industry • Vendors delivering ebMS products – Fujitsu, Sybase, Sterling, GXS, bTrade, Cyclone, TIBCO, Excelon, WebMethods, XML Global, and Sun – with UCC certification
Industry Trends According to the Gartner Group, by 2003, at least 70 percent of all new applications will be built primarily from components Components allow developers the ability to integrate multiple software modules when creating new applications, reducing in-house programming effort, leveraging sophisticated services, and increasing software quality which can significantly reduce the time, cost and effort of integrations projects. "
Part 2 Assembly Mechanisms Introduction
Business Challenges for XML • Totally static transaction formats do not work – need configurable structures • How to apply business context assertions to a information structure? • How to derive a consistent way of specifying the interchange parameters to a partner? • How to enable business domain users to implement the exchanges?
Address Problem Space • Objective is to provide context to the postal delivery addressing preferred standard for Postal Address, using levels of business use and quality metrics, to ensure adoption of CIQ. • Address use levels • Level 0 = handwritten postal address – machine scanned • Level 1 = last line (city, state, zip+(postal code) or foreign country • Level 2 = in country simple postal address –As Is concatenated • Level 3 = extended postal address – advanced features • Level 4 = rendering only (external to USPS or business to business use, e.g., shipping / delivery address / bill to / marked for / in care of ) • Level 5 = management (internal domestic and international collaboration • Resolve XML approach for supporting postal delivery address requirements. • Manage domestic internal and global international artifacts through common vocabulary or mapping conventions
Technology • Using W3C Schema to provide for business choice and layers of increasingly refining definitions based on business use • Enable use of platform independent business semantic AssemblyDoc, modeling, or spreadsheet methods • Provide for technology dependent implementation transition • Provide migration from legacy address formats • i.e. DOD and most other legacy environments are at Address use level #2 • Provide U.S. Government with standards for harmonization by the authoritative agency source with international consortiums
Address Use Level Defined(US Postal model example) • Level 0 = handwritten postal address – machine parsed • Level 1 = “last line” - city, state, zip+ (postal code) or foreign country • Level 2 = in country simple postal address – concatenated delivery address line(s) • Level 3 = extended postal address – advanced features • 3A = Non-address - business volume (bulk) • 3B = delivery address field s (atomic) • Level 4 = Rendering only - external or business to business use, e.g., shipping / delivery/bill to/marked for/in care of • Level 5 =management – advanced features • 5A = internal management • 5B = international management
Address Horizontal and Vertical Authoritative Source & Use Matrix A = Government (Domestic) B = Vendor C = International Organization D = Customer E = Consortiums Top = Authoritative source D A A D C & A A, B B, D, E B, E A, B, C, E A, C, E Bottom = User and Implementers
United States Post OfficeDelivery Quality Measurement Score Description 0 Multiple lines of unspecified address information 1 Identified lines of address information 2 Partial element identification (City-State-ZIP) 3 Full element identification 4 Full element identification with some validation (valid State) 5 Full element identification with some validation and cross validation (City within State) 6 Matching address to Postal Database (CASS certified address matching software used) {Matching address to external address} 7 Complete and correct address (Delivery Point Validation) 8 Know recipient has not reported a move (Move Update) 9 Know delivered to person / entity 10 Know the delivery was made to the right person / entity
Grouped View of USPS Physical Postal Address 11Physical Concatenated Lines: • 5 Optional Internal Routing Lines • - Mailstop Code • - Attention Line • - Individual Title • - Functional Title • - Group, Department, Division Name • 3 Business Volume “Bulk” • - Optional Endorsement Line • - Key Line Data • - POSTNET Address Block Barcode • 3 Mandatory concatenated lines • - Name (Person or Organization) • - Delivery Address • - “Last Line” - City, State, Zip+ (Postal Code) • or Country
Multi-Dimensional Postal Address View USPS Delivery Quality Measurement OASIS Address Use Levels USPS Physical View 3 Optional Internal Routing Lines Business Volume “Bulk” Delivery Address 6 Fielded Composite 2 3 1 “Last Line” City 2 5 4 State Zip+ (Postal Code) Country sets 1 4 Country Interpret Process 0 0
Building the right pieces • Need to intelligently use XML – get maximum benefit, while avoiding potential pitfalls. • Exploit work that others have done pathfinder for: OAGIS V8 use of Schema techniques; and best-practices on XML use • Align with ebXML architecture to provide syntax neutral methods wherever possible
Leveraging CIQ • Need to reflect levels 1 thru 5 of use • CIQ formal detail underpins 5th level. • Use XML schema techniques to layer granularity above that. • Each granular layer also has country specific models. • Use ebXML AssemblyDoc to capture context structure rules and country models.
XML Information Exchange Quality (and long-term consistency) Secure Authenticated Delivery and Tracking: Reliable Messaging system, envelope format and payload with exchange participant profile controls Delivery Assembly XML Content Assembly: Business logic for content structure decisions and explicit rules to enforce content, and interdependencies, with business exchange context, and content definition cross-references via UID associations Schema: Content structure definition and simple content typing Schema Registry/ Dictionary business information UID content referencing system ensures consistent definition usage UID UID – Universal ID content referencing system values – comprise of domain prefix, six digit integer, optional version, sub-version.
Syntax Technical Objectives • Create dual use schema that is capable of support OASIS {1 - 5} levels of use and the set of quality measures with the business choice for increasing detail granularity • Support and harmonize noun dictionaries across multiple legacy implementations and consortium standards by allowing substitution underneath parents • Use of ebXML UID technique to equate like elements in dictionary
Concept to Runtime Approach Business Information Entities - BIE Registry Components Core Components, and Industry Dictionaries Physical Conceptual Application Database Structure Choices 1 2 Required Content Structure 3 Payload Assembly AssemblyDoc Structure Process Engine Content References Context Values Payload / Rendering Logical
XML techniques summary • We can use W3C Schema to show basic typing and structural permutations for all address content, matching the 5 levels of the business model. • To provide automation of the business logic at-point-of-use requires ebXML and AssemblyDocs to supplement the Schema. • This gives us short-term implementation today, with long-term extensibility and improvement of business value and information quality.
Which XML Method(s)? • We need business collaboration on elements syntax: • Global complexType definition? • Global element definition? • or define both? • Reuse • Reference global element in external namespace? • Define local element as substitutionGroup of global element (bring into local namespace)? • Define local element using external Namespace complexType (bring into local namespace)? • Derive by extension, local element can have additional sub-elements added to it?