Đáp án đúng: BYêu cầu phần mềm (Requirements) có thể được phân loại theo nhiều cách khác nhau. Phân loại phổ biến nhất bao gồm:
* Yêu cầu chức năng (Functional Requirements): Mô tả các chức năng mà hệ thống phải thực hiện. Ví dụ: "Người dùng có thể đăng nhập vào hệ thống", "Hệ thống phải tính toán tổng giá trị đơn hàng".
* Yêu cầu phi chức năng (Non-Functional Requirements): Mô tả các thuộc tính chất lượng của hệ thống, ví dụ như hiệu năng, độ tin cậy, bảo mật, khả năng sử dụng. Ví dụ: "Hệ thống phải phản hồi yêu cầu trong vòng 2 giây", "Hệ thống phải có khả năng xử lý 1000 người dùng đồng thời".
* Yêu cầu miền ứng dụng (Domain Requirements): Mô tả các yêu cầu đặc thù của lĩnh vực mà ứng dụng hoạt động. Các yêu cầu này thường liên quan đến các quy tắc nghiệp vụ, quy định pháp lý, hoặc tiêu chuẩn ngành. Ví dụ, trong lĩnh vực y tế, hệ thống cần tuân thủ các quy định về bảo mật thông tin bệnh nhân.
* Yêu cầu hệ thống (System Requirements): Mô tả các yêu cầu ở mức hệ thống, bao gồm cả phần cứng, phần mềm và các thành phần khác.
* Yêu cầu nghiệp vụ (Business Requirements): Mô tả các mục tiêu kinh doanh mà hệ thống cần đạt được.
Trong các phương án trên, phương án đầy đủ và chính xác nhất là "Chức năng, phi chức năng, yêu cầu miền ứng dụng" vì nó bao quát được các loại yêu cầu quan trọng nhất trong quá trình phân tích và đặc tả yêu cầu phần mềm. Phương án "Chức năng, phi chức năng, yêu cầu nghiệp vụ" cũng đúng một phần nhưng yêu cầu miền ứng dụng thường quan trọng hơn yêu cầu nghiệp vụ.
Phương án "Chức năng, phi chức năng" là không đầy đủ.
Phương án "Chức năng, phi chức năng, yêu cầu hệ thống" cũng không đầy đủ bằng phương án "Chức năng, phi chức năng, yêu cầu miền ứng dụng", vì Yêu cầu hệ thống thường liên quan đến kiến trúc và hạ tầng, hơn là phân loại yêu cầu ở mức khái niệm.
Do đó, đáp án chính xác nhất là: Chức năng, phi chức năng, yêu cầu miền ứng dụng.