A normal use case includes a Title, Description,
System Under Design field, Scope field, Level
field,
a Primary Actor field, a Participants field,
a Goal field, a list of Following Use Cases field, a
Precondition, an Invariant, a
Success Postcondition, a sequence of Steps, a set of
Any Extensions, and a set of Extension Points. The
description of these elements is as follow.
- Title: a label that uniquely identifies the use case within
the use case model.
- Description: a free form text that summarizes the use case.
- System Under Design specifies what is the
system in the use case. The system is the entity that react
to stimuli from external actors.
- Scope: specifies what system is being considered black box
under design (e.g. whole business, system, sub-system, function).
The different possible values for scope are defined in property file
traits.properties.
- Level: is the use case level of detail.
The different possible values for scope are defined in property file
traits.properties.
- Primary Actor: the actor that initiates the use case.
- Participants: other actors participating in the use case.
- Goal: a statement of the primary actor expectation at the
successful completion of the use case.
- Follows Use Cases: a list of normal use cases that the
use case directly follow.
A follow list expression reflects
how the listed use cases are synchronized in relation to the
described use case. Two operators are used. Operator AND
expresses synchronization (synchronized follow list),
while operator OR expresses
asynchronism (unsynchronized follow list).
Given use cases , ,
, , , the following interpretation is given.
- If the follow list of is specified as ``
'', all of ,
, ,
must reach a point from which use case
is enabled before use case (synchronism).
- If the follow list of is specified as ``
'', use case may be
executed as soon as any of use cases , ,
reaches a point from which use case
is enabled (asynchronism).
When a use case refers to a use case
in its follow list, use case must include an
enabling directive referring to use
case .
- Invariant: a condition that must
hold through the use case.
- Precondition: a condition
that must hold before an instance of the use case can be executed.
- Success Postcondition: a
condition that must be
true at the end of a 'successful' execution of an instance of the
use case.
- Steps: a sequence of repeat
blocks and steps.
A repeat block is a sequence of steps that are supposed to repeat
based on time and/or condition.
Each step references a use case step operation.
A use case step operation may be a concept operation
instance, a branching
statement or a use case sequencing
statement.
A step may also include a set of step
extensions and an alternative postcondition.
Each step
extension defines an alternative behavior (secondary scenario)
following the
step. Alternative postconditions are conditions that must hold at
the end of the secondary scenario defined by an step
extension.
- Any Extensions: a set of step
extensions that
applies to all the steps in the use case.
- Extension Points: a set of locations in the use case steps where
additional behaviors defined in extension use
cases might be inserted.
A use case description can be seen as a two parts description with:
- -
- a static part that includes the use case
Title, Description, System Under Design,
Scope, Level, Primary Actor, a
Participants, Goal, a list of Following Use Cases,
Precondition, Invariant, and Success
Postcondition fields,
- -
- a dynamic or procedural part that consists of
the use case Steps.
Subsections
Stephane
2007-09-03