1 / 25

Interoperability of Distributed Component Systems

Interoperability of Distributed Component Systems. Bryan Bentz, Jason Hayden, Upsorn Praphamontripong, Paul Vandal. Introduction. Growth in Distributed Components Multiple users Multiple platforms How can I interchange data efficiently?

sheila
Download Presentation

Interoperability of Distributed Component Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Interoperability of Distributed Component Systems Bryan Bentz, Jason Hayden, Upsorn Praphamontripong, Paul Vandal

  2. Introduction • Growth in Distributed Components • Multiple users • Multiple platforms • How can I interchange data efficiently? • Various technologies have been introduced to leverage interoperability problems

  3. Overview • Research Path • XML and various interoperability technologies • Moved from XML to broader area • Individual Research • Finalize on November 6th • Implementation Project • Tentative start date: November 6th

  4. Semantic Web • Extension of the current WWW • Web of distributed knowledge bases • Accessible by software agents • Simplified Interoperability • Web Services • Locate, Select, Employ, Compose • Automation a priority • “Collection of pages” => “Collection of services”

  5. Ontologies An ontology is a network of concepts, relationships,and constraints that provide context for data and information as well as processes Define structure of information • Example: Price concept • Functionality: • Design • Developed • Learned • Exchanged/Merged • Layers: Metadata, Schema, Logical

  6. Ontologies (cont’d) • Metadata layer: underlying resources and properties; RDF • Schema layer: represents hierarchy of concepts (“is-a” links); RDF-S • Logical layer: represents more complex relationships. OWL Generality Detail/Richness

  7. Web Services • Software Agent Discovery of services • Invocation and monitoring of services • Composition of services: basic (pipe-like); active research area

  8. Languages • Languages: • UDDI: Universal Description, Discovery, Integration; IBM, MS (registry, etc.) • RDF: Resource Description Framework • RDF–S: RDF Schema • WSDL: Web Service Definition Language • WSMO: Web Service Modeling Ontology • DAML: Darpa Agent Markup Language • OIL: Ontology Inference Layer; EU • OWL: Web Ontology Language (successor to DAML+OIL) • ebXML: electronic business using XML; UN

  9. Summary • The Semantic Web will allow software agents to discover and interact with a wide variety of knowledge bases and services; • This requires layered metalanguages, to support the service discovery and negotiation of data exchange; • These standards are evolving.

  10. OpenDocument • OpenDocument proposed by Oasis • Composed of input by major corporations • Based off file format from OpenOffice • Ratified on May 1, 2005 • Multiple applications support format • Royalty free distribution

  11. Advantages & Disadvantages • Advantages • Not a binary file format • Ratified standard • Portability across multiple editors • Disadvantages • No standard format for formulas • Multiple ways to define the same properties

  12. Composition of OpenDocument file • Compressed archive file containing the following files and directories • Content.xml • Sytles.xml • Meta.xml • Settings.xml • Pictures/ • Meta-inf/

  13. Testing • OpenDocument files are opened in multiple editors. • The formatting and readability of text is examined • Spreadsheets with complex formulas are studied to see if portability exists

  14. Software Retrieval • Reusable assets • Analysis documents • Design documents • Source codes • Executable objects • Aspect based component description • Syntactic aspect • Functional – Behavioral aspect • Non-functional aspect • Licensing aspect

  15. XML-based Aspect Representation ` Syntactic aspect <Component URI="corbaloc://db.com/oracle/" AccessType="Service" ComponentType="CORBA" > <SyntacticAspects> <Interface Name="Query"> <Method Name="Select" ReturnType="RecordSet"> <Parameters> <Parameter Name="QryString" Type="string"/> </Parameters> <Exceptions> <Exception Name="SQLException"/> </Exceptions> </Method> </Interface> <!-- Other interfaces like Update, Admin,..--> </SyntacticAspects> <FunctionalAspects> <Properties> <Name="MAXTABLES" Value="1024"/> <Name="MAXTRIGGERS" Value="16"/> </Properties> </FunctionalAspects> <NonFunctionalAspects> <Contract Type="http://www.iso.org/performance.xml"> <Dimension Name="Delay" units="msec"> <Properties> <Property Name="Mean" Value="50" Relation="LT"> <Property Name="Variance" Value="0.001" Relation="LE"> </Properties> </Dimension> </Contract> </NonFunctionalAspects> <Licensing_Commerce_Aspects> <LicenseType>Pay-Per-Use</LicenseType> <PricingStructure> <Pricing InterfaceName="Query" Cost="0.1" Currency="dollar"/> <Pricing InterfaceName="Update" Cost="2" Currency="dollar"/> <Pricing InterfaceName="Admin" Cost="10" Currency="dollar"/> </PricingStructure> </Licensing_Commerce_Aspects> </Component> ` • Functional aspect ` • Non-functional aspect ` • Licensing aspect

  16. Library Component Specification Lexical Analyzer Syntactic Analyzer Extracted library component specification Semantic Analyzer Component Analyzer Retrieved components Match Maker Query Component Specification Lexical Analyzer Syntactic Analyzer Extracted query component specification Semantic Analyzer Component Analyzer Basic Architecture

  17. Component Description Repository Component Integrators Component Vendors Matchmakers M1 … … Query Interface M2 Publish Interface … Mn Licensing server Software Component Retrieval System (Varadarajan, et. al. “Componentxchange: An E-Exchange for Software Components”, WWW’10, 2001)

  18. Distributed Data Warehouses • Numerous Interoperability Issues • Metadata Interchange Protocols • Metadata Management • Repository Architectures • Heterogeneous Metadata • Heterogeneous Metadata • Many tools have vendor specific metadata • Many different interfaces and bridges • Difficult to introduce new components • Possibility for a Metadata standard?

  19. Database Tool Database Tool Database Tool Database Tool Repository Database Tool Database Tool Repository Example

  20. Common Warehouse Metamodel • Common Metamodel • Metamodel standard for all data warehouse tools • Designed for the data warehouse domain • Allows extensibility of metadata from standard model • Model Driven Approach • CWM is expressed in UML • CWM is interchanged via XML • Use MOF in order to fuse UML and XML • Products of CWM • XMI/XML for metadata interchange • DTD to validate XMI/XML documents • API for metadata manipulation

  21. A Common Metamodel Tool A Metamodel Tool B Metamodel Common Data Used for CWM Metamodel Tool C Metamodel

  22. Database Tool Database Tool Database Tool Database Tool Repository Database Tool Database Tool Repository Example Revisited

  23. Return on Investment • ROI – Return on Investment • Business decisions made on ROI • ROI will increase with the lifespan of an application • Metadata Bridges = Low Return on Investment • Can’t substitute another tool in without creating another bridge • Global Metadata = High return on Investment • Robust • Plug and Play • Pick and Choose best component

  24. Further Research • Metadata Management Strategies • Affect of Extensibility in CWM • CWM Package Hierarchy • Individual Package Functions • Relationship with Meta-Object Facility • Metadata Repository Architectures • Strengths/Weaknesses • Return on Investment

  25. Questions

More Related