Beruflich Dokumente
Kultur Dokumente
High cost
Identify classes
Identify relationships
Identify attributes
Identify methods
Build
prototype
Steps to identify actors
Actors: The role a user plays with respect to the
system. A user may play more than one role.
Actors need not be human, it can be external
system too.
Example
A member of a public library, may play the role
of volunteers at the help desk in the library
Difference between users and actors
USER ACTOR USE CASE
Can
play performs
radha the member Borrow books
role of
Describe the use cases briefly by applying terms with which the user is
familiar
Every use case has one main actor to initiate them. If a use case is not
initiated by any of the actors then the use case is called as abstract use
case
Use case from library
Actors
A member
A circulation clerk
A supplier
Use cases
Borrow books
Get an interlibrary loan
Return books
Check library card
Do research
Read books, newspaper
A member takes book from library to
read at home.
Register at checkout desk for keeping
track
Depending on the record, different
courses of event flow
Get an interlibrary loan
When book is not present in library it is located in
another library, then it is ordered thru interlibrary
loan
Return Books
A member brings borrowed books back to the
library
Check library card
A member submits his/her card to the
clerk who checks the borrower’s record
Do research
A member comes to library to do research
thru books, journals, CD, etc and finds
information on the research subjects
Read books and newspaper
A member comes to a library, a quiet place
to read books, newspaper or a magazine
Purchase supplies
Thesupplier provides books, journals and
newspaper purchased by the library
Naming a use case
Use case names should be a general
description of the use case function
Should be descriptive
Should express what happens when use
case is performed
Borrow books uses
Check library
extends card
uses
Interlibrary loan
Return books
Circulati
member on clerk
Do research
supplier
Purchase supplies
Uses and extends
User association
Some of the sub flows occur in common
Instead of describing these sub flows more
number of times, extract the common sub flow
and make it a use case of its own
This new use case us used by other use cases
This avoid redundancy
example
Checking library card is common among borrow
books, return books and inter library loan
To share common sequences in several, use cases
utilizes “uses” association
extends
When one use case is similar to another use case
but does a bit more or specialized we use
“extends” association. It is like a sub class
Ex: checking out of a book
In the normal flow, it goes smoothly
But if book is already checked out or the library
doesn’t have the requested book, we have to create
other use cases to handle the situation
To solve this problem we use extends association
Normal behavior is put in one use case and unusual
in another
We utilize “extends association” to expand the
common behavior to fit special circumstances
Borrow books Do research Purchase groups
uses
Borrow books Check library
extends card
uses
Interlibrary loan
Return books
Circulati
member on clerk
Do research
supplier
Purchase supplies
Developing effective documentation
A document serves as a communication
vehicle among the projects team members
(Document Name)
For
(product)
(version number)
Responsible Individual
Name
Title
CASE STUDY Analyzing the vianet Bank ATM
Background
The description of Bank ATM systems requirements
1. The client must be able to deposit and withdraw
amount using touch screen at the ATM
The date, time, transaction type, amount, account
balance must be recorded for each transaction of
the client
2. Two types of account are present
a. Checking account/current account
b. Savings account
3. We can access the Bank account using a PIN code
consisting of 4 integer digits between 0 and 9
4. One PIN code allows access to all accounts held by
bank client
5. Negative balance is not allowed for both savings
and current a/c
If the withdrawal amount is more than the balance in
the checking a/c the system automatically
withdraws from saving account
If the balance on the saving a/c is less than the with
drawal amount, the transaction will stop and the
client will be notified
Identifying Actors and use cases for Bank ATM system
The following use cases are created by system requirements,
examination of existing system, documentation, interviews,
questionnaire, observation etc
1. Bank ATM transaction-steps
Insert ATM card
Eject card
Take card
Insert ATM
Activity Diagram card
Password not
Enter password
accepted
Password
accepted
Select type
of transaction
More
Perform the transactions
transactions
No more
transactions
<<extends>> <<extends>>
<<extends>>
<<extends>>
<<extends>>
<<extends>>
Deposit
savings
Withdraw
savings
<<extends>>
withdraw
Savings
denied
7. Withdraw amount
After approval process the client interacts with the system to withdraw
money from account
It extends the BANK ATM transaction use case
The steps are
Request account type
Eject cash
Withdraw checking
The client tries to withdraw amount from his
checking amount.
When the amount is less than or equal to the
balance the transaction is performed
The system creates a record of transaction
Withdraw saving denied
During withdrawal if the amount is more than the
balance the transaction us halted, and a message
is displayed
Checking transaction history
The client request a history of transactions for a
checking account. The system displays the
transaction history
Saving transaction history
The client request a history of transaction for a
saving account
The Bank ATM System Packages
It is better to breakdown the use cases into
packages
The various scenarios in the bank system
are
Checking account
Savings account
General bank transactions