An eXtensible Object Model for Business-to-Business eCommerce Systems

________________________________________________________________

J.J. Dubray, Yuzo Fujishima, P. Curtin, A. Chaloori

NEC Systems

Boston Technology Center

305 Foster Street

Littleton, MA 01460

Correspondence should be addressed to:

jdubray@nectech.com

Tel: (978) 742-8816

________________________________________________________________

The business-to-business eCommerce environment has created new challenges to IT organizations. In a few months, a corporation success is going to be measured by its ability to open its systems and transact with several hundreds to several thousands business partners.


Fig 1. The eBusiness Environment

This problem can be viewed as another integration problem, but it is actually more than that. The number of systems to integrate requires the definition and wide acceptance of standards from middleware to business protocols and semantic. Unlike application-to-application interactions (A2A), business-to-business (B2B) interactions are legally binding. In addition to guarantied message delivery, companies must now acknowledge the validity of the messages and its acceptance.

Current IT infrastructures are not ready to address the complexity of business-to-business eCommerce. They are not designed to support and handle near-real-time business messages. EDI, CORBA or DCOM were not built to support large business communities of several thousand partners linking all their systems together. HTML and the current web-architecture are not well suited to exchange business information in a reliable and secure fashion. Conventional object technology cannot fit into an e-Business environment:

 

In order to address all these issues and provide a framework to design and implement eBusiness solutions at NEC, our group has developed a generic web-based architecture for business-to-business eCommerce systems based on the concepts of:

         Business Messages

         Business Services

         Business Processes

         Business Documents

The first part of this presentation focuses on describing an eXtensible Object Model (XOM) which is using well-formed XML documents to model business objects. The second presents our eBusiness Architecture (eBusiness Process Engine - eBPE) that is using XOM as one of the founding technology, and constitutes a run-time facility for the XOM concepts.

eXtensible Object Model - XOM


Object Oriented Design provides a modeling tool centered on the concept of class. Methods, data structure and datatypes are all attached to the class definition.

Fig 2. The Object Oriented Design Metamodel

A Java or C++ run-time facility needs to constantly refer to the class definition to handle its instances. Referring to an external entity with proprietary encoding is an important issue in the development of highly distributed systems. Objective-C and SmallTalk have partially solved the problem by providing a semantic based method invocation. However, instance's data structure is still constrained to a class structure. A key concept in the OMG distributed component specification [1] is to wrap messages into a rigid request and marshal all the arguments in the Semantic Data Object that is passed as a set of arguments with the request message. The receiver processes the SDO to extract key value-pairs. The major issue with the approach is the maintenance of the SDOs code when the business object format evolves.

We suggest to model business objects after well-formed XML documents [2] (i.e. not necessarily associated with a schema). The major benefit of this approach is that now the "instance" carries both data and data structure.

This approach features several benefits in a highly distributed environment like eBusiness. One of the most innovative is instance evolution or extensibility. In the OO world once an instance has been created, its structure has been set in stone. The only evolution possible is to create a new instance of a new


Fig 3. The XOM Metamodel

class or subclass, then populate this new instance with some or all of the content of the original instance and finally delete the original instance. Well-formed XML documents can be appended with new data structure and data without loosing the integrity of the original instance. This makes them both flexible and adaptive.

Instances of well-formed XML documents (XOM instances) are concept that is hybrid between the concepts of Object and Documents. You can access the data through a strict semantic, and you can augment the data at run-time like you would edit a document.

In addition to being distributable components in the OMG sense [1], XOM instances are also semantically accessible (as opposed through an interface) [2,3]. You don't need to share the knowledge of all or part of the data structure to access the data, you only need to share a common semantic. Furthermore, semantic translator can easily be built in the access layer, in the case where the two systems would not share the same semantic.

The extensible object model has also some major design implications:

The major drawbacks of this approach are the instance memory model, which is not optimized for space conservation or content retrieval, and the re-usability of data structure definitions.

eBusiness Process Engine


We have designed and implemented a run-time facility that exploits the concepts of the extensible object model. This work is the basis of an eBusiness Architecture that we have developed for NEC and its business units to facilitate the development of business-to-business eCommerce Solutions [5].

Fig 4. eBusiness Process Engine

From an architecture perspective, the eBPE is designed with two components:

         An extended workflow engine (Application Logic Layer)

         A business document server (Data layer)


The extended workflow engine manages users and business partner systems interactions with the business document server and operational systems according to a business process definition (Fig. 5). The application logic is clearly divided into workflow logic and services. A workflow definition specifies the choreography of service invocation and documents that will be passed to, modified, or created by the services. The use of well-formed XML documents as arguments of the service invocation, in combination with the projection layer greatly simplifies the requirements of a Service Definition Language compared to IDL.

Fig. 5 A requisition business process definition (After OBI business process [6])

The business document server provides a unified view of the data model organized in well-formed XML business documents. This XML document repository is augmented with the projection layer that enables the decoupling between our data model and the various services that consume, create or update business data.

The eBPE is compliant with XML-based industry standards like RosettaNet, OBI, and the OAG.

References

[1] P. Eeles et al "Building Business Objects", Wiley Computer Publishing, 1998

[2] J.J. Dubray et al "Business Object Modeling: an XML-based approach", Accepted for publication in the Journal of Markup Languages: Theory & Practice, 1999

[3] T. Berners-Lee et al"Web Architecture: Describing and Exchanging Data" W3C Note, 7 June 1999

[4] J. Boyer et al "Extensible Forms Description Language (XFDL) 4.0", Submission September 2, 1998

[5] D. Wiedmer et al "E-Business Process Engine: A Solution Framework for E-Business Integration", White Paper, August 1999.

[6] Open Buying on the Internet Consortium, http://www.openbuy.org/