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: Mô hình hóa hệ thống và ngôn ngữ UML - Vũ Chí Cường
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
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài 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: Mô hình hóa hệ thống và ngôn ngữ UML - Vũ Chí Cường", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
bai_giang_cac_phuong_phap_phan_tich_va_thiet_ke_he_thong_hie.pdf

