Giáo trình Phân tích, thiết kế hướng đối tượng bằng UML - Đoàn Văn Ban

MỤC LỤC

MỤC LỤC .1

LỜI NÓI ĐẦU 5

CHƯƠNG I: PHƯƠNG PHÁP HƯỚNG ĐỐI TƯỢNG VÀ QUÁ TRÌNH PHÁT

TRIỂN HỆTHỐNG PHẦN MỀM .7

1.1. Giới thiệu.7

1.2. Giới thiệu vềhệthống phần mềm .8

1.2.1 Các đặc trưng của hệthống .9

1.2.2 Phân loại hệthống phần mềm .11

1.3. Sựphát triển hệthống .13

1.3.1 Chu trình phát triển hệthống.13

1.3.2 Mô hình hoá hệthống.18

1.4 Các cách tiếp cận trong phát triển phần mềm .21

1.4.1 Cách tiếp cận hướng chức năng.21

1.4.2 Cách tiếp cận hướng đối tượng.23

1.5. Quá trình phát triển phần mềm hợp nhất.25

1.6. Kết luận .33

Câu hỏi và bài tập.33

CHƯƠNG II: UML VÀ QUÁ TRÌNH PHÁT TRIỂN PHẦN MỀM .35

2.1 Tổng quát vềUML.35

2.1.1 Mục đích của UML .35

2.1.2 Quá trình phát triển phần mềm thống nhất với UML.36

2.1.3 Giới thiệu tổng quát vềUML.37

2.1.4 Các phần tửcủa UML .39

2.2 Các khái niệm cơbản của phương pháp hướng đối tượng .43

2.2.1 Các đối tượng .43

2.2.2 Lớp đối tượng.44

2.2.3 Các giá trịvà các thuộc tính của đối tượng .45

2.2.4 Các thao tác và phương thức .46

2.3 Các mối quan hệgiữa các lớp .46

2.3.1 Sựliên kết và kết hợp giữa các đối tượng .46

2.3.2 Bội số.48

2.3.3 Các vai trò trong quan hệ.49

2.3.4 Quan hệkết nhập.49

2.3.5 Quan hệtổng quát hoá.51

2.3.6 Kếthừa bội .52

2.3.7 Quan hệphụthuộc.54

2.3.7 Quan hệhiện thực hoá.54

2.4 Các gói.55

2.5 Các qui tắc ràng buộc và suy diễn.56

2.7 Rational Rose và quá trình phát triển phần mềm thống nhất.58

Bài tập và câu hỏi .59

CHƯƠNG III: BIỂU ĐỒCA SỬDỤNG PHÂN TÍCH CÁC NHU CẦU CỦA HỆ

THỐNG.60

3.1 Định nghĩa bài toán .60

3.2 Phân tích và đặc tảcác yêu cầu hệthống .63

3.2.1 Ca sửdụng.63

3.2.2 Tác nhân .64

3.2.3 Xác định các ca sửdụng và các tác nhân .65

3.2.3 Đặc tảcác ca sửdụng .67

3.3 Biểu đồca sửdụng .70

3.4 Tạo lập biểu đồca sửdụng trong Rational Rose .74

Bài tập và câu hỏi .74

CHƯƠNG IV: PHÂN TÍCH HỆTHỐNG – MÔ HÌNH KHÁI NIỆM VÀ BIỂU ĐỒ

LỚP .76

4.1 Mô hình khái niệm – mô hình đối tượng.76

4.2 Xác định các lớp đối tượng .77

4.3 Mối quan hệgiữa các lớp đối tượng .85

4.3.1 Đặt tên cho các quan hệkết hợp.86

4.3.2 Các phương pháp xác định các mối quan hệkết hợp.86

4.4 Biểu đồlớp .88

4.4.1 Các loại lớp trong biểu đồ.88

4.4.2 Mẫu rập khuôn (stereotype) của các lớp .90

4.4.3 Biểu đồlớp trong HệHBH.90

4.5 Thuộc tính của lớp.91

4.5.1 Tìm kiếm các thuộc tính.94

4.5.2 Các thuộc tính của các lớp trong HBH.97

4.6 Các phương thức của lớp .98

4.7 Ghi nhận trong từ điển thuật ngữ.99

4.8 Thực hành trong Rational Rose.100

Câu hỏi và bài tập.101

CHƯƠNG V: MÔ HÌNH ĐỘNG THÁI: CÁC BIỂU ĐỒTƯƠNG TÁC VÀ HÀNH

ĐỘNG TRONG HỆTHỐNG .103

5.1 Mô hình hoá hành vi hệthống.103

5.1.1 Các sựkiện và hành động của hệthống .104

5.1.2 Sựtrao đổi thông điệp giữa các đối tượng .106

5.2 Biểu đồtrình tự.106

5.2.1 Các thành phần của biểu đồtrình tự.107

5.2.2 Xây dựng biểu đồtrình tự.108

5.2.3 Các biểu đồtrình tựmô hình hành động của hệHBH .109

5.2.4 Ghi nhận các hoạt động của các lớp đối tượng .111

5.2.5 Các hợp đồng vềhoạt động của hệthống .112

5.3 Biểu đồtrạng thái .114

5.3.1 Trạng thái và sựbiến đổi trạng thái.115

5.3.2 Xác định các trạng thái và các sựkiện .116

5.3.3 Xây dựng biểu đồtrạng thái.117

5.4 Biểu đồhoạt động.119

5.5 Sửdụng Rational Rose đểtạo lập biểu đồtrình tự.121

5.6 Sửdụng Rational Rose đểtạo lập biểu đồtrạng thái.122

Bài tập và câu hỏi .123

CHƯƠNG VI: THIẾT KẾCÁC BIỂU ĐỒCỘNG TÁC VÀ BIỂU ĐỒTHÀNH PHẦN

CỦA HỆTHỐNG.124

6.1 Các biểu đồcộng tác .125

6.2 Thiết kếcác biểu đồcộng tác và các lớp đối tượng .129

6.2.1 Ca sửdụng thực tế.130

6.2.2 Mẫu gán trách nhiệm.131

6.2.3 Mẫu gán trách nhiệm.132

6.3 Thiết kếhệthống HBH .138

6.4 Thiết kếchi tiết các biểu đồlớp .144

6.5 Thiết kếbiểu đồcộng tác và hoàn thiện thiết kếbiểu đồlớp.152

6.5.1 Xây dựng biểu đồcộng tác.152

6.5.2 Hoàn thiện thiết kếbiểu đồlớp.152

Bài tập và câu hỏi .153

CHƯƠNG VIII: KIẾN TRÚC HỆTHỐNG VÀ PHÁT SINH MÃ TRÌNH.154

7.1 Kiến trúc của Hệthống.154

7.2 Biểu đồthành phần.157

7.3 Biểu đồtriển khai .160

7.4 Ánh xạcác thiết kếsang mã chương trình .161

7.4.1 Tạo lập các định nghĩa lớp từnhững thiết kếbiểu đồlớp.161

7.4.2 Định nghĩa hàm từbiểu đồcộng tác.163

7.5 Danh sách một sốlớp được định nghĩa trong C++ .165

7.6 Thực hành trên Rose.168

7.6.1 Xây dựng biểu đồthành phần .168

7.6.2 Xây dựng biểu đồtriển khai.168

7.6.3 Phát sinh mã trình bằng Rose.168

Bài tập và câu hỏi .174

TÀI LIỆU THAM KHẢO.176

Danh sách thuật ngữvà các từviết tắt .179

pdf181 trang | Chuyên mục: Thiết Kế Hướng Đối Tượng Với UML | Chia sẻ: dkS00TYs | Lượt xem: 9642 | Lượt tải: 1download
Tóm tắt nội dung Giáo trình Phân tích, thiết kế hướng đối tượng bằng UML - Đoàn Văn Ban, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
 
 c. các thành phần 
 d. một mô tả 
 e. phi chức năng 
Phân tích, thiết kế hướng đối tượng bằng UM L Đoàn Văn Ban 
- 175 -
7.6 Chọn từ danh sách dưới đây những thuật ngữ thích hợp để điền vào các chỗ [(…)] 
trong đoạn văn mô tả về biểu đồ thành phần. 
Biểu đồ thành phần được xem như là tập các biểu tượng thành phần biểu diễn 
cho các [(1)] vật lý trong một [(2)]. Ý tưởng cơ bản của biểu đồ [(1)] là tạo ra 
cho những [(3)] và phát triển một bức tranh chung về các thành phần của [(2)]. 
Chọn câu trả lời: 
 a. hệ thống 
 b. người thiết kế 
 c. thành phần vật lý 
 d. một mô tả 
Phân tích, thiết kế hướng đối tượng bằng UM L Đoàn Văn Ban 
- 176 -
TÀI LIỆU THAM KHẢO 
[1] Binder R. V., Testing Object-Oriented Systems: Models, Patterns and Tools, 
Addison-Wesley, 1999. 
[2] Booch G., Rumbaugh J. and Jacobson I., The Unified Software Development 
Process, Addision – Wesley, 1998. 
[3] Booch G., Rumbaugh J. and Jacobson I., The Unified Modeling Language User 
Guide, Addision – Wesley, 1999. 
[4 ] Coad, P., Yourdon E., Object-Oriented Analisys, Prentice Hall, Englewood Cliffs, 
1991. 
[5] Coad, P., Yourdon E., Object-Oriented Design, Prentice Hall, Englewood Cliffs, 
1991. 
[6] Date C. J. , An Introduction to Database Systems, Eddison-Wesley, 2000 
[7] Hussain K M., Hussain D., Information Systems: Analysis, Design and 
Implementation, McGraw-Hill, 1998. 
[8] Fong J., Siu B., Multimedia, Knowledge-Based & Object-Oriented Databases, 
Springer, 1996. 
[9] Kendall P., Introduction to System Analysis and Design: A structured Approach, 
Wm. C. Brown Publishers, 2001. 
[10] Larman C., Applying UML and Patterrns: An Instruction to Object-Oriented 
Analysis and Design, Prentice Hall, 1997. 
[11] Liang Y., From use cases to classes: a way of building object model with UML, 
Information and Software Technology, 45 (2003) 83-93, www.elservier.com/locate/infsof. 
[12] Maier D., Object-Oriented Database Theory: An Introduction and Indexing in 
OODBS, Database Hall of Fame,2001,  
[13] Meyer B., Object-Oriented Software Construction, Prentice Hall, Englewood 
Cliffs, 1988. 
[14] Michael B., William P., Object – Oriented Modeling and Design for Database 
Applications, Prentice Hall, New Jersey 1998 
[15] Oestereich B., Developing Software with UML, Object-Oriented Analysis and 
Design in Practice, Addision – Wesley, 2000. 
[16] OMG, “The OMG Unified Modeling Language Specification”, http:// www.omg.org/uml , 
1999. 
[17] Quatrani T., Visual Modeling With Rational Rose and UML, Addison-Wesley, 
http:// www.rational.com, 2000. 
[18] Rumbaugh J., Blaha M., Premerlani V., Eddy F., Lorensen V., Object-Oriented 
Modeling and Design, Prentice-Hall, NJ 1991. 
Phân tích, thiết kế hướng đối tượng bằng UM L Đoàn Văn Ban 
- 177 -
[19] Sommerville I., Software Engineering, 4th Edition, Addition Wesley, 1994 
[20] Vafadarafshar R., Document a brief introduction of ObjectStore, 2002, 
[21] Zhiming L., Object-Oriented Software Development Using UML, UNU /IIST, 
Macau 2001. 
[22] Đặng Văn Đức, Phân tích thiết kế hướng đối tượng bằng UML (Thực hành với 
Rational Rose), NXB Khoa học và Kỹ thuật, Hà Nội 2002. 
[23] Đặng Văn Hưng, Đoàn Văn Ban, Nguyễn Ngọc Thuần, Maintaining the amount 
of global information in local states of processes of distributed systems, 
Proceeding of the National Centre for Science and Technology of Vietnam, 
Volume 9, No 2, 1997. 
[24] Đoàn Văn Ban, Phân tích, thiết kế và lập trình hướng đối tượng, NXB Thống Kê 
1997. 
[25] Đoàn văn Ban, Sử dụng phương pháp phân tích hướng đối tượng để phát triển 
những hệ thống lớn tích hợp, Tạp chí Tin học và Điều khiển học, Tập 13, số 4, 
1997 (1-10). 
[26] Đoàn văn Ban, Một số tính chất của quá trình thừa kế kiểu trong mô hình cơ sở 
dữ liệu hướng đối tượng, Tạp chí Tin học và Điều khiển học, Tập 15, số 3, 1999 
(1-7). 
[27] Đoàn văn Ban, Hồ Văn Hương, Các giải pháp kết nối Web với cơ sở dữ liệu, Tạp 
chí Tin học và Điều khiển học, Tập 16, số 2, 2000 (25-31). 
[28] Đoàn văn Ban, Một số tính chất của quá trình thừa kế kiểu trong mô hình cơ sở 
dữ liệu hướng đối tượng, Tạp chí Tin học và Điều khiển học, Tập 16, số 2, 2000 
(25-31). 
[29] Đoàn văn Ban, Tính đúng đắn của lược đồ cơ sở dữ liệu hướng đối tượng, Tạp chí 
Tin học và Điều khiển học, Tập 16, số 3, 2000 (7-15). 
[30] Đoàn Văn Ban, Hoàng Quang, Chuyển đổi các biểu thức đại số quan hệ thành 
câu truy vấn trong mô hình dữ liệu hướng đối tượng, Tạp chí Khoa học và Công 
nghệ, Tập 40-Số ĐB, 2002 (120-129). 
[31] Đoàn văn Ban, Nguyễn Hữu Ngự, Hồ Văn Hương, A Formal Specification of the 
Correctness Criteria for Concurrent Executions of a Transaction System in Real-
Time Databases, Tạp chí Tin học và Điều khiển học, Tập 19, số 3, 2003 (263-273). 
[32] Đoàn Văn Ban, Cơ sở dữ liệu hướng đối tượng, giáo trình Khoa CNTT, HN 2003 
[33] Đoàn Văn Ban, Lập trình hướng đối tượng với Java, Nhà xuất bản Khoa học, Hà 
Nội, 2003. 
[34] Đoàn Văn Ban, Lê Mạnh Thạnh và Hoàng Bảo Hùng, Sự tương đương trong biểu 
diễn ngôn ngữ truy vấn OQL và đại số đối tượng, Tạp chí Tin học và Điều khiển 
học, Tập 20, số 2, 2004 ( 11 trang). 
Phân tích, thiết kế hướng đối tượng bằng UM L Đoàn Văn Ban 
- 178 -
[35] Nguyễn Văn Ba, Phân tích và thiết kế hệ thống thông tin, Nhà xuất bản Đại học 
Quốc gia Hà Nội, 2003. 
[36] Ban điều hành Đề án 112 Chính phủ, Chương trình tổng thể Cải cách hành chính, 
Giải pháp khả thi hệ thống quản lý văn bản và hồ sơ công việc của Tỉnh (Tp) 
(Tài liệu mẫu), Hà Nội 2004. 
[37] Ban điều hành Đề án 112 Chính phủ, Chương trình tổng thể Cải cách hành chính, 
Giải pháp khả thi hệ thống thông tin tổng hợp kinh tế - xã hội phục vụ điều hành 
trên địa bàn Tỉnh (Tp) (Tài liệu mẫu), Hà Nội 2004. 
[38] Ban điều hành Đề án 112 Chính phủ, Chương trình tổng thể Cải cách hành chính, 
Xây dựng khung trang thông tin điện tử phục vụ điều hành của các Bộ, Tỉnh (Tp) 
(Tài liệu mẫu), Hà Nội 2004. 
Phân tích, thiết kế hướng đối tượng bằng UM L Đoàn Văn Ban 
- 179 -
Danh sách thuật ngữ và các từ viết tắt 
1. Từ viết tắt tiếng Anh 
UML Unified Modeling Language 
OOA Object Oriented Analysis 
OOD Object Oriented Design 
API Application Programming Interface 
CASE Computer Aided Software Engineering 
OMT Object Modeling Technique 
OOSE Object-Oriented Software Engineering 
OCL Object Constraints Language 
GRASP General Responsibility Assignment Software Patterrn 
ODMG Object Data Management Group 
USPD Unified Software Development Process 
RUP Rational Unified Process 
UP Unified Process 
OCL Object Constraints Language 
GUI Graphics User Interface 
2. Từ viết tắt tiếng Việt 
CNTT Công nghệ thông tin 
CSDL Cơ sở dữ liệu 
NSD Người sử dụng 
CNPM Công nghệ phần mềm 
HBH Hệ thống bán hàng 
CSDLQH Cơ sở dữ liệu quan hệ 
CSDLHĐT Cơ sở dữ liệu hướng đối tượng 
QTCSDL Hệ quản trị cơ sở dữ liệu 
3. Các thuật ngữ Việt – Anh 
Bao gói Encapsulation 
Biểu đồ ca sử dụng Use case diagram 
Biểu đồ cộng tác Collaboration diagram 
Biểu đồ hành động Activity diagram 
Biểu đồ lớp Class diagram 
Biểu đồ thành phần Component diagram 
Biểu đồ trạng thái State diagram, 
Biểu đồ triển khai Deployment diagram 
Biểu đồ trình tự Sequence diagram 
Biểu đồ đối tượng Object diagram 
Bộ phận kiểm duyệt séc Check Authorization Service 
Bộ phận kiểm duyệt thẻ tín dụng Credit Authorization Service 
Bội số, bản số (cơ số) Multiplicity 
Các hệ thống kỹ thuật Technical Systems 
Phân tích, thiết kế hướng đối tượng bằng UM L Đoàn Văn Ban 
- 180 -
Các hệ thống nghiệp vụ Business Systems 
Các hệ thống nhúng thời gian thực Embedded Real_time Systems 
Cách tiếp cận hướng đối tượng Object-Oriented Approach 
Cách tiếp hướng chức năng Functional-Oriented Approach 
Che giấu thông tin Information hidding 
Chỉ số, chỉ mục Index 
Chia để trị Devide and conquer 
Cố kết Cohension 
Công nghệ thế hệ thứ tư 4GT Fourth Generation Technology 
Đa xạ, đa hình Polymorphism 
Định danh Identifier (ID) 
Dữ liệu thành phần Data member 
Được hướng dẫn bởi ca sử dụng Use-case-driven 
Giao diện Interface 
Gói Package 
Hàm thành phần Member function 
Hệ thống phần mềm Software System 
Hệ thống thông tin Information System 
Hiện thực hoá Realisation 
Hướng thủ tục Procedure-Oriented 
Huỷ tử Destructor 
Kế thừa Inheritance 
Kế thừa bội Multiple inheritance 
Kế thừa đơn Single inheritance 
Kết nhập chia sẻ Shared Aggregation 
Kết nhập hợp thành Composition Aggregation 
Kết nhập thông thường Normal aggregation 
Khả năng duy trì hoạt động Maintainability 
Khung công việc Framework 
Liên kết Link 
Lớp Class 
Lớp biên Boundary class 
Lớp điều khiển Control class 
Lớp hiện thực Instantiated class 
Lớp mẫu Template class 
Lớp tham số hoá Parameterized Class 
Lớp thực thể Entity class 
Lớp tích cực Active class 
Lớp tiện ích Class utility 
Luồng Thread 
Mẫu rập khuôn Stereotype 
Mô hình thác nước Waterfall model 
Mô hình xoán ốc Spiral model 
Nạp chồng Overloading 
Nguyên mẫu Prototype 
Phạm vi quan sát của thuộc tính Attribute visibility 
Phương thức Method 
Quan hệ kết hợp Association relationship 
Phân tích, thiết kế hướng đối tượng bằng UM L Đoàn Văn Ban 
- 181 -
Quan hệ kết nhập Aggregation relationship 
Quan hệ phụ thuộc Depedency relationship 
Quan sát logic Logic view 
Quan sát thành phần Component view 
Quan sát theo ca sử dụng Use case view 
Quan sát triển khai Deployement view 
Quan sát tương tranh Concurrency view 
Qui tắc ràng buộc Constraint rule 
Qui tắc suy dẫn Derivation rule 
Siêu dữ liệu Meta data 
Sự kết hợp Association 
Tác nhân Actor 
Tập trung vào kiến trúc Architecture-centric 
Tên của vai trò Role name 
Thành phần Compơonent 
Thao tác Operation 
Thông điệp Message 
Thuộc tính Attribute 
Tính hiệu quả Efficiency 
Tính tiện dụng Usability 
Tính tin cậy Dependability 
Toán tử tạo lập (huỷ tử) Constructor 
Tổng quát hóa Generalization 
Từ điển thuật ngữ Glossary 
Tuyển tập Collection 
Vật phẩm Artifact 

File đính kèm:

  • pdfGiáo trình Phân tích, thiết kế hướng đối tượng bằng UML - Đoàn Văn Ban.pdf
Tài liệu liên quan