When defining attributes for a generic business object, study the
attributes of the application-specific business objects to which the generic
business object will map. Consider these guidelines:
- Note the similarities between entities in the application-specific
business objects's attributes. Define attributes for the generic
business object that most simply match those in the application-specific
business objects.
- Note the differences between entities in the application-specific business
objects' attributes. If one application-specific business object
splits data into multiple fields while another combines the same data into one
field, determine which design best simplifies mapping between the two
application entities. For more information, see "Designing for an existing connector or data handler".
- Consider requirements generated by the processing performed by the
collaboration object. For example, if the collaboration object
processes prerequisites as described in "Designing generic business objects", ensure that the generic business object contains all attributes
required to store the prerequisite data.
- Develop the generic business object and interface to accommodate the
largest number of applications involved in the interface. For instance,
if there are four applications involved in an interface and three of them
encapsulate data in a child object but the fourth contains that data at the
parent-level object, then design the generic business object so that it
encapsulates the data in a child object as well--this results in mapping
and other related tasks being that much easier.
- Take future development efforts into account; you might design a
generic business object to accommodate data structures that will be required
at a later point to minimize the effort and change impact at that time.
Do not, however, significantly increase the scope of development for a future
project that may never come to be.
In general, a generic business object definition should include attributes
that capture all the data elements that are to be transformed among all the
application-specific business objects to which the generic business object
will map.
Names of the attributes should be as intuitive as possible. For
example, if several applications refer to an entity as a Customer
and one application refers to the same entity as a Business
Organization, use the more common terminology to name the generic
attributes.
- Note:
- The name of an attribute can contain only alphanumeric characters and
underscore (_).
