Tuesday, July 5, 2011

Components Services | BOD versus SOI confusion !

Component Services are a set of services that follow the
Service Component Architecture (SCA) paradigm, which is a set of specifications which describe a model for building applications and systems using a Service-Oriented Architecture. SCA extends and complements prior approaches to implementing services, and SCA builds on open standards such as Web services.


Earlier versions of component services were based on SOI and the newer versions of the services are based on BOD framework from IBM.

The BOD is definitely IBM's future direction so if your building a new service you should consider BOD but if you want to use existing IBM services and do some customization, the decision to choose BOD vs SOI, lies on How commerce implemented these services.

Main difference between BOD and SOI, BOD uses pattern matching and DSL to the enter the database VS SOI uses controller commands\data beans \access beans.

E.g.

If your developing something in V7, the decision is purely based on what services are available for the requirements that one has.

BOD: SyncInventoryAvailability uses INVAVL tables and Distribute order management as inventory model.

SOI: SyncProductAvailability uses Inventory table with non-ATP inventory model.

If your store model is using non-ATP, go with SOI and if it's using DOM, the BOD service would be the way to go.

References:
http://www.ibm.com/developerworks/library/specification/ws-sca/

3 comments:

  1. Raj, still I am not completely clear.

    I am referring to this link
    http://publib.boulder.ibm.com/infocenter/wchelp/v7r0m0/topic/com.ibm.commerce.component-services.doc/concepts/cwvstoresoitree.htm

    This tutorial is all about building an SOI module. The client layer, (JUnit or JSP) here actually sends a BOD and get's a BOD document as response. Please clarify more on this part.

    ReplyDelete
  2. The above blog was very specific to the BOD based services that commerce offers versus SOI but not the core concept of BOD. BOD(Business Object Document) is a messaging format like WSDL and is a result of OAGIS specifications. IBM has adopted the OAGIS architecture and uses BOD messages for communication in their Service Oriented Architecture (SOA).
    For more information:
    http://www.oagi.org/oagis/9.0/Documentation/Architecture.html

    ReplyDelete
  3. Read the below post on SOI

    http://deepakpadmakumar.blogspot.in/2014/07/ibm-wcs-soi-frame-wrok.html

    ReplyDelete