Trắc nghiệm Công nghệ Phần mềm Bài: PHA YÊU CẦU là một trong những đề thi thuộc Chương 2: CÁC PHA PHÁT TRIỂN PHẦN MỀM trong học phần Công nghệ Phần mềm chuyên ngành Công Nghệ Thông Tin cấp độ Đại học. Đây là phần kiến thức nền tảng và cực kỳ quan trọng, là bước khởi đầu cho mọi dự án phát triển phần mềm, nơi xác định rõ “cái gì” mà hệ thống cần phải làm để đáp ứng nhu cầu của người dùng và các bên liên quan.
Trong bài học này, người học cần nắm vững các nội dung cốt lõi như: mục đích của pha yêu cầu, các hoạt động chính (thu thập, phân tích, đặc tả, thẩm định, quản lý yêu cầu), sự khác biệt giữa yêu cầu chức năng và phi chức năng, các kỹ thuật thu thập yêu cầu (phỏng vấn, kịch bản, khảo sát), tầm quan trọng của việc có yêu cầu rõ ràng và đầy đủ, và những thách thức thường gặp trong quá trình này. Việc hiểu rõ pha yêu cầu sẽ giúp sinh viên tránh được những sai lầm lớn, tiết kiệm thời gian và chi phí cho các giai đoạn phát triển sau này.
Hãy cùng Dethitracnghiem.vn tìm hiểu về đề thi này và tham gia làm kiểm tra ngay lập tức!
Trắc nghiệm Công nghệ Phần mềm Bài: PHA YÊU CẦU
Câu 1.Mục đích chính của Pha Yêu cầu (Requirements Phase) trong phát triển phần mềm là gì?
A. Viết mã nguồn chương trình.
B. Thiết kế giao diện người dùng.
C. Triển khai phần mềm lên máy chủ.
D. Thu thập, phân tích và đặc tả “cái gì” mà hệ thống cần làm.
Câu 2.Hoạt động nào sau đây **không** phải là một phần của Pha Yêu cầu?
A. Thu thập yêu cầu (Elicitation).
B. Phân tích yêu cầu (Analysis).
C. Đặc tả yêu cầu (Specification).
D. Cài đặt mã nguồn (Implementation).
Câu 3.Yêu cầu chức năng (Functional Requirement) mô tả điều gì?
A. Phần mềm phải chạy trên những thiết bị nào.
B. Phần mềm phải có khả năng bảo mật cao.
C. Phần mềm phải dễ sử dụng.
D. Các chức năng và dịch vụ cụ thể mà hệ thống phải cung cấp cho người dùng.
Câu 4.Yêu cầu phi chức năng (Non-functional Requirement) mô tả điều gì?
A. Các tác vụ chính mà hệ thống thực hiện.
B. Các tính năng mới sẽ được thêm vào trong tương lai.
C. Các module của hệ thống.
D. Các thuộc tính chất lượng của hệ thống như hiệu suất, độ tin cậy, bảo mật, khả năng sử dụng, v.v.
Câu 5.Kỹ thuật nào giúp thu thập yêu cầu bằng cách tạo ra các kịch bản sử dụng (User Stories) hoặc câu chuyện về cách người dùng tương tác với hệ thống?
A. Phỏng vấn trực tiếp.
B. Khảo sát bảng hỏi.
C. Quan sát.
D. Kịch bản sử dụng (Use Case Scenario).
Câu 6.Ai là người đóng vai trò quan trọng nhất trong việc cung cấp thông tin và xác nhận các yêu cầu trong Pha Yêu cầu?
A. Lập trình viên.
B. Người kiểm thử.
C. Quản lý dự án.
D. Các bên liên quan (Stakeholders), đặc biệt là người dùng cuối và khách hàng.
Câu 7.Nếu một yêu cầu nói rằng “Hệ thống phải có thời gian phản hồi dưới 2 giây cho 95% các yêu cầu của người dùng”, đây là loại yêu cầu nào?
A. Yêu cầu chức năng.
B. Yêu cầu bảo mật.
C. Yêu cầu khả năng sử dụng.
D. Yêu cầu hiệu suất (Performance Requirement).
Câu 8.Một tài liệu Đặc tả Yêu cầu Phần mềm (Software Requirements Specification – SRS) có mục đích chính là gì?
A. Để mô tả cách viết mã nguồn.
B. Để liệt kê các lỗi đã tìm thấy.
C. Để lập kế hoạch tài chính cho dự án.
D. Đặc tả một cách rõ ràng, đầy đủ và không mơ hồ tất cả các yêu cầu của hệ thống.
Câu 9.Hoạt động “Thẩm định yêu cầu” (Requirements Validation) nhằm mục đích gì?
A. Để tìm kiếm lỗi cú pháp trong tài liệu.
B. Để xác định yêu cầu nào cần được ưu tiên.
C. Để thêm các yêu cầu mới vào dự án.
D. Để đảm bảo rằng các yêu cầu đã được thu thập và đặc tả là chính xác, đầy đủ, nhất quán và đáp ứng được nhu cầu thực sự.
Câu 10.Nguyên nhân phổ biến nhất dẫn đến thất bại của các dự án phần mềm thường liên quan đến giai đoạn nào?
A. Giai đoạn lập trình.
B. Giai đoạn kiểm thử.
C. Giai đoạn bảo trì.
D. Giai đoạn thu thập và phân tích yêu cầu yếu kém.
Câu 11.Kỹ thuật nào giúp người phân tích yêu cầu hiểu sâu hơn về môi trường làm việc và quy trình nghiệp vụ của người dùng bằng cách trực tiếp quan sát họ thực hiện công việc?
A. Phỏng vấn.
B. Khảo sát.
C. Động não (Brainstorming).
D. Quan sát (Observation).
Câu 12.Khi các yêu cầu từ các bên liên quan khác nhau mâu thuẫn lẫn nhau, đây là một thách thức của pha yêu cầu liên quan đến vấn đề gì?
A. Thiếu công cụ thu thập yêu cầu.
B. Yêu cầu phi chức năng không rõ ràng.
C. Quá nhiều tài liệu.
D. Xung đột yêu cầu (Conflicting Requirements).
Câu 13.Một “User Story” (Câu chuyện người dùng) thường được viết theo định dạng nào?
A. “Hệ thống phải làm X.”
B. “Với vai trò là [loại người dùng], tôi muốn [chức năng] để [lợi ích].”
C. “Đảm bảo rằng tốc độ phản hồi là dưới 1 giây.”
D. “Với vai trò là [loại người dùng], tôi muốn [chức năng] để [lợi ích].” (Ví dụ: “Với vai trò là khách hàng, tôi muốn thêm sản phẩm vào giỏ hàng để có thể mua sắm tiện lợi.”)
Câu 14.Phát biểu nào sau đây **không đúng** về yêu cầu của phần mềm?
A. Yêu cầu là nền tảng cho các giai đoạn phát triển sau.
B. Yêu cầu có thể thay đổi trong suốt vòng đời dự án.
C. Yêu cầu cần phải được tài liệu hóa rõ ràng.
D. Tất cả các yêu cầu phải được thu thập đầy đủ ở giai đoạn đầu và không bao giờ được thay đổi.
Câu 15.Khái niệm “Tài liệu hóa yêu cầu” (Requirements Documentation) có tầm quan trọng gì?
A. Chỉ để chứng minh đã hoàn thành công việc.
B. Làm tăng sự phức tạp của dự án.
C. Chỉ dành cho người quản lý dự án.
D. Cung cấp một cơ sở rõ ràng, thống nhất cho việc phát triển, kiểm thử và quản lý dự án.
Câu 16.Kỹ thuật nào có thể được sử dụng để ưu tiên các yêu cầu dựa trên giá trị kinh doanh, độ phức tạp hoặc rủi ro?
A. Phỏng vấn cá nhân.
B. Kỹ thuật động não.
C. Kỹ thuật quan sát.
D. Phân tích MoSCoW (Must-have, Should-have, Could-have, Won’t-have).
Câu 17.Nếu một hệ thống cần phải hoạt động liên tục 24/7 với thời gian ngừng hoạt động tối thiểu, đây là một yêu cầu phi chức năng thuộc loại nào?
A. Yêu cầu hiệu suất.
B. Yêu cầu bảo mật.
C. Yêu cầu khả năng sử dụng.
D. Yêu cầu độ tin cậy/khả dụng (Reliability/Availability Requirement).
Câu 18.Khi một nhà phân tích sử dụng “Prototype” (Bản mẫu) trong pha yêu cầu, mục đích chính là gì?
A. Để kiểm thử toàn bộ hệ thống.
B. Để triển khai sản phẩm cuối cùng.
C. Để viết mã nguồn đầy đủ.
D. Để làm rõ yêu cầu, thu thập phản hồi sớm từ người dùng và giảm rủi ro hiểu sai.
Câu 19.Một yêu cầu nói rằng “Chỉ người dùng đã xác thực mới có thể truy cập vào dữ liệu khách hàng.” Đây là loại yêu cầu nào?
A. Yêu cầu hiệu suất.
B. Yêu cầu khả năng mở rộng.
C. Yêu cầu khả năng sử dụng.
D. Yêu cầu bảo mật (Security Requirement).
Câu 20.Phương pháp “JAD (Joint Application Development) Session” trong thu thập yêu cầu là gì?
A. Một cuộc họp bí mật với quản lý.
B. Một cuộc phỏng vấn riêng lẻ với từng người dùng.
C. Một phiên làm việc mà không có tài liệu.
D. Một buổi làm việc tập trung, có cấu trúc, bao gồm tất cả các bên liên quan để cùng nhau định nghĩa yêu cầu.
Câu 21.Chi phí để sửa một lỗi do yêu cầu bị hiểu sai hoặc không đầy đủ sẽ tăng lên như thế nào nếu lỗi đó được phát hiện ở giai đoạn kiểm thử thay vì pha yêu cầu?
A. Không thay đổi.
B. Giảm đi đáng kể.
C. Không thể xác định.
D. Tăng lên theo cấp số nhân (gấp 10-100 lần).
Câu 22.Vấn đề “Scope Creep” (Phạm vi trượt) trong quản lý yêu cầu là gì?
A. Khách hàng không bao giờ thay đổi yêu cầu.
B. Yêu cầu được đặc tả quá chi tiết.
C. Quá ít yêu cầu được thu thập.
D. Việc thêm liên tục các tính năng hoặc yêu cầu mới vào dự án mà không có sự quản lý hoặc bù đắp thời gian/ngân sách.
Câu 23.Điều gì giúp giảm thiểu rủi ro “Scope Creep” trong pha yêu cầu?
A. Bắt đầu lập trình ngay lập tức.
B. Không bao giờ giao tiếp với khách hàng.
C. Từ chối mọi yêu cầu mới.
D. Quản lý yêu cầu chặt chẽ, sử dụng quy trình thay đổi yêu cầu chính thức.
Câu 24.Trong ngữ cảnh của yêu cầu, “Tính nhất quán” (Consistency) nghĩa là gì?
A. Tất cả các yêu cầu đều giống nhau.
B. Yêu cầu không bao giờ thay đổi.
C. Yêu cầu được viết bằng một ngôn ngữ duy nhất.
D. Các yêu cầu không mâu thuẫn lẫn nhau và tuân thủ các quy tắc đã định.
Câu 25.Mục tiêu của việc phân tích khả năng thực thi (Feasibility Analysis) trong pha yêu cầu là gì?
A. Để tìm ra người sẽ viết mã nguồn.
B. Để đánh giá tốc độ của phần mềm.
C. Để xác định chi phí bảo trì.
D. Để đánh giá liệu hệ thống có thể được xây dựng với các công nghệ, nguồn lực và ngân sách hiện có hay không.