Your SlideShare is downloading. ×
MDA for Web Services. Applying Model Driven Architecture to ...
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.


Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

MDA for Web Services. Applying Model Driven Architecture to ...


Published on

Published in: Technology

  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

No notes for slide
  • 14
  • 15
  • Transcript

    • 1. MDA for Web Services Applying Model Driven Architecture to Web Services Document webserv/2002-04-05 EDOC-ECA
    • 2. Problem Space
      • Integration Nightmare
      • Infrastructure, Version & Vendor lock-in
      • Complex, divergent and manual development and deployment processes
    • 3. Goals
      • A scalable and robust enterprise architecture
      • Loosely coupled enterprise components
      • Enable rapid provisioning of business solutions
        • Simple, reproducible processes supporting reuse
      • Technology & vendor independence
      • Enable the integration and collaboration of multiple;
        • Business units (internal and external)
        • Customers
        • Suppliers
        • Systems
        • Technologies
    • 4. Solution Triad Service Based Architecture Standards Tooling & Infrastructure Development Process Components Web Services Corba OMG ECA J2EE .NET Model Driven Development
    • 5. The new center
      • The strategic core of you systems must be the business itself
      • Only technology independent business focused models will survive the transience of technology and lock-in
      • These models can become part of your source code , driving enterprise applications
      • Enabler: Model Driven Architecture (MDA) with EDOC-ECA
      Extreme Modeling
    • 6. Collaboration and Web Services Collaboration is the center of applying web services to core enterprise problems.
    • 7. EDOC – Enterprise Collaboration Architecture Provides the standard UML “PIM” profile suitable for enterprise application of web services EDOC
    • 8. What is the Enterprise Collaboration Architecture?
      • ECA is a “profile of UML”, a way to use UML for a specific purpose - it is an OMG standard
        • That purpose is modeling enterprise systems .
      • You can also think of this as a “modeling framework” for enterprise computing
      • ECA is part of the “Model Driven Architecture” (MDA) initiative of the OMG
        • Using precise modeling techniques as part of the development lifecycle to speed development and provide technology independence
      • ECA has been adopted by the OMG as part of the EDOC RFP.
    • 9. Using MDA for WSDL WSDL & Soap Mapping “ PIM” “ PSM” Business Focused ECA Model
    • 10. Collaboration is Key
      • Collaboration is a key differentiation and key cost center (Healthcare Example)
        • Customer Collaboration
        • Claim processing
        • Disputes
        • Physician Collaboration
        • Payer Collaboration
        • Hospital Collaboration
        • Broker Collaboration
        • Government Collaboration
        • Employee Collaboration
        • Others...
      The system integrates multiple collaborations
    • 11. Automated Model Driven Architecture Profile (E.G. EDOC) Framework & Infrastructure (E.G. Web Services) Infrastructure Mapping (E.G. Web Services) Mapping is tuned to the infrastructure Tools Produce & Integrate Enterprise Components Business Focused Model (UML) Manual Coding Minimize and structure manual implementation
    • 12. Loose Coupling
      • Loose coupling is the ability for independent parts of systems to be built and evolve independently
      • Tightly coupled systems
        • Prevent change (the next legacy system)
        • Cause lock-in
        • Become unmanageable
        • Prevent reuse
      • Quality architecture is essential for loose coupling
    • 13. Enterprise Components
      • Enterprise Components must be independent
      • While being able to interoperate with each other
      • Making the information system a lattice of cooperating components
      Open Standards Open Standards Open Standards
    • 14. Poor Monolithic Architecture Traditional data sources SQL DBMS & Client/Server Bad Thing All business rules, data rules, application logic, technology and user interface code are contained here The data goes here Monolithic Applications Monolithic Applications HTTP Web Browser Making a monolithic web application doesn’t help!
    • 15. Enterprise Architecture HTTP Web Server Applications SQL DBMS, Client/Server & Legacy Applications Client Applications Business and data rules go here User interface and application logic go here The data goes here EAI Applications & B2B E-Commerce Web Browser Standard Middleware connects applications to components & components to components XML Corba EJB DCOM MQ Supply Chain Enterprise Components
    • 16. Technology Independence What the infrastructure vendors would have you do Business Logic Component ebXml Business Logic Component .NET Business Logic Component RosetaNet Business Logic Component Ejb Adapters EJB Business Logic Component ebXml BizTalk Rosetanet Adapters CICS EJB MQ Corba
    • 17. Typical Requirement Buyer Web Page HTML Seller Redundant Work! B2B Buyer Web Service Seller
    • 18. Multi-tier implementation B2B Buyer Web Service Seller Could have multiple implementations using different technologies Could have multiple implementations using different technologies Buyer Web Page HTML Buyer Proxy
    • 19. Multi-tier implementation Legacy Seller Applications Event Cloud B2B Buyer Web Service Seller Event Event Implementing seller using events Buyer Web Page HTML Buyer Proxy
    • 20. Understanding Collaborations
    • 21. The Connected Enterprise Content and Communication Police Dispatcher Role Aerial Photos Digital Map Census Data House Drawings Police Records
    • 22. Multiple roles in a collaboration
    • 23. Roles to Systems Implementation Net Hardware Operating System Framework, Middleware & Container Interaction Path Component in Role Interaction (With Information) Role Collaboration
    • 24. The Internet Computing Model The technology model behind WSDL and ebXML and others
    • 25. The Internet Computing Model
      • Collaboration of independent entities
      • Document exchange over internet technologies
        • Large grain interactions
      • No shared infrastructure required *
      • Long lived business processes
      • Business transactions
      Business Party Business Party Portals
    • 26. Requirements for the “ICM”
      • Contract of Collaboration
        • Shared business semantics
        • Meta-Model (EDOC-ECA) and representation (I.E. XMI, ebXML-BPSS)
        • Shared Repository for Contracts (MOF, UDDI, ebXML)
      • Connectivity (middleware) which meets requirements of the contract
      • Implementation of each contract role providing connectivity (application server)
      Business Partner Business Partner Repository Contracts (Metadata) Contract of collaboration can be mapped to the format of various technologies. (ebXML, Soap, .NET) Instance Data
    • 27. Two levels of interoperability Instance data and interoperability Metadata (contract) interoperability Business Partner Business Partner Bridge Each can be transformed Purchasing Model .NET ebXML BPSS ebXML Biztalk Normal Form Over Soap Over Soap
    • 28. Drilling down – inside a role
      • The open domain should make no assumptions about the “inside” of a role.
      • Inside one role you frequently find more collaborating “parts” of the enterprise - the same model may be used
      • Until you get to system inside a managed domain
        • Shared resources (DBMS)
        • Common Management
        • Frequently a legacy system
      Inner Role Legacy Inner Role Inner Role Domain Cust
    • 29. Collaborative Business Semantics
      • Defined: The processes, information and contracts of interaction between collaborators within a community
      • Collaborative business semantics are a valuable long-term asset
      • Captures information and process
      • Requires ownership and support
      • Do not put this valuable asset in a (transient - one size fits all) technology specific form
        • Use technology independent models (MDA)
        • Map to the technology of the day (E.G. DTD)
    • 30. Generic web services
      • Generic web services is any set of technologies that can implement the internet computing model.
      • WSDL, ebXML, .NET…
    • 31. Standards for Global Internet Computing EDOC SOAP WSDL XML XML-Schema .NET BPML XLANG
    • 32. XML Standards
      • XML Schema & DTD
        • Description and packaging of data
      • WSDL
        • Specification a services, operations and flows available via that service
      • Soap
        • Basic messaging and packaging
        • Extensions for Soap-RPC with WSDL
        • May be extended to support collaborative messaging
    • 33. ECA as the normal form EDOC-ECA Web Services (WSDL) ebXML (BPSS) J2EE (Java RMI) .NET MOM (MQ-Series) The standard way to model and tool for multiple technologies MDA Mappings English
    • 34. EDOC Component Collaboration Architecture The model of collaborative work CCA
    • 35. The Marketplace Example Mechanics Are Us Buyer Acme Industries Seller GetItThere Freight Shipper Order Conformation Ship Req Shipped Shipped Delivered Status Process Complete Physical Delivery
    • 36. The Seller’s Detail Order Conformation Shipped Ship Req Shipped Delivered Order Processing Shipping Receivables Event
    • 37. The Community Process
      • Identify a “community process”, the roles and interactions in a collaboration
    • 38. Protocols
    • 39. Composition
    • 40. ECA/WSDL mapping
      • ECA works well as a modeling framework for WSDL
      • How major concepts could map
        • WSDL Port <-> ECA Port
        • WSDL Operation <-> ECA Flow port (one way) or Operation (Two way)
        • WSDL Service <-> ECA Component
        • WSDL Port type <-> ECA Protocol
        • WSDL Message <-> ECA Document type
    • 41. WSDL/ECA Differences
      • WSDL Adds
        • Technology binding and endpoints
      • ECA adds
        • Choreography, nested conversations, two-way protocols, nested components.
    • 42. Next steps
      • RFP Draft – “Web services for enterprise collaboration”
        • Two way mapping between EDOC-ECA and WSDL/Soap
        • Draft available – discussion in “MARS”
      • Roadmap items to make web services more viable as enterprise infrastructure
        • Security and reliability
    • 43. Business Case
      • · High level support for understanding and documenting collaborative business processes.
      • · Loose coupling between independent parties in a collaboration
      • · Tighter coupling in the software development life-cycle between design and implementation processes and artifacts.
      • · Consistency in the way WSDL is used to implement collaboration.
      • · A standard way to use UML for web services.
      • · Enhanced support for asynchronous interactions.
      • · Automation of the development process from design to implementation.
      • · A faster, more deterministic development processes.
      • · Ability to adapt to changing business requirements.
      • · Ability to adapt to multiple and changing infrastructure technologies.
      • · Full life-cycle tool support