Câu 12: Phân loại các yêu cầu phần mềm? Cho ví dụ minh họa

Màu nền
Font chữ
Font size
Chiều cao dòng

Câu 12: Phân loại các yêu cầu phần mềm? Cho ví dụ minh họa     

- Yêu cầu (Requirement) là gì ? : là một phát biểu về một dịch vụ mà hệ thống phải cung cấp, cũng có thể là 1 dàng buộc mà hệ thống hải tuân theo, hay cũng có thể là mục tiêu mà hệ thống phải đạt được.

- Phát biểu theo mức độ trừu tượng giảm dần, có hai mức độ

            + yêu cầu người dùng                                                                                                        

            + yêu cầu hệ thống

- Để phát biểu yêu cầu ta dùng một số công cụ để phát biểu:

            + ngôn ngữ tự nhiên

            + ngôn ngữ tự nhiên có cấu trúc

            + bảng biểu

            + ngôn ngữ thiết kế

            + ngôn ngữ toán học (đặc tả toán học)

=> Phân loại yêu cầu: + yêu cầu người dùng

                                       + yêu cầu hệ thống (yêu cầu chức năng, phi chức năng, yêu cầu miền).

* Yêu cầu người dùng: là những yêu cầu được phát biểu bằng ngôn ngữ tự nhiên hoặc các bảng biểu đơn giản về những dịch vụ mà hệ thống sẽ cung cấp, những ràng buộc trong quá trình vận hành và phát triển hệ thống và các mục tiêu mà hệ thống phải đạt được

+ tài liệu mô tả yêu cầu ngươi dùng nên nói rõ những yêu cầu nào là những yêu cầu chức năng, yêu cầu nào là phi chức năng để người đọc có thể hiểu được chúng mà không cần phải có những kiến thức về tin học

- Ngôn ngữ tự nhiên có những hạn chế

+ không rõ ràng: rất khó tạo tài liệu chính xác mà lại không phức tạp gây khó hiểu cho người dùng.

+ trộn lẫn giữa các yêu cầu: các yêu cầu được phát biểu ở các mức độ trừu tượng khác nhau.

+ lộn xộn giữa các yêu cầu: 1 phát biểu chứa cả các yêu cầu chức năng và phi chức năng

- Khắc phục hạn chế: + đưa ra định dạng chuẩn và áp cho tất cả các yêu cầu

            + sử dụng ngôn ngữ thống nhất

            + đánh dấu những phần yêu cầu quan trọng

            + tránh sử dụng các từ ngữ chuyên ngành kỹ thuật

VD: phần mềm nên cung cấp các công cụ để biểu diễn và truy cập tới các file bên ngoài được tạo bởi công cụ khác nhau

* Yêu cầu hệ thống: là các mô tả chi tiết về những gì hệ thống sẽ làm. Nó thiết lập lên các chức năng các ràng buộc, các mục tiêu của hệ thống một cách chi tiết. Tài liệu yêu cầu hệ thống đôi khi còn gọi là bản đặc tả chức năng, tài liệu này phải chính xác và nó có thể là một phần của người mua và bán, người đọc yêu cầu hệ thống cần biết chính xác về những gì hệ thống làm việc, vì học quan tâm đến cách thức hệ thống thoongs hỗ trợ cho các tiến trình làm việc đó.

* Yêu cầu chức năng: là yêu cầu đề cập trực tiếp tới chức năng hệ thống. Về nguyên tắc hệ thống phải thỏa mãn tất cả các yêu cầu chức năng và phải đảm bảo rằng trong tài liệu phải định nghĩa đầy đủ và thống nhất các yêu cầu chức năng không mâu thuẫn nhau

Vd:+ người sử dụng có thể tìm kiếm các tài lieu dựa trên từ khóa chứa trong tài liệu hoặc tên tài liệu

+ hệ thống cần cung cấp cho ngươi sử dụng phương tiện hiển thị dễ dàng các tài liệu từ CSDL

+ hệ thống phải đọc dc các định dạng khác nhau của tài liệu: văn bản (text), pdf, .doc, Bảng tính Excel

Ví dụ: các yêu cầu chức năng của LIBSYS

- Người dụng có thể tìm kiếm trên toàn bộ các CSDL hoặc một tập nhỏ các CSDL.

- Hệ thống sẽ cung cấp các hiển thị phù hợp cho người dùng đọc các tài liệu trong kho tài liệu.

- Mọi đơn đặt hàng phải có một định danh duy nhất (ORDER_ID) mà người dùng có thể copy đến vùng lưu trữ thường trực của tài khoản.

* Yêu cầu phi chức năng: là yêu cầu không đề cập trực tiếp tới các chức năng của hệ thống, chúng có thể liên quan đến các thuộc tính của hệ thống như độ tin cậy, thời gian hệ thống, không gian lưu trữ, … chúng cũng có thể định nghĩa các ràng buộc lên chức năng của hệ thống như khả năng của thiết bị vào ra, … Một số yêu cầu phi chức năng còn liên quan đến quy trình xây dựng như: chuẩn hệ thống, các công cụ test, ngôn ngữ lập trình …

- Các yêu cầu phi chức năng có thể nảy sinh do:+ các yêu cầu về sản phẩm phần mềm

            + các chính sách luật lệ của tổ chức

            + do các tác nhân bên ngoài hay môi trường hệ thống

- Phân loại các yêu cầu phi chức năng

 Chỗ này có hình: cau12-c3

+ Về nguyên tắc hệ thống không nhất thiết phải thoản mãn tất cả yêu cầu phi chức năng mà tùy thuộc vào từng trường hợp cụ thể.

+ Các yêu cầu phi chức năng có thể làm hạn chế các yêu cầu chức năng, nhưng nếu chúng không được thỏa mãn thì hệ thống có thể không được sử dụng hoặc không tiện dụng.

+ Nhìn chung chúng ta rất khó đánh giá yêu cầu phi chức năng vì người dùng đánh giá rất chung chung và mập mờ gây khó khăn cho người thiết kế phân tích hệ thống, do đó trong tài liệu đặc tả yêu cầu người ta thường bổ sung các mục tiêu của hệ thống, mục tiêu rất quan trọng đối với người phát triển hệ thống vì chúng truyền tải được mong muốn của người dùng.

+ Bất cứ khi nào có thể chúng ta nên chuyển các yêu cầu phi chức năng thành các phát biểu có định lượng để ta có thể đánh giá chúng một cách khách quan

Vd: + yêu cầu về sản phẩm: pm chỉ nên yêu cầu tối đa 256MB bộ nhớ

       + yêu cầu về tổ chức:tiến trình phát triển phải đáp ứng chuẩn DO178

        + yêu cầu bên ngoài:ht ko dc để lộ thông tin cá nhân của khách hàng

* Yêu cầu miền: được nảy sinh từ miền ứng dụng của hệ thống hơn là từ các yêu cầu người dùng, nó phản ánh các thuộc tính các ràng buộc của miền ứng dụng lên hệ thống, yêu cầu miền có thể là yêu cầu chức năng hoặc phi chức năng. Nếu các yêu cầu này không được thỏa mãn thì hệ thống sẽ không thể sử dụng được.

- Một số vấn đề với yêu cầu miền ứng dụng:

+ khó hiểu đối với người phát triển hệ thống

+ người dùng/chuyen gia rất quan tâm tới các yêu cầu này dẫn tới việc:

            thường bỏ quên

            không có ý nghĩ mô tả làm sáng tỏ chúng

VD Yêu cầu miền ứng dụng của hệ thống lái tàu tự động

+ sự giảm tốc độ của tàu được tính theo công thức

            D(train) = D(contro) + D(gradient)

Trong đó D(gradient) = 9,18(ms2) * compensaled gradient

Bạn đang đọc truyện trên: Truyen2U.Pro