A generic business object reflects a superset of information that represents entities used by multiple diverse applications or programmatic entities. InterChange Server collaboration objects use generic business objects so they can provide information for a variety of diverse applications. Therefore, designing generic business objects is part of the task of collaboration object development. When designing a generic business object, take into account the following:
The following two considerations illustrate the complexity of business logic analysis:
Sometimes the application that triggers the collaboration object does not provide all the data required to process the triggering business object. The additional data may reside in other applications, including the destination application.
For example, a Sales Force Automation (SFA) application (such as Siebel) may generate a quote that needs to be logged as an Order in an order management system (such as SAP). However, before the Quote can become an Order, it may require additional information not available in the SFA application. For example, an Order may require such additional data as customer credit status (from a financial system), contact information (from a customer support system), or Availability To Promise information (from a warehousing system).
When you design the generic Order business object, you may have to include attributes and design a structure that supports data which is not present in the source application necessarily, but may be present in other applications involved in the interface.
Determine how and whether individual application entities correspond to each other or are cross-referenced to each other generically in the business process.
For example, a customer in Oracle is represented as a Customer whose address is represented as an Address. A customer in SAP is represented as a "SoldTo" entity whose address is represented as a "ship-to" entity. A customer in Clarify is represented as a "Business Organization" whose address is represented as a "Site".
Study the functionality and relationships between an application's entities to determine the business objects and processes involved in integrating data between applications.
Consider the following integration possibilities: