Use Cases Use Cases Diagrams

9 downloads 171 Views 72KB Size Report
Basi di Dati e Sistemi Informativi II. Information Acquisition -- 1. ©2003 Giorgini. Use Cases. Use cases. Basi di Dati e Sistemi Informativi II. Information ...
Basi di Dati e Sistemi Informativi II

Use Cases Use cases

Information Acquisition -- 1

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Use Cases Diagrams „ Textual descriptions of the functionality of the system from user’s perspective 9 In our case we consider is the ACTOR perspective „ Used to show the functionality that the system will provide and which users will communicate with the systems in some way when it provides that functionality „ Developed by I. Jacobson et al „ Part of UML

Information Acquisition -- 2

2003 Giorgini

Page 1

Basi di Dati e Sistemi Informativi II

Actors „ Anything that needs to exchange information with the system „ Anything that is external to the system „ Define roles that users can play „ In our case an ACTOR can be: agent, role or a posisition

Information Acquisition -- 3

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Actors „ An actor is someone or some thing that must interact with the system under development

Campaign Manager

Staff Contact Accountant

„ In our case we can consier as actors also other software systems

Information Acquisition -- 4

2003 Giorgini

Page 2

Basi di Dati e Sistemi Informativi II

Use Cases „A use case is a pattern of behavior the system exhibits 9 Each use case is a sequence of related transactions performed by an actor and the system in a dialogue 9 In our case we consider the behavior as a particular way to achieve a goal from the user perspective

Information Acquisition -- 5

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Use Cases „ Actors are examined to determine their needs 9 Campaign Manager -- add a new client 9 Staff Contact -- Change a client contact 9 Accountant -- Record client payment

Add new client

Change a client contact

Record client payment

Information Acquisition -- 6

2003 Giorgini

Page 3

Basi di Dati e Sistemi Informativi II

Use Case Diagram „ Use case diagrams are created to visualize the relationships between actors and use cases

Change a client contact Staff contact

Campaign Manager Add a new client

Record client payment Accountant Information Acquisition -- 7

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Use Cases „ Purpose 9 To produce a set of diagrams which summarize the functions which the users expect to find in the system. 9 To document the scope of the system and the developer’s understanding of what it is that users require. 9 The textual user case descriptions provides a description of the interaction between the users of the system, termed actors, and the high level functions within the system the Use Cases. „ Description 9 Can be in summary form or in a more detailed form in which the interaction between actor and use case is described in a step-bystep way. 9 Describes interactions as the user sees it, and it is not a definition of the internal processes within the systems or some kind of program specification. Information Acquisition -- 8

2003 Giorgini

Page 4

Basi di Dati e Sistemi Informativi II

Agate Case Study

Information Acquisition -- 9

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Agate Case Study

Information Acquisition -- 10

2003 Giorgini

Page 5

Basi di Dati e Sistemi Informativi II

Use Cases relationships „ : A relationship between a general use case and a more specific use case that inherits and adds features to it. „ You can find such generalization looking at both SR diagrams and goal models you have produced in the earlier phases. Validate user

Check password

Retinal Scan Information Acquisition -- 11

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Use Cases relationships „ : The insertion of additional behavior into a base use case that explicitly describes the insertion. 9 Used to avoid describing the same flow of events several times, by putting the common behavior in a use case of its own. „ : The insertion of additional behavior into a base use case that does not know about it. 9 To model a part of a use case the user may see as optional system behavior. 9 To model a separate subflow that is executed only under given conditions.

Information Acquisition -- 12

2003 Giorgini

Page 6

Basi di Dati e Sistemi Informativi II

Inclusion and Extension Check Campaign Budget



Print Campaign Summary

Find Campaign

Information Acquisition -- 13

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Finding Use Cases „ Ask following questions for each actor 9Which functions does the actor require from the system? What does the actor need to do ? 9Does the actor need to read, create, destroy, modify, or store some kinds of information in the system ? 9Does the actor have to be notified about events in the system? or does the actor need to notify the system about something ? What do those events represent in terms of functionality ? 9Could the actor’s daily work be simplified or made more efficient through new functions in the system? Information Acquisition -- 14

2003 Giorgini

Page 7

Basi di Dati e Sistemi Informativi II

Finding Actors „ Can be identified by following questions: 9 Who will use the main functionality of the system(primary actors)? 9 Who will need support from the system to do their daily tasks? 9 Who will need to maintain, administrate, keep the system working(secondary actors)? 9 Which hardware devices does the system need to handle? 9 With which other systems does the system need to interact? 9 Who or what has an interest in the results that the system produce? „ Tips 9 don’t only consider the users who directly use the system, but all others who need service from the system SD, SR and Goal models can help in this Information Acquisition -- 15

2003 Giorgini

Basi di Dati e Sistemi Informativi II

Finding Use Cases „ Without considering current actors 9What input/output does the system need ? Where does this input/output come from or to go? 9What are the major problem with the current implementation of this system?

Information Acquisition -- 16

2003 Giorgini

Page 8

Basi di Dati e Sistemi Informativi II

Documenting Use Cases „ A flow of events document is created for each use cases 9 Written from an actor point of view „ Details what the system must provide to the actor when the use case is executed „ Typical contents 9 How the use case starts and ends 9 Normal flow of events 9 Alternate flow of events 9 Exceptional flow of events

Information Acquisition -- 17

2003 Giorgini

Page 9