Nghiên cứu về uml ngôn ngữ mô hình hóa thống nhất để phân tích và thiết kế hệ thống thông tin quản lý t 1 uml và việc mô hình hoá hệ thống thông tin

72 2 0
Nghiên cứu về uml ngôn ngữ mô hình hóa thống nhất để phân tích và thiết kế hệ thống thông tin quản lý t 1 uml và việc mô hình hoá hệ thống thông tin

Đ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

CAPER MU OIGD Lies ỦY BẠN NHÂN DÂN TP HỒ CHÍ MINH SỞ KHOA HỌC CƠNG NGHỆ VÀ MƠI TRƯỜNG —oOo— NGHIÊN CỨU VỀ UML (NGƠN NGỮ MƠ HÌNH HĨA THỐNG NHẤT) ĐỂ PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG THƠNG TIN QUẢN LÝ Tâp 1: UML việc mơ hình hóa hệ thống thơng tin Chỉ nhiêm đề tài: Trần Văn Lăng Cơ quan chủ trì: Phân Viện CNTT Tp.HCM Tp Hồ Chí Minh — 6/2000 - St Kien hse Cong ughe ves Mt truting To HOM Phan Van GUTT Te HOU Muc luc Chương 1: UML gì? "— ƠƠ,Ơ 1, Ngơn ngữ mơ hình hóa thống (Unjfied Modaling Language - UML) _ Phương pháp ngơn ngữ mơ hình hóa Phát triển phấn mềm hướng đối tượng Công dụng UML Các giai đoạn phát triển hệ thống 5.1 $.2 5.3 Phân tích yêu cầu Phân tích Thiết kế 5.4 Lập trình 5.5, Kiểm tra Chương 2: Khái quát UML . -1 View 1.1 Ủse-case view L.2 1.3 1.4, 1.5 Logical View Component Vie Concurrency View Deployment View 2.1 2.2 2.3 Biéu dé Use-Case (Use-case diagram) Biểu để lớp (Class diagram) Biéu dé di tugng (Object diagram) 2-7 Biểu để hoat déng (Activity diagram) Biểu để 2.4 Biéu dé trang thai (State diagram) 2.5 Biểu đổ trình tự thực (Sequence diagram) 2.6 Biểu đỗ cộng tác (Collaboration diagram, 2.8 Biéu dé phan (Component diagram) 2.9 Biéu dé triển khai (Deployment diagram) Phan ti mé hinh (Model element) Một số chế tổng quát 4.1 4.2 4.3 Việc trang trí (Adornmen) Lời thích (Note) Sự đặc tả 5.2 Giá trị thẻ (Tagged valae 5.3 Ràng buộc Mở rộng ƯML 5.1 Khuôn mẫu (Sereoiype) Mơ hình hóa ding UML Cơngcụ Hệ thống (System) Tác nhân (Ácfør) ven TómtẤt § Chương 3: Mơ hình hóa Use-Case Biểu để Use-Case " St Klos kee Ging nght va Wit tring Tp 1⁄7 Plein Veen CUTT Te WOU 3.1 Cách tìm tác nhân 3.2 3.3 Tác nhân UML Quan hệ tác nhân Trường hợp sử dụng (se case) 4.1 Cách tim use case UML 4.3 Quan giita cdc Use case 4.2 Use-case UML M6 td use case Kiém tra use case _ Hiện thực use case Tom tất Lớp đối tượng Biểu dé lp (Class diagram) Chương 4: Lớp, đối tượng quan hệ 2.1 2.2 Cách tìm lớp Ngăn chứa tên 2.3 Ngăn thuộc tính 2.4 Ngăn hành vi » 2.5 Sử dụng kiểu liệu nguyên thủy 4.1 "Kết hợp thông thường tromalaassociation) 4.2 Biểu để đối tượng tion’ 4.3 Sự kết hợp đệ quy (recursive ass a 4.4 Thé hién quan két hop (roles in an association) 4.5 Két hop han ché (qualified association) 4.6 Or-Association 4.8 Kết hợp bậc ba (ternary association) 4.9 Sự tập hợp (aggregation) 4.7 Lép két hdp (association class) 5, Sự tổng quáthóa (generalization) OP PND 5.1 5.2 10 11 Sự tổng qt hóa thơng thường Quan hệ tổng quát hóa bị buộc Quan hệ phụ thuộc tính chế Qui tắc ràng buộc dẫn xuất Giao dién (interface) G6i (Package) Khu6n hinh (template) Chất lượng mơ hình (model quality) 11.1 Thế mơ hình tốt? 11.2.Mơ hình có thỏa mãn mục đích? 11.3 Chi tiết hóa mơ hình 11.4 Độ phức tạp mơ hình 12 Tóm tất Chương 5: Mơ hình hóa động Tương tác đối tượng (thông điệp Biểu đỗ trạng thái (si4f# diagram cccethhrtrrrettrethhHtrrerrredeiieersee St Khan kee Ging ughd ud Mt truimg Tp HOM Phin Veen CUT? Tp HOM 2.1 2.2 Trạng thdi (state) chuyén tiép (transition Su kién (event) 3.1 Trạng thái (substate) Gởi thông điệp biểu đồ trạng thái 3.2 History Indicator Biểu đồ trình tự thực 4.1 Hình thức tổng quát hình thức thực thể 4.2 Đối tượng đồng thời 4.3 Nhãn định nghĩa tương tác ràng buộc 4.4 Tạo hủy đối tượng 45 3.L 5.2 Dịng thơng điệp (message flow) Liên kết (ink) 5.3 Lifetime đối tượn: 5.4 Sử dụng biểu đổ cộng tác Biểu đổ hoạt động 6.1 6.2 Hành động (acrion) chuyển Swimlane 6.4 6.5 Tin hiệu (signai) see Mơ hình hóa việc kinh doanh với biểu để hoạt ip (transition) 6.3 Đối tượng Tómtất Chương 6: Hệ thống thời gian thực Hướng đối tượng hệ thống thời gian thực Các khái niệm thời gian thực 2.1 Lớp tích cực đối tượng tích cực 2.2 2.3 Liên lạc Đồng (Synchronization) 2.4 Cài đặt đồng thời đồng Java Mơ hình hóa thời gian thực UML 3.1 Biểu đổ trạng thái 3.2 Biểu đồ trình tự thực 3.3 Biểu đổ cộng tác 3.4 Biểu đỗ hoạt độn, 3.5 Biểu đổ thành phần triển khai Chuyển sang hệ thống thời gian thực 4.1 Những điểm lưu ý mơ hình hóa thời gian thực _ Vấn để tiến trình Tóm tắt Chương 7: Kiến trúc vật lý Kiến trúc luận lý (togical architecture Kiến trúc vật lý (physical architecture 2.1 Phần cứng 2.2 Phần mềm Biểu đồ phan (component diagram), 3.1.~ Thành phan thi gian dich (Compile-time cotmponel) «cu itt 112 Phan Vee CUT? Thr HOM St Kiss hee Cing aght ua Mit tring We HOU 3.2 Thành phần thời gian lién két (Link-time component) 3.3 Thành phần thời gian chạy (Ran-time component) _ Biểu đỗ triển khai (peployment diagram) 4.1 Nút (noda) 4.2 Kết nối (Connection) 4.3 Thành phần (componert) 4.4 Đối tượng _ Mơ hình hóa quan hệ phức tạp nút Định vị thành phần vào nút Tómtất Các khái niệm ngữ nghĩa cốt Chương 8: UML mở rộng Giá trị thể tính ch&t (property) 2.1 Giá trị thể cho phần tử Giá trị thẻ cho kiểu, thực thể, hành vi thuộc tin 2.2 Giá trị thẻ cho phần tử mơ hình thành phân 2.3 2.4 Định nghĩa giá trị thé " Ràng buộc 3.1 Răng buộc cho quan hệ tổngsuất! hóa Ràng buộc cho quan hệ kết hợp 3.2 3.3 Ràng buộc cho thể quannhị kết hợp 3.4, Ràng buộc cho thông điệp, thể liên kết đối tượng 3.5 Định nghĩa ràng buộc riêng 4.1 Khuôn mẫu cho kiểu 4.2 Khuôn mẫu cho quan hệ phụ thuộ 4.3 Khuôn mẫu cho thành phẩn 4.4 Khn mẫu cho lời thíc] 4.5 Khuôn mẫu cho kiểu nguyên thủy 4.6 Khuôn mẫu cho quan hệ tổng qt hóa 4.7 Khn mẫu cho gói 4.8 Khn mẫu cho lớp 4.9 Khn mẫu cho hành v 4.10 Khn mẫu cho lớp tích cực 4.11 Định nghĩa khuôn mẫu riên; TỐmất e Chương 9: Mẫu thiết kế UML Mau "Gang of Four" Mẫu thiết kế proxy Mơ hình hóa mẫu thiết kế ƯML 3.1 Cộng tác có tham số (parameterized collaboration) 3.2, Biểu diễn mẫu thiết kế biểu đỗ Mẫu thiết kế va use case Tém tat Chương 10: Tiến trình sử dung UML Tiến trình cơng nghệ phần mềm 1.1 Ngữ cảnh tiến trình (process confexÙ) c c eeceveeeeerre iv s cscs snocs s ecns enserensnscrn enrnien nte H3 Sk Khoa hae Cing nghi vd Wit trang Tp HOU 1.2 Ngw&i sit dung ti€n trinh (process user) 1.3 Các bước tiến trình (process sfép 1.4 Đánh giá tiến trình (process evaluation, Cơ sở cho tiến trinh UML 2.1 Hệ thống Use-Case-Driven 2.2 Tập trung vào kiến trúc 2.3 2.4 Lặp lại Cải thiện dẩn “ 3.1 3.2 Phân tích yêu câu (requirement analysis) Phân tích (analysit) 3.4 3.5 Cai dat (implementation) Thi nghiém (test) Phương pháp hướng đối tượng truyền thống 3.3 Thiết kế (đøsign) Tiến trình Rational Objectory 4.1, Chu tinh séng (life cycle) 4.2 Khdi dau (inception) 4.3 Phat sinh (elaboration 4.4 Kay dung (construction) 4.5 Chuyển tiép (transition) 4,6 So sánh ROP với tiến trình truyền thống _ Cơng cụ cho tiến trình (process tool Tómtất Chương 11: Chuyển từ Booch, OMT sang UML Chuyển sang UML 1.1 Nâng cấp từ Booch 1.2 Nâng cấp từ OMT 1.3 Phương pháp tổng qt để nâng cấp Phân đoạn mơ hình hóa, cơng cụ kỹ thuật Phan Vien CUT? Me 07 Sk Kia hae Ging ught vd Mit rudy Tp HOU Phin Vien CUT) Vp HEM Lời nói đầu Ngơn ngữ mơ hình hóa théng nhắt UML - Unifield Modeling Language - giới tâm năm gần đây, nhằm đưa công cụ thống giúp cho q trình phân tích thiết kế hệ thống thông tin thuận tiện xác Các sản phẩm UML thương mại hố có nhiều Internet, ƯML đưa vào sử dụng phổ biến để án phần mềm Ngay số tài liệu biên soạn giới thiệu ngơn ngữ lập trình hướng đối tượng - C++, Java; số môi trường phát triển phần mềm - Visual C++, đưa UML vào để minh họa hổ trợ trình lập trình Trong nước, số sở nghiên cứu Viện CNTT, Phân Viện CNTT Tp.HCM (PVCNTT) tổ chức biên địch, biên soạn tài liệu trợ giúp cho q trình phân tích thiết kế hệ thống Tuy nhiên, tài liệu chưa đưa cơng nghệ UML vào để minh họa mơ hình hóa Trong hầu hết cơng ty, sở làm phần mềm Việt nam, UML chưa áp dụng rộng rãi Xuất phát từ yếu tố trên, PVCNTT đăng ký với Sở Khoa học Cơng nghệ Mơi trường Tp Hỗ Chí Minh (Sở KHCNMT), để tài "Nghiên cứu UML để phân tích thiết kế hệ thống thông tin quản lý" Đề tài Hội đồng xét duyệt thông qua ngày 06/11/1998 với nội dung sau đây: + Nghiên cứu biên soạn tài liệu UML « Xây dựng ví dụ mẫu ứng dụng nghiên cứu « Mỡ lớp tập huấn chuyển giao kết qủa nghiên cứu Trên sở kết luận Hội đồng, Sở KHCNMT ký với PVCNTT hợp số 104/1998/HĐ-KHCN ngày 10/11/1998, để thực để tài thực giai đoạn: « Giai đoạn (từ 12/1998 đến 6/1999): nhóm nghiên cứu đưa tài liệu hướng dẫn ngữ nghĩa ký pháp UML để sử dụng cho lớp tập huấn « Giai đoạn (từ 7/1999 đến 11/1999): với hệ thống mơ hình mẫu, mơ hình hóa q trình hoạt động hệ thống, sinh mã chương trình, tổ chức lớp tập huấn, viết báo cáo tổng kết, nghiệm thu Ngày 02/7/1999, Sở KHCNMT thành lập Hội đồng Giám định để đánh giá kết để tài giai đoạn Hội đồng đến kết luận với khuyến cáo: « Hồn chỉnh tải liệu, cần đưa vào nghiên cứu tốn ứng dụng thực tiễn « Đẳng ý cho để tài kéo dài thêm tháng « Kết hợp với Trung tâm Phát triển Công nghệ Thông tin để tổ chức lớp tập huấn sử dung UML Trên sở khuyến cáo góp ý thành viên Hội đồng Giám định, biên soạn lại tài liệu, cho đáp ứng yêu cầu lớp tập huấn, bảo đểm nội dung Hội xét duyệt Giám định nêu Báo cáo kết thúc dé tai bao gồm tập: « Tập 1: ƯML việc mơ hình hóa hệ thống thơng tin « Tập 2: Một số case-study sử dựngUML (hệ quấn Lý thư viện, hệ quân lý nhà kho, hệ quân lý comainer, hệ quản lý kết toán thống kê sân lượng, hệ quản lý trợ giáp điều độ) TỐ St Khon bse Ging ught od Wht phường Tp HOM Phin Veen GUTT Ts WOM + Tập 3: Tài liệu hướng dẫn sử dụng Rational Rose + Tập 4: Ngơn ngữ Java lập trình hướng đối tượng Về phân tài liệu sử dụng, trình tìm hiểu UML thực để tài "Nghiên cứu UML để phân tích thiết kế hệ thống thông tin quân lý" Sở Khoa học Cơng nghệ Mơi trường Tp Hỗ Chí Minh quản lý, định chọn tài liệu UML Toolkit hai tác giả Hans-Erik Eriksson, Magnus Penker [EM98] để biên địch Đây tài liệu sáng sủa có nhiễu mơ hình áp dụng Đặc biệt, tài liệu MU Toolkit tác giả chọn Java ngôn ngữ để minh họa, điều nây phù hợp với nhóm thực để tài chọn lựa Java để sinh mã chương trình cho ví dụ mẫu minh họa Riêng tài liệu sử dụng báo cáo giai đoạn để tài, biên dịch từ nguồn tài liệu gốc có địa _http://www.rational.com/uml - nguồn tài liệu gốc khó lột tả nét để hiểu UML Bởi tác giả viết với chủ đích dành cho người am hiểu phương pháp mơ hình hóa trước đây, lại sử dụng thân cú pháp UML để mơ tả Chính vậy, chúng tơi khơng sử dụng tài liệu có địa nêu trên, để xây dựng tư liệu phục vụ cho việc trang bị kiến thức UML phân tích thiết kế hệ thống Các tài liệu biên soạn sử dụng cho lớp tập huấn Trung tâm Phát triển Công nghệ Thông tin Đại học Quốc gia Tp Hồ Chí Minh, dành cho chuyên viên bậc cao Công nghệ Thông tin vii 34 Khon hae Ging nght va MWA tracing Tp ROU Phin Vein CUT? We HOM DANH SACH THANH VIEN THAM GIA BIEN SOAN VÀ HIỆU ĐÍNH BÁO CÁO KẾT THÚC ĐỀ TÀI Tài liệu biên soạn hiệu đính nhóm thành viên sau đây: Tập 1: UML việc mơ hình hóa hệ thống thơng tỉn Biên soạn: KS Lê Phước Lộc TS Trần Văn Lăng Hiệu đính: KS Nguyễn Đức Cường KS Võ Nguyễn Anh Thơ CN Trần Đông Hiếu Tập 2: Một số case-study sử dụng UML Biên soạn: KS Võ Nguyễn Anh Thơ CN Trần Đông Hiếu KS Lê Phước Lộc Hiệu đính: TS Trần Văn Lăng CN Trần Bá Tuyến CN Trần Đình Thảo Tap 3: Tài liệu hướng dẫn sử dụng Rational Rose Biên soạn; CN Trần Đông Hiếu Hiệu đính: TS Trần Văn Lăng KS Lê Phước Lộc KS Võ Nguyễn Anh Thơ Tập 4: Ngôn ngữ Java lập trình hướng đối tượng Biên soạn: T§ Trần Văn Lăng Hiệu đính: KS Võ Nguyễn Anh Thơ KS Lê Phước Lộc CN Trần Đông Hiếu viii Phe Vege CHIT Uh BEM St Rise kee Ging aght wi Wit tutions Th WOU se Lời cảm ơn Nhóm thực để tài xin chân thành cảm ơn: « Sở Khoa học Cơng nghệ Mơi trường Tp.Hồ Chí Minh tạo điều kiện, cung cấp kinh phí để để tài thực „ Ơng Trần Đình Phú, Phó Giám đốc Sở KHCNMT theo dõi, cổ vũ để để tài thực kế hoạch tiến độ » Ông Đỗ Tường Trị, Th§ Phan Thu Nga, Trưởng Phó Phịng KHCNMT, giúp đỡ tạo điều kiện để để tài hoàn thành Quản lý KHCN - Sở + Th§ Võ Thùy Linh, Trưởng Phịng KHTV - Sở KHCNMT, giúp đỡ hướng dẫn để để tài thực theo ngun tắc quần lý tài « GS Nguyễn Hữu Anh, TS Phan Thị Tươi, GS Hoàng Kiếm - Chủ tịch, Phó Chủ tịch - thành viên Hội Xét duyệt, Hội đồng Giám định, đưa khuyến cáo bổ ích để để tài có định hướng trong q trình thực «ƯPGS Trần Thành Trai, Chủ nhiệm chương trình Công nghệ Thông tin Sở KHCNMT, phê duyệt để để tài chấp nhận thực „ Ông Nguyễn Đức Tích, Phụ trách Phân Viện Cơng nghệ Thơng tỉn Tp HCM, tạo điều kiện, có động viên chân tình để đề tài hồn thành « Hai tác giả Hans-Erik Eriksson Magnus Penker biên soạn tài liệu ƯML Toolkit, mà sử dụng để biên dịch « Những sinh viên cộng tác với để tài giai đoạn 1, thông qua thầy hướng dẫn thành viên để tài! Bên cạnh đó, chứng tơi xin chân thành cảm ơn Giáo sư, Tiến sĩ đầu ngành lĩnh vực CNTT có động viên cổ vũ trực tiếp gián tiếp để để tài hoàn thành Và qua xin chân thành gởi lời câm ơn đến bè bạn, đồng nghiệp Phân Viện CNTT Tp.HCM, Viện CNTT có động viên quý báu tỉnh thần ! Những kết có nhóm này, không đưa vào báo cáo cuối để tài, biên soạn cịn gặp số sai sót Chang 4: Life dB: trang vhs quan hi Wohin cites 0b UL dé phan tick wi thie bi he thing thing tin yude Uy giá trị nhdn 4431) bén vùng đặt tên lớp phía tên lớp (Hình {abstract} Lớp trừu tượng thường có hành vi trừu tượng (abstracf øperaiion) Hành vị trừu tượng phương thức khơng có cài đặt hành động cụ thể, mà khai báo dấu hiéu (signature) hành vi Một lớp có hành trừu tượng lớp trừu tượng Cịn lớp thừa kế từ lớp có hành vi trừu tượng phải cài đặt hành động cụ thể cho hành ví đó, cịn khơng lớp trừu tượng Hành vi trừu tượng biểu diễn với property siring {abstract} theo sau dấu hiệu hành vi viết nghiêng Ngược với lớp trừu tượng lớp cụ thé (conerete class), lớp tạo đối tượng cho cài đặt hành động cụ thể cho tất hành vi định nghĩa Chẳng hạn lớp Car Truck định nghĩa lại hành vi lái xe nghĩa lại, hành vi lớp cha hành vi định Hình 4.31 lớp Vehic1e nầy phải có nghĩa lại lớp cha) hay lớp cụ thể (có lớp cụ thể, Car Khi lớp hành dấu hiệu (kiểu giá trị trả về, tên, lớp trừu tượng (khơng có hành Truck ví định tham số) với động cụ thể hành động cụ thể lớp cha) Ngồi thêm hành vi, thuộc tính mối liên kết vào lớp cha Một đối tượng lớp dùng nơi mà đối tượng lớp cha dùng đến lớp Vehicle Khi Person Hình 4.32 lớp Person có quan hệ kết hợp drives gọi hành vi dri ve, đối tượng lớp Car hành vi drive () lần bánh xe thực Còn đối tượng lớp Trueck gọi hành vi thực quay chân vịt lớp Trueck Kỹ thuật mà đối tượng lớp xem đối tượng lớp cha hay nhiều hành vi lớp cha định nghĩa lại lớp con, gọi tính đa hình (polymorphism) cia đối tượng Person 'Vehicle { abstract } drives > color drive () { abstract } aw Propulsion Ỉ Propulsion Car Truck drive () deive () Hình 4.32 Person lái Vahicle Khi hành vi drive gọi, tày theo đối tượng thí hành vi drive tuong ứng đối tượng - Car hay Truck - gọi Cài đặt Java 46 ương 4: (ó4, đất tượng gá24 46 Ughiin cdr ut UMA dé thin tich ud hide ki he thing thing ten qudn ty Figure { abstract } # position ; Pos figures b* draw () { abstract} Group Polygon > draw () draw () Hình 4.33 Một hệ thống phả hệ bao gâm lớp cha Figure hai lớp Group Polygon Cài đặt ngơn ngữ Java cho mơ hình Hình 4.33 sau: abstract { } class public for } } void Group draw (int i = consist_of private public { class Figure abstract public void draw protected Pos position; public { public void Polygon draw Figure (} { 0; i < consist_of.size [i].draw (); FigureVector class public extends (}; (), i++) figures; extends Figure ({) { } 5.2 Quan hệ tổng quát hóa bj rang budc Sự ràng bude (constraint) trén quan hệ tổng quát hóa dùng để xác định thơng tin thêm cách tổng qt hóa đùng mở rộng tương lai Có hạn chế sau định nghĩa sẵn cho tổng quát hóa với nhiều lớp là: gối lên (overlapping), tách rời (disjoin), đủ (complete), không đầy đủ (incompleie) Day ngữ nghĩa rang buộc, chúng biểu diễn dấu ngoặc móc gần hình tam giác rỗng lớp chia xẻ tam giác Nếu lớp không biểu diễn theo 47 Chung 4: Lip, dSt tung a quan he Mghitn cite ub UNL tb phin tich wi thie hi hd thing thing toe yedn ty kiểu chia xẻ hình tam giác, đường đứt vẽ qua tất đòng thừa kế ràng buộc đặt đấu ngoặc gần đường đứt (Hình 4.34) Class A Class A Ạ serene {constraint 1, constraint } Class B Class B Class D Class C {constraint 1, Constraint } Class C a Class D b Hình 4.34 Các cách biểu diễn rang buộc quan hệ thừa kế Tổng quát hóa phủ lấp tách rời (overlapping, disjoint generalization) Quan hệ thừa kế phi lấp cho phép lớp cấp sâu thừa kế từ nhiễu lớp quan hệ thừa kế với lớp cha chung (Hình 4.35) Có thể coi quan hệ thừa kế phủ lấp thừa kế bội thừa kế có chung lớp cha Quan hệ thừa kế /ách rời ngược với thừa kế phả lấp, có nghĩa lớp cấp sâu không phép thừa kế lúc nhiễu lớp cấp khác, mà lớp cấp lại thừa kế từ lớp cha chung (như lớp Amphibianở Hình 4.35) Mặc định thừa kế rách rời Vehicle Propulsion won (oon neon j i Propulsion | {overlapping} cee ened Car Boat Ỉ Ỉ Amphibian Hình 4.35 Khi thừa kế phủ lấp, lớp Amphibian cé thể thừa kế từ hai lớp Car Boat 48 Ugkiin cia vi UNA dé phan tich va thitt ki hd thing thing tie qudn by Chung 4: Lip tit tung o& guan hi - Man {complete} Woman Hình 4.36 Sự tổng qt hóa có hạn chế hồn tồn, có nghĩa khơng thể thêm vào cấp Tổng qt hóa hồn tồn khơng hoàn toàn (complete and incomplete generalization) Sự hạn chế quan hệ tổng qt hóa hồn tồn (compiere) có nghĩa quan hệ có đầy đủ tất lớp con, khơng thể có thêm lớp nào (Hình 4.36) Cịn quan hệ tổng qt hóa khơng hồn tồn (izcomplete) ngược với hồn tồn, có nghĩa thêm vào lớp sau này, khơng hồn tồn mặc định cho tổng quát hóa Quan phụ thuộc tỉnh chế Ngoài quan hệ kết hợp quan hệ tổng qt hóa, cịn có hai quan hệ khác UML Quan hệ phụ thuộc (dependency) kết nối ngữ nghĩa hai phan tử mơ hình, phan tử mơ hình độc lập phần tử mơ hình phụ thuộc Những thay đổi phan tử độc lập ảnh hưởng đến phần tử phụ thuộc Cũng tương tự với quan hệ tổng quát hóa, phần tử mơ hình lớp, gói, use case, Ta có ví dụ quan hệ phụ thuộc như: lớp sử dụng tham số đối tượng lớp khác, lớp truy cập đối tượng toàn cục lớp khác; hay lớp gọi hành vi phạm lớp lớp khác Trong trường hợp trên, quan hệ phụ thuộc từ lớp đến lớp khác liên kết quan hệ kết hợp chúng ClassA Hình 4.37 L_- -. >ị Class B Quan hệ phụ thuộc lớp Loại quan hệ phụ thuộc biểu diễn khuôn mau “friend” Quan hệ biểu diễn đường đứt có mũi tên (và có nhãn) phần tử mơ hình Nếu sử dụng nhãn khuôn mẫu xác định loại quan hệ phụ thuộc Hình 4.37 ví dụ khn mẫu quan hệ phụ thuộc friend Quan hệ phụ thuộc £riend có nghĩa phần tử mơ hình có truy cập đến cấu trúc bên phần tử mơ hình khác (kể thành phần khai bdo private) 49 Ughtin ein vt UNL hb phin tick ud thtit hi hE thing thing tin gudn ty Chuang 4: hits, dit tung od gaan he Tinh chế quan hệ hai mô tá khác thứ, hai mức trừu tượng khác Ví dụ quan hệ tỉnh chế quan hệ kiểu lớp thực nó, trường hợp gọi thitc hda (realization), quan hệ lớp phân tích lớp thiết kế mơ hình; hay quan hệ mô tả mức cao mô tả mức thấp (chẳng hạn khái quát cộng tác biểu đồ tiết nó) Quan hệ tỉnh chế biểu điễn đường đứt có tam giác rỗng hai phần tử mơ hình (Hình 4.38) Analysis class |< . Design class Hình 4.38 Quan hệ tỉnh chế Quan hệ tỉnh chế sử dụng việc chi tiết hóa mơ hình (model coordination) Trong để án lớn, tiết hóa mơ hình đùng để: « Chỉ liên quan mơ hình mức trừu tượng khác « Chỉ liên quan mơ hình giai đoạn khác q trình mơ hình hóa » Hỗ trợ quần lý cấu hình « Hễ trợ khả theo dõi (iraceability) mơ hình Qui tắc ràng buộc dẫn xuất UML có số quy tắc (rul2), bao gồm ràng buộc dẫn xuất Ràng buộc dùng để giới hạn mơ hình Ví dụ ràng buộc ør-association, ordered association va ràng buộc thừa kế (phủ lấp, tách rời, đầy đủ, không đầy đủ) Dẫn xuất qui tắc xác định cách dẫn xuất thành phần đó, tuổi người (năm trừ năm sinh) Các qui tắc gắn vào phần tử mơ hình nào, đặt biệt thuộc tính, quan hệ kết hợp, quan hệ tổng quát hồa, thể ràng buộc thời gian (trong mơ hình động) Tất qui tắc ghi dấu ngoặc móc ({}) nằm gần phan tử mơ hình hay đấu ngoặc móc nằm bên lời thích (symbo)) nối vào phần tử mơ hình Quan hệ kết hợp có buộc hay dẫn xuất Ở Hình 4.39, kết hợp dẫn xuất (đerived associaion) khdch hang quan wong (VIP customer) quan két hop vdi customer Dẫn xuất cho quan hệ kết hợp biểu điển nhãn đặt gần quan hệ kết hợp, bắt đầu dấu sổ (/) sau tên dẫn xuất Ở Hình 4.40, quan hệ kết hợp bị ràng buộc sử dụng khí quan hệ kết hợp tập quan hệ kết hợp khác Thuộc tính có ràng buộc hay dẫn xuất, Hình 4.41 Ràng buộc cho thuộc tính thường miền giá trị (@walue range), Hình 4.42 Miễn giá trị giống đanh sách thuộc tính cho thuộc tính, xác định giá trị có thuộc tính Property 1ist color thường chuỗi dạng bất kỳ, (red,

Ngày đăng: 06/10/2023, 12:08

Tài liệu cùng người dùng

Tài liệu liên quan