Thực hành Pn tích thiết kế ớng đối tượng
ThS. Dương Thành Phết Khoa CNTT HUTECH Trang 1
Bài thực hành 01:
THỰC HÀNH VỀ XÂY DỰNG BIỂU ĐỒ USE CASE
1. Mục tiêu
Tnh bày được các thành phần trong biểu đồ Use case
Xác định được các Actor trong hệ thống
Xác định được các Use case trong hệ thống
Xác định được các mi quan hệ gia các Use case
Sử dụng được phần mm Rational Rose để biểu diễn biểu đồ Use case
n luyện duy logic, sáng tạo của người học
2. Các ký hiệu trong bản vẽ Use case:
Actor: Actor được ng để ch người s dng hoc một đối ng nào đó bên
ngoài tương tác với h thng. Actor đưc biu din như sau:
Use Case: là chức năng mà các Actor sẽ s dụng. Nó được ký hiu như sau:
Với việc xác định các chức ng Actor sử dụng bạn sẽ xác định được các Use
Case cần có trong hệ thống.
Relationship(Quan h): Hay n gọi là conntector đưc s dụng để kết ni gia
các đốing với. Có các kiểu quan h:
+ Quan hệ Association:
Association thường được ng để mô tả mi quan hệ gia Actor và Use Case
gia các Use Case với nhau. Ví d thể hin Actor User sử dụng Use Case Login
+ Quan h Generalization: được sử dụng để thể hin quan hệ thừa kế gia các
Actor hoặc giữa các Use Case với nhau
Thực hành Pn tích thiết kế ớng đối tượng
ThS. Dương Thành Phết Khoa CNTT HUTECH Trang 2
Ví dụ Actor User thừa kế toàn bộ quyn ca Actor Guest
+ Quan hệ Include: Include là quan hệ giữa các Use Case với nhau, nó mô tả việc
một Use Case lớn được chia ra thành các Use Case nhỏ để dễi đặt (module hóa)
hoặc thể hin sựng li.
Use Case “Verify Password” có thể gộp chung vào Use Case Login nhưng tách ra
để cho các Use Case khác sử dụng hoặc để module hóa cho dễ hiểu, dễ cài đặt
+ Quan h Extend: ng để tả quan hệ gia 2 Use Case. Quan hệ Extend
được sử dụng khi có một Use Case được tạo ra để bổ sung chức năng cho một Use
Case có sẵn và được sử dụng trong một điều kiện nhất định nào đó
.
Thực hành Pn tích thiết kế ớng đối tượng
ThS. Dương Thành Phết Khoa CNTT HUTECH Trang 3
Trong dtrên “Open Account” là Use Case cơ sở để cho khách ng mở i
khoản. Tuy nhiên, thêm một điều kiện là nếu khách ng là ng ty thì thể
thêm người sở hữu lên tài khoản này. Add Account Holder là chức năng mrộng
của Use Case “Open Account” cho trưng hợp c thể nếu Actor là ng ty nên
quan hệ của nó là quan hệ Extend.
+ System Boundary: đưc s dụng để xác đnh phm vi ca h thng mà chúng
ta đang thiết kế. Các đối ng nm ngoài h thng này ơng tác với h thng
được xem là các Actor.
System Boundary sẽ giúp chúng ta dễ hiểu hơn khi chia hệ thống ln thành các hệ
thống con để phân tích, thiết kế.
3. Các bước xây dựng Use Case Diagram
Bước 1: Tìm các Actor
Trả lời các câu hỏi sau để xác định Actor cho hệ thống:
Ai sử dụng hệ thống này?
Hệ thống nào tương tác với hệ thống này?
Xem xét ví dụ về ATM ở trên chúng ta thấy:
Ai sử dụng hệ thống? -> Customer, ATM Technician
Hệ thống nào tương tác với hệ thống này? -> Bank
Như vậy có 03 Actor: Customer, ATM Technician và Bank
Bước 2: Tìm các Use case
Trả li u hỏi các Actor sử dụng chức năng trong hệ thống? chúng ta sxác
định được các Use Case cn thiết cho hệ thống.
Xem xét ví dụ ở trên ta thấy:
Customer s dụng các chức năng: Check Balance, Deposit, Withdraw và
Transfer
ATM technician s dụng: Maintenance và Repair
Bank tương tác với tt c các chc năng trên.
Thực hành Pn tích thiết kế ớng đối tượng
ThS. Dương Thành Phết Khoa CNTT HUTECH Trang 4
Tóm li, chúng ta phải y dựng hệ thống các chức năng: Check
Balance, Deposit, Withdraw, Transfer, Maintenance và Repair để đáp ng được
cho người sử dụng và các hệ thống tương tác.
+ Bước 3: Xác định các quan h
Phân tích và các định các quan loại hệ giữa các Actor Use Case, giữa các Actor
vi nhau, giữa các Use Case vi nhau sau đó nối chúng lại chúng ta sẽ được bản vẽ Use
Case.
Bản vẽ Use Case về ATM
Bài tập 1. Xây dựng đồ Use case cho một h thống thương mại đin tử (E-
Commerce) như sau:
Một ng ty chuyên kinh doanh vcác thiết bị đin tử và ng nghệ thông tin
trong nhiều năm nay và đã một lưng khách ng nhất định.Để mrộng hoạt động
kinh doanh của mình, ng ty mong mun y dựng một hệ thống thương mi đin tử
nhằm mở rộng phạm vi kinh doanh trên mạng Internet.
Hệ thống mới phải đảm bảo cho kháchng viếng thăm Website dễ dàng lựa chọn
các sản phẩm, xem các khuyến mãi cũng n mua ng. Việc thanh toán thể được
thực hiện qua mạng hoặc thanh toán trực tiếp tại cửa ng. Khách ng thể nhận ng
tại cửa hàng hoặc sử dụng dch vụ chuyển hàng có phí của công ty.
Thực hành Pn tích thiết kế ớng đối tượng
ThS. Dương Thành Phết Khoa CNTT HUTECH Trang 5
Ngoài ra, hệ thống cũng cần phân hệ để đảm bảo cho ng ty quản lý các hoạt
động kinh doanh như số lượng ng trong kho, quản lý đơn đặt hàng, nh trạng giao
ng, thanh toán v.v…
Tng tin chi tiết các chức năng các bạn thể tham khảo thêm tại các Website
bán hàng.
Bạny giúp công ty xây dựng hệ thống use casse trên.”
Hướng dẩn: Các bước xây dựng bản vẽ Use Case
c 1: Thu thp kiến thức liên quan đến h thng s xây dựng
Trưc hết, để phân tích hệ thống trên bạn phải kiến thc v h thống thương
mi đin tử, chúng ta có thể tìm hiểu thông qua các ngun sau:
Xem các trang Web bán hàng qua mng n amazon, lazada.vn, bkc.vn v.v..
Xem các hệ thống mẫu vthương mại điện tử nguồn mở như Magento, OpenCart,
Spree Commerce v.v…
Đọc sách, báo về eCommerce
Hỏi những ni chuyên về lĩnh vực này (hỏi chuyên gia)
Lưu ý: Bạn không thể thiết kế tốt được nếu bn không kiến thức vlĩnh vực ca sản
phẩm mà bạn sẽ xây dựng.
Bước 2: Xác địnhc Actor
Hãy trả lời cho câu hỏi “Ai sử dụng hệ thống này?”
Xem xét Website chúng ta nhận thấy:
Những ni muốn mua ng vào website để xem thông tin. Những nời này
Khách hàng tiềm năng (Guest).
Những nời đã đặt ng vào kim tra đơn ng, thanh toán v.v.. gọi là Khách
hàng (Customer).
Về phía đơn vị bán hàng, có những ni sau đây tham gia vào hệ thống:
o Người quản lý bán hàng: quyết định nhập ng, gbán, quản tồn kho,
doanh thu, cnh sách khuyến mãi.
o Người n hàng: Tư vấn cho khách ng, theo i đơn ng, thu tiền,
theo dõi chuyển hàng cho khách.
o Qun lý kho: xuất, nhập hàng, quản lý tồn kho
o Qun trị hệ thống: Tạo ngườing, Phân quyền, Tạo cửa hàng
Tiếp theo chúng ta trả lời câu hỏi “Hệ thống nào tương tác với hệ thống này?”
Gisử đây, chúng ta sử dụng dịch vụ của Ngân Lưng để thanh toán trực tuyến
và gọi nó là Cổng thanh toán” thì ta có thêm một Actor tương tác với hệ thống.