Activity: Find Business Workers and Entities
Identify and briefly describe each organization unit within the business being modeled.
Discuss and make sure you agree on which organization units should be included in your
model, if any. Some organization units may very well be of limited interest to describe in
any detail from the perspective of the targeted system. On the other hand, they may
provide important input or receive output, in which case they should be modeled as
business actors; this means they are external to the business being modeled
For more information on organization units, see Guidelines:
Organization Unit.
For each role you can think of in the organization, identify a business worker. Give it
a brief description.
To make sure you haven't missed any business workers, and that the ones you have are
all "inside" of the part of the business you are modeling, walk through each
business use case and state which business workers are involved in which steps.
For more information on business workers, see Guidelines:
Business Worker.
For each business worker, consider what "things" it handles to find what
should be considered business entities.
To show how business entities need to "know of" one another, use associations
(see Guidelines: Associations in the Business Object
Model). Give the associations role names to clarify.
If business entities have clear whole-part relationships, show that with
aggregation-relationships (see Guidelines: Aggregations
in the Business Object Model).
If business entities are specializations or generalizations of one another, use
generalization-relationships to show this (see Guidelines:
Generalizations in the Business Object Model). It is often wise to wait to establish
generalizations until after you have done some work on describing the business entities
(see Activity: Detail a Business Entity).
Document the relationships in class diagrams (see Guidelines: Class
Diagram in the Business Object Model).
Walk through the workflow of each business use case to make sure no business entities
have been forgotten. Also, make sure that the ones you have identified are actually
participating in a workflow.
For more information on business entities, see Guidelines:
Business Entity.
Identify which business workers and business entities participate in the execution of
each business use case. They form the business use-case realization of the business use
case.
Present the business workers and business entities of the business use-case realization
in team-collaboration diagrams (see Guidelines:
Collaboration Diagram in the Business Object Model. Show only those links that are
needed to understand how the business workers and business entities perform in this
business use-case realization workflow.
Instead of using a team-collaboration diagram, you could present the participating
business workers and business entities in a sequence diagram (see Guidelines: Sequence Diagram in the Business Object model).
A sequence diagram could also replace a completely textual description (as described in
the following section). Use the sequence diagram only for workflows or parts of workflows
that are complex, as it is often perceived as too detailed.
To clarify the meaning of the team-collaboration diagrams, you can describe the
workflow of each business use-case realization in terms of its elements, the interacting
business workers handling business entities. This is optional, and only adds value for
more complex workflows or parts of workflows.
- Start by describing the normal workflow of the business use-case realization.
- When the normal workflow is described and relatively stable, start describing any
alternative and optional workflows.
- Define performance goals in terms of cost and lead times for business workers and
business entities.
For more information on business use-case realizations, see Guidelines: Business Use-Case Realization.
Analyze the lifecycle of each business entity. Each business entity should be created
and removed by someone during the life of a business. Make sure that each business entity
is accessed and used by a business worker or another business entity.
Reduce the number of workers. As you develop your models, it is likely that you will
find too many workers. Often one, or more, per use-case realization. Make sure each
business worker corresponds to a set of tasks one person typically would do, even though
these tasks are split over more than one business use case.
Each business entity should have an owner, someone who is responsible for it. You can
model this with an association from the business worker to the business entities the
business worker is responsible for. Some business entities could be owned by people
outside the business. Describe this in the brief description of the business entity.
Evaluate the business use-case realization workflow, the text and diagrams documenting
it. One way to do this is to conduct a walkthrough. In a walkthrough, the person
responsible for the business use-case realization leads a couple of members of the team
through the business use-case realization workflow. Another technique is to perform role-playing, in which people act as business actors,
business workers, and business entities.
See also checkpoints for business object model and business use-case realizations in Activity: Review Business Use-Case Model.
|