Software Development: Understanding Actors, Use Cases, and Interactions, Slides of Communication

An overview of the Use Case Model, a key component of software development. The Use Case Model illustrates the system's intended functions, its surroundings, and relationships between use cases and actors. It includes constructs like actors, use cases, use case relationships, and use case diagrams. Actors represent anyone interacting with the system, while use cases represent the functionality provided. Use case relationships, such as association, uses, extends, and inheritance, define the interactions between actors and use cases.

Typology: Slides

2021/2022

Uploaded on 09/07/2022

nabeel_kk
nabeel_kk 🇸🇦

4.6

(65)

1.3K documents

1 / 11

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Use Case View
1. Overview
2. Graphical Constructs
3. Textual Description
4. The Architectural View of the Use Case Model
Logical View Process View
Implementation
View
Process,Threads
Classes, interfaces,
collaborations
Source, binary, executable components
Deployment View
Nodes
Use Case View
Use cases
pf3
pf4
pf5
pf8
pf9
pfa

Partial preview of the text

Download Software Development: Understanding Actors, Use Cases, and Interactions and more Slides Communication in PDF only on Docsity!

4. The Architectural View of the Use Case Model3. Textual Description2. Graphical Constructs1. OverviewUse Case View

Logical View

Process View

ViewImplementation

Process,Threads

Source, binary, executable componentscollaborationsClasses, interfaces,

Deployment View

Nodes

Use Case View

Use cases

Use Case View 1. Overview

Captures system functionality as seen by users

Built in early stages of development

Developed by

(^) analysts and domain experts

System behavior

, that is what functionality it must provide, is

documented

(^) in a use case model.

 Use Case Model

illustrates the system’s

(^) intended functions

(^) (use cases), its

surroundings

(^) (actors), and

(^) relationships

(^) between the use cases

developers to^ • provides a vehicle used by the customers or end users and theand actors (use case diagrams).

(^) discuss the system’s functionality and behavior

.

  • starts in the Inception phase with the

(^) identification of actors

(^) and

principal use cases

(^) for the system, and is then matured in the

elaboration phase, by adding more details and additional use cases.

 Use Cases

  • what tasks are performed by each actor? • what capabilities will be provided to an actor by the system orrepresent the functionality provided by the system; that is:

measurable result of values for a particular actor.sequence of transactions performed by a system that yields a

Place Order

inside:In the UML, a use case is represented by an oval with a name

 Use Case Relationships

Association

  • can be navigable in both ways or in only one way. • a relationship that represents communication between an actor and a use case;

Two types of relationships that may exist between use cases:

(^) uses

and

extends

  • An (^) extends

(^) relationship is used to show:

-Different flows which may be run based on actor selectionas triggering an alarm-Behavior that is only run under certain conditions, such-Optional behavior

is related to these uses cases by a^ • A functionality shared by multiple use cases can be placed in a separate use case which

(^) uses

(^) relationship.

Inheritance:

  • Generalization or specialization relationships that may exist between actors.

 3. Textual Description of a Use Case

description of the events needed to accomplish the required behavior.Each use case is documented with a flow of events, which is a

describe what the system should do and not how the system does it.The flow of events is written in the language of the domain and

The flow of events should include: -The description of any alternate or exceptional flows-The normal sequence of events for the use case-What data is needed by the use case-What interaction the use case has with the actors-When and how the use case starts and ends

Template:

X Flow of Events for the <

name

> Use Case

X.4 Alternative FlowsX.3 Subflows (if applicable)X.2 Main FlowX.1 Preconditions

Where X is a number from 1 to the number of use cases

 4. The Architectural View of the Use Case Model

use case model contains all the use cases).Contains only architecturally significant use cases (whereas the final

  • •••Theestablishment of a resilient architecture.•• • •Is defined during inception and elaboration phases and allows the

(^) logical view

(^) is derived using the use cases identified in the

architectural view of the use case model.

Architecturally significant use cases

  • • • •include:•• • •could possibly impact the architectureis to accomplish. • •••are the ones that cover the main tasks or functions the system

as performance, responses times etc.-use cases that have the most important nonfunctional requirements, such-critical use cases, those that are most important to the users of the system

Secondary and optional use cases are not key to the architecture.

Customer

Query

Withdrawal Transfer Deposit

Validation

<> <><>

Customer Foreign

Bank Customer

Maintain

OfficerBank

ATM System

Handle Exception

<>

Check PIN

Collect statistics

<>

Advertise

Example: Textual Description for Check PIN Use Case

X Flow of Events for the <

name

> Use Case

X.4 Alternative FlowsX.3 Subflows (if applicable)X.2 Main FlowX.1 Preconditions

Where X is a number from 1 to the number of use cases

Flow of Events for

(^) Check PIN

(^) Use Case

Main flow of events

: The use case starts when the system prompts the

(^) User

(^) for a PIN

number. The

(^) User

(^) can now enter a PIN number via the keypad

(^) (E1)

. The

(^) User

(^) commits

the entry by pressing the Enter button

(^) (E2)

. The system then checks this PIN number to see

if it is valid

(^) (S1, E3)

. If the PIN number is valid, the system acknowledges the entry, thus

S1: Subflows: ending the use case. (^) The system invokes

(^) Validate

(^) use case.

E1: Alternative flow of events: (^) The (^) User

(^) can clear a PIN number any time before committing it and reenter a new PIN

E2: number. (^) The (^) User

(^) can cancel a transaction at any time by pressing the Cancel button, thus

restarting the use case. No changes are made to the

(^) User’s

(^) account.

E3: (^) If the

(^) User

(^) enters an invalid PIN number, the use case restarts. If this happens three

times in a row, the system cancels the entire transaction, preventing the

(^) User

(^) from

interacting with the ATM for 30 minutes.