Professional Documents
Culture Documents
Buoi9 10 11
Buoi9 10 11
BUỔI 9-10-11:
PHÂN TÍCH HƯỚNG ĐỐI TƯỢNG
PHẠM THỊ MINH THƯƠNG 1
MỤC TIÊU
• Biểu đồ lớp?
• Các thành phần của biểu đồ lớp
• Cách xác định các thành phần
• Biểu đồ gói?
• Bản số: là một cặp (min, max) mà thuộc tính có thể có giá trị
• VD:Số điện thoại[0..*]: string, Địa chỉ[0..1]: string
Thành phần
• Tên quan hệ: phản ánh mục đích của mối kết hợp
• Vai trò quan hệ: mô tả ngữ nghĩa tham gia của một lớp vào mối kết hợp
• Tên vai trò
• Bản số: cặp giá trị (micard, maxcard)
Tổng quát
• Nếu mincard (C1, A) = 0: lớp C1 tham gia tùy ý vào mối kết hợp
• Nếu mincard (C1, A) > 0: lớp C1 tham gia bắt buộc vào mối kết hợp
• Mối kết hợp A giữa C1 và C2 là mối kết hợp max1 – max2
• Lớp kết hợp (Association Class): khi mối kết hợp có các đặc trưng riêng (thuộc
tính, phương thức, mối kết hợp)
• 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
Sự tương quan của các lớp trong quan hệ khái quát hóa
• Giữa các lớp chuyên biệt với lớp tổng quát
• Toàn phần (complete):
• Bán phần (incomplete):
Sự tương quan phản ánh ràng buộc ngữ nghĩa trong tập hợp các đối
tượng của quan hệ
Phạm Thị Minh Thương 12
QUAN HỆ KHÁI QUÁT HÓA (3)
Chuyên biệt bán phần, chồng lắp Chuyên biệt bán phần, riêng biệt
• Đa kế thừa
• Phức tạp → không nên sử dụng
OR
AND
• Là quan hệ chỉ ra một lớp tham chiếu lớp khác. Nghĩa là: Khi thay đổi phương
thức, thuộc tính lớp tham chiếu thì lớp sử dụng nó bị ảnh hưởng
• Thường trong giai đoạn thiết kế
• Ký hiệu: mũi tên đứt nét, đầu mũi tên hướng từ bên phụ thuộc sang bên độc lập
• Đối với các thực thể sự vật: kiểm chứng xem có nhu cầu quản lý thông tin về thực thể
này trong hệ thống không?
• Nếu có, xác định một lớp trong sơ đồ phân tích biểu diễn cho thực thể này
• Tên lớp: tên của sự vật
• Thuộc tính: bổ sung các thuộc tính mô tả đầy đủ thông tin mà hệ thống có nhu cầu quản lý về đối tượng
Khach hang
Mat hang
• Đối với thực thể thừa tác viên và các thực thể tổ chức khác
• Dựa trên cơ sở tri thức về việc phân loại lớp theo những mẫu chung
• Lớp khái niệm (concept): Một khái niệm là một quan niệm hoặc sự hiểu biết riêng biệt
về thế giới. Lớp khái niệm bao gồm các nguyên lý được dùng để tổ chức hoặc để lưu trữ
các hoạt động và các trao đổi về mặt quản lý
• VD: Hệ thống ATM
Tài khoản
• Dựa trên cơ sở tri thức về việc phân loại lớp theo những mẫu chung
• Lớp sự kiện (event): là các điểm thời gian cần được lưu trữ. Các sự việc xảy ra tại một
thời điểm, hoặc một bước trong một dãy tuần tự các bước.
• VD: Hệ thống ATM
Giao dịch
• Dựa trên cơ sở tri thức về việc phân loại lớp theo những mẫu chung
• Lớp tổ chức (organization): là một tập hợp con người, tài nguyên, phương tiện hoặc
những nhóm xác định chức năng người dùng
• VD: Hệ thống ATM
Ngân hàng
• Dựa trên cơ sở tri thức về việc phân loại lớp theo những mẫu chung
• Lớp con người (people): 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
• VD: Hệ thống ATM
Khách hàng
• Dựa trên cơ sở tri thức về việc phân loại lớp theo những mẫu chung
• Lớp vị trí (place): các vị trí vật lý mà hệ thống cần lưu trữ thông tin về 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
• VD: Hệ thống ATM
Máy ATM
Thẻ ATM
• Câu hỏi:
• Thông tin gì về đối tượng sẽ được lưu trữ?
• Nguyên tắc
• Tên: danh từ, cụm danh từ
• Đơn giản: chỉ dùng đủ thuộc tính để diễn đạt trạng thái đối tượng ở giai đoạn phân tích
(thuộc tính sẽ được bổ sung chi tiết hơn ở các giai đoạn tiếp theo)
• Không quá quan tâm về việc phải khám phá hết thuộc tính
• Không quan tâm đến các thuộc tính mô tả cài đặt của đối tượng
• Trong trường hợp khó khăn quyết định danh từ tìm ra là thuộc tính hay là lớp
• VD: Tên nhà sản xuất là thuộc tính hay lớp? Khách hàng
• Loại ứng dụng cụ thể quyết định việc này
tenKhachHang
• Khi kết thúc tìm kiếm thuộc tính hoKhachHang
• Đảm bảo các thuộc tính tìm được phải có ích maPin
• Gán thận trọng thuộc tính của lớp soThe
• Không nên hình thành lớp có quá nhiều hay quá ít thuộc tính
• Câu hỏi:
• Dịch vụ gì mà một lớp phải cung cấp?
• Nguyên tắc:
• Tên: động từ + bổ ngữ
• Chỉ quan tâm đến các phương thức có phạm vi toàn cục (public), các phương thức có
phạm vi cục bộ sẽ được phát hiện trong giai đoạn thiết kế cài đặt
• Các phương thức chịu trách nhiệm về các thao tác lên các thuộc tính của đối tượng: truy
vấn, cập nhật, đọc và ghi
• Gói - Package
• Biểu đồ gói
• Một package là một cơ chế để tổ chức các phần tử vào thành các nhóm.
• Một phần tử trong mô hình có thể chứa các phần tử khác.
• Dùng để
• Tổ chức mô hình đang phát triển
• Một đơn vị trong quản trị cấu hình
• Ví dụ: hệ thống quản lý thư viện có thể tổ chức thành bốn gói: gói giao diện,
gói nghiệp vụ, gói CSDL và gói tiện ích
Vẽ biểu đồ lớp:
Vẽ biểu đồ lớp:
Vẽ biểu đồ lớp:
• Để hỗ trợ việc quản lý mua bán hàng hóa tại một cửa hàng, người ta xây dựng một CSDL
nhằm giúp quản lý các mặt hàng (bao gồm các thông tin: mã hàng, tên hàng, đơn vị tính, số
lượng hiện có, giá bán hiện thời), các phiếu nhập hàng (bao gồm các thông tin: số phiếu,
ngày nhập, tên nhà cung cấp), và các hóa đơn xuất hàng (bao gồm các thông tin: số hóa đơn,
ngày bán, tên người mua hàng). Ngoài ra, cần quản lý các thông tin khác như sau:
• Mỗi phiếu nhập hàng nhập những mặt hàng nào với số lượng và đơn giá tương ứng là
bao nhiêu.
• Mỗi hóa đơn xuất hàng xuất những mặt hàng nào với số lượng và đơn giá tương ứng là
bao nhiêu.
Vẽ biểu đồ lớp:
• Một quỹ tín dụng cần tổ chức một cơ sở dữ liệu để quản lý hoạt động cho vay vốn đối với khách hàng. Cho biết
một số thông tin liên quan đến hoạt động của quỹ này như sau:
• Những người vay vốn được gọi là khách hàng. Mỗi một khách hàng được quản lý với các thông tin: mã khách
hàng, tên khách hàng, địa chỉ liên hệ.
• Quỹ tín dụng có các hình thức vay vốn khác nhau như vay sản xuất, vay kinh doanh, vay chăn nuôi,… Mỗi một
hình thức vay vốn được đánh một mã số duy nhất, được qui định thời gian vay tối đa (tính theo tháng) và lãi suất
hàng tháng.
• Khi khách hàng muốn vay vốn phải lập hồ sơ vay vốn. Ngoài mã hồ sơ, mỗi một hồ sơ vay vốn còn phải thể hiện
được số tiền vay, ngày bắt đầu vay, vay theo hình thức nào và là hồ sơ của khách hàng nào.
• Việc trả tiền vốn và lãi của các hồ sơ vay vốn được thực hiện theo từng tháng. Cứ đến kỳ hạn mỗi tháng, quỹ sẽ lập
phiếu thanh toán cho các hồ sơ trong đó thể hiện được các thông tin sau: mã số phiếu, ngày thanh toán, số tiền vốn,
số tiền lãi phải trả và phiếu thanh toán đó là của hồ sơ vay vốn nào.
Vẽ biểu đồ lớp:
Một Trung tâm tin học cần tổ chức một cơ sở dữ liệu để quản lý việc ghi danh và nộp học phí của học viên. Cho biết
một số thông tin liên quan như sau:
• Mỗi một học viên được cấp một mã học viên duy nhất và được quản lý với các thông tin bao gồm họ tên, ngày sinh,
nơi sinh và địa chỉ.
• Mỗi một lớp học khi được mở sẽ được gán một mã lớp học. Ngoài ra, lớp học còn có các thông tin như tên lớp, ngày
khai giảng, học phí, loại chứng chỉ được đào tạo.
• Khi một học viên đăng ký học một lớp học nào đó, trung tâm cần phải biết được ngày học viên đăng ký và mức
giảm học phí áp dụng cho học viên. Hiển nhiên, một học viên có thể đăng ký học tại nhiều lớp khác nhau.
• Việc nộp học phí cho mỗi đăng ký học tại một lớp của học viên là có thể nộp trong nhiều lần khác nhau. Mỗi khi học
viên nộp học phí cho một lớp (mà học viên đã đăng ký học), trung tâm sẽ viết phiếu thu học phí, trong đó cho biết
học viên nộp học phí cho lớp nào và số tiền nộp là bao nhiêu. Ngoài ra, mỗi một phiếu thu học phí được đánh một số
phiếu duy nhất và phải cho biết ngày nộp học phí là ngày nào.