- Trang Chủ
- Cơ sở dữ liệu
- Bài giảng Các phương pháp phân tích và thiết kế hệ thống hiện đại: Chương 2 - TS. Vũ Chí Cường
Xem mẫu
- 03/05/2018
Chương 2.
MÔ HÌNH HÓA HỆ THỐNG VÀ
NGÔN NGỮ UML
TS. Vũ Chí Cường - 2018
Nội dung
Mô hình hóa hệ thống
• Khái niệm
• Mục đích
• Mô hình hóa hệ thống phần mềm
Ngôn ngữ UML
• Lịch sử phát triển
• Các phần tử của UML
Các phương pháp phân tích và thiết kế hệ thống hiện đại
1
- 03/05/2018
Mô hình hóa hệ thống
Khái niệm
• Mô hình là một dạng trừu tượng hóa của một hệ
thống thực.
• Mô hình là một hình ảnh (một biểu diễn) của một
hệ thống thực, được diễn tả:
Ở một mức độ trừu tượng hóa nào đó
Theo một quan điểm (hay một góc nhìn) nào đó
Bởi một hình thức diễn tả hiểu được (văn bản, phương
trình, bảng, đồ thị,…) nào đó
• Mô hình hóa là việc dùng mô hình để nhận thức và
diễn tả một hệ thống
• Quá trình phân tích và thiết kế hệ thống là quá
trình mô hình hóa hệ thống đó
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Mô hình hóa hệ thống
Mục đích
• Giúp hiểu và thực hiện được sự trừu tượng
hóa, tổng quát hóa các khái niệm cơ sở nhằm
giảm thiểu độ phức tạp của hệ thống
• Giúp quan sát được hệ thống như nó vốn có và
nó phải có
• Giúp đặc tả được cấu trúc và hành vi của hệ
thống
• Giúp tạo khuôn mẫu và hướng dẫn cách xây
dựng, thử nghiệm, mô phỏng, thực hiện, hoàn
thiện theo mô hình
• Là cơ sở để trao đổi
Các phương pháp phân tích và thiết kế hệ thống hiện đại
2
- 03/05/2018
Mô hình hóa hệ thống
Mô hình hóa hệ thống phần mềm
• Mô hình hóa hướng chức năng (từ 1970, với
Youndon, Constantine, DeMacro,...) lấy chức
năng làm đơn vị phân rã hệ thống
• Mô hình hóa hướng đối tượng (từ 1990, với
Booch, Rumbaugh, Jacobson, Yourdon,...) lấy
đối tượng làm đơn vị phân rã hệ thống.
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Ngôn ngữ UML
Lịch sử phát triển
Các khái niệm cơ bản của UML
• Các góc nhìn
• Các biểu đồ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
3
- 03/05/2018
Lịch sử phát triển
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Lịch sử phát triển
Các phương pháp phân tích và thiết kế hệ thống hiện đại
4
- 03/05/2018
Các khái niệm cơ bản trong UML
Các đối tượng
Các góc nhìn
Các biểu đồ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
5
- 03/05/2018
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
6
- 03/05/2018
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
7
- 03/05/2018
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
8
- 03/05/2018
Các đối tượng
Đối tượng là một khái niệm, một sự trừu
tượng hóa hay một sự vật có nghĩa trong
bài toán đang khảo sát
Đặc trưng của mô hình đối tượng
• Sự trừu tượng
• Sự đóng gói
• Tính modun
• Tính phân cấp (kế thừa)
• Tính đồng thời
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các góc nhìn
Là một các diễn tả hệ thống
Các góc nhìn của UML
• Góc nhìn ca sử dụng
• Góc nhìn thiết kế/logic
• Góc nhìn tiến trình (quá trình)/tương tranh
• Góc nhìn cài đặt (thực thi)/thành phần
• Góc nhìn triển khai/bố trí
Các phương pháp phân tích và thiết kế hệ thống hiện đại
9
- 03/05/2018
Các góc nhìn
Là một các diễn tả hệ thống
Các góc nhìn của UML
• Góc nhìn ca sử dụng
Là góc nhìn tử ngoài vào hệ thống
Là cách nhìn của các người dùng cuối, các người phân
tích, người kiểm định
Không phản ánh tổ chức bên trong của phần mềm mà
chỉ làm rõ các chức năng lớn mà hệ thống phải đáp ứng
cho người dùng
Biểu đồ ca sử dụng, biểu đồ tương tác, biểu đồ trạng
thái, biểu đồ hoạt động.
• Góc nhìn thiết kế/logic
• Góc nhìn tiến trình (quá trình)/tương tranh
• Góc nhìn cài đặt (thực thi)/thành phần
• Góc nhìn triển khai/bố trí
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các góc nhìn
Là một các diễn tả hệ thống
Các góc nhìn của UML
• Góc nhìn ca sử dụng
• Góc nhìn thiết kế/logic
Là góc nhìn vào bên trong hệ thống
Là cách nhìn của những người thiết kế hệ thống
Biểu đồ lớp, biểu đồ đối tượng
Biểu đồ tương tác, biểu đồ trạng thái, biểu đồ hoạt
động.
• Góc nhìn tiến trình (quá trình)/tương tranh
• Góc nhìn cài đặt (thực thi)/thành phần
• Góc nhìn triển khai/bố trí
Các phương pháp phân tích và thiết kế hệ thống hiện đại
10
- 03/05/2018
Các góc nhìn
Là một các diễn tả hệ thống
Các góc nhìn của UML
• Góc nhìn ca sử dụng
• Góc nhìn thiết kế/logic
• Góc nhìn tiến trình (quá trình)/tương tranh
Phản ánh các lộ trình điều khiển, các quá trình thực hiện
Cho thấy sự hoạt động song hành hay đồng bộ của hệ
thống
Biểu đồ lớp, biểu đồ đối tượng (lớp chủ động)
Biểu đồ tương tác, biểu đồ trạng thái, biểu đồ hoạt
động.
• Góc nhìn cài đặt (thực thi)/thành phần
• Góc nhìn triển khai/bố trí
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các góc nhìn
Là một các diễn tả hệ thống
Các góc nhìn của UML
• Góc nhìn ca sử dụng
• Góc nhìn thiết kế/logic
• Góc nhìn tiến trình (quá trình)/tương tranh
• Góc nhìn cài đặt (thực thi)/thành phần
Là góc nhìn đối với dạng phát hành của phần mềm
Bao gồm các thành phần, các tệp tương đối độc lập có
thể được lắp ghép theo nhiều cách
Biểu đồ thành phần
Biểu đồ tương tác, biểu đồ trạng thái, biểu đồ hoạt động
• Góc nhìn triển khai/bố trí
Các phương pháp phân tích và thiết kế hệ thống hiện đại
11
- 03/05/2018
Các góc nhìn
Là một các diễn tả hệ thống
Các góc nhìn của UML
• Góc nhìn ca sử dụng
• Góc nhìn thiết kế/logic
• Góc nhìn tiến trình (quá trình)/tương tranh
• Góc nhìn cài đặt (thực thi)/thành phần
• Góc nhìn triển khai/bố trí
Là góc nhìn về topo của phần cứng mà trên đó hệ thống
vận hành
Chỉ rõ sự phân bố, sự sắp đặt các phần của hệ thống vật
lý
Biểu đồ bố trí
Biểu đồ tương tác, biểu đồ trạng thái, biểu đồ hoạt động
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Các biểu đồ
Biểu đồ (diagram) là đồ thị biểu diễn đồ họa
về tập các phần tử (các từ vựng) trong mô
hình và mối quan hệ của chúng
Biểu đồ thường được thể hiện như một đồ thị
liên thông với các đỉnh (là các sự vật) và các
cung (là các mối quan hệ)
Sự vật
• Sự vật cấu trúc (lớp, giao diện, ca sử dụng, thành
phần, nút,...)
• Sự vật hành vi (sự tương tác, trạng thái,...)
Các mối quan hệ (phụ thuộc, kết hợp, tổng
quát hóa, hiện thức họa)
Các phương pháp phân tích và thiết kế hệ thống hiện đại
12
- 03/05/2018
Các biểu đồ
Nhóm biểu đồ về cấu trúc
• Biểu đồ lớp
• Biều đồ đối tượng
• Biểu đồ thành phần
• Biểu đồ bố trí
• Biểu đồ gói
• Biểu đồ cấu trúc đa hợp
Nhóm biểu đồ hành vi
• Biểu đồ ca sử dụng
• Biểu đồ trình tự
• Biểu đồ giao tiếp
• Biểu đồ máy trạng thái
• Biểu đồ hoạt động
• Biểu đồ bao quát tương tác
• Biểu đồ thời khác
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Biểu đồ lớp
Ý nghĩa
• Biểu đồ lớp phô bày cấu trúc tĩnh cùa các lớp trong
hệ thống. Các lớp biểu diễn cho các sự vật mà hệ
thống quan tâm.
• Hệ thống có thể được mô tả bởi một số biểu đồ lớp
và một lớp có thể tham gia vào nhiều biểu đồ.
Ký hiệu
• Tên lớp
• Thuộc tính (attributes)
• Thao tác (methord)
• Phạm vi truy cập (
Các mối quan hệ
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
13
- 03/05/2018
Biểu đồ lớp
Ý nghĩa
Ký hiệu
Các mối quan hệ
• Quan hệ liên kết
• Quan hệ khái quát
• Quan hệ kết tập
• Quan hệ hợp thành
• Quan hệ phụ thuộc
• Quan hệ thực thi
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Biểu đồ lớp
Ý nghĩa
Ký hiệu
Các mối quan hệ
• Quan hệ liên kết
• Quan hệ khái quát
• Quan hệ kết tập
• Quan hệ hợp thành
• Quan hệ phụ thuộc
• Quan hệ thực thi
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
14
- 03/05/2018
Biểu đồ lớp
Ý nghĩa
Ký hiệu
Các mối quan hệ
• Quan hệ liên kết
• Quan hệ khái quát
• Quan hệ kết tập
• Quan hệ hợp thành
• Quan hệ phụ thuộc
• Quan hệ thực thi
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Biểu đồ lớp
Ý nghĩa
Ký hiệu
Các mối quan hệ
• Quan hệ liên kết
• Quan hệ khái quát
• Quan hệ kết tập
• Quan hệ hợp thành
• Quan hệ phụ thuộc
• Quan hệ thực thi
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
15
- 03/05/2018
Biểu đồ lớp
Ý nghĩa
Ký hiệu
Các mối quan hệ
• Quan hệ liên kết
• Quan hệ khái quát
• Quan hệ kết tập
• Quan hệ hợp thành
• Quan hệ phụ thuộc
• Quan hệ thực thi
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Biểu đồ lớp
Ý nghĩa
Ký hiệu
Các mối quan hệ
• Quan hệ liên kết
• Quan hệ khái quát
• Quan hệ kết tập
• Quan hệ hợp thành
• Quan hệ phụ thuộc
• Quan hệ thực thi
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
16
- 03/05/2018
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
17
- 03/05/2018
Biểu đồ đối tượng
Ý nghĩa
• Thể hiện các đối tượng cụ thể thay cho các lớp,
cho thấy các đối tượng đang tồn tại và hoạt
động
Ký hiệu
• Sử dụng các ký hiệu của biểu đồ lớp
• Tên của đối tượng được gạch dưới và mọi liên
kết cụ thể đều được vẽ
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
18
- 03/05/2018
Biểu đồ thành phần
Ý nghĩa
• Trình bày cấu trúc vật lý của hệ thống dưới dạng các thành
phần, cùng với các mối liên quan phụ thuộc giữa chúng.
• Một thành phần có thể là thành phần mã nguồn, thành
phần mã nhị phân, hoặc thành phần exe.
• Mỗi thành phần tương ứng với một hay nhiều lớp, giao diện
hay hợp tác trong biểu đổ lớp.
• Biểu đồ thành phần được dùng để trình bày góc nhìn thực
thi của hệ thống.
Ký hiệu
• Thành phần (components)
• Giao tiếp
• Mối quan hệ phụ thuộc
• Gói
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Vi dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
19
- 03/05/2018
Biểu đồ bố trí
Ý nghĩa
• Biểu đồ triển khai (deployment diagram)
• Trình bày kiến trúc vật lý của phần cứng và
phần mềm của hệ thống. Cho thấy các máy
tính và thiết bị (các nút), cùng vói các kết nối
giữa chúng.
• Các thành phần thực hiện được (exe) được
phân bổ vào các nút, cho thấy các đơn vị phần
mềm được thực hiện trên các nút nào.
Ký hiệu
• Các nodes: hình hộp ba chiều
Các phương pháp phân tích và thiết kế hệ thống hiện đại
Ví dụ
Các phương pháp phân tích và thiết kế hệ thống hiện đại
20
nguon tai.lieu . vn