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
   81   82   83   84   85   86   87   88   89   90   91