Analyzing system processes: Use Case

advertisement

Asper School of Business

University of Manitoba

Systems Analysis & Design

Instructor: Bob Travica

Analyzing system processes:

Use Case Diagram

Updated 2014

Outline

The use case concept

Business events and systems

Elements of use case diagram

Include and Extend relationships between use cases

Reading use case diagrams

Creating use case diagrams

3510 Systems Analysis & Design * Bob Travica 2

Use case concept

• Use case is a model of system functionality.

• Think of main functions a system performs for users – “cases” of using a system.

Use case

Use Case

Diagram of

Order-Entry

Subsystem for RMO

Figure 6-3

3

Use case diagram in system documentation

• Use Case helps to model system requirements

• Easier for users to understand than other diagrams

3510 Systems Analysis & Design * Bob Travica 4

Business Event concept

• A stimulus that requires a system’s response

• Delineated in time; stands on its own

External events occur outside the system

Temporal Events

“clerk calls up customer account”

Figure 5-2

Events affecting a payment system that determine what system has to do – functions, use cases

5

Event types

External Events (outside an IS)

Caused by external agent (human, system)

Temporal Events ( inside an IS)

Occur at a certain point in calendar time

State Events ( inside an IS)

Changes in system states, such as data

Event: QuantityOnHand =< ReorderAmount (QOH goes under a min.)

System’s response: Create new purchase order

Internal events - logic of automated decisions

3510 Systems Analysis & Design * Bob Travica 6

Events Table

Input Output

Figure 5-10

3510 Systems Analysis & Design * Bob Travica 7

Elements of use case diagram:

Actor and System

Actor is someone interacting with use case

(system function). Named by a noun.

Name

• Similar to the concept of user, but

(a) can be non-human and

(b) a user can play different roles ;

(e.g.,: an employee can be worker and manager – plays 2 roles in a system*).

System

• System

• Shape of oval, contains small ovals that stand for use cases (system functions)

3510 Systems Analysis & Design * Bob Travica 8

Actor-System relationship

• Actor triggers (initiates, starts) use case (a system function).

•Actor has responsibility toward the system (inputs), and

Actor has expectations from the system (outputs).

• System has responsibility to respond properly to events

– to execute an appropriate function.

3510 Systems Analysis & Design * Bob Travica 9 of 14

Elements of use case diagram:

Use Case

Do something

System function (process – automated or manual).

Named by a v erb.

Each Actor must be linked to a UC, while some use cases may not be linked to actors (e.g., functions responding to temporal events, UC related to another UC).

= Use Case

3510 Systems Analysis & Design * Bob Travica 10

Elements of use case diagram:

Other components

Connection between Actor and Use Case

Boundary of system

Relationships between Use Cases

<<include>>

Include relationship between Use Cases (one UC must call another; e.g., Login UC includes User Authentication UC)

<<extend>>

Extend relationship between Use Cases (one UC may call another under certain conditions; think: if-then decision points)

3510 Systems Analysis & Design * Bob Travica 11

Include relationship

• Include relationship – a standard UC linked to a

mandatory UC. includes

Do something

And do as part of

Do something

• Example: to Authorize Car Loan (standard use case), a clerk must run Check Client’s Credit History (include use case).

• The standard UC includes the mandatory UC (use the verb to figure direction arrow).

• Standard use case can NOT execute without the include case  tight coupling .

• Note: Visio calls this “uses” relationship.

3510 Systems Analysis & Design * Bob Travica 12

Reading use case diagram with Include relationship

3510 Systems Analysis & Design * Bob Travica 13

Extend relationship

• Extend relationship – linking an optional use case to a standard use case.

extends

Do something

Do if conditions apply

• Example: Register Course (standard use case) may have

Register for Special Class (extend use case) – class for non-standard students, in unusual time, with special topics, requiring extra fees…).

• The optional UC extends the standard UC

• Standard UC executes without the extend UC; an extend UC executes instead of standard UC.  loose coupling.

3510 Systems Analysis & Design * Bob Travica 14

UC relationships – warning!

Invoke them sparingly, only when necessary to show connections between system functions.

Do not fall in a functions.

process trap - thinking about

UCs as steps of a process. UCs are system

Note: UC diagram vs. Activity diagram

System

3510 Systems Analysis & Design * Bob Travica 15 of 14

Temptations with <<extend>>

<<extends>>

Log in

<<extends>>

<<extends>> Overdraft

WDL

<<extends>>

3510 Systems Analysis & Design * Bob Travica 16 of 14

How to create use case diagram

1. List main system functions (use cases) in a column:

 think of business events demanding system’s response users’ goals/needs to be accomplished via the system

Create, Read, Update, Delete (CRUD) data tasks

Naming use cases – user’s needs usually can be translated in data tasks

2. Draw ovals around the function labels (use cases)

3. Draw system boundary

4. Draw actors and connect them with use cases (if more intuitive, this can be done as step 2)

5. Specify include and extend relationships between use cases

(yes, at the end - not before, as this may pull you into process thinking, which does not apply in UC diagramming).

3510 Systems Analysis & Design * Bob Travica 17

Download