
Business Object Model |
The business object model
is an object model describing the realization of business use cases. It serves as an
abstraction of how business workers and business entities need to be related and how they
need to collaborate in order to perform the business. |
Topics
A business object model describes the use cases of a business from the business
workers internal viewpoint. The model defines how the people who
work in the business, and the things they handle and use"the classes and
objects of the business"should relate to one another, statically as well as
dynamically, in order to produce the expected results. Together, the objects of the
models classes should be capable of performing all the use cases of the business.
The models primary target group is the affected members of the business. The terms
and level of detail used here are specific to this target group.
It is recommended that you give each Business Worker and Entity a name that expresses
the responsibilities of its objects. Clear, self-explanatory names may require several
words. Each name should be unique. You should also avoid names that sound alike or are
spelled alike, as well as synonyms. A good name is usually a noun, or the noun form of a
verb.
As you study the business workers and business entities that participate in your
business different use cases, you may find several that seem to be so similar that
they are really one class. Even when different business use cases do not have identical
demands, the classes may be similar enough to be considered one and the same phenomenon.
If this is the case, you should merge the similar classes into one, resulting in a
business worker or business entity that has sufficient relationships, attributes and
operations to meet all the demands of the different business use cases.
Several business use cases may thus have quite different demands on one and the same
class. In the case of business workers, if you have employees who are capable of acting in
the described set of roles, you will also have flexible employees that can work in several
positions. This gives you a more flexible business.
In the business object model, workers represent the roles which the employees will act;
and business entities represent the things the employees will handle. Using a business
object model, you define how the employees of the business should interact to produce the
desired results for the business actor. The system use-case model and design model, on the
other hand, specify the business information systems.
Business modeling and system modeling address two different problem areas, at two
different abstraction levels. Thus, the general rule is that the information systems
should have no direct presence in the business models.
On the other hand, the employees acting as workers use information systems to
communicate with each other, and with the actors, and to access information about business
entities. Whenever there is a link, association or attribute, there is also potentially
some information-system support.
These two modeling contexts have the following relationships:
- An employee acting as a certain worker corresponds to a system actor of the information
system. She is probably best supported if the information systems are structured so that
her entire work in a business use case is supported by one information-system use case.
- Alternatively, if the business use case is large, long-lived, or combines work from
several independent areas, an information-system use case could instead support one
operation of the worker.
- The things the employees work withmodeled as business entitiesoften have
representations in the information systems. In the object model of an information system,
these business entities occur as entity classes.
- Associations and aggregations between business entities often give rise to corresponding
association and aggregations between entity classes in the design model.
- Thus, potentially an information-system use case accesses and manipulates entity classes
in the design model representing the business entities that the supported business use
case accesses.
- Finally, a business actor that directly uses a business information system also
becomes a system actor of the information system.
These relations are essential when identifying requirements on the information systems
that support the business.
Sometimes the employees of one business contact the employees of another business by
using the other business information system. From the perspective of the modeled
business, that information system is an actor.
Example:
A software developer tries to understand a problem in the product he is
responsible for. To understand if the problem originates from the programming tool she is
using, she contacts the suppliers World Wide Web server and studies the list of
known problems in the current release of the programming tool. Thus, the worker
"Software Developer" interacts with the actor "Supplier WWW Server".
The general rule is that information systems should not be modeled explicitly in the
business object model; they are just tools in the hands of the workers. We present one
exception to this rule, which concerns information systems for businesses that are used
directly by customers. If this interaction forms a major part of the business services, it
might be so important commercially that you want to show it in the business model.
Telephone banking services are good examples of this type of information system.
From the business-modeling perspective, the following approach is suggested:
- Regard the information system as a fully automated business worker that interacts with
an actor.
- If the information system relates to any of the other business workers or business
entities, consider illustrating this relationship with a link or an association. Perhaps
the system informs a business worker of its progress, or uses information concerning a
business entity.
- Briefly describe in the business object model the business worker, as well as a list of
services that represents the information system.
- Model all details and characteristics of the information system and its environment in
an information system model.
- Introduce a naming convention so that a fully automated business worker is easily
identified among the business workers; for example a prefix or a suffix, like
"automated <worker name>" or "<worker name> (IT system)".
You may even define a stereotype with a particular icon.
- Taken together, the business workers and business entities perform all the activities
described in the business use casesno more, no less.
- The business object model gives a good, comprehensive picture of the organization.
| |

|