Phân Tích Hướng Đối Tượng UML
lượt xem 13
download
Viêc̣ choṇ mô hiǹ h naò để taọ lâp̣ co ́ an̉ h hươn̉ g sâu săć đêń cać h giaỉ quyêt́ vâń đê ̀ & cać h hiǹ h thaǹ h cać giaỉ phaṕ . Môĩ mô hiǹ h biêủ diêñ 1 hê ̣ thôń g vơí đô ̣ chiń h xać khać nhau. Mô hiǹ h tôt́ nhât́ phaỉ là mô hiǹ h phu ̀ hơp̣ vơí thê ́ giơí thưc̣ . Không mô hiǹ h naò là đâỳ đu.̉ Môĩ hệ thôń g câǹ đươc̣ tiêṕ câṇ thông qua tâp̣ mô hiǹ h gâǹ như đôc̣ lâp̣ nhau...
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Phân Tích Hướng Đối Tượng UML
- MỞ ĐÂU ̀ II. Nguyên tăc mô hinh hoa: (4 nguyên tăc) ́ ̀ ́ ́ - Viêc chon mô hinh nao để tao lâp có anh hưởng sâu săc đên cach giai quyêt vân đề & cach ̣ ̣ ̀ ̀ ̣ ̣ ̉ ́ ́ ́ ̉ ́ ́ ́ ̀ hinh thanh cac giai phap. ̀ ́ ̉ ́ - Môi mô hinh biêu diên 1 hệ thông với độ chinh xac khac nhau. ̃ ̀ ̉ ̃ ́ ́ ́ ́ - Mô hinh tôt nhât phai là mô hinh phù hợp với thế giới thực. ̀ ́ ́ ̉ ̀ - Không mô hinh nao là đây đu. Môi hệ thông cân được tiêp cân thông qua tâp mô hinh gân ̀ ̀ ̀ ̉ ̃ ́ ̀ ́ ̣ ̣ ̀ ̀ như đôc lâp nhau. ̣ ̣ ́ III. Cac cach tiêp cân trong phat triên phân mêm: (2 cach) ́ ́ ̣ ́ ̉ ̀ ̀ ́ 1. Tiêp cân hướng chức năng. ́ ̣ - Dựa vao chức năng, nhiêm vụ là chinh. Khi khao sat phân tich môt hê ̣ thông chung ta tâp ̀ ̣ ́ ̉ ́ ́ ̣ ́ ́ ̣ chung vao cac nghiên cứu nhiêm vụ mà nó cân thực hiên, do vây hê ̣ thông phân mêm được ̀ ́ ̣ ̀ ̣ ̣ ́ ̀ ̀ coi như là tâp hợp cac chức năng, nhiêm vụ cân tổ chức thực thi. ̣ ́ ̣ ̀ - Phân rã chức năng và lam min dân theo cach từ trên xuông dưới (phân tach nho ̉ cac ch ức ̀ ̣ ̀ ́ ́ ́ ́ năng chinh thanh cac chức năng đơn gian hơn theo cach từ trên xuông). ́ ̀ ́ ̉ ́ ́ - Cac đơn thể chức năng trao đôi với nhau băng cach truyên tham sô ́ hay sử dung dữ liêu ́ ̉ ̀ ́ ̀ ̣ ̣ chung. - Tinh mở và thich nghi cua hệ thông được xây dựng theo cach tiêp cân nay la ̀ thâp. Vi ̀ hê ̣ ́ ́ ̉ ́ ́ ́ ̣ ̀ ́ thông xây dựng dựa vao chức năng là chinh, mà trong thực tế chức năng, nhiêm vụ hệ thông ́ ̀ ́ ̣ ́ là hay thay đôi. ̉ - Cac bộ phân cua hệ thông phai sử dung biên toan cuc để trao đôi với nhau do vây khả năng ́ ̣ ̉ ́ ̉ ̣ ́ ̀ ̣ ̉ ̣ thay đôi mở rông cua chung và cua cả hệ thông là han chê. ̉ ̣ ̉ ́ ̉ ́ ̣ ́ 2. Cach tiêp cân hướng đôi tượng. ́ ́ ̣ ́ - Đăt trong tâm vao dữ liêu hay con goi là thực thê. ̣ ̣ ̀ ̣ ̀ ̣ ̉ - Xem hệ thông như là môt tâp cac thực thê, tâp cac đôi tượng. Cac đôi tượng trong hê ̣ ́ ̣ ̣ ́ ̉ ̣ ́ ́ ́ ́ thông liên quan với nhau theo cac quan hệ kêt hợp, kêt nhâp, kế thừa, phụ thuôc. Phương ́ ́ ́ ́ ̣ ̣ hướng đôi tượng cho phep đăc tả hêt tât cả cac quan hệ cua cac đôi tượng đung với ban chât ́ ́ ̣ ́ ́ ́ ̉ ́ ́ ́ ̉ ́ tự nhiên như trong hế giới thực. - Cac lớp đôi tượng trao đôi với nhau băng thông điêp. ́ ́ ̉ ̀ ̣ - Tinh mở và tinh thich nghi cua hệ thông cao. ́ ́ ́ ̉ ́ + Hệ thông được xây dựng dựa vao cac lớp đôi tượng nên khi co ́ cac yêu câu thay đôi thi ̀ ́ ̀ ́ ́ ́ ̀ ̉ chỉ thay đôi những lớp đôi tượng liên quan hoăc bổ xung thêm môt sô ́ lớp đôi tượng có thê ̉ ̉ ́ ̣ ̣ ́ kế thừa từ lớp trước để thực thi những nhiêm vụ mới mà hệ thông cân thực hiên. ̣ ́ ̀ ̣ + Trong cac chương trinh hướng đôi tượng có thể không cân sử dung biên toan cuc nên moi ́ ̀ ́ ̀ ̣ ́ ̀ ̣ ̣ sửa đôi chỉ có hiêu ứng cuc bô. ̉ ̣ ̣ ̣ - Hỗ trợ sử dung lai cơ chế kế thừa. ̣ ̣ * Ưu điêm: Phương phap hướng đôi tượng… ̉ ́ ́ - Đôi tượng là cơ sở để kêt hợp cac đơn thể sử dung lai thanh hê ̣ thông l ớn hơn, tao ra ́ ́ ́ ̣ ̣ ̀ ́ ̣ những san phâm có chât lượng hơn. ̉ ̉ ́ - Quy ước truyên thông điêp giữa cac đôi tượng đam bao cho tinh mô tả cac giao diên giữa ̀ ̣ ́ ́ ̉ ̉ ́ ́ ̣ cac đôi tượng thanh phân bên trong hệ thông và những hệ thông bên ngoai tr ở lên dê ̃ dang ́ ́ ̀ ̀ ́ ́ ̀ ̀ hơn. - Nguyên lý bao goi che giâu thông tin hỗ trợ cho viêc xây dựng những hệ thông thông tin an ́ ́ ̣ ́ toan và tin cây. ̀ ̣ - Nguyên lý kế thừa đam bao cho hệ thông có tinh mở và tin cây hơn. ̉ ̉ ́ ́ ̣
- - Xoa bỏ ngăn cach giữa cac pha phân tich, thiêt kê, cai đăt và kiêm thử trong xây dựng phân ́ ́ ́ ́ ́ ́ ̀ ̣ ̉ ̀ ̀ mêm. V. Quan lý rui do (4 nhom) ̉ ̉ ́ 1. Rui do về thương mai: Có thể thu thâp đây đủ thông tin canh tranh cua san phâm trên thi ̣ ̉ ̣ ̣ ̀ ̣ ̉ ̉ ̉ trường. 2. Rui do về tai chinh: Nhà đâu tư phat triên phân mêm có đủ kinh phí phat triên dự an. ̉ ̀ ́ ̀ ́ ̉ ̀ ̀ ́ ̉ ́ 3. Rui do về kỹ thuât: Nên tang công nghệ vững chăc và đã được thử thach. ̉ ̣ ̀ ̉ ́ ́ 4. Rui do về phat triên công nghê: Độ ngũ phat triên đã đủ kinh nghiêm, ho ̣ có lam chu ̉ hoan ̉ ́ ̉ ̣ ́ ̉ ̣ ̀ ̀ toan công nghệ đang sử dung. ̀ ̣
- UML I. Giới thiêu UML: ̣ 1. UML (Unified Modeling Language) là ngôn ngữ mô hinh hoa, mô tả ký phap thông nhât ̀ ́ ́ ́ ́ ngữ nghia và mô tả đinh nghia về chinh ngôn ngữ đo. No ́ không mô ta ̉ vê ̀ ph ương phap phat ̃ ̣ ̃ ́ ́ ́ ́ triên. ̉ - UML được sử dung hiên thị đăc tả xây dựng và lam tai liêu cac vât phâm cua phân tich quá ̣ ̉ ̣ ̀ ̀ ̣ ́ ̣ ̉ ̉ ́ trinh xây dựng hệ thông phân mêm theo hướng đôi tượng. ̀ ́ ̀ ̀ ́ - UML là ngôn ngữ, là tâp hợp cac từ vựng và quy tăc tô ̉ hợp cac từ trong t ừ v ựng để giao ̣ ́ ́ ́ tiêp. ́ - UML là ngôn ngữ để hiên thi. ̉ ̣ - UML là ngôn ngữ đăc ta. ̣ ̉ - UML là ngôn ngữ để xây dựng. - UML là ngôn ngữ tai liêu: (tai liêu cho người………. quá trinh phat triên phân mêm). ̀ ̣ ̀ ̣ ̀ ́ ̉ ̀ ̀ ̀ 2. Mô hinh khai niêm cua UML: ́ ̣ ̉ ́ Cac loai biêu đô. ̣ ̉ ̀ 3. Kiên truc hệ thông: ́ ́ ́ Mô hinh kiên truc hệ thông: ̀ ́ ́ ́ * Biêu đồ UC: ̉ - Mô tả hanh vi hệ thông theo cach nhin cua khach hang _ phân tich viên _ kỹ sư chương ̀ ́ ́ ̀ ̉ ́ ̀ ́ ̀ trinh. * Khung nhin: ̀ - Khung nhin cai đăt ̀ ̀ ̣ : Tâp chung vao hệ thông cai đăt hanh vi trong UC ntn? ̣ ̀ ́ ̀ ̣ ̀ - Khung nhin cai đăt : là modul vât lý hay têp mã nguôn để lăp rap thang hệ thông. ̀ ̀ ̣ ̣ ̣ ̀ ́ ́ ̀ ́ - Khung nhin triên khai: Tâp chung vao khuôn khổ phân bổ vât lý cua tai nguyên va ̀ phân bô ̉ ̀ ̉ ̣ ̀ ̣ ̉ ̀ nhiêm vụ giữa cac tai nguyên. Khung nhìn triển khai chỉ ra các tiến trình và thi ết b ị trên ̣ ́ ̀ mạng và các kết nối vật lý giữa chúng. Biểu đồ triển khai cũng hiển thị tiến trình và chỉ ra tiến trình nào chạy trên máy nào. - Khung nhin tiên trinh (process): Biêu diên phân tach giữa cac luông thực hiên chương ̀ ́ ̀ ̉ ̃ ́ ́ ̀ ̣ trinh, đông bộ giữa cac luông, phân bổ cac đôi tượng và l ớp cho cac luông th ực hiên khac ̀ ̀ ́ ̀ ́ ́ ́ ̀ ̣ ́ nhau.
- BIÊU ĐỒ UC (Use case) ̉ - Có 2 phân tử mô hinh: Tac nhân và use case ̀ ̀ ́ I.UC. 1. Đinh nghia, ý nghia:̣ ̃ ̃ - Đơn gian UC mô tả ai đó đang sử dung hệ thông ntn? Mô tả tương tac giữa người sử dung ̉ ̣ ́ ́ ̣ với hệ thông phân mêm để thực hiên cac thao tac giai quyêt công viêc cụ thể nao đo. ́ ̀ ̀ ̣ ́ ́ ̉ ́ ̣ ̀ ́ - UC không cho biêt hệ thông lam viêc bên trong ntn? Nó không phải là thi ết k ế, cũng ́ ́ ̀ ̣ không phải là kế hoạch cài đặt, nó là một phần của vấn đề cần giải quyết. Tiến trình của hệ thống được chia nhỏ thành các UC để có thể nhận ra từng b ộ ph ận c ủa nó m ột cách rõ ràng và để nhiều người có thể cùng xử lý. * Ý nghia: ̃ - Hinh thanh quyêt đinh và mô tả yêu câu chức năng hệ thông. ̀ ̀ ́ ̣ ̀ ́ - Cho phep mô tả rõ rang và nhât quan cai hệ thông sẽ lam, sao cho mô hình có khả năng ́ ̀ ́ ́ ́ ́ ̀ được sử dụng xuyên suốt quá trình phát triển. - Cung câp cơ sở để kiêm tra thử nghiêm hệ thông. ́ ̉ ̣ ́ - Cho khả năng dễ thay đôi hay mở rông yêu câu cua hệ thông. ̉ ̣ ̀ ̉ ́ - Ký phap ký hiêu cua UC là (UC). ́ ̣ ̉ 2. Cach tim kiêm UC ́ ̀ ́ - Tac nhân là thực thể bên ngoai tương tac với hệ thông. Chung co ́ thê ̉ là con người cung co ́ ́ ̀ ́ ́ ́ ̃ thể là hệ thông trong thiêt bị phân cứng khac cân tương tac. Tương tac là sự trao đôi thông ́ ́ ̀ ́ ̀ ́ ́ ̉ tin. * Cac cach tim kiêm tac nhân: (Trả lời câu hoi?) ́ ́ ̀ ́ ́ ̉ - Ai sẽ xây dựng cac chức năng chinh cua hệ thông? ́ ́ ̉ ́ - Ai giup hệ thông lam viêc hang ngay? ́ ́ ̀ ̣ ̀ ̀ - Ai quan trị bao dưỡng hệ thông để hệ thông lam viêc liên tuc? ̉ ̉ ́ ́ ̀ ̣ ̣ - Hệ thông quan lý thiêt bị phân cứng nao ́ ̉ ́ ̀ ̀ - Hệ thông đang xây dựng tương tac với hệ thông khac nao? ́ ́ ́ ́ ̀ - Ai hay cai gì quan tâm đên kêt quả hệ thông cho lai? ́ ́ ́ ́ ̣ * Cach tim UC: (Trả lời câu hoi?) ́ ̀ ̉ - Tac nhân yêu câu hệ thông thực hiên chức năng gi? ́ ̀ ́ ̣ ̀ - Tac nhân cân đoc, tao lâp, bai bo, lưu trữ, sửa đôi thông tin nao trong hệ thông? ́ ̀ ̣ ̣ ̣ ̃ ̉ ̉ ̀ ́ - Có cân thông bao cho tac nhân về sự kiên xay ra trong hê ̣ thông, ngược lai co ́ cân tac nhân ̀ ́ ́ ̣ ̉ ́ ̣ ̀ ́ thông bao cai gì đó cho hệ thông? ́ ́ ́ - Hệ thông cân vao, ra từ đâu hay đên đâu? ́ ̀ ̉ ́ - UC tim kiêm đã trả đây đủ hay chưa? ̀ ́ ̀ + Môi yêu câu chức năng ở trong it nhât 1 UC nêu yêu câu chức năng không ở trong UC nao ̃ ̀ ́ ́ ́ ̀ ̀ thì nó sẽ không được cai đăt sau nay. ̀ ̣ ̀ - Đã xem xet moi tac nhân tương tac với hệ thông chưa? ́ ̣ ́ ́ ́ - Tac nhân cung câp cho hệ thông thông tin nao? ́ ́ ́ ̀ - Tac nhân nhân thông tin nao từ hệ thông? ́ ̣ ̀ ́ - Đã nhân biêt moi hệ thông bên ngoai mà hệ thông nay tương tac? ̣ ́ ̣ ́ ̀ ́ ̀ ́ - Thông tin nao bên ngoai hệ thông nhân và gửi cho hệ thông nay? ̀ ̀ ́ ̣ ́ ̀ 3. Đăc trưng cua UC: ̣ ̉ - UC luôn được tăng lên kich hoat, tac nhân ra lên trực tiêp hay gian tiêp hê ̣ thông th ực hiên ́ ̣ ́ ̣ ́ ́ ́ ́ ̣ UC. UC nôi tac nhân băng quan hệ kêt hợp. ́ ́ ̀ ́
- - UC cung câp giá trị trở lai cho tac nhân, giá trị là cai gi ̀ đó tuy theo bai toan ma ̀ tac nhân ́ ̣ ́ ́ ̀ ̀ ́ ́ muôn nhân từ UC. ́ ̣ 4. Luôn sự kiên trong UC: ̀ ̣ - Mô tả chi tiêt người sử dung sẽ lam gì và hệ thông se ̃ lam gi ̀ đê ̉ th ực hiên ch ức năng cua ́ ̣ ̀ ́ ̀ ̣ ̉ UC. - Kich ban chỉ ra luông sự kiên trong 1 thể hiên cụ thê ̉ cua UC, no ́ la ̀ trinh t ự hoat đông cu ̣ ̣ ̉ ̣ ̣ ̉ ̀ ̣ ̣ thể để mô tả hanh vi. ̀ 5. Luông sự kiên – Mô tả UC: ̀ ̣ - Môi UC cân được mô tả ngăn gon là nó sẽ lam gi? ̃ ̀ ́ ̣ ̀ ̀ - Tiên điêu kiên cua UC: Liêt kê cac điêu kiên cân được thực hiên trước khi UC khở đông. ̀ ̀ ̣ ̉ ̣ ́ ̀ ̣ ̀ ̣ ̣ 6. Luông sự kiên chinh và luông sự kiên nhanh: (bao gôm) ̀ ̣ ́ ̀ ̣ ́ ̀ - UC khởi đông ntn? ̣ - Cac đường đi xuyên qua UC? ́ ̀ - Luông chinh thông qua UC? ́ - Luông rẽ nhanh thông qua UC? ̀ ́ ́ - Cac luông lôi? ̀ ̃ - UC kêt thuc thế nao? ́ ́ ̀ * Hâu điêu kiên: Là điêu kiên được thực hiên ngay sau khi kêt thuc UC. Nó mô ta ̉ trang thai ̣ ̀ ̣ ̀ ̣ ̣ ́ ́ ̣ ́ hệ thông hay tac nhân khi hoan thanh UC. ́ ́ ̀ ̀ II. Biêu đồ UC (Trường hợp sử dung): ̉ ̣ - Biêu đồ UC là tai liêu tac nhân (moi thứ bên ngoai hê ̣ thông), UC (moi th ứ bên trong pham ̉ ̀ ̣ ́ ̣ ̀ ́ ̣ ̣ vi hệ thông) và cac quan hệ giữa chung. ́ ́ ́ * Chú y: ́ - Không nên mô hinh hoa giao tiêp tac nhân với tac nhân vì cac quan hệ bên ngoai hê ̣ thông ̀ ́ ́ ́ ́ ́ ̀ ́ không anh hưởng đên bên trong. ̉ ́ - Không hinh thanh quan hệ trực tiêp giữa 2 UC trừ trường hợp chung co ́ quan hê ̣ sử dung ̀ ̀ ́ ́ ̣ (Use) hay quan hệ mở rông (Extends). Biêu đồ UC cho biêt có những UC nao trong hệ thông ̣ ̉ ́ ̀ ́ nhưng không cho biêt trât tự thực hiên cac UC. Biêu đô ̀ hoat đông se ̃ cho biêt trât t ự cac UC ́ ̣ ̣ ́ ̉ ̣ ̣ ́ ̣ ́ ̀ nay. - Môi UC phai được tac nhân khởi đông trừ trường hợp đăc biêt khi UC có quan hệ sử dung ̃ ̉ ́ ̣ ̣ ̣ ̣ hay mở rông. ̣ - CSDL được xem như là môt lớp dưới, toan bộ biêu đồ UC co ́ thê ̉ nhâp dl vao băng UC va ̀ ̣ ̀ ̉ ̣ ̀ ̀ sử dung UC khac để truy vân chung. ̣ ́ ́ ́ 1. Quan hệ giao tiêp: Quan hệ được thể hiện bằng mũi tên. ́
- 2. Quan hệ sử dung: (User) ̣ - Cho phep 1 UC sử dung chức năng cua 1 UC khac cung câp, quan hê ̣ nay th ường đ ược s ử ́ ̣ ̉ ́ ́ ̀ dung để mô hinh hoa 1 chức năng sử dung lai, dung chung cho 2 hay nhiêu UC. ̣ ̀ ́ ̣ ̣ ̀ ̀ 3. Quan hệ mở rông: (Extends) ̣ - Cho phep mở rông tuy ý chức năng do UC khac cung câp, nó chỉ răng trong 1 điêu kiên ́ ̣ ̀ ́ ́ ̀ ̀ ̣ nao đó 1 UC được mở rông băng 1 UC khac. Mở rông là gôp 1 vai hanh vi cua 1 UC tông ̀ ̣ ̀ ́ ̣ ̣ ̀ ̀ ̉ ̉ quat hơn để sử dung lai. ́ ̣ ̣ 4. Quan hệ tông quat hoa: ̉ ́ ́ + Tông quat tac nhân và UC: ̉ ́ ́ - Được sử dung để chỉ ra 1 vai tac nhân hay 1 vai UC có 1 số cai chung. ̣ ̀ ́ ̀ ́ UC → UC (sử dung / mở rông). ̣ ̣ ́ Tac nhân → UC (gian tiêp). ́ ́ + Cac bước xây dựng 1 biêu đồ UC: ́ ̉ B1: Danh sach tac nhân. ́ ́ ́ Tac nhân1 ́ Tac nhân 2 B2: Danh sach UC. ́ ́ Tac nhân 1 → UC1 & UC2 ́ Tac nhân 2 → UC1 &UC2 B3: Đăc tả UC ̣ ́ - Tac nhân kich hoat. ́ ̣ - Mô tả UC (lam viêc gi) ̀ ̣ ̀ - Tiên điêu kiên (có UC co, có UC không). ̀ ̀ ̣ ́ - Luông sự kiên chinh. ̀ ̣ ́ ̣ - Hâu điêu kiên. ̀ ̣
- BIÊU ĐỒ TƯƠNG TAC (Biêu đồ trinh tự, biêu đồ tương tac) ̉ ́ ̉ ̀ ̉ ́ I. Tim kiêm đôi tượng và đôi tượng. ̀ ́ ́ ́ * Đôi tượng là cai để goi thông tin và hanh vi. ́ ́ ́ ̀ * Tim kiêm đôi tượng: ̀ ́ ́ - Khao sat cac danh từ trong vung sự kiên hoăc tai liêu kich ban. ̉ ́ ́ ̀ ̣ ̣ ̀ ̣ ̣ ̉ - Trong cac biêu mâu bao cao có thể là tim cac đôi tượng. ́ ̉ ̃ ́ ́ ̀ ́ ́ - Cac đôi tượng điêu khiên có thể được xem xet. ́ ́ ̀ ̉ ́ II. Biêu đồ tương tac. (interaction diagram) ̉ ́ - Được sử dung để mô hinh hoa khia canh đông cua hệ thông. ̣ ̀ ́ ́ ̣ ̣ ̉ ́ - Biêu đồ tương tac chỉ ra 1 tương tac bao gôm tâp đôi tượng quan hệ và cac thông điêp trao ̉ ́ ́ ̀ ̣ ́ ́ ̣ đôi giữa chung. Biêu đồ tương tac chỉ ra từng bước cua 1 luông điêu kiên cụ thể trong UC. ̉ ́ ̉ ́ ̉ ̀ ̀ ̣ + Biểu đồ tương tác chứa các thành phần sau đây: - Đối tượng: biểu đồ tương tác sử dụng tên đối tượng, tên lớp hay cả hai. - Liên kết: liên kết là hiện thực của kết hợp. - Thông điệp: thông qua thông đi ệp lớp hay đ ối t ượng có th ể yêu c ầu l ớp hay đ ối tượng khác thực hiện chức năng cụ thể. - Chú thích (notes) và ràng buộc như mọi biểu đồ khác. + Có 2 loai biêu đồ tương tac. ̣ ̉ ́ * Biêu đồ trinh tự:̉ ̀ - Theo trât tự thời gian, tâp chung vao điêu kiên. ̣ ̣ ̀ ̀ ̣ * Biêu đồ công tac: ̉ ̣ ́ - Chỉ ra cung 1 loai thông tin và tâp chung vao luông dữ liêu. ̀ ̣ ̣ ̀ ̀ ̣ * Ý nghia cua biêu đồ tương tac: ̃ ̉ ̉ ́ - Giup người thiêt kế và người phat triên có thể xây dựng được cac lớp se ̃ xây d ựng quan ́ ́ ́ ̉ ́ hệ giữa cac lớp, thao tac và trach nhiêm cua môi lớp. ́ ́ ́ ̣ ̉ ̃ 1. Biêu đồ trinh tự: Là biêu đồ tương tac theo trât tự thời gian cua cac giao tiêp băng thông ̉ ̀ ̉ ́ ̣ ̉ ́ ́ ̀ điêp giữa cac đôi tượng. ̣ ́ ́ 2. Biêu đồ công tac: Chỉ ra luông sự kiên xuyên qua kich ban cua UC. Tâp chung vao quan ̉ ̣ ́ ̀ ̣ ̣ ̉ ̉ ̣ ̀ hệ giữa cac đôi tượng, tâp chung vao cac câu truc, tinh chât giữa cac đôi tượng hay nhân ́ ́ ̣ ̀ ́ ́ ́ ́ ́ ́ ́ ̣ gửi thông điêp. ̣ 3. Kỹ thuât xây dựng biêu đồ tương tac (2 bước): ̣ ̉ ́ B1: Tâp chung cac thông tin liên quan đên khach hang. Không ánh xạ ngay thông điệp thành ̣ ́ ́ ́ ̀ thao tác và không ánh xạ ngay đối tượng thành lớp. Bi ểu đ ồ t ạo ra trong b ước này dành cho nhà phân tích, khách hàng và những ai chỉ quan tâm đến luồng tác nghi ệp, để bi ết luồng logic chạy trong hệ thống như thế nào. B2: Môi thông điêp đưa ra môt thủ tuc. ̃ ̣ ̣ ̣ - Anh xạ thông điêp đên thao tac, anh xạ đôi tượng đên lớp. ́ ̣ ́ ́ ́ ́ ́ - Bổ xung đôi tượng điêu khiên nêu cân. ́ ̀ ̉ ́ ̀
- BIÊU ĐỒ LỚP ̉ I. Lớp và tim kiêm lớp. ̀ ́ - Lớp mô tả hanh vi, thuôc tinh, ngữ nghia cua môt kiêu, môt tâp đôi tượng. ̀ ̣ ́ ̃ ̉ ̣ ̉ ̣ ̣ ́ + Ký hiêu: ̣ Tên lớp Thuôc tinh ̣ ́ Hanh vi ̀ + Tim kiêm lớp: ̀ ́ - Khao sat cac danh từ trong luông sự kiên. ̉ ́ ́ ̀ ̣ - Khao sat cac đông từ trong luông sự kiên để cho biêt cac hanh vi. ̉ ́ ́ ̣ ̣ ́ ́ ̀ - Lớp có thể tim kiêm trong biêu đồ tương tac. ̀ ́ ̉ ́ - Có thể tim kiêm lớp trong cac biêu mâu, bao cao. Nêu co ́ quá nhiêu loai bao cao, thi ̀ những ̀ ́ ́ ̉ ̃ ́ ́ ́ ̀ ̣ ́ ́ bao cao tương tự sẽ được tâp hợp để biêu diên bởi môt lớp, đông thời sử dung cac biên ́ ́ ̣ ̉ ̃ ̣ ̀ ̣ ́ ́ thanh phân để quan lý cac biên thể khac cua bao cao. ̀ ̀ ̉ ́ ́ ́ ̉ ́ ́ - Nhom lớp khac được hinh thanh để biêu diên giao diên khac cua hê ̣ thông, đăc biêt đê ̉ biêu ́ ́ ̀ ̀ ̉ ̃ ̣ ́ ̉ ́ ̣ ̣ ̉ diên giao diên giữa lớp tao ra với hệ thông khac nó tương tac. Giao diên là n ơi môt đôi ̃ ̣ ̣ ́ ́ ́ ̣ ̣ ́ tượng tương tac với đôi tượng khac. ́ ́ ́ - Môt tâp lớp khac được hinh thanh để biêu diên thiêt bị phân cứng khac mà hệ thông phân ̣ ̣ ́ ̀ ̀ ̉ ̃ ́ ̀ ́ ́ ̀ mêm sẽ tương tac. ̀ ́ + Trả lời môt số câu hoi sau để tim kiêm lớp: ̣ ̉ ̀ ́ - Có thông tin nao cân lưu trữ hay phân tich? ̀ ̀ ́ - Có hệ thông ngoai hay không? Nêu có nó được xem như là những lớp chứa trong hệ thông ́ ̀ ́ ́ cua ta hay hệ thông cua ta tương tac với chung. ̉ ́ ̉ ́ ́ - Có biêu mâu thư viên lớp hay thanh phân nao không? ̉ ̃ ̣ ̀ ̀ ̀ - Hệ thông cân quan lý cac thiêt bị ngoai vi nao? ́ ̀ ̉ ́ ́ ̣ ̀ - Tac nhân đong vai trò tac nghiêp nao? Cac nhiêm vụ nay có thể là lớp? ́ ́ ́ ̣ ̀ ́ ̣ ̀ II. Biêu đồ lớp. ̉ - Chỉ ra trừu tượng thế giới thực, tâp chung vao giai thich câu truc l ớp t ừ goc nhin tông ̣ ̀ ̉ ́ ́ ́ ́ ̀ ̉ quat. ́ - Biêu đồ đôi tượng biêu diên trường hợp đăc biêt, cụ thể vao môt thời điêm, nó thể hiên câu ̉ ́ ̉ ̃ ̣ ̣ ̀ ̣ ̉ ̣ ́ truc tinh và hanh vi. ́ ̃ ̀ - Biêu đồ lớp cho hinh anh tinh cua cac bộ phân hê ̣ thông và cac quan hê ̣ gi ữa chung. Biêu ̉ ̀ ̉ ̃ ̉ ́ ̣ ́ ́ ́ ̉ đồ lớp giup người phat triên phân mêm quan sat và lâp kê ́ hoach câu truc hê ̣ thông tr ước khi ́ ́ ̉ ̀ ̀ ́ ̣ ̣ ́ ́ ́ viêt mã trinh. ́ ̀ 1. Phân loai: ̣ - Lớp tham sô: (parameterized class) Là lớp được sử dung để tao ra họ cac lớp khac. ́ ̣ ̣ ́ ́ - Lớp hiên thực: (instantiated class) Là lớp tham số mà đôi số cua nó có gí trị thực. ̣ ́ ̉ - Lớp tiên ich: (class utility) Là tâp hợp (chứa) cac thao tac. ̣ ́ ̣ ́ ́ - Lớp tiên ich tham sô: (parameterized class utility) Là lớp tham số chứa tâp cac thao tac. ̣ ́ ́ ̣ ́ ́ - Lớp tiên ich hiên thực: (instantiated class utility) Là lớp tiên ich tham sô ́ ma ̀ đôi sô ́ cua ̣ ́ ̣ ̣ ́ ́ ̉ chung có giá tri. ́ ̣ - Meta class: Là lớp mà hiên thực cua nó là lớp chứ không phai là đôi tượng. ̣ ̉ ̉ ́ - Lớp tham số và lớp tiện ích là những thí dụ của metaclass. 2. Strereo type cua lớp: là cơ chế để phân nhom lớp. ̉ ́ + Lớp biên: Thực hiên mô hinh MPC, năm trên biên hệ thông và phân phia dưới. ̣ ̀ ̀ ́ ̀ ́
- + Lớp điêu khiên: O Có trach nhiêm điêu khiên cac hoat đông cua lớp khac. Không tự thực ̀ ̉ ́ ̣ ̀ ̉ ́ ̣ ̣ ̉ ́ hiên chức năng nao. ̣ ̀ + Lớp thực thê: O Lưu trữ thông tin mà nó sẽ được lưu trữ vao bô ̣ nhớ ngoai. Co ́ thê ̉ tim ̉ ̀ ̀ ̀ thây trong biêu đồ sự kiên và biêu đồ tương tac. ́ ̉ ̣ ̉ ́ II. Thuôc tinh lớp. ̣ ́ - Thuôc tinh bao gôm thông tin liên kêt với lớp. ̣ ́ ̀ ́ ̀ 1. Tim kiêm thuôc tinh. ́ ̣ ́ - Khao sat cac đôi tượng trong luông sự kiên. ̉ ́ ́ ́ ̀ ̣ - Có thể tim kiêm thuôc tinh trong luông sự kiên (dữ liêu). ̀ ́ ̣ ́ ̀ ̣ ̣ - Có thể tim thuôc tinh trong tai liêu yêu câu hê ̣ thông, nêu có yêu câu loai thông tin ma ̀ hê ̣ ̀ ̣ ́ ̀ ̣ ̀ ́ ́ ̀ ̣ thông sẽ thu thâp thì cac thông tin nay đêu là thuôc tinh trong lớp cua no. ́ ̣ ́ ̀ ̀ ̣ ́ ̉ ́ 2. Đăc tả thuôc tinh. ̣ ̣ ́ - Các thuộc tính của lớp được gán đặc tả chi tiết, chúng bao gồm ki ểu d ữ li ệu thu ộc tính, stereotype, giá trị khởi đầu, phạm vi… + Kiêu dữ liêu thuôc tinh: Kiểu dữ liệu là kiểu phụ thuộc ngôn ngữ l ập trình nh ư string, ̉ ̣ ̣ ́ integer, long hay boolean. + Stereotype của thuộc tính: Tương tự tác nhân, UC và lớp, ta cũng có th ể gán stereotype cho thuộc tính (việc này không bắt buộc). + Giá trị khởi đâu: Rất nhiều thuộc tính có giá trị mặc định. ̀ + Phạm vi của thuộc tính: Một trong những tính chất quan tr ọng c ủa lập trình h ướng đ ối tượng là tính bao gói. Mỗi lớp bao gói một ít thông tin và m ột vài hành vi nh ờ các thu ộc tính và thao tác của nó. Thuộc tính nằm trong lớp cho nên nó ẩn với các lớp khác. + Tinh chât lưu trữ: Tính chất này mô tả các thuộc tính sẽ được lưu tr ữ trong l ớp nh ư th ế ́ ́ nào. + Thuộc tính tĩnh: Khi gán thuộc tính thông thường cho lớp thì m ỗi hi ện th ực c ủa l ớp s ẽ có riêng bản sao thuộc tính. + Thuộc tính suy diễn: Là thuộc tính được hình thành từ một hay nhiều thuộc tính khác. III. Thao tac lớp. ́ - Là hanh ci kêt hợp với lớp. Môi thao tac gôm 3 thanh phân, tên, tham sô, kiêu cho lai thao ̀ ́ ̃ ́ ̀ ̀ ̀ ́ ̉ ̣ ́ tac. * Chú y: ́ - Nêu lớp chỉ có 1 hay 2 thao tac thì nên gôp vao lớp khac. ́ ́ ̣ ̀ ́ - Nêu lớp không có thao tac thì nên mô hinh nó như thuôc tinh. ́ ́ ̀ ̣ ́ - Nêu lớp có quá nhiêu thao tac thì nên chia sẻ sang cac lớp khac. ́ ̀ ́ ́ ́ * Phân loai (4 loai): ̣ ̣ - Thao tac cai đăt: Để thực hiên môt vai chức năng tac nghiêp, co ́ thê ̉ tim ra thao tac nay ́ ̀ ̣ ̣ ̣ ̀ ́ ̣ ̀ ́ ̀ trong biêu đồ tương tac. ̉ ́ - Thao tac quan ly: Quan lý viêc tao lâp và huy bỏ cac đôi tượng. ́ ̉ ́ ̉ ̣ ̣ ̣ ̉ ́ ́ - Thao tac xâm nhâp: Là thao tac thực hiên viêc xâm nhâp thuôc tinh cua lớp khac th ực hiên ́ ̣ ́ ̣ ̣ ̣ ̣ ́ ̉ ́ ̣ trach nhiêm nhưng lớp khac không cân biêt gì về chung. Đo ́ là cac thao tac private, ́ ̣ ́ ̀ ́ ́ ́ ́ protected. - Thao tac trợ giup: ́ ́ IV. Quan hệ giữa cac lớp (4 loai) ́ ̣ - Quan hệ là kêt nôi ngữ nghia giữ cac lớp, nó cho phep 1 lớp viêt cac thuôc tinh va ̀ quan hê ̣ ́ ́ ̃ ́ ́ ́ ́ ̣ ́ cua cac lớp khac. ̉ ́ ́ + Kêt hợp: là kết nối ngữ nghĩa giữa hai lớp. ́
- + Phụ thuôc: cũng là quan hệ kết nối giữa hai lớp, nhưng nó khác nhau chút ít so v ới quan ̣ hệ kết hợp. Quan hệ phụ thuộc luôn là quan hệ một chiều, chỉ ra một lớp phụ thuộc vào lớp khác. + Tâp hợp: là quan hệ giữa toàn thể và bộ phận. ̣ + Khai quat hoa:́ ́ ́ ́ ̀ * Cach tim cac quan hê: ́ ̣ - Thông tin quan hệ kêt hợp hay phụ thuôc được tim trong biêu đồ tương tac. ́ ̣ ̀ ̉ ́ - Khao sat cac lớp để tim ra quan hệ tông thê, thanh phân. Bât kỳ lớp nao đ ược hinh thanh ̉ ́ ́ ̀ ̉ ̉ ̀ ̀ ́ ̀ ̀ ̀ từ cac lớp khac thì chung có quan hệ tâp hợp. ́ ́ ́ ̣ - Khao sat cac lớp để tim ra quan hệ khai quat hoa. Nêu tim ra cac lớp hoan toan khac cung ̉ ́ ́ ̀ ́ ́ ́ ́ ̀ ́ ̀ ̀ ́ kế thừa 1 lớp thứ 3, thì giữa chung và lớp thứ 3 có quan hệ khai quat hoa. ́ ́ ́ ́ 1. Quan hệ kết hợp (association). Kết hợp là quan hệ cấu trúc để mô tả tập liên kết (m ột liên kết là kết nối giữa các đối tượng). Khi đối tượng của lớp này gửi/nhận thông đi ệp đến/từ đ ối tượng của lớp kia thì ta gọi chúng là có quan hệ kết hợp. Ký pháp đ ồ h ọa c ủa k ết h ợp chúng có thể chứa tên nhiệm vụ và tính nhiều (multiplicity). Tụ hợp (aggregation) là dạng đặc biệt của kết hợp, nó biểu diễn quan hệ cấu trúc giữa toàn thể và bộ phận. Quan hệ kêt hợp: Là kêt nôi ngữ nghia giữa 2 lớp, khi có quan hệ kêt hợp thi ̀ môi lớp co ́ thê ̉ ́ ́ ́ ̃ ́ ̃ gửi thông điêp đên lớp khac trong biêu đồ tương tac. ̣ ́ ́ ̉ ́ - Một dạng dặc biệt của tập hợp là quan hệ hợp thành (composition), trong đó n ếu nh ư đối tượng toàn thể bị hủy bỏ thì các đối tượng bộ phận của nó cũng bị hủy bỏ theo. 2. Phụ thuộc (dependency). Phục thuộc là quan hệ ngữ nghĩa hai phần tử trong đó thay đổi phần tử độc lập sẽ tác động đến ngữ nghĩa của phần tử phục thuộc. 3. Quan hệ khái quát hóa (generalization): Khái quát hóa là quan hệ đặc biệt hóa/ khái quát hóa mà trong đó đối tượng cụ thể sẽ kế thừa các thuộc tính và phương pháp của đối tượng tổng quát. 4. Hiện thực hóa (realization): Hiện thực hóa là quan hệ ngữ nghĩa giữa giao diện và lớp (hay thành phần) hiện thực lớp; giữa UC và hợp tác hiện thực UC.
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Lecture 08: Mô hình hướng đối tượng
20 p | 536 | 125
-
Bài giảng Phân tích và thiết kế hướng đối tượng - ĐH Bách khoa TP.HCM
175 p | 128 | 30
-
Đề thi học kỳ phụ Phân tích thiết kế hướng đối tượng - UML: Trường CĐ Kỹ thuật Cao Thắng
3 p | 227 | 19
-
Bài giảng môn học Phân tích và thiết kế hướng đối tượng - TS. Nguyễn Văn Hiệp
175 p | 78 | 10
-
Giáo trình Phân tích thiết kế hệ thống thông tin (Nghề: Lập trình máy tính-CĐ) - CĐ Cơ Giới Ninh Bình
128 p | 37 | 7
-
Bài giảng Phân tích hướng đối tượng UML – Bài 4: Mô hình hóa ca sử dụng
31 p | 54 | 6
-
Giáo trình Phân tích thiết kế hệ thống (Nghề: Tin học ứng dụng - Cao đẳng) - Trường Cao đẳng Bách khoa Nam Sài Gòn (2023)
134 p | 7 | 5
-
Bài giảng Phân tích hướng đối tượng UML: Bài 0 - Đỗ Thị Mai Hường
5 p | 16 | 4
-
Bài giảng Phân tích hướng đối tượng UML: Bài 8 - Đỗ Thị Mai Hường
20 p | 13 | 4
-
Bài giảng Phân tích hướng đối tượng UML: Bài 7 - Đỗ Thị Mai Hường
21 p | 13 | 4
-
Bài giảng Phân tích hướng đối tượng UML: Bài 5 - Đỗ Thị Mai Hường
43 p | 8 | 4
-
Bài giảng Phân tích hướng đối tượng UML: Bài 4 - Đỗ Thị Mai Hường
31 p | 12 | 4
-
Bài giảng Phân tích hướng đối tượng UML: Bài 3 - Đỗ Thị Mai Hường
20 p | 12 | 3
-
Bài giảng Phân tích hướng đối tượng UML: Bài 6 - Đỗ Thị Mai Hường
37 p | 8 | 3
-
Bài giảng Phân tích hướng đối tượng UML: Bài 1 - Đỗ Thị Mai Hường
48 p | 35 | 3
-
Bài giảng môn Phân tích hướng đối tượng UML: Bài 1 - Đỗ Thị Mai Hường
48 p | 11 | 3
-
Bài giảng Phân tích hướng đối tượng UML: Bài 9 - Đỗ Thị Mai Hường
15 p | 8 | 3
-
Bài giảng Phân tích hướng đối tượng UML: Bài 2 - Đỗ Thị Mai Hường
32 p | 15 | 3
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn