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

Giáo trình phân tích hệ thống hướng đối tượng pptx

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.27 MB, 60 trang )

TRƯỜNG ĐẠI HỌC CẦN THƠ
KHOA CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG




Giáo trình


PHÂN TÍCH HỆ THỐNG HƯỚNG
ĐỐI TƯỢNG






















Biên soạn: Phạm Thị Xuân Lộc




2009
THÔNG TIN VỀ TÁC GIẢ
PHẠM VI VÀ ĐỐI TƯỢNG SỬ DỤNG
CỦA GIÁO TRÌNH

1. THÔNG TIN VỀ TÁC GIẢ

Họ và tên: Phạm Thị Xuân Lộc

Sinh năm: 1961
Cơ quan công tác:
Bộ môn: Hệ thống thông tin- Toán ứng dụng
Khoa: Công nghệ thông tin- Truyền thông
Trường: Đại học Cần thơ
Địa chỉ Email để liên hệ:

2. PHẠM VI VÀ ĐỐI TƯỢNG SỬ DỤNG
Giáo trình có thể dùng tham khảo cho những ngành nào: Tin học
Có thể dùng cho các trường nào: các trường có đào tạo chuyên ngành Hệ thống thông tin.
Các từ khóa (Đề nghị cung cấ
p 10 từ khóa để tra cứu): trường hợp sử dụng, lớp, đối tượng,
thuộc tính, phương thức, liên kết, bản số, tương tác, sơ đồ tuần tự, thông báo,
Yêu cầu kiến thức trước khi học môn này: Cơ sở dữ liệu, Lập trình hướng đối tượng
Đã xuất bản in chưa, nếu có thì Nhà xuất bản nào: chưa




Phân
Phân
t
t
í
í
ch
ch
h
h


th
th


ng
ng




ng
ng
đ
đ



i
i
t
t
ư
ư


ng
ng


Ph
Ph


m
m
Th
Th


Xuân
Xuân
L
L


c

c
Tài liệu tham khảo
Stt Tựa Thông tin chi tiết
1UML 2 của Benoit Charoux, Aomar Osmani, Yann
Thiery-Mieg, NXB Pearson Education France,
2005.
2 UML par la pratique- Etude
de cas et exercices corrigés
của Pascal Roques, XB lần 2, NXB Eyrolles, 2001
3 UML pour l’analyse d’un
systeme d’information
của Chantal Morley, Jean Hugues, Bernard
Leblanc, XB lần 2, NXB Dunod, 2002
4 Phân tích thiếtkế hướng đối
tựơng bằng UML
của Đặng Văn Đức, NXB Giáo dục, 2002
5 Modélisation objet avec UML của Pierre-Alian Muller, Nathalie Gaertner, XB
lần 2, NXB Eyrolles, 2004
6 Object-oriented analysis David William Brown, NXB John Wileys & Sons,
2002
7 Trang web củaOMG
8 Các trang web liên quan
UML
9 The object-oriented development
process
của Tom Rowlett, NXB Prentice Hall PTR,
2001
10 A introducton to object-oriented
analysis- Objects in plain English
của David Willia Brown, NXB John Wileys

& Sons, 2002
11 Objects¸ components and
frameworks with UML
của Desmond Francis D’Souza, Alan
Cameron Wills, NXB Addison – Wesley,
1999
12 Software reuse- Domain analysis
and design process
của Jag Sodhi, Prince Sodhi, NXB McGraw-
Hill, 1999
13 La démarche objet- Concepts et
outils
của Max Bouché, NXB Afnor, 1994
14 Object models- strategies, patterns
& applications
của Peter Coad, NXB Prentice-Hall, 1997
15 Modern system analysis & design của Jeffrey Hoffer, Joey F.George, Joseph S.
Valacich, NXB Prentice-Hall, 2002
Mụclục
I. Giớithiệu
II. Sơ đồ hoạtvụ
III. Sơ đồ lớp
IV. Sơ đồ tương tác
I. Giớithiệu
I.1 Phân tích hệ thống hướng
đối tượng
I.2 UML
I.3 Các loạisơ đồ trong UML
I.1 Phân tích hệ thống
hướng đối tượng

•Cáchtiếpcậnhướng đốitượng là tấtyếu, để
phát triểncáchệ thống phầnmềm:
–phứctạp,
–theokịp đà phát triển không ngừng củacông
nghệ và các nhu cầu ứng dụng trong thựctế.
I.1 Phân tích hệ thống
hướng đối tượng (2)
• Tuy nhiên, lậptrìnhhướng đối
tượng lạiíttrựcquan, íttự nhiên
hơnlập trình theo chứcnăng.
⇒ Đòi hỏiphảimôhìnhhóahướng
đốitượng trướcthậttốt.
I.1 Phân tích hệ thống
hướng đối tượng (3)
 Giúp hiểu tốt hơn thực tế và so
sánh tốt hơn các giải pháp thiết kế
trước khi lập trình.
 Dựa trên các ngôn ngữ mô hình
hóa.
I.2 UML
• UML (Unified Modeling Language) là một
ngôn ngữđểmô hình hóa với các ký hiệu sinh
động,
• Cho phép:
– Đặctả
– Xây dựng
– Hiểnthị
– Lậpsưuliệu
các hệ thống thông tin sử dụng khái niệm đối
tượng.

I.2 UML (2)
•Từ năm 1993, được hình thành từ sự hợp
nhấtcácphương pháp:
– Booch củaGrady Boochở Rational Software
Corporation,
– OMT (Object Modeling Technology) của
James Rumbaugh,
– OOSE (Object Oriented Software
Engineering) của Ivar Jacobson.
I.2 UML (3)
•Khởi đầutừ tên Unified Method
• Đổi tên thành UML từ 1996
• Đượcchuyển cho OMG (Object
Management Group) từ 1997, với version
1.1 được phát hành như mộtchuẩn
•Hiện đang ở version 2.0 với nhiềucảitiến
về mô hình hóa hành xử, về liên quan giữa
các mô hình về cấutrúcvàhànhxử.
I.3. Các loạisơ đồ
trong UML 2.0
Sơ đồ về
cấutrúc
Sơ đồ về
hành xử
Sơ đồ về
tương tác
Sơ đồ về
cấutrúc
Structure diagrams
Sơ đồ lớp

Class diagram
Sơ đồ
đối tượng
Object diagram
Sơ đồ
cấutrúcphức
Composite
structure
diagram
Sơ đồ
đóng gói
Package diagram
Sơ đồ
triển khai
Deployment diagram
Sơ đồ
thành tố
Component diagram
Sơ đồ về
Hành xử
Behavior diagrams
Sơ đồ
hoạtvụ
Use case diagram
Sơ đồ
hoạt động
Activity diagram
Sơ đồ
trạng thái
State diagram

Sơ đồ về
tuơng tác
Interaction diagrams
Sơ đồ
tổng thể về tương tác
Interaction overview
diagram
Sơ đồ
tuầntự
Sequence diagram
Sơ đồ
truyền thông
Communication
diagram
Sơ đồ
thờigian
Timing
diagram
Chương II: Sơ đồ hoạt vụ
(use case diagram)



Chương II: Sơ đồ hoạt vụ 1
II.1. MỤC ĐÍCH CỦA TRƯỜNG HỢP SỬ DỤNG: 2
II.2 ĐỊNH NGHĨA VÀ KÝ HIỆU: 2
II.2.1 Định nghĩa: 2
II.2.2 Ký hiệu: 2
II.3 MÔ TẢ SƠ ĐỒ HOẠT VỤ: 3
II.3.1 Các quan điểm mô tả sơ đồ hoạt vụ: 3

II.3.2 Quan hệ giữa các trường hợp sử dụng trong một sơ đồ hoạt vụ: 3
II.4 QUAN HỆ GIỮA CÁC TÁC NHÂN: 5
II.5 MỘT VÀI NGUYÊN TẮC MÔ TẢ SƠ ĐỒ HOẠT VỤ: 6
II.5.1 Xác định các tác nhân: 6
II.5.2 Gom lại các trường hợp sử dụng: 6
II.6 MÔ TẢ BẰNG VĂN BẢN CÁC TRƯỜNG HỢP SỬ DỤNG: 7
II.6.1 Đinh danh: 7
II.6.2 Chuỗi hành vi: 7
II.6.3 Các mục bổ sung tùy ý : 7
II.7 ĐÓNG GÓI CÁC TRƯỜNG HỢP SỬ DỤNG: 9
II.7.1 Ngữ cảnh: 9
II.7.2 Đinh nghĩa: 10


II.1. MỤC ĐÍCH CỦA TRƯỜNG HỢP SỬ DỤNG:
Trường hợp sử dụng là một kỹ thuật mô tả hệ thống dựa trên quan điểm người sử dụng.
Mỗi trường hợp sử dụng là một cách thức riêng biệt để sử dụng hệ thống.
Trường hợp sử dụng là một tập hợp bao gồm các thao tác được kích họat bởi một tác
nhân bên ngoài và tạo ra một kết quả xác định được (identifiable), quan sát được (observable).
Việc nhóm lại các thao tác này không tương ứng với các cấu trúc đã cài đặt sẵn hoặc để
cài đặt trực tiếp, ngắn hạ
n trước mắt. Nó tương ứng sát hơn với một chuỗi thao tác như một logic
cảm nhận được từ người sử dụng.

II.2 ĐỊNH NGHĨA VÀ KÝ HIỆU:
II.2.1 Định nghĩa:
Các trường hợp sử dụng được gom lại trong các sơ đồ họat vụ, nhằm chỉ ra mối liên hệ
giữa các trường hợp sử dụng và các tác nhân. Những sơ đồ này cũng cho phép biểu diễn sự phụ
thuộc:
- giữa các trường hợp sử dụng lẫn nhau

- giữa các tác nhân lẫn nhau
II.2.2 Ký hiệu:

Ký hiệu Ý nghĩa



(Nếu tác nhân
là người)











Tác nhân
(Nếu tác nhân
không phải là
người)
<<actor>>
Trường hợp sử dụng
Hoặc
Quan hệ giữa tác nhân và trường hợp sử dụng
(tác nhân kích hoạt trường hợp sử dụng)








Quan hệ giữa các trường hợp sử dụng
Đường biên hệ thống
(tùy ý)

II.3 MÔ TẢ SƠ ĐỒ HOẠT VỤ:
II.3.1 Các quan điểm mô tả sơ đồ hoạt vụ:
Mỗi trường hợp sử dụng được mô tả bằng một định nghĩa tổng quát và bằng một kịch bản
(script) với các định nghĩa được minh họa cụ thể. Một trường hợp sử dụng có thể có mặt trong
nhiều sơ đồ hoạt vụ.
Có 2 quan điểm biểu diễn mô tả sơ đồ họat vụ:
a. Thực hiện một s
ơ đồ họat vụ cho một tác nhân
b. Thực hiện một sơ đồ họat vụ cho nhiều tác nhân, trong đó có một tác nhân chính kích
hoạt sơ đồ hoạt vụ và các tác nhân phụ có tham gia vào các trường hợp sử dụng trong
sơ đồ hoạt vụ.
II.3.2 Quan hệ giữa các trường hợp sử dụng trong một sơ đồ hoạt vụ:
II.3.2.1 Quan hệ “bao hàm” (inclusion):
Trường hợp sử dụng B được coi là “bao hàm” trường hợp sử dụng A nếu hành vi mô tả B
bao hàm hành vi mô tả A.
Ta nói B phụ thuôc vào A.
Ký hiệu :

A
B

bao hàm



Ho
ặc


includes
A
B



Ví dụ :


bao hàm
Tạo biên lai cho
khách hàn
g

Nhận thanh toán
cước từ khách hàng




II.3.2.2 Quan hệ “mở rộng” (extension):
Nếu hành vi của trường hợp sử dụng B

có thể được mở rộng bởi hành vi của trường hợp
sử dụng A, ta nói
A mở rộng B.
Một sự mở rộng thường phải chịu một điều kiện, điều kiện này được biểu diễn dưới dạng
một ghi chú (note) . Phải cho biết chính xác ở điểm nào của trường hợp đang xét thì mở rộng nó.
Ký hiệu :



mở rộng
B
A



Ho
ặc

extends
B
A




Ví dụ :

mở rộng
Nhận giấy
b

áo cước
Thanh toán
cước




II.3.2.3 Quan hệ “tổng quát hóa” (generalization):
Một trường hợp sử dụng A là một sự tổng quát hóa trường hợp sử dụng B nếu B là một
trường hợp đặc biệt của A.
Mối quan hệ « tổng quát hóa sẽ được diễn dịch thành khái niệm « thừa kế» trong các
ngôn ngữ hướng đối tượng.
Ký hiệu : biểu diễn bằng mũi tên khối rỗng về trường hợp sử dụng tổng quát hơn.


B
A






Ví dụ :
Thanh toán bằng tiền
mặt
Thanh toán bằng thẻ
Thanh toán









II.4 QUAN HỆ GIỮA CÁC TÁC NHÂN:
Mối quan hệ duy nhất có thể có giữa các tác nhân là sự tổng quát hóa.
Một tác nhân A là một sự tổng quát hóa của B nếu A có thể được thay thế bởi B trong
mọi trường hợp sử dụng (chiều ngược lại không đúng).
Ký hiệu:
A




B


Ví dụ :
Nhan vien
Lanh dao
linh luong
ky quyet dinh

SV
nap tien cho the
mua the
chon thuc an
<< include >>

chon thuc an theo yeu cau
<< extends >>
chon trong luong yc
<< extends >>
chon gia yeu cau
chon thuc an dong goi san
chon thuc an tu ds


II.5 MỘT VÀI NGUYÊN TẮC MÔ TẢ SƠ ĐỒ HOẠT VỤ:
II.5.1 Xác định các tác nhân:
- Các tác nhân là những người sử dụng hệ thống. Không nên quên những người sử
dụng có trách nhiệm khai thác và bảo trì HTTT. Không kể đến những kỹ sư phần
mềm cài đặt và tham số hóa phần mềm trước khi sử dụng.
- Ngoài ra, tác nhân có thể là :
+ Các
thiết bị ngoại vi sử dụng bởi hệ thống (máy in, robot, …)
+ Các
phần mềm đã sẵn sàng để được tích hợp vào hệ thống
+ Các
hệ thống tin học nằm ngoài nhưng có tương tác với hệ thống đang xét
Để dễ tìm các tác nhân, nên hình dung ra trước các biến của hệ thống. Tất cả những ai,
những gì sử dụng HT và có tương tác với HT là một tác nhân.
Một trường hợp sử dụng luôn có ít nhất:
- 1 tác nhân chính kích hoạt trường hợp sử dụng bằng yêu cầu của mình và HT sẽ sinh
ra một kết quả quan sát được cho tác nhân đó
- và thường có các tác nhân phụ
khác.
II.5.2 Gom lại các trường hợp sử dụng:
- Không có nguyên tắc duy nhất.

- Cần đứng trên quan điểm người sử dụng và xác định:
+ tác nhân đó được HT phục vụ thế nào
+ trong trường hợp nào tác nhân đó sử dụng HT
+ chức năng nào của HT mà tác nhân đó truy cập đến
- Cần tránh sự dư thừa, và cần có trừu tượng hóa hợp lý để giam bớt số trường hợp, ví
dụ không nên cho 1 trường hợp sử dụng ch
ỉ có 1 thao tác.

II.6 MÔ TẢ BẰNG VĂN BẢN CÁC TRƯỜNG HỢP SỬ DỤNG:
Gồm có 3 phần: định danh, mô tả chuỗi hành vi và các mục bổ sung tùy ý:
II.6.1 Đinh danh:
- tên
- mục tiêu (tóm tắt)
- các tác nhân (chính + phụ)
- ngày tạo và ngày cập nhật mới nhất
- người tạo
- phiên bản (version)
II.6.2 Chuỗi hành vi:
- mô tả tổng quát chuỗi
- điều kiện đầu (pre-cond)
- chuỗi liên kết các thông báo (messages)
- điều kiện cuối (post-cond)
- xử lý các ngoại lệ
II.6.3 Các mục bổ sung tùy ý :
II.6.3.1 Ràng buộc phi chức năng :
- tính tin cậy (confidentiality)
- tính bảo mật (security)
- tính sẵn sàng (disponiblity)
- tính cạnh tranh (concurrence)
- thời gian đáp ứng

- …
II.6.3.2 Ràng buộc về giao diện người-máy :
Màu sắc, vị trí các mục, theo qui định của ngành dọc (ngành tài chính, ngân hàng…)
Ví dụ 1: use case « Đăng nhập”:

Định danh:
- Tên: Đăng nhập
- Mục tiêu (tóm tắt): Use case này mô tả cách một người dùng đăng nhập vào Hệ thống
đăng ký học phần.
- Tác nhân chính: Sinh viên
- Ngày tạo và ngày cập nhật mới nhất: 26/1/08
- Người tạo: Nhóm 10- HK 2 2007-2008
- Phiên bản (version): 3
Chuỗi hành vi:
- Mô tả tổng quát chuỗi: Use case này bắt đầu khi một actor muốn đăng nhập vào Hệ
thống đăng ký học phần.
- Điều kiện đầu (pre-cond) : không có.
- Chuỗi liên kết các thông báo (messages) :
1. Hệ thống yêu cầu actor nhập tên và mật khẩu.
2. Actor nhập tên và mật khẩu.
3. Hệ thống kiểm chứng tên và mật khẩu được nhập và cho phép actor đăng nhập
vào hệ thống.
- Điều kiện cuối (post-cond) : Nếu use case thành công, actor lúc này đã đăng nhập vào
hệ thống. Nếu không trạng thái hệ thống không thay đổi.

- Xử lý ngoại lệ:
Nếu actor nhập sai tên hoặc mật khẩu, hệ thống sẽ hiển thị một thông báo lỗi. Actor có
thể chọn trở về đăng nhập lại hoặc hủy bỏ việc đăng nhập, lúc này use case kết thúc.
Nếu actor nhập sai :
+ Username : sẽ hiển thị thông báo không tồn tại username.

+ Password : sẽ hiển thị thông báo yêu cầu nhập đúng mật khẩu.

Ví dụ 2: use case « Quản lý s
ố lượng hàng tồn kho 1 ngành hàng”:
a.
Định danh:
- Tên: Quản lý số lượng hàng tồn kho 1 ngành hàng.
- Mục tiêu (tóm tắt): Tránh thất thoát, giải phóng hàng tồn.
- Các tác nhân (chính + phụ): Nhân viên quản lý kho (phụ), Nhân viên quản lý ngành
hàng (chính).
- Ngày tạo và ngày cập nhật mới nhất: 21/11/2008
- Người tạo: Nhóm 5: Hồ Bửu Thiện, Nguyễn Phương Bình, Trần Duy Phương, lớp
Tin học Cần thơ 2004
- Phiên bản (version): 1.0
b.
Chuỗi hành vi:
- Mô tả tổng quát chuỗi: kiểm tra số lượng xuất hàng, nhập hàng.
- Điều kiện đầu (pre-cond) : có bảng thống kê hàng tồn của định kỳ trước, phiếu nhập,
phiếu xuất, danh sách hàng thất thoát do hư hao (tất cả lưu trên cơ sở dữ liệu), danh
mục ngành hàng.
- Chuỗi liên kết các thông báo (messages) :
+ Hệ thống hiển thị danh mục ngành hàng
+ Nhân viên quản lý kho chọn ngành hàng (mã)
+ Nhân viên quả
n lý kho ghi ngày, giờ kiểm tra hàng tồn theo định kỳ.
+ Nhân viên quản lý kho truy xuất mã ngành hàng, mặt hàng để kiểm tra theo
từng mặt hàng.

×