Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 7: Mô hình hóa cấu trúc cung cấp cho người học những kiến thức như: Sơ đồ lớp; Sơ đồ đối tượng; Cách tiếp cận xác định lớp; Cách tiếp cận xác định mối quan hệ; Cách tiếp cận xác định thuộc tính; Cách tiếp cận xác định phương thức; Hiểu về thể mô tả cho lớp (CRC Card). Mời cá bạn cùng tham khảo!
25/02/2016 25/02/2016 PHÂN TÍCH THIẾT KẾ HỆ THỐNG THƠNG TIN Chương Mơ hình hóa cấu trúc 25/02/2016 Bức tranh PTKTHT 25/02/2016 25/02/2016 Bức tranh PTKTHT 25/02/2016 NộI dung • Sơ đồ lớp • Sơ đồ đối tượng • Cách tiếp cận xác định lớp • Cách tiếp cận xác định mối quan hệ • Cách tiếp cận xác định thuộc tính • Cách tiếp cận xác định phương thức • Hiểu thể mơ tả cho lớp (CRC Card) 25/02/2016 25/02/2016 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp • Lớp (Class) • Mối kết hợp (Association) • Lớp kết hợp (Association Classes) • Quan hệ thu nạp (Aggregation) • Quan hệ thành phần (Compossition) • Quan hệ tổng qt hóa (Generalization) • Quan hệ (OR) 25/02/2016 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Lớp (Class): mộ tập hợp đối tượng chia sẻ chung cấu trúc hành vi(cùng thuộc tính, hoạt động, mối quan hệ ngữ nghĩa) • Ký hiệu: 25/02/2016 25/02/2016 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Mối kết hợp (Association): quan hệ ngữ nghĩa thiết lập hai hay nhiều lớp, biểu diễn thành phần sau: + Tên quan hệ + Vai trò quan hệ * Tên vai trò * Bản số 25/02/2016 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Mối kết hợp (Association): quan hệ ngữ nghĩa thiết lập hai hay nhiều lớp, biểu diễn thành phần sau: + Tên quan hệ + Vai trò quan hệ * Tên vai trò * Bản số 25/02/2016 25/02/2016 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Lớp kế hợp (Association Classes): mối kết hợp có đặc trưng (thuộc tính, hoạt động, mối kết hợp), tạo lớp để chứa thuộc tính kết nối với mối kết hợp, lớp gọi lớp kết hợp 25/02/2016 10 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Quan hệ thu nạp (Aggregation): mơ tả mối quan hệ đối tượng lớn tạo từ đối tượng nhỏ Một loại quan hệ đặc biệt quan hệ “có”, có nghĩa đối tượng tổng thể có đối tượng thành phần 25/02/2016 25/02/2016 11 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Quan hệ thành phần (Compossition): loại đặc biệt quan hệ thu nạp, có liên hệ mạnh mẽ để trình bày thành phần đối tượng phức tạp Quan hệ thành phần xem quan hệ thành phần – tổng quát, đối tượng tổng hợp quản lý việc tạo lập hủy bỏ đối tượng thành phần 25/02/2016 12 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Quan hệ tổng quát hóa (Generalization): quan hệ thiết lập lớp tổng quát đến lớp chuyên biệt Quan hệ dùng để phân loại tập hợp đối tượng thành loại xác định mà hệ thống cần làm rõ ngữ nghĩa 25/02/2016 25/02/2016 13 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Quan hệ đa kế thừa 25/02/2016 14 Sơ đồ lớp (class Diagram) • Các thành phần sơ đồ lớp: • Quan hệ (OR) 25/02/2016 25/02/2016 15 Nội dung • Sơ đồ lớp • Sơ đồ đối tượng • Cách tiếp cận xác định lớp • Cách tiếp cận xác định mối quan hệ • Cách tiếp cận xác định thuộc tính • Cách tiếp cận xác định phương thức • Hiểu thể mô tả cho lớp (CRC Card) 25/02/2016 16 Sơ đồ đối tượng 25/02/2016 25/02/2016 17 Cách tiếp cận xác định lớp • Tiếp cận theo thực thể nghiệp vụ • Tiếp cận theo cụm danh từ • Tiếp cận theo phân loại • Tiếp cận theo phân tích hoạt động use case 25/02/2016 18 Cách tiếp cận xác định lớp • Tiếp cận theo thực nghiệp vụ • Đối với thực thể vật: kiểm chứng xem có nhu cầu quản lý thơng tin thực thể hệ thống khơng? • Nếu có, xác định lớp sơ đồ phân tích biểu diễn cho thực thực thể • Xác định tên lớp: tên vật • Thuộc tính: bổ sung thuộc tính mơ tả đầy đủ thơng tin mà hệ thống có nhu cầu quản lý đối tượng 25/02/2016 25/02/2016 19 Cách tiếp cận xác định lớp • Tiếp cận theo thực nghiệp vụ 25/02/2016 20 Cách tiếp cận xác định lớp • Tiếp cận theo thực nghiệp vụ • Đối với thực thể thơng tin: • Nếu thực thể mô tả thông tin hoạt động giao dịch hệ thống chuyển thành lớp mơ hình phân tích • Nếu thực thể dạng thơng tin tổng hợp tách thành nhiều lớp bổ sung thông tin cho lớp tồn 10 25/02/2016 25/02/2016 39 Cách tiếp cận xác định lớp 25/02/2016 40 Xác định mối quan hệ • Xác định mối kết hợp (association) • Một phụ thuộc hai hay nhiều lớp thiết lập thành mối kết hợp Mối kết hợp thường tương ứng với giới từ: thành phần của, làm việc cho, chứa • Một tham chiếu từ lớp đến lớp khác mối kết hợp 20 25/02/2016 25/02/2016 41 Xác định mối quan hệ • Xác định mối kết hợp (association) • Các mẫu xác định mối kết hợp: • Mối kết hợp vị trí (location): liên kết tới, thành phần của, làm việc • Ví dụ: 25/02/2016 42 Xác định mối quan hệ • Xác định mối kết hợp (association) • Các mẫu xác định mối kết hợp: • Mối kết hợp sở hữu: của, có, thuộc,… 21 25/02/2016 25/02/2016 43 Xác định mối quan hệ • Xác định mối kết hợp (association) • Các mẫu xác định mối kết hợp: • Mối kết hợp truyền thông, liên lạc (communication): đặt tới, trao đổi với, gởi cho, tiếp nhận từ,… 25/02/2016 44 Xác định mối quan hệ • Xác định mối kết hợp (association) • Các mẫu xác định mối kết hợp: • Mối kết hợp phản thân: mối kết hợp thiết lập đối tượng lớp với đối tượng khác thuộc lớp 22 25/02/2016 25/02/2016 45 Xác định mối quan hệ • Xác định mối kết hợp • Ví dụ 25/02/2016 46 Xác định mối quan hệ • Xác định mối kết hợp (association) • Loại bỏ mối kết hợp khơng cần thiết • Mối kết hợp cài đặt: mơ tả liên quan lớp giai đoạn thiết kế cài đặt hệ thống bên môi trường phát triển ngơn ngữ lập trình cụ thể khơng phải mối kết hợp đối tượng mô tả nghiệp vụ • Mối kết hợp đa phân: mối kết hợp lớp trở lên, phức tạp cách thể hiện phát biểu lại dùng mối kết hợp nhị phân 23 25/02/2016 25/02/2016 47 Xác định mối quan hệ • Xác định mối kết hợp (association) • Loại bỏ mối kết hợp khơng cần thiết 25/02/2016 48 Xác định mối quan hệ • Xác định mối kết hợp (association) • Loại bỏ mối kết hợp khơng cần thiết • Mối kết hợp dự thừa: mối kết hợp định nghĩa ngữ nghĩa mối kết hợp khác (còn gọi mối kết hợp bắt cầu) 24 25/02/2016 25/02/2016 49 Xác định mối quan hệ • Xác định mối kết hợp (association) • Xác định số • 1;0 • * • * • a *: a 25/02/2016 50 Xác định mối quan hệ • Xác định mối kết hợp (association) • Xác định số cho mối kết hợp (min, max) 25 25/02/2016 25/02/2016 51 Xác định mối quan hệ • Xác định mối kết hợp (association) 25/02/2016 52 Xác định mối quan hệ • Xác định mối kết hợp (association) 26 25/02/2016 25/02/2016 53 Xác định mối quan hệ • Xác định mối kết hợp (association) • Kết hợp tổng quát – chuyên biệt • Top down 25/02/2016 54 Xác định mối quan hệ • Xác định mối kết hợp (association) • Kết hợp tổng quát – chuyên biệt • Top down 27 25/02/2016 25/02/2016 55 Xác định mối quan hệ • Xác định mối kết hợp (association) • Kết hợp tổng quát – chuyên biệt • Botton up 25/02/2016 56 Xác định mối quan hệ • Xác định mối kết hợp (association) • Xác định mối kết hợp thành phần • Tính bắc cầu: lớp A thành phần lớp B lớp B thành phần lớp C lớp A thành phần lớp C • Tính đối xứng: lớp A thành phần lớp B lớp B khơng phải thành phần lớp A 28 25/02/2016 25/02/2016 57 Xác định mối quan hệ • Xác định mối kết hợp (association) • Quan hệ thành phần • Tập hợp: đối tượng vật lý hình thành từ đối tượng vật lý thành phần khác 25/02/2016 58 Xác định mối quan hệ • Xác định mối kết hợp thu nạp • Vật chứa: đối tượng vật lý chứa đựng thành phần không cấu tạo thành phần 29 25/02/2016 25/02/2016 59 Xác định thuộc tính • Câu hỏi • Thơng tin đối tượng quản lý? • Nguyên tắc • Tên: danh từ, cụm danh từ • Đơn giản: 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 bổ sung chi tiết giai đoạn tiếp theo) • Khơng quan tâm việc phải khám phá hết thuộc tính 25/02/2016 60 Xác định thuộc tính • Ví dụ: hệ thống ATM 30 25/02/2016 25/02/2016 61 Xác định phương thức • Câu hỏi: • Các đối tượng chịu trách nhiệm xử lý thơng tin để cung cấp dịch vụ cho hệ thống? • Nguyên tắc: • Tên: động từ + bổ từ • Chỉ quan tâm tới phương có phạm vi tồn cục (public), có phương thức có phạm vi cục (private) phát giai đoạn thiết kế cài đặt • Các phương thức chịu trách nhiệm thao tác lên thuộc tính đối tượng Truy vấn, cập nhật, đọc ghi 25/02/2016 62 Xác định phương thức • Xác định phương thức qua hoạt động use case • Phân tích dịng thơng điệp sơ đồ để xem chuyển hoạt động thành method khơng? • Nếu có, đặt tên cho phương thức ứng với hoạt động 31 25/02/2016 25/02/2016 63 Xác định phương thức 25/02/2016 64 Xác định phương thức 32 25/02/2016 25/02/2016 65 Đặc tả lớp 25/02/2016 66 Đặc tả lớp 33 25/02/2016 25/02/2016 67 Đặc tả lớp 34 ... thể thơng tin: • Nếu thực thể mô tả thông tin hoạt động giao dịch hệ thống chuyển thành lớp mơ hình phân tích • Nếu thực thể dạng thơng tin tổng hợp tách thành nhiều lớp bổ sung thông tin cho... 46 Xác định mối quan hệ • Xác định mối kết hợp (association) • Loại bỏ mối kết hợp khơng cần thiết • Mối kết hợp cài đặt: mô tả liên quan lớp giai đoạn thiết kế cài đặt hệ thống bên mơi trường... sơ đồ lớp: • Quan hệ tổng quát hóa (Generalization): quan hệ thiết lập lớp tổng quát đến lớp chuyên biệt Quan hệ dùng để phân loại tập hợp đối tượng thành loại xác định mà hệ thống cần làm rõ