1. Trang chủ
  2. » Công Nghệ Thông Tin

Phân tích thiết kế hướng đối tượng - Bài 9 doc

31 208 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

PHÂN T PHÂN T Í Í CH THI CH THI Ế Ế T K T K Ế Ế HƯ HƯ Ớ Ớ NG ð NG ð Ố Ố I TƯ I TƯ Ợ Ợ NG NG ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 2/31 Nội dung 1. Tiến trình phát triển phần mềm theo hướng đối tượng 2. Giới thiệu Ngôn ngữ mô hình hóa thống nhất UML 3. Mô hình hóa nghiệp vụ 4. Mô hình hóa trường hợp sử dụng 5. Mô hình hóa tương tác đối tượng 6. Biểu đồ lớp và gói 7. Biểu đồ chuyển trạng thái và biểu đồ hoạt động 8. Biểu đồ kiến trúc vật lý và phát sinh mã trình  Mô hình hóa dữ liệu 10.Bài học thực nghiệm Mô h Mô h ì ì nh h nh h ó ó a d a d ữ ữ li li ệ ệ u u Bài 9 ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 4/31 Mô hình ñối tượng - mô hình dữ liệu n Rose 2001 và các phiên bản sau ñó: Hỗ trợ mô hình hóa dữ liệu n Mô hình ñối tượng n Tập trung vào dữ liệu và hành vi n Sử dụng cho mọi thành phần của ứng dụng: lớp, thuộc tính, thao tác, quan hệ như ñã ñược xem xét trong các bài trước ñây n Quan tâm trước hết của mô hình dữ liệu là mô hình trong bộ nhớ: n Việc tạo lập ñối tượng, quan hệ giữa chúng và trách nhiệm của chúng n Mô hình dữ liệu n Tập trung vào dữ liệu n Tập trung vào CSDL hơn là tập trung vào ứng dụng ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 5/31 Mô hình ñối tượng - mô hình dữ liệu n Các quan tâm khác nhau giữa mô hình ñối tượng và mô hình dữ liệu Có thể tích hợp khái niệm kế thùa vào mô hình dữ liệu ngay cả khi CSDL không hỗ trợ trực tiếp kế thừa? Có thể sử dụng khái quát hóa hay các chiến lược thiết kế khác ñể có mã trình sử dụng lại? Dữ liệu nào ñược truy vấn thường xuyên?Dữ liệu nào ñược sử dụng xuyên suốt ứng dụng? Loại dữ liệu nào chỉ ñược sử dụng trong một vùng? Chuẩn hóa dữ liệu?Gói dữ liệu với hành vi như thế nào ñể tạo ra lớp? Cấu trúc dữ liệu như thế nào ñể tăng tốc ñộ xâm nhập? Cấu trúc dữ liệu tại giao diện như thế nào ñể thỏa mãn người sử dụng cuối cùng? Bảng nào cần quan hệ trong mô hình dữ liệu?Các ñối tượng nào cần quan hệ trong mô hình? Thiết kế CSDL như thế nào ñể lưu trữ hiệu quảThiết kế lớp như thế nào ñể sử dụng hiệu quả bộ nhớ? Mô hình dữ liệuMô hình ñối tượng ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 6/31 Mô hình ñối tượng - mô hình dữ liệu n Sự khác biệt giữa hai loại mô hình n Hỗ trợ kế thừa n Quan hệ: n Giữa các lớp (lớp này biết về lớp kia) n Giữa các bảng (kết nối logíc) n Có thể xây dựng tách biệt mô hình dữ liệu và mô hình ñối tượng, nhưng cũng có thể xây dựng chúng ñồng thời n Trong Rose: n Nếu dự án ñã có mô hình dữ liệu -> chuyển ngược lại ñể hình thành mô hình ñối tượng n Với dự án mới, ta có thể phát sinh mô hình dữ liệu từ mô hình ñối tượng ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 7/31 Tạo lập mô hình dữ liệu Table & View Schema Database Tablespace & Node ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 8/31 Tạo lập mô hình dữ liệu n Trong Logical View n Lược ñồ chứa các thủ tục lưu trữ n Bảng với các trường, ràng buộc, triggers, khóa chính, chỉ số và quan hệ n Trong Component View n Mô hình hóa CSDL n Mỗi thành phần ñược gán Stereotype n Rose 2001A trở ñi hỗ trợ DB2, Oracle, Sybase, SQL Server, ANSI Server ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 9/31 Tạo lập mô hình dữ liệu n Các bước chính tạo lập mô hình dữ liệu (nhưng không nhất thiết phải theo trình tự này) n Tạo lập CSDL n Bổ sung lược ñồ ñể chứa mô hình dữ liệu và gán lược ñồ vào CSDL n Tạo lập gói lĩnh vực và các lĩnh vực n Bổ sung các bảng vào từng lược ñồ n Bổ sung chi tiết vào từng bảng n Trường, ràng buộc, trigger, chỉ số và khóa chính n Bổ sung quan hệ giữa các bảng và khóa ngoài n Tạo lập các khung nhìn n Tạo lập mô hình ñối tượng từ mô hình dữ liệu n Phát sinh CSDL n ðồng bộ CSDL với mô hình khi cập nhật ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 10/31 Logíc trong mô hình dữ liệu n Rất khó xác ñịnh logíc nào ñể ở ñâu: tầng CSDL hay tầng ứng dụng? n Một số logíc nghiệp vụ nên ñể tại tầng ứng dụng thay cho tầng CSDL n Tổng thể thì chỉ logíc nào liên quan ñến dữ liệu mới ñể trên tầng CSDL. n Thí dụ: Các field, giá trị hợp lệ của field và ñộ dài của field n Có thể gắn các qui tắc nghiệp vụ vào CSDL thông qua sử dụng ràng buộc. n Nếu ñể logíc nghiệp vụ trong CSDL n Ứng dụng phải thu thập dữ liệu từ người sử dụng cuối cùng. Chuyển nó ñến tầng nghiệp vụ: truyền qua kết nối mạng (có thể chậm). Cuối cùng là ñánh giá tính ñúng ñắn. n Do vậy, nên ñể logíc nghiệp vụ tại tầng nghiệp vụ ñể làm giảm lưu lượng truyền trên mạng. n Một vài logíc hệ thống có thể thực hiện bên trong CSDL thông qua sử dụng các thủ tục lưu trữ n Lợi thế: n Thực hiện nhanh khi các chức năng phải xử lý khối dữ liệu lớn n Bất lợi: n Nếu sử dụng các thủ tục lưu trữ cài ñặt logíc nghiệp vụ thì khi nó thay ñổi ñòi hỏi thay ñổi cả tầng nghiệp vụ và tầng CSDL. n Một bất lợi khác là các thủ tục trong DBMS khác nhau có cú pháp khác nhau, do vậy khi chuyển ñổi DBMS phải viết lại các thủ tục lưu trữ. [...]... nhi u lư c ñ ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 14/31 B sung lư c ñ n T o l p lư c ñ trong Rose n n n n Nh n phím ph i chu t trên Schema trong Logical View Ch n Modeler-> New-> Schema Nh n phím ph i trên lư c ñ m i ñ ch n Open Specification Ch n b ng phù h p trong h p tho i Database ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 15/31 T o l p bi u ñ mô hình... schema ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 17/31 T o l p gói lĩnh v c n T o l p gói lĩnh v c trong Rose: n n n n Nh n phím chu t ph i trên Logical View trong Browser Ch n Data Modeler-> New -> Domain Package Nh n phím ph i trên gói m i và ch n Open Specification Ch n DBMS s s d ng cho gói domain ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 18/31 T o l p lĩnh v... ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 30/31 Tóm t t n Bài này ñã xem xét các v n ñ sau n n n n Mô hình ñ i tư ng và mô hình d li u T o l p mô hình d li u B sung CSDL, lư c ñ , gói lĩnh v c, b ng, th t c lưu tr và các quan h ng d ng Rose vào n n ehamingway@gmail.com Mô hình hóa d li u Chuy n ñ i qua l i gi a mô hình d li u và mô hình ñ i tư ng Phân tích thi t k hư ng ñ i tư ng Bài 9 - 31/31... primary/secondary key columns Many-to-many association Intersection table with columns other than primary/secondary key Many-to-many association with association class Identifying relationship Composite aggregation Non- identifying relationship Association Cardinality Cardinality Index, Database, Constraint, Domain None ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 28/31 Phát sinh Data model... Package Schema Persistent class Table Attribute Column Operation None Many-to-many association Intersection table Composite aggregation Identifying relationship Association Non- identifying relationship Cardinality Cardinality Association class li u Intersection table ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 29/ 31 Phát sinh CSDL t Data model n n Vào b t c th i ñi m nào ta ñ u có... Không có kh năng tăng không gian b ng quá m c gi i h n b ng Rose Gán các b ng cho không gian b ng ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 11/31 B sung Không gian b ng n Thí d v i SQL server n n n n n Nh n phím ph i chu t trên CSDL trong Browser Ch n Data Modeler->New-> Tablespace ð t tên cho Tablespace Nh n phím ph i chu t trên Tablespace m i ñ ch n Open Specification ðánh d u Default... d li u trong m i lư c ñ T o l p bi u ñ d li u trong Rose n n n n Nh n phím ph i trên lư c ñ trong Browser Ch n Data Modeler-> New -> Data Model Diagram Nh p tên cho bi u ñ m i: NewDiagram Nh n ñúp trên bi u ñ ñ m nó ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 16/31 T o l p gói lĩnh v c n Lĩnh v c (Domain) ñư c s d ng ñ áp d ng qui t c nghi p v (giá tr h p l , giá tr m c ñ nh c a... ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 12/31 B sung Không gian b ng n Thí d v i SQL server n ð t Container trong Tablespace n n n n Nh n phím ph i trên Tablespace trong Browser, ch n Open Specification Ch n Container Tab Nh n phím ph i trong vùng tr ng, ch n New Nh p tên t p tablespace, kích thư c kh i ñ u, kích thư c c c ñ i và kích thư c tăng (file Growth) ehamingway@gmail.com Phân tích thi... relationship n n Khóa ngoài tr thành m t ph n khóa chính c a b ng con Identifying relationship ñư c mô hình hóa như composite aggregation ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài 9 - 24/31 B sung các chi ti t trong b ng n B sung quan h n Trong non-identifying relationship n n n Khóa ngoài ñư c t o l p trong b ng con, nhưng nó không ph i là m t ph n khóa chính c a b ng con Cardinality ñi u khi... Modeler-> New -> Domain Nh n phím ph i trên domain m i và ch n Open Specification Nh p tên domain trong General Tab Nh p các tham s khác trong Tab n n n Scale: T ng ch s sau d u th p phân Unique Constraint: Các fields s d ng domain này s có giá tr duy nh t B ng Check Constraints: n Là bi u th c c n có giá tr True trư c khi thay th d li u trong CSDL ehamingway@gmail.com Phân tích thi t k hư ng ñ i tư ng Bài . hóa dữ liệu 10 .Bài học thực nghiệm Mô h Mô h ì ì nh h nh h ó ó a d a d ữ ữ li li ệ ệ u u Bài 9 ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 4/31 Mô hình ñối tượng - mô hình dữ. PHÂN T PHÂN T Í Í CH THI CH THI Ế Ế T K T K Ế Ế HƯ HƯ Ớ Ớ NG ð NG ð Ố Ố I TƯ I TƯ Ợ Ợ NG NG ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 2/31 Nội dung 1 ñối tượng ehamingway@gmail.com Phân tích thiết kế hướng ñối tượng Bài 9 - 6/31 Mô hình ñối tượng - mô hình dữ liệu n Sự khác biệt giữa hai loại mô hình n Hỗ trợ kế thừa n Quan hệ: n Giữa các lớp

Ngày đăng: 02/08/2014, 09:20

Xem thêm: Phân tích thiết kế hướng đối tượng - Bài 9 doc

TỪ KHÓA LIÊN QUAN