![](images/graphics/blank.gif)
Phân tích thiết kế hệ thống hướng đối tượng dùng UML - Module 13: Thiết kế CLASS
lượt xem 29
download
![](https://tailieu.vn/static/b2013az/templates/version1/default/images/down16x21.png)
Tham khảo tài liệu 'phân tích thiết kế hệ thống hướng đối tượng dùng uml - module 13: thiết kế class', công nghệ thông tin, cơ sở dữ liệu phục vụ nhu cầu học tập, nghiên cứu và làm việc hiệu quả
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Phân tích thiết kế hệ thống hướng đối tượng dùng UML - Module 13: Thiết kế CLASS
- Phaân tích vaø Thieát keá Höôùng ñoái töôïng duøng UML Module 13: Thieát keá Class PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 1
- Muïc tieâu w Tìm hieåu muïc ñích cuûa böôùc thieát keá Class vaø vò trí cuûa coâng ñoaïn naøy trong qui trình w Xaùc ñònh boå sung caùc class vaø quan heä cuûa chuùng caàn ñeå hoã trôï cho vieäc caøi ñaët caùc cô cheá kieán truùc ñaõ choïn w Xaùc ñònh vaø phaân tích vieäc chuyeån ñoåi traïng thaùi caùc ñoái töôøng trong caùc class kieåm soaùt ñöôïc traïng thaùi w Tinh chænh caùc quan heä, operation, vaø thuoäc tính PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 2
- Vò trí cuûa Thieát keá Class Architectural Analysis Architectural Describe Review the Architecture Describe Architecture Reviewer Architect Design Concurrency Distribution Subsystem Design Use-Case Analysis Review the Use-Case Design Design Designer Design Reviewer Class Design PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 3
- Toång quan veà Class Design Architecture Document Guidelines Design Classes Class Design Design Classes Use-Case Realization Design Model PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Supplementary Döông Anh Ñöùc Specifications 4
- Caùc böôùc thieát keá Class w Taïo caùc Design Class ban ñaàu w Xaùc ñònh caùc Persistent Class w Ñònh nghóa caùc Operation w Ñònh nghóa Class Visibility w Ñònh nghóa caùc Method w Ñònh nghóa caùc traïng thaùi w Ñònh nghóa caùc thuoäc tính w Ñònh nghóa caùc phuï thuoäc w Ñònh nghóa caùc moãi keát hôïp w Ñònh nghóa caùc quan heä toång quaùt hoùa w Giaûi quyeát ñuïng ñoä giöõa caùc Use-Case w Xöû lyù caùc yeâu caàu phi chöùc naêng noùi chung w Checkpoints PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 5
- Caùc böôùc thieát keá Class w Taïo caùc Design Class ban ñaàu w Xaùc ñònh caùc Persistent Class w Ñònh nghóa caùc Operation w Ñònh nghóa Class Visibility w Ñònh nghóa caùc Method w Ñònh nghóa caùc traïng thaùi w Ñònh nghóa caùc thuoäc tính w Ñònh nghóa caùc phuï thuoäc w Ñònh nghóa caùc moãi keát hôïp w Ñònh nghóa caùc quan heä toång quaùt hoùa w Giaûi quyeát ñuïng ñoä giöõa caùc Use-Case w Xöû lyù caùc yeâu caàu phi chöùc naêng noùi chung w Checkpoints PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 6
- Caùc khaûo saùt khi thieát keá Class w Class stereotype § Boundary § Entity § Control w Caùc design pattern khaû duïng w Caùc cô cheá kieán truùc § Persistence § Distribution § … PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 7
- Caàn bao nhieâu Class ? w Neáu nhieàu class ñôn giaûn. Nghóa laø moãi class: § Ñoùng goùi moät phaàn ít hôn treân toaøn boä heä thoáng § Nhieàu khaû naêng duøng laïi hôn § Deã caøi ñaët hôn w Neáu nhieàu class phöùc taïp. Nghóa laø moãi class: § Ñoùng goùi moät phaàn nhieàu hôn treân toaøn boä heä thoáng § Ít khaû naêng duøng laïi hôn § Khoù caøi ñaët hôn Moät class phaûi coù moät muïc tieâu roõ raøng. Moät class phaûi laøm moät vieäc gì ñoù vaø phaûi laøm toát ñieàu naøy ! PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 8
- Thieát keá caùc Boundary Class w Caùc User interface (UI) boundary class § Coâng cuï xaây döïng giao dieän ngöôøi duøng naøo seõ ñöôïc söû duïng? § Bao nhieâu giao dieän coù theå ñöôïc xaây döïng bôûi coâng cuï? w Caùc External system interface boundary class § Thöôøng ñöôïc moâ hình nhö subsystem MainWindow SubWindow MainForm Button DropDownList PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 9
- Thieát keá caùc Entity Class w Caùc Entity object thöôøng thuï ñoäng vaø persistent w Caùc yeâu caàu veà hieäu naêng coù theå buoäc ta phaûi taùi xaây döïng w Xem theâm böôùc xaùc ñònh Persistent Class Analysis Design > FatClass FatClass - transientBookeeping - transientBookeeping + commonlyUsedAtt1 + getCommonlyUsedAtt1() + commonlyUsedAtt2 + getCommonlyUsedAtt2() + rarelyUsedAtt3 + getRarelyUsedAtt3() + rarelyUsedAtt4 + getRarelyUsedAtt4() 1 1 FatClassDataHelper FatClassLazyDataHelper + commonlyUsedAtt1 + rarelyUsedAtt3 + commonlyUsedAtt2 + rarelyUsedAtt4 PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 10
- Thieát keá Control Class w Chuyeän gì xaûy ra vôùi caùc Control Class? § Chuùng thaät söï caàn thieát? § Coù phaûi taùch chuùng ra khoâng? w Döïa vaøo ñaâu ñeå quyeát ñònh? § Ñoä phöùc taïp § Khaû naêng thay ñoåi § Tính phaân taùn vaø hieäu naêng § Transaction management PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 11
- Caùc böôùc thieát keá Class w Taïo caùc Design Class ban ñaàu w Xaùc ñònh caùc Persistent Class w Ñònh nghóa caùc Operation w Ñònh nghóa Class Visibility w Ñònh nghóa caùc Method w Ñònh nghóa caùc traïng thaùi w Ñònh nghóa caùc thuoäc tính w Ñònh nghóa caùc phuï thuoäc w Ñònh nghóa caùc moãi keát hôïp w Ñònh nghóa caùc quan heä toång quaùt hoùa w Giaûi quyeát ñuïng ñoä giöõa caùc Use-Case w Xöû lyù caùc yeâu caàu phi chöùc naêng noùi chung w Checkpoints PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 12
- Xaùc ñònh Persistent Class w Moïi theå hieän cuûa class ñeàu ñoøi hoûi phaûi löu giöõ traïng thaùi cuûa noù w Caùc Persistent class ñöôïc gaùn vôùi cô cheá persistence Client Analysis Design Implementation Class Mechanism Mechanism Mechanism (Conceptual) (Concrete) (Actual) Legacy Data Course Persistency RDBMS JDBC to Ingres New Data Student Persistency OODBMS ObjectStore PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 13
- Database Design Preview w Persistence strategy must be coordinated w ÔÛ ñaây, nhôù raèng caùc class ñeàu persistent Class Class Design Designer Database Design Database Designer Data Model PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 14
- Caùc böôùc thieát keá Class w Taïo caùc Design Class ban ñaàu w Xaùc ñònh caùc Persistent Class w Ñònh nghóa caùc Operation w Ñònh nghóa Class Visibility w Ñònh nghóa caùc Method w Ñònh nghóa caùc traïng thaùi w Ñònh nghóa caùc thuoäc tính w Ñònh nghóa caùc phuï thuoäc w Ñònh nghóa caùc moãi keát hôïp w Ñònh nghóa caùc quan heä toång quaùt hoùa w Giaûi quyeát ñuïng ñoä giöõa caùc Use-Case w Xöû lyù caùc yeâu caàu phi chöùc naêng noùi chung w Checkpoints PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 15
- Ñònh nghóa caùc Operation w Muïc ñích § AÙnh xaï caùc nhieäm vuï ñaõ xaùc ñònh ô möùc phaân tích thaønh caùc operation thöïc hieän chuùng w Nhöõng caùi caàn xem xeùt: § Teân Operation, signature, vaø moâ taû § Operation visibility § Taàm vöïc Operation • Class operation hay instance operation PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 16
- Nhaéc laïi: Operation laø gì ? CourseOffering Class addStudent deleteStudent getStartTime Operation getEndTime PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 17
- Operation: Tìm chuùng ôû ñaâu? w Caùc thoâng ñieäp trong caùc interaction diagram :ClassA :ClassB :ClassA :ClassB // Perform responsibility performResponsibility():result w Caùc chöùc naêng phuï thuoäc vaøo caøi ñaët khaùc § Caùc chöùc naêng quaûn trò § Caùc nhu caàu sao cheùp class § Caùc nhu caàu kieåm tra baèng, khaùc nhau, … PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 18
- Ñaët teân vaø moâ taû caùc Operation w Caùc teân thích hôïp cho operation § Chæ roõ keát quaû cuûa operation § Ñöùng döôùi goùc nhìn cuûa client § Nhaát quaùn qua taát caû caùc class w Ñònh nghóa operation signature § operationName(parameter : class,..) : returnType w Cung caáp moät moâ taû ngaén, bao goàm yù nghóa cuûa taát caû caùc tham soá PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 19
- Guidelines: Thieát keá Operation Signatures w Khi thieát keá operation signatures phaûi baûo ñaûm haøm chöùa: § Caùc tham soá truyeàn theo giaù trò hay tham soá? § Caùc tham soá coù bò thay ñoåi bôûi operation? § Caùc tham soá laø optional? § Tham soá coù giaù trò maëc ñònh? § Mieàn tham soá hôïp leä? w Caøng ít tham soá caøng toát w Truyeàn caùc object thay vì “data bits” PT & TK Höôùng ñoái töôïng – Thieát keá kieán truùc Döông Anh Ñöùc 20
![](images/graphics/blank.gif)
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Bài giảng Phân tích thiết kế hệ thống mạng - ThS. Lê Xuân Thành
52 p |
733 |
95
-
Bài giảng Phân tích thiết kế hệ thống thông tin - trường ĐH Công nghệ
35 p |
218 |
57
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Ngô Thị Tú Quyên
161 p |
204 |
44
-
Bài giảng Phân tích thiết kế hệ thống: Bài giảng 5 - TS. Đào Nam Anh
87 p |
203 |
31
-
Đề cương chi tiết bài giảng Phân tích thiết kế hệ thống
29 p |
131 |
16
-
Bài giảng Phân tích thiết kế hệ thống: Bài giảng 1 - TS. Đào Nam Anh
78 p |
153 |
16
-
Bài giảng Phân tích thiết kế hệ thống: Bài giảng 4 - TS. Đào Nam Anh
12 p |
166 |
15
-
Bài giảng Phân tích thiết kế hệ thống thông tin - ThS. Văn Như Bích B, ThS. Võ Hoàng Khang
97 p |
183 |
14
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Trường đại học Thương Mại
23 p |
44 |
9
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 6: Thiết kế dữ liệu
60 p |
122 |
8
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Bài 11 - TS. Trần Mạnh Tuấn
29 p |
67 |
7
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Giới thiệu môn học - Nguyễn Hoàng Ân
23 p |
93 |
6
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Bài 9 - TS. Trần Mạnh Tuấn
46 p |
78 |
6
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Bài 3 - ThS. Thạc Bình Cường
54 p |
48 |
5
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 1: Tổng quan về phát triển hệ thống
20 p |
86 |
5
-
Bài giảng Phân tích thiết kế hệ thống thông tin - Chương 1: Giới thiệu về hệ thống thông tin phương pháp phân tích và thiết kế hệ thống thông tin
32 p |
85 |
4
-
Bài giảng Phân tích thiết kế hệ thống thông tin: Chương 1 - Lê Thị Tú Kiên
64 p |
45 |
2
-
Bài giảng môn học Phân tích thiết kế hệ thống thông tin quản lý – Trần Thanh
91 p |
12 |
2
![](images/icons/closefanbox.gif)
![](images/icons/closefanbox.gif)
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
![](https://tailieu.vn/static/b2013az/templates/version1/default/js/fancybox2/source/ajax_loader.gif)