1 / 33

Phân tích và thiết kế phần mềm

Phân tích và thiết kế phần mềm. Nguyễn Duy Khương. Nội dung. Giới thiệu về UML Mô hình ERD Chuẩn hóa dữ liệu Context Diagram DFD level 1 DFD level 2. Việc biểu diễn mô hình phải thoã mãn. Chính xác (accurate): Mô tả đúng hệ thống cần xây dựng.

lewis
Download Presentation

Phân tích và thiết kế phần mềm

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Phân tích và thiết kế phần mềm Nguyễn Duy Khương

  2. Nội dung • Giới thiệu về UML • Mô hình ERD • Chuẩn hóa dữ liệu • Context Diagram • DFD level 1 • DFD level 2

  3. Việc biểu diễn mô hình phải thoã mãn • Chính xác (accurate): Mô tả đúng hệ thống cần xây dựng. • Đồng nhất (consistent): Các view khác nhau không được mâu thuẩn với nhau. • Có thể hiểu được (understandable): Cho những người xây dựng lẫn sử dụng • Dễ thay đổi (changeable) • Dễ dàng liên lạc với các mô hình khác.

  4. Mô hình hóa hệ thống nhằm mục đích • Hình dung một hệ thống theo thực tế hay theo mong muốn của chúng ta . • Chỉ rõ cấu trúc hoặc ứng xử của hệ thống. • Tạo một khuôn mẫu hướng dẫn nhà phát triển trong suốt quá trình xây dựng hệ thống. • Ghi lại các quyết định của nhà phát triển để sử dụng sau này.

  5. Đầu thập kỷ 90 có một số • Grady Booch’s Booch Modeling Methodology • James Rambaugh’s Object Modeling Technique – OMT • Ivar Jacobson’s OOSE Methodology • Hewlett- Packard’s Fusion • Coad and Yordon’s OOA and OOD

  6. Sự ra đời của UML • Dướilãnh đạo của JamesRumbaugh, Grady BoochvàIvar Jacobson. • NgônNgữMôHìnhHoáThốngNhất (Unifield Modeling Language – UML) rađời. UMLlàmộtngônngữmôhìnhhoáthốngnhấtcóphầnchínhbaogồmnhữngkýhiệuhình học, được các phương pháp hướng đối tượng sử dụng để thể hiện và miêu tả cácthiết kế của một hệ thống. Nó là một ngôn ngữ để đặc tả, trực quan hoá, xây dựng và làmsưu liệu cho nhiều khía cạnh khác nhau của một hệ thống có nồng độ phần mềm cao

  7. UML và các giải đoạn phát triển • Preliminary Investigation: use cases thể hiện các yêu cầu của người dùng. • Analysis: Mục đích chính của giai đọan này là trừu tượng hóa và tìm hiểu các cơ cấu có trong phạm vi bài toán: class diagram. • Design: Kết quả phần analysis được phát triển thành giải pháp kỹ thuật: giao diện, nền tảng cho database… • Development: Mô hình Design được chuyển thành code. • Testing: Sử dụng các UML diagrams trong các giai đoạn trước.

  8. Các View trong UML

  9. Use case view: hướng nhìn chỉ ra khía cạnh chứcnăng của một hệ thống, nhìn từ hướng tác nhân bên ngoài. • Logical view: chỉ ra chức năng sẽ được thiết kế bên trong hệthống như thế nào, qua các khái niệm về cấu trúc tĩnh cũng như ứng xử động của hệ thống. • Component view: chỉ ra khía cạnh tổ chức của các thành phần code. • Concurrency view: chỉ ra sự tồn tại song song/ trùnghợp trong hệ thống, hướng đến vấn đề giao tiếp và đồng bộ hóa trong hệ thống. • Deployment view: chỉ ra khía cạnh triển khai hệ thốngvào các kiến trúc vật lý.

  10. Use case View • Miêu tả chức năng sẽ phải cung cấp do được tác nhântừ bên ngoài mong đợi. • Tác nhân là thực thể tương tác với hệ thống: người sử dụng hoặc hệ thống khác. • Hướng nhìn Use case là hướng nhìn dành chokhách hàng, nhà thiết kế, nhà phát triển và người thử nghiệm; • Được miêu tả qua Use case diagram và activity diagram). • Cách sử dụng hệ thống sẽ được miêu tả qua một loạtcác Use case trong Use case view • Mỗi Use case là lời miêu tả mangtính đặc thù cho một tính năng của hệ thống được mong đợi.

  11. Logical View • Miêu tả phương thức mà các chức năng của hệ thống sẽ được cung cấp. • Hướng nhìn logic nhìn vào phía bên trong của hệ thốngkể cảcấu trúc tĩnh (lớp, đối tượng, và quan hệ) • Hướng nhìn logicđịnh nghĩa các thuộc tính như trường tồn (persistency) hoặc song song (concurrency),cũng như các giao và cấu trúc nội tại của các lớp. • Cấu trúc tĩnh được miêu tả: class diagram, object diagram, state diagram, sequence diagram, collaboration diagram và activity diagram.

  12. Component View • Miêu tả của việc thực thi các module cũng như sự phụ thuộc giữa chúng với nhau. • Thành phần ở đây là các module lệnh thuộc nhiều loại khác nhau và cấu trúc cũng như sự phụ thuộc của chúng.

  13. Concurrency View • Hướng nhìn song song nhắm tới sự chia hệ thống thành các qui trình (process) và các bộ xử lý (processor). • Hướng nhìn song song giành cho nhà phát triển và người tích hợp hệ thống, nó bao gồmcác biểu đồ động (trạng thái, trình tự, tương tác và hoạt động) cùng các biểu đồ thực thi(biểu đồ thành phần và biểu đồ triển khai).

  14. Deployment View • Hướng nhìn triển khai miêu tả sơ đồ triển khai về mặt vật lý của hệthống.Ví dụ như các máy tính cũng như các máy móc và sự liên kết giữa chúng. • Hướng nhìn triển khai giành cho các nhà phát triển, người tích hợp, người thửnghiệm hệ thống và được thể hiện bằng các biểu đồ triển khai. • Hướng nhìn này cũng baogồm sự ánh xạ các thành phần của hệ thống vào cấu trúc vật lý; ví dụ như chương trìnhnào hay đối tượng nào sẽ được thực thi trên máy tính nào.

  15. DFD Level 1

  16. DFD Level 2 – Administration

  17. DFD Level 2 – Purchasal

  18. Ví dụ Precision Tools sells a line of high-quality woodworking tools. When customers place orders on the company’s Web site, the system checks to see if the items are in stock, issues a status message to the customer, and generates a shipping order to the warehouse, which fills the order. When the order is shipped, the customer is billed. The system also produces various reports. • Draw a context diagram for the order system • Draw DFD diagram 1 for the order system

  19. Identify Entities,Process,Data Stores & Data Flow • Data Flows • Order • In-Stock Request • Order Data • Status Data • Status Message • Shipping Order • Order Data • Invoice • Shipping Confirmation • Payment • Accounting Data • Accounts Receivable Data • Order Data • Inventory Reports • Entities • Customer • Warehouse • Accounting • Processes • 1.0 Check Status • 2.0 Issue Status Messages • 3.0 Generate Shipping Order • 4.0 Manage Accounts Receivable • 5.0 Produce Reports • Data Stores • D1 Pending Orders • D2 Accounts Receivable 1.0 2.0 3.0 4.0 5.0

  20. Context Diagram of Order System

  21. Level-0 of Order System

  22. Use case: Addministrator

  23. Flow Chart

  24. Entity-Relationship Diagram

  25. Chuẩn hóa dữ liệu • Dạng chuẩn 1 (1NF) • Dạng chuẩn 2 (2NF) • Dạng chuẩn 3 (3NF)

  26. Dạng chuẩn 1 (1NF)

  27. Dạng chuẩn 2(2FN)

  28. Dạng chuẩn 2(2FN)

  29. Dạng chuẩn 3(3NF)

  30. Chuẩn hóa 3FN

  31. Thiết kế cơ sở dữ liệu

  32. Thiết kế cơ sở dữ liệu chi tiết

  33. Thanks for your coming and attention!

More Related