Tải bản đầy đủ (.pdf) (54 trang)

Mô hình hóa sơ đồ Use Case

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.42 MB, 54 trang )

Giai đoạn 2
Phân tích hệ thống
Chương 4
Mô hình hóa use-case

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 1


Nội dung
Định nghĩa use-case
™ Đặc tả use-case
™ Sơ đồ use-case
™ Xây dựng đặc tả use-case và sơ đồ usecase
™

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 2


Tác nhân
™

Tác nhân nghiệp vụ (business actor) là
một người giữ một vai trò trong nghiệp vụ,


một phòng ban, hoặc một hệ thống phần
mềm khác.
f Xác

định tác nhân nghiệp vụ để xác định các
nghiệp vụ được thực hiện, từ đó xác định
các use-case.
f Một tác nhân có thể giữ nhiều vai trò nghiệp
vụ khác nhau tại nhiều thời điểm khác nhau.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 3


Tác nhân
Assistant

An employee at one of our stores who helps Customers to
rent Cars and reserve Car Models.

Customer

A person who pays us money in return for one of our standard
services.

Member


A Customer who identity and credit-worthiness have been
validated and who, therefore, has access to special services
(such as making Reservations by phone or over the Internet).

NoMember

A Customer whose identity and credit-worthiness have not
been checked and who, therefore, must provide a deposit to
make a Reservation or surrender a copy of their lisence to rent
a Car.

Auk

The pre-existing system that handles Customer details,
Reservations, Rentals and the catalog of available Car Models.

DebtDepartment

The department of Nowhere Cars that deals with unpaid fees.

LegalDepartment

The department of Nowhere Cars that deals with accidents in
which a rented Car has been involved.

Hình 4.1. Danh sách tác nhân nghiệp vụ của Nowhere Cars.
Chương 4. Mô hình hóa use-case

2009


Nguyễn Trung Trực - Khoa CNTT 4


Tác nhân
Tác nhân hệ thống (system actor) là thực
thể ngoài (external entity) tương tác trực
tiếp với hệ thống (các use-case).
™ Đa số các tác nhân biểu diễn các vai trò
của người sử dụng (user role), hoặc là các
hệ thống ngoài (external system).
™ Một tác nhân là một vai trò (role), không
phải là một người sử dụng cụ thể.
™

f Một

người sử dụng có thể có nhiều vai trò.
f Một tác nhân có thể biểu diễn nhiều người sử
dụng.
Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 5


Tác nhân

Assistant


An employee at a Store who contacts Members to tell
them about the progress of their Reservations.

Customer

A person using a Web browser to access iCoot system.

Member

A Customer who has presented their name, address and
CreditCard details at one of our Stores; each Member is
given an Internet password to accompany their
membership number.

Hình 4.2. Danh sách tác nhân hệ thống của iCoot.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 6


Tác nhân
™

Ký hiệu tác nhân
f Tác

nhân được biểu diễn bằng một hình

người.
f Tên của tác nhân
y Được ghi ở phía dưới hình người.
y Là một danh từ số ít.
y Tên của tác nhân là tên của vai trò mà tác
nhân đảm nhận, không là tên công việc.

Hình 4.3. Ký hiệu tác nhân.
Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 7


Tác nhân
Tác nhân được đặt bên ngoài hệ thống.
™ Tác nhân được kết nối với use-case bằng
một mối liên kết giữa tác nhân và usecase.
™

f Một

tác nhân có thể liên kết với nhiều usecase.
f Một use-case có thể liên kết với nhiều tác
nhân.
™

Một tác nhân có thể liên kết với các tác
nhân khác bằng cách sử dụng mối liên kết

tổng quát hóa (generalization association)
được biểu diễn bởi một mũi tên có đầu
mũi tên rỗng.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 8


Tác nhân
™

Xác định các tác nhân
f Ai

sẽ đưa thông tin vào hệ thống?
f Ai sẽ nhận thông tin từ hệ thống?
f Các hệ thống khác sẽ tương tác với hệ thống
này?

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 9


Tác nhân


Generalization
association

Patient

Old Patient

New Patient

Hình 4.4. Tổng quát hóa giữa các tác nhân.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 10


Bản chú giải thuật ngữ
™

Bản chú giải thuật ngữ
f Bản

chú giải thuật ngữ (glossary) dùng để
giải thích các thuật ngữ được sử dụng trong
việc phát triển phần mềm.
f Cho phép nhóm các từ đồng nghĩa.
f Mỗi mục từ (entry) định nghĩa một thuật ngữ.

f Bắt đầu từ mô tả các tác nhân.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 11


Bản chú giải thuật ngữ
Business actor

An actor appearing in the business requirements.

Business object

An object appearing in the business requirements.

System actor

An actor appearing in the system requirements.

System object

An actor appearing (inside the system) in the system
requirements.

Analysis object

An object appearing in the analysis model.


Deployment
artifact

Something deployed in the system, such as a file.

Design object

An object appearing in the design model.

Design node

A computer or process that forms part of the system
architecture.

Design layer

A vertical partition of a subsystem.

Design package

A logical grouping of classes, used to organize the
development.

Hình 4.5. Các khái niệm được dùng trong bản chú giải thuật ngữ.
Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 12



Bản chú giải thuật ngữ
Term

Definition

Car (bisiness object)

Instance of a CarModel kept by a Store for
Rental purposes.

CarModel (business object)

A model in
Reservation.

Customer (business actor,
business object)

A person who pays us money in return for one
of our standard services.

Member (business object)

A Customer whose
worthiness have been
therefore, has access to
as making Reservations
Internet).


our

Catalog,

available

for

identity and creditvalidated and who,
special services (such
by phone, or over the

Hình 4.6. Ví dụ của bản chú giải thuật ngữ.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 13


Use-case
Use-case là một chuỗi các tác vụ mà hệ
thống thực hiện để đạt được mục đích nào
đó của người sử dụng hoặc hệ thống
ngoài.
™ Use-case dùng để mô tả một hành vi cụ
thể của hệ thống dưới các điều kiện khác
nhau khi hệ thống đáp ứng các yêu cầu

của người sử dụng.
™

f Người

sử dụng có thể làm gì (what).
f Hệ thống đáp ứng như thế nào (how).
™

Use-case biểu diễn một quá trình nghiệp
vụ quan trọng.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 14


Use-case
Use-case được tạo ra trong giai đoạn phân
tích và có thể được sử dụng trong quá
trình phát triển.
™ Use-case được dùng để mô hình hóa
những gì xảy ra trong hệ thống hiện tại
hoặc để mô hình hóa hệ thống mới.
™ Use-case được dùng để ghi nhận hiểu biết
về cách thực hiện nghiệp vụ (mô hình hóa
yêu cầu nghiệp vụ - business requirements
modeling) và mô tả hệ thống mới có khả

năng thực hiện nghiệp vụ (mô hình hóa
yêu cầu hệ thống - system requirements
modeling).
™

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 15


Use-case
Use-case nghiệp vụ (business use-case)
sử dụng cách mô tả quen thuộc để mô tả
một điều gì đó đã tồn tại – dùng cho người
không chuyên nghiệp.
™ Use-case hệ thống (system use-case) mô
tả các yêu cầu chức năng (functionality
need) được thực hiện – dùng cho người
phát triển phần mềm.
™

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 16



Use-case
B1.Customer Rents Car: Customer rents a Car that they have selected from
those available.
B2.Member Reserves CarModel: Member asks to be notified when a CarModel
becomes available.
B3.NonMember Reserves CarModel: NonMember pays a deposit to be notified
when a CarModel becomes available.
B4.Customer Cancels Reservation: Customer cancels an unconcluded
Reservation, by phone or in person.
B5.Customer Returns Car: Customer returns a Car that they have rented.
B6.Customer Told CarModel is Available: Customer is contacted by an
Assistant when a Car becomes available.
B7.Car reproted Missing: Customer or Assistant discovers that a Car is
missing.
B8.Customer Renews Reservation: Customers renews a Reservation that has
been outstanding for more than a week.

Hình 4.7. Các use-case nghiệp vụ của iCoot.
Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 17


Use-case
B9.Customer Accesses Catalog: Customers browse the catalog, in-store or at
home.
B10.Customer Fined for Uncollected Reservation: Customer fails to collect a
Car that they have reserved.

B11.Customer Collects Reserved Car: Customer collects a Car that they have
reserved.
B12.Customer Becomes a Member: Customer provides CreditCard details and
proof of Address to become a Member.
B13.Customer Notified Car is Overdue: Assistant contacts Customer to warn
them that a Car they have rented is more than a week overdue.
B14.Customers Loses Keys: Replacement Keys are provided for a Customer
who has lost them.
B15.MembershipCar is Renewed: Assistant contacts Member to renew
membership when their CreditCard has expired.
B16.Car is Unreturnable: A Car is wrecked or breaks down.

Hình 4.7. Các use-case nghiệp vụ của iCoot.
Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 18


Use-case
U1.Browse Index: A Customer browses the index of CarModels.
U2.View Results: A Customer is shown the subset of CarModels that was
retrieved.
U3.View CarModel Details: A Customer is shown the details of a retrieved
CarModel, such as description and advert.
U4.Search: A Customer searches for CarModels by specifying Categories,
Makes and engine sizes.
U5.Log On: A Member logs on to iCoot using their membership number and
current password.

U6.View Member Details: A member views a subset of their details stored by
iCoot, such as name, address and CreditCard details.
U7.Make Reservation: A member reserves a CarModel when viewing its
details.
U8.View Rentals: A Member views a summary of the Cars they’re currently
renting.

Hình 4.8. Các use-case hệ thống của iCoot.
Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 19


Use-case

U9.Change Password: A Member changes the password that they use to log
on.
U10.View Reservations: A Member views a summary of Reservations that are
not yet concluded, such as date, time and CarModel.
U11.Cancel Reservation: A Member cancels a Reservation that is not yet
concluded.
U12.Lof Off: A Member logs off from iCoot.

Hình 4.8. Các use-case hệ thống của iCoot.

Chương 4. Mô hình hóa use-case

2009


Nguyễn Trung Trực - Khoa CNTT 20


Mục đích tạo các use-case
Mô hình hóa chuỗi các hành động mà hệ
thống thực hiện và tạo ra kết quả hữu ích
cho người sử dụng hoặc hệ thống bên
ngoài (được gọi là tác nhân).
™ Cung cấp cái nhìn mức cao về hệ thống
làm gì và ai sử dụng hệ thống này.
™ Xác định giao tiếp người - máy.
™ Mô hình hóa kịch bản (scenario) của usecase, bao gồm chuỗi các hành động.
™

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 21


Mục đích tạo các use-case
Sử dụng ký hiệu đồ họa đơn giản, dễ hiểu
để những người sử dụng có thể liên lạc
với nhau về cái nhìn mức cao của hệ
thống.
™ Dùng để xác định các đặc tả kiểm tra (test
specification).
™


Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 22


Ký hiệu use-case
Use-case được biểu diễn bằng một hình
bầu dục, cho phép người phân tích nhìn
thấy mỗi use-case liên quan đến tác nhân
và các use-case khác trong hệ thống hoặc
hệ thống con.
™ Tên của use-case
™

f Được

ghi trong hình bầu dục hoặc ở phía
dưới, nhưng phải nhất quán trong cùng một
mô hình.
f Bao gồm các ký tự chữ, số, dấu phân cách.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 23



Ký hiệu use-case
f Không

chứa dấu hai chấm (:) vì dấu này dùng
để phân cách tên use-case với tên gói
(package name).
f Bắt đầu bằng động từ, theo sau là một danh
từ hoặc cụm danh từ để mô tả hành vi của hệ
thống.
y

Ví dụ: Make appointment, Produce schedule
information.
Make
appointment
Produce schedule
information
Hình 4.9. Đặt tên use-case.

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 24


Các bước tạo use-case
Viết mô tả chi tiết (văn bản) cho use-case,
dùng bản đặc tả use-case.

™ Chuyển mô tả thành các sơ đồ: sơ đồ lớp,
sơ đồ tuần tự, …
™

Chương 4. Mô hình hóa use-case

2009

Nguyễn Trung Trực - Khoa CNTT 25


×