Bookshelf Home | Contents | Index | Search | PDF | ![]() ![]() ![]() ![]() |
Siebel Tools Reference > Siebel Architecture (Basic Concepts) > Application Architecture Overview >
Business Objects Layer
The Business Objects layer consists of business object definitions that are built on data object definitions and selectively combine and associate data object definitions into logical data constructs that are useful for application design. The Business Objects layer in the repository is implemented by means of the object manager classes.
The major object types in the Business Objects Layer are:
- Business component. One fundamental business entity in the enterprise—for example, Contact, Business Address, or Activity.
- Business object. Denotes a functional area that is a grouping of one or more related business components.
Business Components
A business component consists of multiple fields that characterize it; for example, some of the fields for Contact might consist of first name, job title, and email address.
Figure 4 shows that a business component maps to one main table in the Data Objects layer and fields in the business component map to columns in the main table. In this example, the Contact business component maps to the S_CONTACT table.
Business components can also include data from related tables. Figure 5 shows the Contact business component mapped to the main table (S_CONTACT) and also two related tables, S_ORG_EXT and S_OPTY_CON.
You can think of a business component as a denormalized virtual database table that spans multiple real tables.
The "grouping" of data can be achieved by:
- Referencing an extension table
- An explicit join of two tables
- A link that joins data in an intersection table
Business Objects
A business object represents a major functional area of the enterprise—every major entity has a business object. Examples of business objects are Opportunity, Account, and Contact.
A business object is a collection of related business components; for example (as shown in Figure 6), the Opportunity business object consists of Opportunities plus related Contacts, Activities, Products, and Issues. Each business object has one business component that serves as the master or driving business component. This master business component provides focus for the business object, and they both have the same name (the name is Opportunity in Figure 6).
The Opportunity business component has one and only one parent, which is the Opportunity business object. A link would be required for the other business components (Contact, Activity, Product, and Issues) to connect with the Opportunity business object.
Business Component Reuse
As shown in Figure 7, a business component can be defined once in terms of a logical collection of columns from one or more tables, and then used in many different business object contexts. One specific area of application configuration where reuse plays a significant role is virtual business components. For more information, see Integration Platform Technologies: Siebel eBusiness Application Integration Volume II.
Business Object Types
The object types for the business object layer are described briefly below. For more detailed descriptions, see Object Types Reference.
- Business Component. A business component is a logical entity that associates columns from one or more tables into a single structure. Business components provide a layer of wrapping over tables, causing applets to reference business components rather than the underlying tables. This design creates convenience (all associated columns together in one bundle), developer-friendly naming, and the isolation of the developer role from the database administrator role.
Multiple users can instantiate copies of the same business component. Data changes made by any one user are reflected in all instances of the business component.
- Field. A field object definition associates a column to a business component. This is how columns from tables are assigned to a business component and provided with meaningful names that the customer developer can easily change. Alternately, a field's values can be calculated from the values in other fields in the business component. Fields supply data to controls and list columns in the Web interface.
- Business Object. A business object implements a business model (logical database diagram), tying together a set of interrelated business components using links. The links provide the one-to-many relationships that govern how the business components interrelate in the context of this business object.
NOTE: The object type called Business Object is not to be confused with the general category called business object types. Business Object is one of the object types in the Business Objects layer. Similarly a business object, which is one kind of object definition, is not the same as the category "business object definitions."
- Business Object Component. A business object component object definition is used to include a business component and, generally, a link in the business object. The link specifies how the business component is related to another business component in the context of the same business object.
- Link. A link implements a one-to-many relationship between business components. The Link object type makes master-detail views possible. A master-detail view displays one record of the master business component with many detail business component records corresponding to the master. A pair of links also may be used to implement a many-to-many relationship.
- Multi-Value Link. A multi-value link is used in the implementation of a multi-value group. A multi-value group is a user-maintainable list of detail records associated with a master record. The user invokes the list of detail records from the master record when it is displayed in a list or form applet. For example, in an applet displaying the Account business component, the user can click the Select button to the right of the Address text box to see a pop-up window displaying multiple Address records associated with the currently displayed account.
- Join. A join object definition creates a relationship between a business component and a table that is not the business component's base table. The join allows the business component to build fields using columns from the non-base (joined) table. The join uses a foreign key in the business component to obtain rows on a one-to-one basis from the joined table, even though the two do not necessarily have a one-to-one relationship.
- Join Specification. A join specification is a child object type of join that provides details about how the join is implemented within the business component.
- User Property. A user property is a temporary storage field in a business component that is not tied to the database. When a user sets a value in a business component user property, it is not visible to other users of the same business component. User properties are not saved across sessions.
- Business Service. A business service is a reusable module containing a set of methods. It provides the ability to call its C++ or script methods from customer-defined scripts and object interface logic, through the invoke-method mechanism.
For more information, see Integration Platform Technologies: Siebel eBusiness Application Integration Volume II.
Bookshelf Home | Contents | Index | Search | PDF | ![]() ![]() ![]() ![]() |
Siebel Tools Reference Published: 20 October 2003 |