Page 86 - DCAP308_OBJECT_ORIENTED_ANALYSIS_AND_DESIGN
P. 86
Object Oriented Analysis and Design
Notes 7.1 Use Case Models
A use case model is a model of how different types of users interact with the system to solve a
problem. As such, it describes the goals of the users, the interactions between the users and the
system, and the required behavior of the system in satisfying these goals.
A use case model consists of a number of model elements. The most important model elements
are: use cases, actors and the relationships between them.
A use case defines a goal-oriented set of interactions between external actors and the system
under consideration. Actors are parties outside the system that interact with the system. An
actor may be a class of users, roles users can play, or other systems. Cockburn (1997) distinguishes
between primary and secondary actors. A primary actor is one having a goal requiring the
assistance of the system. A secondary actor is one from which the system needs assistance.
A use case is initiated by a user with a particular goal in mind, and completes successfully when
that goal is satisfied. It describes the sequence of interactions between actors and the system
necessary to deliver the service that satisfies the goal. It also includes possible variants of this
sequence,
Example: Alternative sequences that may also satisfy the goal, as well as sequences that
may lead to failure to complete the service because of exceptional behavior, error handling, etc.
The system is treated as a “black box”, and the interactions with system, including system
responses, are as perceived from outside the system.
Thus, use cases capture who (actor) does what (interaction) with the system, for what purpose
(goal), without dealing with system internals. A complete set of use cases specifies all the
different ways to use the system, and therefore defines all behavior required of the system,
bounding the scope of the system.
Notes Generally, use case steps are written in an easy-to-understand structured narrative
using the vocabulary of the domain. This is engaging for users who can easily follow and
validate the use cases, and the accessibility encourages users to be actively involved in
defining the requirements.
A scenario is an instance of a use case, and represents a single path through the use case. Thus,
one may construct a scenario for the main flow through the use case, and other scenarios for each
possible variation of flow through the use case.
Example: Triggered by options, error conditions, security breaches, etc.
Scenarios may be depicted using sequence diagrams.
Use case is a representation of a user goal to be satisfied. A system can be considered a collection
of use cases together represented in a use case model. The use case model is a picture intended to
be easily ‘surveyable’ and changeable by customers and developers alike. A use case model
(UCM) has actors, task ovals, associations and a system boundary. UCMs start simple and
become more complex over time. Each use case has two parts; a graphical representation and a
textural representation.
The text part adds detail to the graphical representation.
80 LOVELY PROFESSIONAL UNIVERSITY