Bài giảng Công nghệ phần mềm nâng cao - Phạm Ngọc Hùng - Đặc tả yêu cầu phần mềm
Outline
Mục tiêu và yêu cầu
Phân tích yêu cầu
Các phương pháp đặc tả
Đặc tả phi hình thức
Đặc tả hình thức
Các công cụ
Chuẩn tài liệu đặc tả
Tóm tắt nội dung Bài giảng Công nghệ phần mềm nâng cao - Phạm Ngọc Hùng - Đặc tả yêu cầu phần mềm, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Đặc Tả Yêu Cầu Phần Mềm Công Nghệ Phần Mềm Nâng Cao Pham Ngoc Hung, Coltech, VNU, 2009 2 Outline Mục tiêu và yêu cầu Phân tích yêu cầu Các phương pháp đặc tả Đặc tả phi hình thức Đặc tả hình thức Các công cụ Chuẩn tài liệu đặc tả Pham Ngoc Hung, Coltech, VNU, 2009 3 Mục tiêu và Yêu cầu của PM Mục tiêu: cái cần hướng tới Yêu cầu: cái cụ thể mà có thể kiểm tra được Yêu cầu chức năng mô tả một chức năng (dịch vụ) cụ thể mà phần mềm cần cung cấp Yêu cầu phi chức năng Các ràng buộc về chất lượng, về môi trường, chuẩn sử dụng, qui trình phát triển phần mềm Yêu cầu Mục tiêu Pham Ngoc Hung, Coltech, VNU, 2009 4 Mục tiêu và Yêu cầu của PM (cont.) Yêu cầu về sản phẩm Tốc độ, độ tin cậy, bộ nhớ, giao diện, qui trình tác nghiệp,… Yêu cầu về tiến trình phát triển các chuẩn, phương pháp thiết kế, ngôn ngữ lập trình... Yêu cầu ngoại lai Về chi phí, về thời gian, về bản quyền, … Pham Ngoc Hung, Coltech, VNU, 2009 5 Tiến trình phân tích yêu cầu Pham Ngoc Hung, Coltech, VNU, 2009 6 Thảo luận Có những phương pháp thu thập yêu cầu nào? Những khó khăn của thu thập và phân tích yêu cầu? Đặc tả yêu cầu phần mềm Đặc tả các yêu cầu phần mềm là công việc xây dựng các tài liệu đặc tả, trong đó có thể sử dụng tới các công cụ như: mô hình hóa, mô hình toán học hình thức (a formal mathematical model) tập hợp các kịch bản sử dụng, các nguyên mẫu hoặc bất kỳ một tổ hợp các công cụ nói trên Chất lượng của hồ sơ đặc tả đánh giá qua các tiêu thức Tính rõ ràng, chính xác Tính phù hợp Tính đầy đủ, hoàn thiện Pham Ngoc Hung, Coltech, VNU, 2009 7 Đặc tả yêu cầu phần mềm (cont.) Các thành phần của hồ sơ đặc tả Đặc tả phi hình thức (Informal specifications) được viết bằng ngôn ngữ tự nhiên Đặc tả hình thức (Formal specifications) được viết bằng tập các ký pháp có các quy định về cú pháp (syntax) và ý nghĩa (sematic) rất chặt chẽ Đặc tả vận hành chức năng (Operational specifications) mô tả các hoạt động của hệ thống phần mềm sẽ xây dựng Đặc tả mô tả (Descriptive specifications) đặc tả các đặc tính đặc trưng của phần mềm Pham Ngoc Hung, Coltech, VNU, 2009 8 Đặc tả yêu cầu phần mềm (cont.) Đặc tả chức năng (Operational Specifications): thông thường khi đặc tả các chức năng của phần mềm người ta sử dụng các công cụ tiêu biểu sau: Biểu đồ phân rã chức năng (Functional Decomposition Diagram – FDD) Biểu đồ luồng dữ liệu (Data Flow Diagrams-DFD) Máy trạng thái hữu hạn (Finite State Machines Automata, LTS, Kripke structures, … Mạng Petri (Petri nets) … Pham Ngoc Hung, Coltech, VNU, 2009 9 Đặc tả yêu cầu phần mềm (cont.) Đặc tả mô tả (Descriptive Specifications) Biểu đồ thực thể liên kết (Entity- Relationship Diagrams - ERD) Đặc tả Logic (Logic Specifications) Đặc tả đại số (Algebraic Specifications) Pham Ngoc Hung, Coltech, VNU, 2009 10 Functional Decomposition Diagram - FDD Xác định phạm vi của hệ thống Phân hoạch chức năng Tạo nền tảng cho thiết kế kiến trúc hệ thống Pham Ngoc Hung, Coltech, VNU, 2009 11 FDD: Ví dụ Pham Ngoc Hung, Coltech, VNU, 2009 12 Pham Ngoc Hung, Coltech, VNU, 2009 13 Data Flow Diagrams - DFD Hệ thống (System): tập hợp các dữ liệu (data) được xử lý bằng các chức năng tương ứng (functions) Các ký pháp sử dụng: Thể hiện các chức năng (functions) Thể hiện luồng dữ liệu Kho dữ liệu Vào ra dữ liệu và tương tác giữa hệ thống và người sử dụng Pham Ngoc Hung, Coltech, VNU, 2009 14 DFD của HT bán vé Biểu đồ ngữ cảnh Hệ thống mô tả bằng một tiến trình Không có kho dữ liệu Liệt kê các tác nhân ngoài Khách hàng đặt vé vé Hệ thống bán vé Pham Ngoc Hung, Coltech, VNU, 2009 15 DFD mức 1 15 Nhập thông tin Kiểm tra giờ tầu ĐÆt chç kh¸ch hµng b¶ng giê tÇu chç ®· ®Æt Ph¸t hµnh vÐ b¶ng gi¸ vÐ kh¸ch hµng Pham Ngoc Hung, Coltech, VNU, 2009 16 Entity-Relationship Diagrams - ERD Mô hình khái niệm cho phép đặc tả các yêu cầu logic của hệ thống, thường được sử dụng trong các hệ thống dữ liệu lớn ER Model Thực thể Quan hệ Thuộc tính Biểu đồ thực thể Bookstore Orders Books 1 N Pham Ngoc Hung, Coltech, VNU, 2009 17 Ví dụ ERD mô tả thư viện Thảo luận Các công cụ thường dùng hiện nay để đặc tả yêu cầu? Pham Ngoc Hung, Coltech, VNU, 2009 18 Formal Methods hình vẽ + biểu thức đặc tả bằng công thức toán học đặc tả bằng sơ đồ đặc tả bằng ngôn ngữ đặc tả Ưu điểm: tính chính xác (duy nhất) của định nghĩa (đặc tả) Nhược điểm: khó hiểu, mất t. gian, khó đặc tả yêu cầu phi chức năng Pham Ngoc Hung, Coltech, VNU, 2009 19 " không ai biết chắc chắn phải làm gì khi chưa có đặc tả" Ví dụ đặc tả bằng toán học Pham Ngoc Hung, Coltech, VNU, 2009 20 ::= | ::= {} ::= . {} | . {} E | E ::= | <unsigned integer> ::= + | - Pascal number syntax Ví dụ đặc tả bằng sơ đồ Pham Ngoc Hung, Coltech, VNU, 2009 21 digit unsigned integer digit. E + - unsigned integerunsigned integer unsigned number Finite State Machines (FSM) M = ‹Q, Σ, δ, q0› Q : Finite set of states, Σ : Set of actions, q0 : Initial state δ Q x Σ x Q : A deterministic transition relation A run/trace of M is an action sequence a1a2 ... an s.t. there exists a state sequence s0s1 ...sn (s0 = q0) for 0 ≤ i < n, (si, ai+1, si+1) δ L(M): Language of M Pham Ngoc Hung, Coltech, VNU, 2009 22 0 1 2 in send ack Đặc tả các yêu cầu phần mềm bằng FSM Xem xét ví dụ về thư viện với các giao dịch như sau: Mượn sách/Trả sách Thêm đầu sách/Loại bỏ đầu sách Liệt kê danh sách các đầu sách theo tên tác giả hay theo chủ đề Tìm kiếm sách theo các yêu cầu của người mượn Tìm kiếm sách quá hạn trả, . . . Pham Ngoc Hung, Coltech, VNU, 2009 23 Đặc tả các yêu cầu phần mềm bằng FSM (cont.) Các yêu cầu đặc biệt của thư viện: Độc giả không được mượn quá một số lượng sách nhất định, trong một thời gian nhất định Một số sách không được mượn về Một số người không được mượn một số loại sách nào đó, . . . Pham Ngoc Hung, Coltech, VNU, 2009 24 Các đối tượng – Tên sách Mã quyển Nhân viên phục vụ Người mượn Chúng ta cần có tập hợp (danh sách) các tiêu đề sách, danh sách các tác giả cho từng quyển sách, danh sách các chủ đề liên quan của các quyển sách Ta có tập hợp các sách (mỗi đầu sách có thể có nhiều quyển sách trong thư viện). Mỗi quyển sách có thể có 1 trong 5 trạng thái sau: (AV) - Available được phép mượn, (CO) - (BR) - đã mượn (Check Out; Borrow), (L): Last, (R): Remove Pham Ngoc Hung, Coltech, VNU, 2009 25 Đặc tả các yêu cầu phần mềm bằng FSM (cont.) FSM đặc tả các trạng thái Pham Ngoc Hung, Coltech, VNU, 2009 26 CO AV BR L R Pham Ngoc Hung, Coltech, VNU, 2009 27 Tài liệu yêu cầu Chỉ mô tả về chức năng, ràng buộc Không mô tả về phương pháp cài đặt Phải dễ thay đổi (có cấu trúc) khó xác định được đầy đủ chính xác ngay phải qua nhiều bước xét duyệt lại Tài liệu cần có: Tính rõ ràng, chính xác Tính phù hợp Tính đầy đủ, hoàn thiện Định dạng của tài liệu yêu cầu Software Requirement Specification - SRS Chuẩn IEEE 830-1984 1. Giới thiệu 2. Mô tả chung 3. Yêu cầu chi tiết 4. Phụ lục (nếu có) Pham Ngoc Hung, Coltech, VNU, 2009 28 1. Giới thiệu 1.1 Mục đích 1.2 Phạm vi 1.3 Định nghĩa (định nghĩa, từ viết tắt) 1.4 Tài liệu tham khảo 1.5 Mô tả cấu trúc tài liệu Pham Ngoc Hung, Coltech, VNU, 2009 29 2. Mô tả chung 2.1 Tổng quan về sản phẩm 2.2 Chức năng sản phẩm 2.3 Đối tượng người dùng 2.4 Ràng buộc tổng thể 2.5 Giả thiết và sự lệ thuộc Pham Ngoc Hung, Coltech, VNU, 2009 30 3. Yêu cầu chi tiết 3.1 Yêu cầu chức năng 3.1.1 Yêu cầu chức năng 1 3.1.1.1 Giới thiệu 3.1.1.2 Dữ liệu vào 3.1.1.3 Xử lí 3.1.1.4. Kết quả 3.1.2 Yêu cầu chức năng 2 … 3.1.n Yêu cầu chức năng n … Pham Ngoc Hung, Coltech, VNU, 2009 31 3. Yêu cầu chi tiết (cont.) 3.2 Yêu cầu giao diện ngoài 3.2.1 Giao diện người dùng 3.2.2 Giao diện phần cứng 3.2.3 Giao diện phần mềm 3.2.4 Giao diện truyền thông 3.3 Yêu cầu hiệu suất 3.4 Ràng buộc thiết kế 3.5 Thuộc tính 3.5.1 Tính bảo mật 3.5.2 Tính bảo trì 3.6 Các yêu cầu khác Pham Ngoc Hung, Coltech, VNU, 2009 32 Pham Ngoc Hung, Coltech, VNU, 2009 33 Tổng kết Mục tiêu và yêu cầu Phân tích yêu cầu Các phương pháp đặc tả Đặc tả phi hình thức Đặc tả hình thức Các công cụ Chuẩn tài liệu đặc tả IEEE 830-1984 Pham Ngoc Hung, Coltech, VNU, 2009 34 Thông báo Các nhóm tiến hành phân tích và đặc tả yêu cầu Tiến hành thảo luận với nhóm đề xuất để thống nhất các yêu cầu (chú ý các yêu cầu phi chức năng) Đặc tả yêu cầu theo chuẩn IEEE 830-1984 Nộp tài liệu trước 17h ngày 15/01/2010
File đính kèm:
- Bài giảng Công nghệ phần mềm nâng cao - Phạm Ngọc Hùng - Đặc tả yêu cầu phần mềm.pdf