Bài giảng Phân tích thiết kế hệ thống - Chương 3: Mô hình hóa các khái niệm sử dụng mô hình Domain
Chương 3
niệm
sử dụng
Mô hì nh hó a phạm vi bài toá n (domain modeling)
• Mục tiêu của mô hì nh hó a là để hiểu rõ hệ thống làm việc
như thế nào
• Phâ n tí ch yêu cầu là xá c định cá ch mà người dùng sẽ tương tá c với hệ
thống (hành vi bên ngoài)
• Domain model xá c định cá ch mà cá c yếu tố bên trong của hệ thống
tương tá c với nhau (hành vi bên trong) để thực hiện cá c hành vi bên
ngoài.
Mô hì nh hó a phạm vi bài toá n (domain modeling)
• Mô hì nh hó a phạm vi bài toá n dựa trên cá c yếu tố
• Hiểu biết về cá c hoạt động mà hệ thống phải thực hiện (từ phâ n tí ch
yêu cầu, ví dụ, use case)
• Tì m hiểu về phạm vi bài toá n (domain)
• Kiến thức cơ bản về thiết kế phần mềm
• Những kinh nghiệm về thiết kế phần mềm của những dự á n trước
Use Cases và Domain Model
Trong phâ n tí ch domain, hệ thống được
xem như một hộp trong suốt “transparent
box”, xem xé t cấu trúc bên trong hệ thống
Trong phâ n tí ch use case, hệ thống được
xem như một hộp đen “black box”, xem
xé t cá c hành vi bên ngoài hệ thống
System
Domain Model
Use Case 1
Use Case 2
Actor
Actor
Use Case N
Actors
Actors
Domain model
• Domain model là một đại diện trực quan của cá c lớp khá i niệm
(conceptual classes), cá c đối tượng và mối quan hệ giữa
chúng trong phạm vi bài toá n.
• Domain model là thành phần quan trọng nhất được tạo ra trong
giai đoạn phâ n tí ch hướng đối tượng, là cơ sở cho việc thiết
kế phần mềm
• Domain model cò n được gọi là conceptual models, domain
object model hoặc analysis object model.
Domain model trong UML
• Trong UML, domain model được biểu diễn bằng một tập hợp
cá c sơ đồ lớp (class diagram), trong đó chỉ hiển thị:
• Đối tượng hoặc cá c lớp khá i niệm
• Cá c mối quan hệ giữa cá c lớp khá i niệm
• Cá c thuộc tí nh của cá c lớp khá i niệm
Domain model trong UML
• Ví dụ: domain model của một phần trong hệ thống ATM
Cá c bước xâ y dựng Domain Model
• Tì m cá c lớp khá i niệm trong phạm vi bài toá n
• Chuẩn bị từ điển dữ liệu
• Tì m cá c mối quan hệ giữa cá c lớp hoặc cá c đối tượng.
• Xá c định lượng số (Multiplicity) của loại đối tượng tham gia vào mối
quan hệ
• Tì m cá c thuộc tí nh của cá c đối tượng.
• Tổ chức và đơn giản hó a cá c lớp bằng cá ch sử dụng tí nh kế thừa.
Lớp khá i niệm - Conceptual Classes
• Lớp khá i niệm là những ý tưởng, sự vật hoặc đối tượng trong
phạm vi bài toá n.
• Lớp khá i niệm có 3 phần:
• Symbol: biểu diễn bằng hì nh chữ nhật
• Intension: Định nghĩa lớp khá i niệm (conceptual class).
• Extension: thể hiện của một lớp.
Lớp khá i niệm - Conceptual Classes
• Một lớp là một tập cá c đối tượng có cùng cá c thuộc tí nh, hành
vi/trá ch nhiệm, mối quan hệ và ngữ nghĩa.
• Xá c định cá c đối tượng được sử dụng để xá c định cá c lớp
khá i niệm trong phạm vi bài toá n.
• Lớp khá i niệm có thể là:
• Cá c đối tượng doanh nghiệp (Business objects)
• Đối tượng trong thế giới thực (Real world objects)
• Những sự kiện xã y ra (Events that transpire)
Cá ch xá c định lớp khá i niệm
• Có 2 cá ch để xá c định cá c lớp khá i niệm:
• Xá c định cá c cụm danh từ
• Sử dụng một danh mục lớp khá i niệm.
Xá c định cụm danh từ
• Cụm danh từ có thể được xá c định từ cá c nguồn:
• Mô tả phạm vi bài toá n
• Trong đặc tả use case, tì m kiếm cá c cụm danh từ có liên quan.
• Danh mục cá c thuật ngữ
• Cụm danh từ có thể là lớp khá i niệm cũng có thể là thuộc tí nh
• Nếu cụm danh từ lưu thô ng tin trạng thá i hoặc nó có nhiều hành vi, thì
đó là một lớp
• Nếu chỉ là một số hoặc một chuỗi, thì đó nó có thể là một thuộc tí nh
Xá c định cụm danh từ
• Ví dụ: mô tả một phần hoạt động rút tiền từ ATM
• ATM kiểm tra số thẻ của khá ch hàng và mã PIN.
• Nếu đúng, thì khá ch hàng có thể kiểm tra số dư trong tài khoản, và rút
tiền mặt.
• Nếu kiểm tra số dư, thì ATM hiển thị số dư trong tài khoản.
• Nếu rút tiền mặt thì ATM yêu cầu khá ch hàng nhập số tiền, ATM kiểm
tra số tiền rút < số dư trong tài khoản. Nếu thỏa thì ATM xuất tiền mặt
và cập nhật lại số dư
• ATM in số dư trong tài khoản của khá ch hàng trên biên nhận.
Sử dụng danh mục lớp khá i niệm
Danh mục lớp khá i niệm
Ví dụ
Đối tượng vật lý hoặc hữu hình
Khá ch hàng, má y ATM
Thông số kỹ thuật, hoặc mô tả sự vật Thô ng số kỹ thuật sản phẩm, Mô tả chuyến bay
Nơi chốn
Cửa hàng, sâ n bay
Giao dịch
Giao dịch rút tiền, thanh toá n
Thủ quỹ, phi cô ng
Vai trò của con người
Hệ thống chức thực thẻ thanh toá n, hệ thống kiểm
soá t khô ng lưu
Hệ thống máy tính hoặc điện tử
Danh mục
Tổ chức
Danh mục sản phẩm, danh mục phò ng ban
Bộ phận bá n hàng, hã ng hàng khô ng
Xá c định lớp khá i niệm ứng viên
• Từ việc phâ n tí ch cá c cụm danh từ và danh mục cá c lớp khá i
niệm, tạo ra danh sá ch lớp khá i niệm ứng viên, bằng cá ch:
• Loại bỏ cá c cụm danh từ trùng lắp, khô ng liên quan đến vấn đề đang
phâ n tí ch
• Xem xé t việc rút gọn cá c lớp dựa trên tí nh kế thừa
Từ điển dữ liệu
• Chuẩn bị một từ điển dữ liệu cho tất cả cá c yếu tố trong mô
hì nh bao gồm:
• Mô tả phạm vi của cá c lớp trong cá c vấn đề hiện tại, gồm tất cả cá c giả
định hoặc ràng buộc.
• Mô tả cá c mối quan hệ, cá c thuộc tí nh, cá c hoạt động và cá c giá trị
kiểu liệt kê
Từ điển dữ liệu
Ví dụ: Từ điển dữ liệu trong hệ thống ATM
• Tài khoản (Account)
• ATM
• Nhâ n viên NH
• Khá ch hàng
• Ngâ n hàng (Bank)
• Thẻ rút tiền (CashCard)
• Số dư
• Giao dịch
• Biên lai
• Ngày thực hiện giao dịch
• Loại giao dịch
• Tên ngâ n hàng
• Mã PIN
Xá c định lớp khá i niệm ứng viên
• Từ việc phâ n tí ch cá c cụm danh từ và danh mục cá c lớp khá i
niệm, tạo ra danh sá ch lớp khá i niệm ứng viên, bằng cá ch:
• Loại bỏ cá c cụm danh từ trùng lắp, khô ng liên quan đến vấn đề đang
phâ n tí ch
• Xem xé t việc rút gọn cá c lớp dựa trên tí nh kế thừa
Xá c định lớp khá i niệm ứng viên
• Biểu diễn lớp trong UML: có dạng hì nh chữ nhật có 3 ngăn
chứa 3 loại thô ng tin:
• Tên lớp
• Danh sá ch cá c thuộc tí nh
• Danh sá ch cá c hoạt động (hành vi – phương thức)
Tên lớp
Thuộc tí nh
Hành vi
Xá c định lớp khá i niệm ứng viên
Ví dụ: cá c lớp khá i niệm ctrong hệ thống ATM
• Tài khoản (Account)
• ATM
• Nhâ n viên NH
• Khá ch hàng
• Giao dịch
• Ngâ n hàng (Bank)
• Thẻ rút tiền (CashCard)
• Biên lai
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 Phân tích thiết kế hệ thống - Chương 3: Mô hình hóa các khái niệm sử dụng mô hình Domain", để 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_phan_tich_thiet_ke_he_thong_chuong_3_mo_hinh_hoa_c.pptx

