Tài liệu Object - Oriented analysis and design with uml 2.0 - Bài 03: Tổng quan về OOAD: *OBJECT-ORIENTED ANALYSIS AND DESIGN WITH UML 2.0Bé m«n C«ng nghƯ phÇn mỊmKHOA CƠNG NGHỆ THƠNG TINTRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘIBài 03: Tổng quan về OOAD*Nội dungMục đích của OOADPhương pháp OOADCase studyCơng cụ UML*1.1. Tầm quan trọng của OOADNhiều người phát triển dự ánCho rằng phần mềm chủ yếu được xây dựng bằng cách gõ “code” từ bàn phímKhơng dành đủ thời gian cho quá trình phân tích và thiết kế phần mềm Họ phải “cày bừa” để hồn thành chương trình vìKhơng hiểu hoặc hiểu sai yêu cầuGiao tiếp với các thành viên khơng tốtKhơng tích hợp được với module của đồng nghiệp Họ nhận ra rằng “Phân tích” và “Thiết kế” cần được coi trọng hơn, nhưng đã quá muộn*1.1. Tầm quan trọng của OOAD (2)Cần thiết lập một cơ chế hiệu quả để nắm bắt yêu cầu, phân tích thiết kếCơ chế này phải như là một “ngơn ngữ thống nhất” giúp cho quá trình hợp tác hiệu quả giữa các thành viên trong nhĩm phát triển phần mềm. OOAD*1.2. Mục đích của OOADChuyển các yêu cầu của bài tốn thành một bản thiết kế của hệ t...
30 trang |
Chia sẻ: Khủng Long | Lượt xem: 1194 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Object - Oriented analysis and design with uml 2.0 - Bài 03: Tổng quan về OOAD, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
*OBJECT-ORIENTED ANALYSIS AND DESIGN WITH UML 2.0Bé m«n C«ng nghƯ phÇn mỊmKHOA CƠNG NGHỆ THƠNG TINTRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘIBài 03: Tổng quan về OOAD*Nội dungMục đích của OOADPhương pháp OOADCase studyCơng cụ UML*1.1. Tầm quan trọng của OOADNhiều người phát triển dự ánCho rằng phần mềm chủ yếu được xây dựng bằng cách gõ “code” từ bàn phímKhơng dành đủ thời gian cho quá trình phân tích và thiết kế phần mềm Họ phải “cày bừa” để hồn thành chương trình vìKhơng hiểu hoặc hiểu sai yêu cầuGiao tiếp với các thành viên khơng tốtKhơng tích hợp được với module của đồng nghiệp Họ nhận ra rằng “Phân tích” và “Thiết kế” cần được coi trọng hơn, nhưng đã quá muộn*1.1. Tầm quan trọng của OOAD (2)Cần thiết lập một cơ chế hiệu quả để nắm bắt yêu cầu, phân tích thiết kếCơ chế này phải như là một “ngơn ngữ thống nhất” giúp cho quá trình hợp tác hiệu quả giữa các thành viên trong nhĩm phát triển phần mềm. OOAD*1.2. Mục đích của OOADChuyển các yêu cầu của bài tốn thành một bản thiết kế của hệ thống sẽ được xây dựngTập trung vào quá trình phân tích các YÊU CẦU của hệ thống và thiết kế các MƠ HÌNH cho hệ thống đĩ trước giai đoạn lập trìnhĐược thực hiện nhằm đảm bảo mục đích và yêu cầu của hệ thống được ghi lại một cách hợp lý trước khi hệ thống được xây dựng*1.2. Mục đích của OOAD (2)Cung cấp cho người dùng, khách hàng, kỹ sư phân tích, thiết kế nhiều cái nhìn khác nhau về cùng một hệ thốngChọn lựa thiết kế để phù hợp với mơi trường phát triểnLà thiết kế khả thi cho từng hệ thống con, thành phần của kiến trúcỞ mức chi tiết, thiết kế sẽ phụ thuộc vào nền tảng, ngơn ngữ lập trình, hay cơ sở dữ liệu.*Nội dungMục đích của OOADPhương pháp OOADCase studyCơng cụ UML*2. Phương pháp OOADOOAD được chia thành 2 giai đoạnPhân tích hướng đối tượng (OOA)Thiết kế hướng đối tượng (OOD)OOA là giai đoạn nhằm tạo ra các mơ hình cơ bản (mơ hình khái niệm) của hệ thống dựa theo những gì khách hàng yêu cầu về hệ thống của họOOD sẽ bổ sung thêm các thơng tin thiết kế chi tiết cho các mơ hình nĩi trên*2. Phương pháp OOAD (2)Phân tích (Analysis)Tập trung vào tìm hiểu bài tốn: CÁI GÌThiết kế theo mơ hình lý tưởng hĩaHành vi (Behavior)Cấu trúc hệ thốngCác yêu cầu chức năngMơ hình nhỏThiết kế (Design)Tập trung vào thiết kế giải pháp: NHƯ THẾ NÀOThao tác và thuộc tính (Operations and attributes)Hiệu năngGần với việc lập trình thực tếVịng đời của các đối tượngCác yêu cầu phi chức năngMơ hình lớn*Mơ hình Phân tíchPhân tích tập trung vào việc trừu tượng hĩa các vấn đề nghiệp vụXây dựng mơ hình bằng cách tìm kiếm các lớp, các đối tượng chính cĩ trong hệ thốngCác lớp, đối tượng này chỉ là những khái niệm nghiệp vụ cơ bản nhằm tìm hiểu hệ thốngTránh cung cấp các khái niệm, thơng tin cài đặt quá chi tiết (cho dù cĩ thể đã tìm được tại thời điểm đĩ)*Mơ hình Thiết kếBao gồm các lớp, đối tượng ở mức caoNên đĩng thành các gĩiChỉ rõ và mơ hình hĩa mối quan hệ tương tác giữa chúngChỉ rõ hành động và thuộc tính của các đối tượngĐơn giản hố của việc phát triển mã nguồnVí dụ như thuật tốn, sơ đồ khốiThể hiện được bản thiết kế mã nguồn sẽ được cấu trúc và phát triển như thế nào*Các bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design)*Các bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design)Mơ hình hĩa yêu cầu người dùng thành các biểu đồ use case, đặc tả use case, biểu đờ hoạt đợng* Nguyễn Thị Thu Trang, SE-FIT-HUTCác bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design)Tìm các lớp phân tích và xây dựng các biểu đồ tương tác* Nguyễn Thị Thu Trang, SE-FIT-HUTCác bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design)Ánh xạ các phần tử thiết kế từ các lớp phân tích và thiết kế UC* Nguyễn Thị Thu Trang, SE-FIT-HUTCác bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design)Tinh chỉnh các lớp phân tích để thiết kế lớp và tạo biểu đồ lớp* Nguyễn Thị Thu Trang, SE-FIT-HUTCác bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design) Ánh xạ các lớp và các mới liên kết thành mơ hình thực thể liên kết - Chuẩn hóa mơ hình thực thể liên kết thành dạng chuẩn 3 để thiết kế CSDL* Nguyễn Thị Thu Trang, SE-FIT-HUTCác bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design)Thiết kế biểu đờ chuyển đởi giữa các giao diện người dùng và thiết kế chi tiết các giao diện ấy* Nguyễn Thị Thu Trang, SE-FIT-HUTCác bước trong OOAD1. Mơ hình hóa yêu cầu sử dụng UC(Requirement modeling using UC)2. Phân tích use case(Use case analysis)3. Xác định phần tử thiết kế và thiết kế UC5. Mơ hình hóa E-R, Chuẩn hĩa và thiết kế CSDL6. Thiết kế đặc tả ngoài(External Specification Design)4. Thiết kế lớp(Class design)7. Thiết kế trường hợp kiểm thử (Test case design)Thiết kế trường hợp kiểm thử dựa trên các use case đã phân tích và thiết kế*Chương 2. Tổng quan về phân tích thiết kế hướng đối tượngMục đích của OOADPhương pháp OOADCase studyCơng cụ UML*3. Case studyCase study mẫu: Course RegistrationCase study bài tập: Library System*Course Registration CSThe system manages course registration in university. It manages course information for semesters of past one year and next semester. Course registration can be done for only next semester. Course information for past one year is only for viewing.Registrars, lecturers, and students have to login to use the system. After completing their work, they can log out the system because of security.Admistrators can manage users in the system (including search, add, delete and update).*Course Registration CSRegistrars manage course information through registrar GUI. Registrars add, delete, and update basic information of courses for preparing course information of the next semester.Information about each course, such as lecturers, department and prerequisites will be included to help students make informed decisions. A course will have a maximum of 30 students and minimum 3 students *Course Registration CSAfter completion of preparation for all course information of the next semester, registrars open course information to students for registration. After that, students can register for courses. At the end of course registration period, registrars close course registration. After closing course registration, students cannot register nor cancel registration.A course with fewer than 3 students will be canceled. If a course is canceled, system must notifies students who registered the course about this cancellation.*Course Registration CSLecturers make input and update detail of course information of corresponding course through lecturer GUI.Registrars and lecturers can view lists of students who registered for courses after registration period. Registrars can view all lists.Lecturers can view only lists for corresponding courses.*Course Registration CSStudents make registration for courses through student GUI. Students browse course list for the next semester and register for the course after choosing it.If the course to be registered is full or its time is the same as the course he/she has registered or he/she does not satisty the prerequisites, the student must be notified.*Course Registration CSStudents can view the list of own registration courses.Students can cancel course registration from registration list GUI.Registrars, lecturers, students can view course list for all semesters and search course information using keyword. *Course Registration CSMultiple users must be able to perform their work concurrently. The system shall support up to 500 simultaneous users at any one time.The system shall be available 24 hours a day, 7 days a week, with no more than 10% down time.*Nội dungMục đích của OOADPhương pháp OOADCase studyCơng cụ UML*4. Cơng cụ UMLXem chi tiết trên: ơng cụ mã nguờn mở:EclipseUMLUmlDesignerArgoUML...Cơng cụ thương mại:Enterprise ArchitectIBM Rational Software ArchitectMicrosoft VisioVisual Paradigm for UMLSmartDraw...
Các file đính kèm theo tài liệu này:
- tailieu.ppt