Slied giáo trình phân tích thiết kế hướng đối tượng DH UML1

59 331 0
Slied giáo trình phân tích thiết kế hướng đối tượng DH UML1

Đ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

PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG CHỦ ĐỀ Tiến trình phát triển phần mềm theo hướng đối tượng Giới thiệu Ngôn ngữ mô hình hóa thống UML Mô hình hóa nghiệp vụ Mô hình hóa trường hợp sử dụng Mô hình hóa tương tác đối tượng Biểu đồ lớp gói Biểu đồ chuyển trạng thái biểu đồ hoạt động Biểu đồ kiến trúc vật lý phát sinh mã trình Mô hình hóa liệu 10 Bài học thực nghiệm Bài - 2/59 Tài liệu tham khảo Đặng Văn Đức, Phân tích thiết kế hướng đối tượng UML, Nhà xuất Giáo dục, 287 trang 2002 Zhiming Liu, Object-Oriented Software Development with UML, UNU/IIST, 169 pp, 2002 Phần mềm: Rational Rose Enterprise Edition 2002, IBM Rational Software 2002 Bài - 3/59 Bài Tiến trình phát triển phần mềm theo hướng đối tượng Lịch sử phương pháp hướng đối tượng  Khủng hoảng phần mềm   NATO Software Engineering Conference, Germany, 1968 Thống phủ Mỹ dự án SW Bộ quốc phòng, 1970 Project value $M Dự án phần mềm US defence (E Balagurusamy) 3.5 2.5 1.5 0.5 Paid for but Delivered but Abandoned Used after not received not used or reworked change Used as delivered Projects Bài - 5/59 Kỹ nghệ phần mềm  Khái niệm kỹ nghệ phần mềm (software engineering) xuất vào cuối 1960 – bắt đầu có máy tính hệ  Các đặc tính chủ yếu hệ thống phần mềm  Nó mô hình hóa phần giới thực  Rất lớn phức tạp  Nó trừu tượng  Phải có tính độc lập cao  Phải dễ bảo trì:   giới thực thay đổi, phần mềm phải đáp ứng yêu cầu thay đổi Phải thân thiện với người sử dụng  UI phần quan trọng hệ thống phần mềm Bài - 6/59 Kỹ nghệ phần mềm  Phát triển phần mềm bị khủng hoảng phương pháp đủ tốt      Thực tế: Giá phần cứng giảm nhanh, giá phần mềm tăng cao Để đáp ứng đòi hỏi phần mềm cần có    Kỹ thuật áp dụng cho hệ thống nhỏ trước không phù hợp cho hệ thống lớn Các dự án lớn thường bị kéo dài hàng năm làm tăng kinh phí Phần mềm không tin cậy, khó bảo hành Lý thuyết, kỹ thuật, phương pháp, công cụ để điều khiển tiến trình phát triển hệ thống phần mềm Kỹ nghệ phần mềm: Liên quan tới lý thuyết, phương pháp công cụ cần để phát triển phần mềm Mục tiêu: Sản xuất phần mềm độc lập, hạn, phù hợp kinh phí đáp ứng yêu cầu người sử dụng Bài - 7/59 Sản phẩm phần mềm  Kỹ nghệ phần mềm để sản xuất   Hệ thống phần mềm Các tài liệu    Thiết kế hệ thống Tài liệu sử dụng: Cài đặt? Sử dụng phần mềm? Các đặc tính phần mềm  Có thể sử dụng   Tính dễ bảo hành   Dễ dàng mở rộng để đáp ứng yêu cầu thay đổi (phần mềm mềm dẻo) Tính độc lập    Cần có UI phù hợp, tài liệu rõ ràng Các tính chất tin cậy, an toàn Không gây tác hại vật lý, kinh tế hệ thống hỏng Tính hiệu  Không tiêu tốn nhiều tài nguyên hệ thống nhớ, thời gian CPU Bài - 8/59 Sản phẩm phần mềm  Để thỏa mãn đồng thời tính chất sản phẩm phần mềm nói khó khăn   Thí dụ giá với tính Để xây dựng hệ thống phần mềm tốt ta cần    Xác định đắn tiến trình phát triển phần mềm  Các pha hoạt động  Sản phẩm pha Phương pháp kỹ thuật áp dụng pha mô hình hóa sản phẩm chúng Công cụ phát sinh sản phẩm Sản phẩm phần mềm xem mô hình giới thực Nó phải trì để luôn phản ánh xác thay đổi giới thực Bài - 9/59 Tiến trình phát triển phần mềm  Mọi kỹ nghệ (engineering) đề cập đến sản xuất sản phẩm theo tiến trình  Tổng quát tiến trình (process) xác định (Who) làm (What) làm (When) làm (How) để đạt tới mục đích mong muốn  Tiến trình phát triển phần mềm (Software Development Process - SDP) tiến trình xây dựng sản phẩm phầm mềm hay nâng cấp phần mềm có  Thí dụ tiến trình phát triển phần mềm:  Rational Unified Process - RUP New or changed requirements Software Software Development Development New or changed system Process Process Bài - 10 Các khái niệm RUP  Phase, Iterations  Process Workflows    Activity, steps Artifacts  models  reports, documents Worker: Architect When does architecture happen? What does happen? What is produced? Who does it? Bài - 45 Worker-Activities-Artifact Bài - 46 Thí dụ luồng công việc Bài - 47 Các lặp luồng công việc Phases Core Workflows Inception Elaboration Construction Transition Requirements An iteration in the elaboration phase Analysis Design Implementation Test Preliminary Iteration(s) iter #1 iter #2 iter #n iter #n+1 Iterations iter #n+2 iter #m iter #m+1 Bài - 48 Các pha vòng đời Inception Elaboration Construction Transition time  Inception Define the scope of the project and develop business case  Elaboration Plan project, specify features, and baseline the architecture  Construction Build the product Transition users  Transition the product to its Bài - 49 Các pha lặp Inception Prelim Iteration Elaboration Arch Iteration Release Release Construction Dev Iteration Release Dev Iteration Release Release Transition Trans Iteration Release Release Release Một vòng lặp (iteration) trình tự hoạt động với kế hoạch xây dựng trước tiêu chí đánh giá, cho kết phiên chạy Bài - 50 Tiến trình lặp Inception Iteration Elaboration Construction Iteration Transition Iteration “Mini-Waterfall” Process Iteration Planning Rqmts Capture Analysis & Design Implementation Test Prepare Release Bài - 51 Vòng đời lặp: A Mini-Waterfall • Results of previous iterations • Up-to-date risk assessment • Controlled libraries of models, code, and tests Selected scenarios Iteration Planning Requirements Capture Analysis & Design Implementation Test Prepare Release Release description Updated risk assessment Controlled libraries Bài - 52 Các hoạt động lặp  Kế hoạch lặp  Trước lặp bắt đầu thực hiện, mục tiêu lặp cần hình thành sở     Các kết lặp trước (nếu có) Cập nhật đánh giá rủi ro dự án Xác định tiêu chí đánh giá cho lặp Chuẩn bị kế hoạch chi tiết cho lặp   Bao gồm intermediate milestones để điều khiển tiến trình Bao gồm walkthroughs reviews Bài - 53 Các hoạt động vòng đời lặp  Requirements Capture     Analysis & Design        Select/define the use cases to be implemented in this iteration Update the object model to reflect additional domain classes and associations discovered Develop a test plan for the iteration Determine the classes to be developed or updated in this iteration Update the object model to reflect additional design classes and associations discovered Update the architecture document if needed Begin development of test procedures Implementation Test Prepare the release description Bài - 54 Các hoạt động vòng đời lặp    Requirements Capture Analysis & Design Implementation      Test      Automatically generate code from the design model Manually generate code for operations Complete test procedures Conduct unit and integration tests Integrate and test the developed code with the rest of the system (previous releases) Capture and review test results Evaluate test results relative to the evaluation criteria Conduct an iteration assessment Prepare the release description   Synchronize code and design models Place products of the iteration in controlled libraries Bài - 55 Chọn lựa lặp  How many iterations I need?   On projects taking 18 months or less, to iterations are typical Are all iterations on a project the same length?   Usually Iteration length may vary by phase For example, elaboration iterations may be shorter than construction iterations Bài - 56 Ích lợi tiệm cận lặp  Compared to the traditional waterfall process, the iterative process has the following advantages:      Risks are mitigated earlier Change is more manageable Higher level of reuse The project team can learn along the way Better overall quality Bài - 57 Biểu đồ rủi ro tiến trình lặp Inception Waterfall Elaboration Risk Construction Transitio TransitionnTransition Post- PreliminaryArchitect Architect.Devel Devel Devel Iteration Iteration Iteration Iteration Iteration IterationIteration Iteration deployment Time Bài - 58 Tóm tắt  Các vấn đề nghiên cứu        Khái quát tiến trình phát triển phần mềm Các hoạt động phát triển phần mềm Mô hình thác nước tiến trình phát triển phần mềm Phát triển tiến hóa Tính phức tạp cố hữu phần mềm Phát triển hệ thống theo phương pháp hướng đối tượng Giới thiệu RUP Bài - 59 ... phụ thuộc cài đặt Thiết kế chi tiết: Làm mịn Thành phần làm nào? Thiết kế quan hệ Bài - 18 Thiết kế hệ thống  Tài liệu pha thiết kế kiến trúc mô hình kiến trúc     Thiết kế chi tiết thực... thi Do   Bất kỳ tiến trình phát triển thu thập phân tích yêu cầu Các hoạt động SDP kết liên quan hình thành pha tiến trình gọi Phân tích yêu cầu Bài - 12 Thu thập phân tích yêu cầu  Mục tiêu... Pha thu thập phân tích yêu cầu quan trọng Nếu không phát lỗi pha khó tốn để phát pha Bài - 17 Thiết kế hệ thống  Sau có đặc tả yêu cầu, hai tiến trình thiết kế hệ thống  Thiết kế kiến trúc

Ngày đăng: 22/08/2017, 21:07

Từ khóa liên quan

Mục lục

  • PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG

  • CHỦ ĐỀ

  • Tài liệu tham khảo chính

  • Tiến trình phát triển phần mềm theo hướng đối tượng

  • Lịch sử phương pháp hướng đối tượng

  • Kỹ nghệ phần mềm

  • Slide 7

  • Sản phẩm phần mềm

  • Slide 9

  • Tiến trình phát triển phần mềm

  • Slide 11

  • Slide 12

  • Thu thập và phân tích yêu cầu

  • Các hoạt động của phân tích yêu cầu

  • Slide 15

  • Phân tích yêu cầu

  • Slide 17

  • Thiết kế hệ thống

  • Slide 19

  • Lập trình và kiểm thử mođun

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

Tài liệu liên quan