PHÂN TÍCH THIẾT
KẾ HTTT
Đại học Khoa Học Tự Nhiên
Khoa CNTT
ThS Phạm Nguyễn Cương
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
2
Phần 1 - Tổng quan
Chương 2 MÔ HÌNH VÀ CÁC
PHƢƠNG PHÁP MÔ HÌNH HÓA
Mô hình
Phƣơng pháp mô hình hoá
Lịch sử các phƣơng pháp mô hình hóa
Một số phƣơng pháp phân tích thiết kế hệ
thống hƣớng đối tƣợng
Một số mô hình tiêu biểu
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
3
Phần 1 - Tổng quan
Mô hình (Model)
Mô hình là một dạng thể hiện đơn giản
hoá của thế giới thực (Efraim Turban ).
Các đặc điểm:
Diễn đạt một mức trừu tƣợng hóa
Tuân theo một quan điểm
Có một hình thức biểu diễn (văn bản, đồ hoạ:
đồ thị, sơ đồ, biểu đồ,…)
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
4
Phần 1 - Tổng quan
Phân loại mô hình
Mô hình tĩnh và mô hình động
Mô hình tĩnh:
Biểu diễn thông số hệ thống
Cấu trúc của hệ thống (dữ liệu, thông tin) và
những cấu trúc tĩnh khác
Mô hình động:
Biểu diễn hành vi, thủ tục của hệ thống
Sự tƣợng tác giữa các đối tƣợng nhằm thực hiện
hoạt động hệ thống
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
5
Phần 1 - Tổng quan
Mô hình hoá (modeling)
Là công việc biểu diễn thế giới thực dùng
mô hình
Mục đích của mô hình hoá:
Làm sáng tỏ vấn đề tiếp cận
Mô phỏng đƣợc hình ảnh tƣơng tự của hệ
thống
Gia tăng khả năng duy trì hệ thống
Làm đơn giản hóa hệ thống
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
6
Phần 1 - Tổng quan
Phƣơng pháp mô hình hóa
(Methodology)
Phƣơng pháp mô hình hoá (phƣơng pháp phân tích thiết
kế) là một tập các khái niệm, quy tắc, thứ tự và cách
thực hiện để biểu diễn HTTT khi chuyển đổi thành tự
động hoá.
Thành phần một phƣơng pháp:
Tập khái niệm và mô hình
Ví dụ: phƣơng pháp SA: mô hình DFD, phƣơng pháp BOOCH:
Class diagram, Object diagram, State transition diagram, module
diagram, process diagram, interaction diagram
Qui trình triển khai: gồm các bƣớc và kết quả từng bƣớc
Công cụ trợ giúp
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
7
Phần 1 - Tổng quan
Chương 2 MÔ HÌNH VÀ CÁC
PHƢƠNG PHÁP MÔ HÌNH HÓA
Mô hình
Phƣơng pháp mô hình hoá
Lịch sử các phương pháp mô hình hóa
Một số phƣơng pháp phân tích thiết kế hệ
thống hƣớng đối tƣợng
Một số mô hình tiêu biểu
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
8
Phần 1 - Tổng quan
Lịch sử các phƣơng pháp mô hình hóa
Thập niên 60
Phƣơng pháp sơ đẳng với đặc tính chung là chuẩn
hóa kỹ thuật của các nhà phát triển ứng dụng
Thập niên 70
Phƣơng pháp Descartes với đặc trƣng là phân rã
chức năng của HTTT theo mô hình phân cấp và ứng
dụng các phƣơng pháp lập trình cấu trúc, đơn thể.
Một số phƣơng pháp: HIPO, SADT, SA hay SSA,
SA/SD,…
Hƣớng tiếp cận:
Tính rõ ràng
Tính dừng
Sự rút gọn
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
9
Phần 1 - Tổng quan
Lịch sử các phƣơng pháp mô hình hóa
Thập niên 70 (tiếp)
Phân loại
Phân tích cấu trúc: phân rã chức năng HTTT (HIPO, SADT,
PSL/PSA, SA-SD, SSA, SASS )
Khái niệm cấu trúc: mô tả cấu trúc các đơn thể (PSL/PSA,
JSD, SA-SD )
Ƣu điểm
Tiếp cận theo hƣớng từ trên xuống (top – down)
Dễ dàng áp dụng cho các hệ thống đƣợc cấu thành bởi
những thành phần ghép nối
Tiếp cận từng bƣớc
Khuyết điểm
Thiếu qui luật chính xác trong sự phân rã
Thiếu các ràng buộc về việc bố trí xứ lý theo thời gian
Khó khăn trong việc phân rã một hệ thống lớn
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
10
Phần 1 - Tổng quan
Lịch sử các phƣơng pháp mô hình hóa
Thập niên 80: phƣơng pháp hệ thống, tiếp cận dữ liệu
và xử lý: MERISE, IDA, REMORA, IA,…
Cách tiếp cận
Tính toàn thể
Tính đúng đắn
Phân loại
Mô hình cấu trúc dữ liệu của hệ thống (hƣớng tiếp cận CSDL)
Mô hình hành vi hệ thống (tiếp cận theo hƣớng xử lý)
Bao gồm 2 trƣờng phái
Lƣỡng phần dữ liệu và xử lý: MCT, SADT, MERISE
Không phân biệt rõ ràng giữa dữ liệu và xử lý: IDA, Remora, ACM-
PCM, CIAM
Ƣu điểm
Mô hình ERA đƣợc sử dụng rộng rãi nhất
2 cách tiếp cận của hệ thống về dữ liệu và xử lý
Quan tâm đến những thành phần không tin học hóa
Khuyết điểm
Lƣỡng phần dữ liệu và xử lý
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
11
Phần 1 - Tổng quan
Lịch sử các phƣơng pháp mô hình hóa
Thập niên 90: phƣơng pháp hƣớng đối tƣợng, mô hình
tiêu biểu là OOD, HOOD, BON, OSA, … và sau này là
OOSA, OOA, OMT, CRC, OOM, OOAD, UML/RUP
Đặc trƣng cơ bản
Tính bao bọc (encapsulation)
Tính phân loại (classification)
Tính kết hợp (aggregation)
Tính thừa kế (heritage)
Phân loại: 2 hƣớng
Lập trình:lập trình đơn thể -> hƣớng đối tƣợng
Hệ quản trị CSDL: CSDL hƣớng đối tƣợng
Cách tiếp cận: 2 cách
Phƣơng pháp kỹ thuật: CNPM (OOD, HOOD, BON, BOOCH,
MECANO, OODA)
Phƣơng pháp toàn cục:HTTT (OOA, OOSA, OOAD, OMT, OOM )
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
12
Phần 1 - Tổng quan
Lịch sử các phƣơng pháp mô hình hóa
Thập niên 90
Ƣu điểm
Cấu trúc hoá đƣợc các cấu trúc phức tạp và sử dụng đƣợc
cấu trúc đệ qui
Xác định đƣợc đối tƣợng của hệ thống qua định danh đối
tƣợng
Tính thừa kế đƣợc đƣa ra tạo tiền đề cho việc tái sử dụng
Khuyết điểm
Nhiều khái niệm biểu diễn, khá rắc rối trong việc phân biệt
ngữ nghĩa một số khái niệm gần nhau
Xác định một đối tƣợng khá khó khăn
Hƣớng tiếp cận về hệ thống vẫn còn đơn giản
Kiểu đối tƣợng <-> hành vi
Mô hình ER -> đối tƣợng
Chƣơng 2 - Mơ hình và các phƣơng
pháp mơ hình hóa
13
Phần 1 - Tổng quan
Lịch sử các phƣơng pháp mơ hình hóa
Tổng hợp lịch sử phƣơng pháp tiếp cận
Dữ liệu
Tiếp cận đối tượng
Jsd
OMT OOM
CRC OODa
Ida
OOSA
Merise
Remora
Axial
Ssa
Hipo
Tiếp cận Descartes
Arianne
Proteé
Corig
Tiếp cận hệ
thống
90
80
70
60
Xử lý
Sadt
Sa/sd
Niam
OOA
UML/
RUP
Thời gian
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
14
Phần 1 - Tổng quan
Chương 2 MÔ HÌNH VÀ CÁC
PHƢƠNG PHÁP MÔ HÌNH HÓA
Mô hình
Phƣơng pháp mô hình hoá
Lịch sử các phƣơng pháp mô hình hóa
Một số phương pháp phân tích thiết kế
hệ thống hướng đối tượng
Một số mô hình tiêu biểu
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
15
Phần 1 - Tổng quan
OMT – Object Modeling Technique
Tiếp cận theo 3 cách nhìn về hệ thống:
Mô hình đối tƣợng mô tả cách nhìn tĩnh về
hệ thống (lớp, thuộc tính, toán tử, kế thừa,
mối kết hợp,…)
Mô hình động hệ thống mô tả khía cạnh
của hệ thống có thể thay đổi theo thời gian
(trạng thái, sự kiện, hành động, họat động)
Mô tả chức năng và việc chuyển đổi dữ
liệu bên trong
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
16
Phần 1 - Tổng quan
OOA – Object Oriented Analysis
Sử dụng nguyên lý cấu trúc hoá kết hợp
với quan điểm hƣớng đối tƣợng. Gồm 5
bƣớc:
Tìm lớp và đối tƣợng
Xác định cấu trúc: cấu trúc tổng quát –
chuyên biệt; cấu trúc tổng thể thành phần
Xác định chủ đề: tổng hợp mô hình lớp và đối
tƣợng thành các đơnh vị lớn hơn
Xác định thuộc tính
Xác định dịch vụ: định nghĩa các toán tử cho
các lớp
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
17
Phần 1 - Tổng quan
Chương 2 MÔ HÌNH VÀ CÁC
PHƢƠNG PHÁP MÔ HÌNH HÓA
Mô hình
Phƣơng pháp mô hình hoá
Lịch sử các phƣơng pháp mô hình hóa
Một số phƣơng pháp phân tích thiết kế hệ
thống hƣớng đối tƣợng
Một số mô hình tiêu biểu
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
18
Phần 1 - Tổng quan
Một số mô hình
Mô hình
Mô hình tổ chức
Mô hình dòng dữ liệu
Mô hình mô hình động
Mô hình dữ liệu
Mô hình đối tượng
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
19
Phần 1 - Tổng quan
Mô hình tổ chức
Mô hình phân cấp chức năng: phân rã một
chức năng tổng hợp thành những chức năng chi
tiết hơn.
Ví dụ: biểu diễn các chức năng của hệ thống cửa
hàng nƣớc giai khát
Hệ quản lý cửa hàng
Bán hàng Kế toán Quản lý tồn
kho
Quản lý nhập
hàng
Quản lý
xuất
Báo cáo tồn Bán lẽ Quản lý đơn
hàng
Quản công
nợ
Chức năng
Quan hệ bao
hàm
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
20
Phần 1 - Tổng quan
Mô hình tổ chức
Mô hình
luân
chuyển
(hệ thống)
Ví dụ:
biểu diễn
quá trình
xử lý đặt
hàng của
cửa hàng
NGK
Đặt mua NGK
ĐĐ hàng
Kiểm tra đơn
hàng
ĐĐ hàng không
hợp lệ
ĐĐ hàng
hợp lệ
Kiểm tồn kho Lƣu đơn hàng
CSDL
Tồn kho
Danh
sách tồn
kho
Lên kế hoạch
giao
ĐĐ hàng
Lập phiếu
giao hàng
Phiếu giao
hàng
Lƣu phiếu giao
hàng
Phiếu giao
hàng
Ghi nhận tồn
kho mới
Khách hàng Bộ phận bán hàng Kho Văn phòng
Chƣơng 2 - Mô hình và các phƣơng
pháp mô hình hóa
21
Phần 1 - Tổng quan
Mô hình dòng dữ liệu
Mô hình tương tác thông tin
Khách
hàng
Phòng bán
hàng
Văn phòng
Kho
Tác nhân
Dòng dữ liệu, thông tin
Đơn đặt mua
NGK
ĐĐ hàng bị từ
chối
Thông tin giao NGK
Đơn đặt mua
NGK
Tồn kho
Đơn
đặt
mua
NGK
Thông
tin
giao
NGK
Ví dụ: Mô hình tƣơng tác đặt hàng cửa hàng NGK

-->