Panel: Implementing ebXMLObject Management Group
ABSTRACT
How does ebXML fit with the work of other industry standards groups? This panel will feature representatives from the Object Management Group (OMG), HR-XML, the Human Resources XML Consortium, the Open Travel Alliance, a DISA organization, and the Automotive Industry Action Group (AIAG). Each will provide information about how the work of their group relates to ebXML and their plans for the future.
Table of Contents
1. OBJECT MANAGEMENT GROUP
1.1. Background
The Object Management Group (OMG) is an international not-for-profit organization of information system vendors, software developers, and end-users. Formed in 1989 with 13 members, OMG now has around 800 members who cooperate under the auspices of the organisation to create and maintain software specifications for interoperable enterprise and Internet applications. With well-established standards covering software development from design, through development, to deployment and maintenance, the OMG supports a full-lifecycle approach to enterprise integration. OMG does this through its standards for application design and implementation:
-
The Unified Modelling Language (UML), a de-facto standard for program analysis and design, and soon to be an International (ISO) standard.
-
XML Meta-data Interchange (XMI), a specification for both exchanging UML models using XML, and creating DTDs that correspond to particular UML models.
-
Common Object Request Broker Architecture (CORBA), the widely-used standard for application integration within the enterprise, and the interoperability platform upon which Enterprise Java Beans (EJB) and Java2 Enterprise Edition (J2EE) are based.
-
The Meta-Object Facility (MOF), a data repository specification aligned with UML.
-
Common Warehouse Meta-model (CWM), a specification to help building data warehouses from multiple databases using multiple paradigms, including relational-, object-, and XML-based data.
-
A large number of domain-specific integration specifications for various industries including Healthcare, Manufacturing, Telecoms and others, each using a variety of technologies including CORBA, XML and UML.
The OMG, through its members, creates and adopts specifications in many areas. Implementations of OMG specifications are produced by vendors as products, or by end users and others who need a standard solution to the particular computing or business problem.
The focus of the OMG is not just to create commercial consensus through de facto standards, but to ensure that those standards are used commercially, thus creating a marketplace of interoperable software in which users can purchase interoperable software "off the shelf."
OMG both creates specifications that use XML, and specifies support tools for XML, in association with its modelling and middleware specifications. XML also plays a role in OMG's new Model-Driven Architecture.
1.2. OMG modelling specifications
As the complexity of business systems increase in scope and scale, a common modelling language is needed for specifying, visualizing, constructing, and documenting the elements of software (and non-software) systems. Beginning in 1995, OMG fostered agreement between Object Analysis and Design (OA&D;) experts, who cooperated on the creation of OMG's Unified Modelling Language (UML). UML represents a collection of the best engineering practices that have proved successful in modeling large and complex systems. It is used to model software systems prior to construction, in design tools that automate various aspects of software production, and to document deployed software systems throughout their (often very long) lives. OMG's creation of UML has released a huge pent-up demand in the industry over the past five years; users, freed from the uncertainties of being locked into proprietary design notations, have comprehensively embraced UML, and it it estimated that over 70% of software-writing organisations now use UML in some way. This in turn has created a vigorous market for UML expertise, tools and training.
UML is complemented by a number of other compatible OMG specifications, including a standardised set of repository interfaces compatible with UML (the Meta-Object Facility, or MOF) and a specification for using UML with XML, known as XMI (XML Metadata Interchange) - more on this below.
1.3. OMG Middleware
OMG's CORBA specification provides the backbone for software integration in the enterprise, with 70% of organisations surveyed by Gartner Group citing CORBA compliance as "important" or "very important" to integration, outpacing every other factor in that survey. CORBA provides the underlying interoperability, security and transaction framework for Sun's EJB and J2EE specifications, and is also widely used with programming languages as varied as Ada, C++, PL/1 and Common Lisp. CORBA implementations are available from IBM, BEA, Iona, Borland, Sun, Fujitsu, Hitachi, and two dozen other vendors. The specifications are independent of operating system and programming language dependencies, and provide a large suite of enterprise-strength services for naming, transactions, security and message-based communication. CORBA is in daily use at the Weather Channel (handling local forecast inserts in their TV broadcasts), Boeing Commercial aircraft (which uses a CORBA-based PDM system to help build its airliners), Fedex, SABRE, Wells Fargo Bank, CNN Interactive, and a host of other high-profile organisations that need robust integration middleware.
1.4. OMG support of XML
OMG specifications support the use of XML in the enterprise in two ways - by specifying tools to design XML DTDs, and by providing a robust enterprise-strength framework for transporting XML data.
Support for designing XML DTDs comes from the XMI specification, now being widely implemented by UML tool vendors. XMI serves two purposes. Firstly, it provides a common, open mechine-readable interchange format for UML designs, allowing them to be exchanged between different vendors' tools, stored, downloaded from Web sites, and so on. This common format is specified using an XML DTD - a classic use of XML to create an application-specific language.
The second function specified by XMI is a standard way of creating DTDs that correspond to UML models, allowing XML DTDs to be automatically generated from UML models. This is a major benefit to those designing and maintaining large XML DTDs - instead of coding the DTDs by hand, a designer can use the visual UML notation to model the data, and then automatically generate the corresponding DTD using the XMI support now provided in many UML design tools. This is far easier and more intuitive than trying to create and maintain a large DTD by hand.
Support for transporting XML data comes from the XML/Value facility in the CORBA specification. This uses the W3C Document Object Model (DOM) specification to support in-store manipulation of XML data structures, which can then be transmitted over networks using an enterprise-strength CORBA transport, with security and transactional integrity if required. CORBA XML/Value also supports efficient, compressed wire formats, to allow large volumes of XML-based data to be transmitted efficiently.
1.5. OMG use of XML
OMG specifications use XML to create domain-specific languages within OMG specifications where-ever it's appropriate. Examples include DTDs for specifying CORBA component deployment (in the CORBA component model), and DTDs included in OMG interoperabilty specifications for the Utilities industry. The list of DTDs (and in future, of Schemas) created by OMG is continuously expanding.
1.6. Model-Driven Architecture
XML, CORBA and modelling standards all come together in OMG's Model-Driven Architecture (MDA). By standardizing services and facilities as platform-independent UML models, OMG enables them to serve enterprises and industries that chose various middleware platforms, including those based on XML, CORBA, Java, and other technologies.
The key insight behind MDA is that there is no one Silver Bullet that solves all of an organisation's middleware needs. CORBA (whether used on its own or as part of EJB) provides integration within the Enterprise, XML is establishing itself as the de-facto standard for B2B communications, especially through the work in ebXML, HTML/HTTP is widely used to send information to the desktop via browsers, and proprietary middleware such IBM's MQ Series and Microsoft's.NET technology are also prevalent in industry. No one of these solutions solves all the problems of the enterprise - each fills a complimentary niche in an organisation's IT requirements. However, designing and maintaining solutions that must interoperate with different kinds of peers and clients using a variety of these different middlewares is problematic.
OMG's MDA is based on creating Platform-independent models of the data and processing functions in a business domain, and then mapping these independent models onto platform-specific models, tailored to the particular software platform being used for a particular function, be it XML, pure CORBA, CORBA/EJB,.NET, or whatever. By creating and maintaining these models, OMG will be able to specify multi-platform solutions that match the real-world needs of the industry, avoiding single-platform "one-size fits all" dogma. This approach permits multi-platform solutions to be derived from a single model of a business function, making it easier to ensure consistency between the parts specified in the different, complimentary technologies. It also provides a degree of future-proofing, helping to ensure that when the next new platform arrives on the scene, such as WAP, or some other new technology as yet unanticipated, it'll be relatively easy to create a mapping from the platform-independent model to enable use of the new technology.
1.7. Summary
OMG is a broadly-based industrial consortium dedicated to fostering software interoperability through the creation and use of open specifications. The organisation has developed standards for modelling, middleware and data warehousing, and in a host of specific industries such as healthcare and manufacturing. OMG both creates XML-based specifications, and supports the use of XML through specifications for XML tools. XML is one of the complimentary interoperability technologies supported by OMG's Model-Driven Architecture, the multi-platform architecture supporting the needs of today's enterprise.


