Professional Documents
Culture Documents
THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM 123
LỖI THÔNG DỤNG CẦN TRÁNH (4/5)
• Nhiều use case nhỏ có cùng mục tiêu có thể gom nhóm
thành dạng một use case.
THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM 124
LỖI THÔNG DỤNG CẦN TRÁNH (5/5)
• Các bước khác nhau là một phần của use case, không
tách rời thành nhiều use case -> KHÔNG phân rã chức
năng.
THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM 125
Một số hình vẽ đúng
Tên Ký hiệu Mô tả
129
THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM
CÁC THÀNH PHẦN KÝ HIỆU (2/2)
Tên Ký hiệu Mô tả
1. Mục đích
2. Hiểu các khái niệm trong biểu đồ lớp (Class Diagram)
3. Cách tiếp cận xác định lớp
4. Các tiếp cận xác định mối quan hệ
5. Các tiếp cận xác định thuộc tính
6. Các tiếp cận xác định thuộc phương thức
7. So sánh Class và ERD
8. Phương pháp chuyển đổi Class<->ERD
Mỗi đối tượng là một thực thể của một lớp nào đó và
một đối tượng không thể là kết quả thực thể hóa của
nhiều hơn một lớp.
VD : lớp Sinh_Viên, lớp Nhân_Viên
thiết lập giữa hai hay nhiều lớp, được biểu diễn bởi
những thành phần sau:
144
2. Hiểu các khái niệm trong biểu đồ lớp (Class
Diagram)
Lưu ý:
- Khi xóa Phòng ban sẽ không ảnh hưởng
đến Nhân viên.
- Khi xóa Phòng học sẽ không ảnh
hưởng đến Bàn, Ghế.
146
2. Hiểu các khái niệm trong biểu đồ lớp (Class
Diagram)
Quan hệ Cha-Con:
Lớp là Cha, SV là Con. Sửa MALOP trong LOP thì
MALOP trong SV sửa theo. Xóa 1 lớp trong LOP thì SV
không bị xóa theo (set NULL).
THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM 147
2. Hiểu các khái niệm trong biểu đồ lớp (Class
Diagram)
Quan hệ Cha-Con
Hóa đơn là Cha, CTHD là Con. Sửa/Xóa MAHD trong
HOADON thì MAHD trong CTHD sửa/xóa theo.
THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM 149
2. Hiểu các khái niệm trong biểu đồ lớp
(Class Diagram)
Quan hệ thành phần (Compossition)
150
2. Hiểu các khái niệm trong biểu đồ lớp
(Class Diagram)
Quan hệ tổng quát hóa (Generalizations): Là quan
hệ được thiết lập giữa một lớp tổng quát hơn đến
một lớp chuyên biệt. Quan hệ này được dùng để
phân loại một tập đối tượng thành những loại xác
định mà hệ thống cần làm rõ ngữ nghĩa.
hàng…
Lớp con người (people): Lớp con người thể hiện các
vai trò khác nhau của người dùng trong việc tương
tác với ứng dụng. Những đối tượng này thường là
người dùng hệ thống hoặc những người không sử
dụng hệ thống nhưng thông tin về họ được lưu trữ
bởi hệ thống (đa số là những đối tượng mà hệ
thống có trao đổi thông tin nhưng không sử dụng hệ
thống)
Ví dụ: sinh viên, khách hàng, giáo viên,
nhân viên,…
Sự vật hữu hình và lớp thiết bị: Các đối tượng vật lý
hoặc các nhóm của đối tượng hữu hình mà có thể cảm
nhận trực quan và các thiết bị mà hệ thống tương tác.
Ví dụ: Máy ATM, xe hơi, máy bay, … là các sự vật
hữu hình; thiết bị cảm ứng nhiệt là một lớp thiết bị.
Lớp sự kiện:
Biểu đồ lớp
Các kí hiệu
-UML hiển thị lớp bằng hình -Kiểu thực thể hiển thị bởi hình
chữ nhật có 3 phần: chữ nhật
-Phần trên cùng: Tên lớp -Tên kiểu thực thể
-Phần giữa: Thuộc tính -Thuộc tính đuợc hiển thị bởi
-Phần dưới cùng: Thao tác hình elip hoặc trong thực thể
-Các thao tác không được hỗ trợ
trong mô hình ER
Multiplicity
2..* 1..*
Car Door House
Whole Part
15
* Circle
Circle Point
3..* Point
Polygon
Person Super
Class
Generalization
relationship
Sub
Student Class
18
<<friend>>
Iterator Vector
19
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Thực hiện (Realization)
Một quan hệ thực hiện chỉ ra một lớp thực
thi hành vi đặc tả bởi một lớp khác
(thường là một giao diện)
Một giao diện có thể được thực thi bởi
nhiều lớp
Một lớp có thể thực thi nhiều giao diện
<<interface>>
LinkedList List LinkedList List
Customer
1 * may be
Order
{ total < $50 } canceled
id: long { value > 0 }
Constraint Note
Release work
order
branch
[materials not ready]
Reschedule
[materials ready]
guard expression
Assign tasks
start state
Decompress
fork
join
stop state
THIẾT KẾ VÀ XÂY DỰNG PHẦN MỀM
Làn bơi (Swimlanes)
Sử dụng để mô hình hóa luồng công việc trong tiến trình
nghiệp vụ
Chỉ ra ai có trách nhiệm thực hiện từng hoạt động
Để phân hoạch các trạng thái hoạt động vào nhóm
Mỗi hoạt động thuộc về một làn bơi
Chuyển tiếp có thể được vẽ từ làn bơi này đến làn bơi
khác
Mỗi làn bơi có thể được cài đặt bởi một hay nhiều lớp
Initial
Initial
State
State Control
Control
Flow
Flow
Decision
Decision
Fork
ForkTransition
Transition
Note
Not
e
Action
ActionState
State
(Activity)
(Activity)
Join
JoinTransition
Transition
Final
Final
State
State
Actions
Actionsmay
maybe beorganized
organizedinto
into
swimlanes.
swimlanes. Swimlanes areaakind
Swimlanes are kindof
of
package for organizing responsibility
package for organizing responsibility
for
foractivities
activitiesprovided
providedby
byworkers.
workers.