thể hiện các đối tượng trong hệ thống được tạo ra, tương...

12

Upload: others

Post on 23-Sep-2019

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:
Page 2: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Thể hiện các đối tượng trong hệ thống được tạo ra, tương tác và

có mối quan hệ với nhau như thế nào

Được thực hiện thông qua quá trình lặp, ngày càng chi tiết, ít trừu

tượng

Trong quá trình phân tích, chỉ nên xây dựng mô hình ở mức khái

niệm (conceptual model) thể hiện mối quan hệ logic giữa các đối

tượng, cấu trúc cơ bản của đối tượng mà bỏ qua các chi tiết kỹ

thuật nhằm tập trung vào các yêu cầu cơ bản, chủ chốt của quy

trình nghiệp vụ

Trong quá trình thiết kế, conceptual structural model sẽ chi tiết

hóa và phản ánh đầy đủ đối tượng được lưu trữ cụ thể như thế

nào, làm cách nào để tối ưu việc truy xuất dữ liệu,…

The conceptual structural model describes the objects necessary

to support the business processes modeled by the use cases

3

Page 3: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

4

Page 4: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Responsibilities & Collaborations là những

“high-level description” về các lớp đối tượng

Responsibilities gồm có 2 phần:

Knowing: tương tự như thuộc tính của 1 đối tượng

Doing: tương tự như hành vi của 1 đối tượng

Collaborations: mô tả các mối quan hệ với các

lớp đối tượng khác

5

Page 5: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Gồm có các thành phần chính: Class Name: tên lớp đối tượng

ID: mã số của lớp đối tượng (dùng để quản lý)

Description: mô tả ngắn gọn về lớp đối tượng

(Doing) Responsibilities: những công việc mà lớp đối tượng đảm nhận

Collaborators: các lớp đối tượng có liên quan

Attributes: các thuộc tính của lớp đối tượng

Relationships: mô tả cụ thể mối quan hệ với các lớp đối tượng khác▪ Generalization

▪ Aggregation (Composition)

▪ Other Association

6

Page 6: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

7

Page 7: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Lớp đối tượng: Đại diện cho 1 dạng người hoặc đồ vật mà hệ thống cần

lưu trữ thông tin

Là hình chữ nhật chia thành 3 phần:

▪ Phần đầu: ghi tên lớp đối tượng

▪ Phần giữa: ghi tên các thuộc tính

▪ Phần cuối: ghi tên các phương thức

Đặt dấu +/-/# tương ứng cho các tầm vực truy xuất là: public, private, protected

Mối quan hệ kết hợp (Association relationship) Mối quan hệ kế thừa (Generalization relationship) Mối quan hệ Aggregation Mối quan hệ Composition

8

Page 8: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Nếu lược đồ trở nên quá phức tạp gồm nhiều

lớp đối tượng và mối quan hệ chằng chịt thì ta

cần áp dụng 1 trong 3 cách dưới đây:

Chỉ thể hiện những lớp đối tượng cần thiết

Sử dụng view:

▪ View trên 1 use case cụ thể nào đó

▪ View tĩnh lược lớp đối tượng (chỉ thể hiện tên lớp đối tượng,

chỉ thể hiện tên lớp đối tượng và thuộc tính,…)

Sử dụng package: tập hợp các lớp đối tượng trong 1

namspace, package nào đó

9

Page 9: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Một số trường hợp cần phải ví dụ minh họa, trực quan

hóa để thông qua đó giải quyết 1 số vấn đề ta có thể cần

đến lược đồ đối tượng

Lược đồ đối tượng tương tự như lược đồ lớp đối tượng

nhưng có thêm phần giá trị, trạng thái của đối tượng

10

Page 10: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Dưới đây là 3 phương pháp thường sử dụng.

Tốt nhất là phối hợp cả 3 phương pháp này:

Textual Analysis: dựa vào use case description, use

case diagram để tìm. Lưu ý đến các danh từ (có thể

sẽ là đối tượng, thuộc tính), các động từ (có thể là

hành vi)

Common Object List: dựa vào vốn từ vựng của lĩnh

vực mà hệ thống hoạt động để tìm. Đầu tiên nên chú

ý đến các đối tượng trực quan, nhìn thấy được. Sau

đó chú ý các các đối tượng ở dạng khái niệm

Pattern: dựa vào các mẫu phân tích có sẵn trong lĩnh

vực mà hệ thống hoạt động11

Page 11: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

Tạo CRC Card dựa vào phương pháp textual

analysis trên use case

Brainstorm để tìm thêm lớp đối tượng, thuộc tính,

hành vi dựa vào phương pháp common object list

Role play để hoàn chỉnh CRC Card

Tạo sơ đồ lớp dựa vào CRC Card

Kiểm tra lại sơ đồ lớp (lược bỏ những thành phần

không cần thiết hoặc bổ sung những thành phần bị

sót)

Sử dụng những mẫu có sẵn để hoàn thiện sơ đồ lớp

Kiểm tra lại sơ đồ lớp 1 lần nữa

12

Page 12: Thể hiện các đối tượng trong hệ thống được tạo ra, tương ...hienlth.weebly.com/uploads/1/6/9/3/16936172/ooad_c06.pdfClass Name: tên lớp đối tượng ID:

13