Trắc nghiệm Công nghệ Phần mềm Bài: PHA ĐẶC TẢ 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à cầu nối giữa “cái gì” mà hệ thống cần làm (từ pha yêu cầu) và “cách thức” mà hệ thống sẽ được xây dựng (trong pha thiết kế và cài đặt). Pha đặc tả giúp chuyển đổi các yêu cầu tổng quát, đôi khi mơ hồ, thành một tập hợp các đặc tả chi tiết, chính xác và không mơ hồ, là nền tảng cho các giai đoạn phát triển sau này.
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 và tầm quan trọng của pha đặc tả, các hoạt động chính (làm rõ yêu cầu, mô hình hóa, tài liệu hóa), các thuộc tính của một đặc tả tốt (rõ ràng, đầy đủ, nhất quán, có thể kiểm chứng), các kỹ thuật và công cụ mô hình hóa (biểu đồ luồng dữ liệu DFD, biểu đồ thực thể-mối quan hệ ERD, các biểu đồ UML như Class Diagram, Sequence Diagram, State Machine Diagram), và lợi ích của việc có một tài liệu đặc tả chất lượng cao. Việc hiểu rõ pha đặc tả sẽ giúp sinh viên xây dựng các hệ thống phần mềm có cấu trúc vững chắc, dễ bảo trì và đáp ứng đúng nhu cầu.
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 ĐẶC TẢ
Câu 1.Mục đích chính của Pha Đặc tả (Specification Phase) trong phát triển phần mềm là gì?
A. Viết mã nguồn của hệ thống.
B. Triển khai phần mềm ra môi trường thực tế.
C. Thu thập yêu cầu từ người dùng cuối.
D. Chuyển đổi các yêu cầu đã thu thập thành một đặc tả chi tiết, rõ ràng và không mơ hồ.
Câu 2.Sự khác biệt chính giữa Pha Yêu cầu và Pha Đặc tả là gì?
A. Pha Yêu cầu là về “cách thức”, Pha Đặc tả là về “cái gì”.
B. Pha Yêu cầu chỉ dành cho người dùng, Pha Đặc tả dành cho nhà phát triển.
C. Pha Yêu cầu tạo ra code, Pha Đặc tả tạo ra tài liệu.
D. Pha Yêu cầu tập trung vào “cái gì” cần làm (what), Pha Đặc tả tập trung vào “cách thức” để thực hiện cái đó (how) ở mức độ trừu tượng.
Câu 3.Thuộc tính nào của đặc tả yêu cầu là quan trọng nhất để tránh hiểu lầm giữa các bên liên quan?
A. Tính đầy đủ (Completeness).
B. Tính nhất quán (Consistency).
C. Tính có thể truy vết (Traceability).
D. Tính không mơ hồ (Unambiguity).
Câu 4.Tài liệu nào là kết quả đầu ra chính và quan trọng nhất của Pha Đặc tả?
A. Kế hoạch quản lý dự án.
B. Báo cáo kiểm thử.
C. Mã nguồn chương trình.
D. Tài liệu Đặc tả Yêu cầu Phần mềm (Software Requirements Specification – SRS).
Câu 5.Mô hình hóa (Modeling) trong Pha Đặc tả nhằm mục đích gì?
A. Để làm cho phần mềm trông đẹp hơn.
B. Để tự động tạo ra mã nguồn.
C. Để chỉ kiểm thử các tính năng.
D. Để biểu diễn các yêu cầu và cấu trúc hệ thống một cách trực quan và dễ hiểu.
Câu 6.Biểu đồ nào sau đây thường được sử dụng trong pha đặc tả để mô tả các chức năng từ góc nhìn của người dùng?
A. Biểu đồ lớp (Class Diagram).
B. Biểu đồ trình tự (Sequence Diagram).
C. Biểu đồ trạng thái (State Diagram).
D. Biểu đồ trường hợp sử dụng (Use Case Diagram).
Câu 7.Nếu một yêu cầu chức năng đã được xác định ở pha yêu cầu (ví dụ: “Hệ thống cho phép người dùng đăng nhập”), pha đặc tả sẽ làm gì với yêu cầu đó?
A. Bỏ qua yêu cầu đó.
B. Trực tiếp viết mã cho chức năng đăng nhập.
C. Chỉ kiểm tra xem chức năng có lỗi không.
D. Chi tiết hóa nó thành các bước cụ thể, giao diện, luồng dữ liệu, và các điều kiện liên quan.
Câu 8.Lợi ích chính của việc có một tài liệu đặc tả yêu cầu rõ ràng và chi tiết là gì?
A. Tăng thời gian phát triển phần mềm.
B. Giảm sự cần thiết của kiểm thử.
C. Làm cho dự án phức tạp hơn.
D. Giảm rủi ro hiểu sai yêu cầu, tạo cơ sở vững chắc cho các giai đoạn thiết kế và cài đặt, và giảm chi phí sửa lỗi sau này.
Câu 9.Rủi ro lớn nhất nếu Pha Đặc tả bị bỏ qua hoặc làm kém chất lượng là gì?
A. Phần mềm sẽ chạy quá nhanh.
B. Chi phí bảo trì sẽ giảm.
C. Khách hàng sẽ hài lòng hơn.
D. Sản phẩm cuối cùng không đáp ứng được yêu cầu thực tế, dẫn đến làm lại tốn kém và thất bại dự án.
Câu 10.Tính “có thể kiểm chứng được” (Verifiable) của một yêu cầu đặc tả có nghĩa là gì?
A. Yêu cầu đó có thể được thay đổi dễ dàng.
B. Yêu cầu đó phải được viết bằng một ngôn ngữ cụ thể.
C. Yêu cầu đó phải được phê duyệt bởi khách hàng.
D. Có thể thiết kế một phương pháp hiệu quả về chi phí để kiểm tra xem hệ thống có đáp ứng yêu cầu đó hay không.
Câu 11.Phương pháp đặc tả hình thức (Formal Methods) có đặc điểm chính là gì?
A. Sử dụng ngôn ngữ tự nhiên để mô tả yêu cầu.
B. Không yêu cầu toán học hay logic.
C. Chỉ áp dụng cho các dự án nhỏ.
D. Sử dụng ký hiệu toán học và logic chặt chẽ để mô tả hệ thống, giúp loại bỏ sự mơ hồ.
Câu 12.Việc tạo bản mẫu (Prototyping) có thể hỗ trợ Pha Đặc tả như thế nào?
A. Thay thế hoàn toàn việc viết tài liệu.
B. Làm chậm quá trình phát triển.
C. Chỉ dùng để kiểm thử hiệu suất.
D. Cung cấp một phiên bản làm việc đơn giản để người dùng trải nghiệm và cung cấp phản hồi sớm, làm rõ yêu cầu.
Câu 13.Trong UML, biểu đồ nào dùng để mô tả sự tương tác giữa các đối tượng theo một trình tự thời gian cụ thể cho một kịch bản nhất định?
A. Biểu đồ lớp.
B. Biểu đồ hoạt động.
C. Biểu đồ thành phần.
D. Biểu đồ trình tự (Sequence Diagram).
Câu 14.Nếu tài liệu đặc tả có nhiều phần mâu thuẫn lẫn nhau, điều này vi phạm thuộc tính nào của đặc tả tốt?
A. Tính rõ ràng.
B. Tính đầy đủ.
C. Tính có thể kiểm chứng.
D. Tính nhất quán (Consistency).
Câu 15.Ai là nhóm đối tượng chính sẽ sử dụng tài liệu đặc tả như một tài liệu tham chiếu chính trong các giai đoạn tiếp theo của dự án?
A. Người dùng cuối.
B. Bộ phận Marketing.
C. Ban lãnh đạo công ty.
D. Các nhà thiết kế và lập trình viên.
Câu 16.Để đảm bảo tính “đầy đủ” (Completeness) của tài liệu đặc tả, nhà phân tích cần chú ý điều gì?
A. Chỉ bao gồm các yêu cầu chức năng.
B. Chỉ bao gồm các yêu cầu phi chức năng.
C. Viết càng nhiều dòng code càng tốt.
D. Đảm bảo rằng tất cả các chức năng, thuộc tính và ràng buộc quan trọng của hệ thống đều được mô tả.
Câu 17.Trong một dự án lớn, việc quản lý “sự thay đổi yêu cầu” (Requirements Change Management) là một phần của Pha Đặc tả hay hoạt động bảo vệ?
A. Chỉ pha đặc tả.
B. Hoàn toàn không liên quan.
C. Chỉ giai đoạn bảo trì.
D. Là một hoạt động bảo vệ diễn ra xuyên suốt vòng đời, bao gồm cả pha đặc tả.
Câu 18.Một đặc tả tốt phải là “non-ambiguous” có nghĩa là gì?
A. Nó có thể được hiểu theo nhiều cách khác nhau.
B. Nó không cần phải được người khác đọc.
C. Nó phải được viết bằng tiếng Anh.
D. Mỗi câu lệnh trong đặc tả chỉ có thể được diễn giải theo một cách duy nhất.
Câu 19.Nếu pha yêu cầu đưa ra yêu cầu “Hệ thống cần quản lý thông tin khách hàng”, pha đặc tả sẽ làm gì để chi tiết hóa?
A. Quyết định màu sắc giao diện.
B. Chọn ngôn ngữ lập trình.
C. Ước lượng chi phí dự án.
D. Đặc tả các trường dữ liệu cụ thể của khách hàng (tên, địa chỉ, số điện thoại), các quy tắc nghiệp vụ liên quan đến khách hàng, và các hành động mà hệ thống thực hiện với thông tin khách hàng.
Câu 20.So với chi phí sửa lỗi trong giai đoạn cài đặt, chi phí sửa lỗi do đặc tả yêu cầu mơ hồ hoặc sai sót sẽ như thế nào?
A. Thấp hơn nhiều.
B. Bằng nhau.
C. Không liên quan.
D. Cao hơn đáng kể (thường gấp 10-100 lần), vì phải quay lại các giai đoạn trước để sửa đổi.
Câu 21.Tại sao “traceability” (khả năng truy vết) lại quan trọng trong tài liệu đặc tả yêu cầu?
A. Để tìm ra người viết ra yêu cầu đó.
B. Để làm cho tài liệu dài hơn.
C. Để che giấu thông tin quan trọng.
D. Giúp liên kết các yêu cầu với thiết kế, mã nguồn, kiểm thử và các yêu cầu khác, đảm bảo tính nhất quán và khả năng quản lý thay đổi.
Câu 22.Điều nào sau đây **KHÔNG** phải là đặc điểm của một tài liệu đặc tả tốt?
A. Rõ ràng và ngắn gọn.
B. Có thể kiểm chứng.
C. Nhất quán và đầy đủ.
D. Luôn luôn cố định và không bao giờ được phép thay đổi.
Câu 23.Mô hình kiến trúc phần mềm nào thường được quyết định và đặc tả ở cuối pha đặc tả và đầu pha thiết kế?
A. Mô hình Client-Server.
B. Mô hình Layered.
C. Mô hình Microservices.
D. Tất cả các mô hình trên (tùy thuộc vào yêu cầu và bối cảnh dự án).
Câu 24.Trong UML, biểu đồ nào dùng để mô tả các thành phần cấu trúc của hệ thống và mối quan hệ tĩnh giữa chúng?
A. Biểu đồ hoạt động.
B. Biểu đồ trình tự.
C. Biểu đồ trường hợp sử dụng.
D. Biểu đồ lớp (Class Diagram).
Câu 25.Công cụ CASE (Computer-Aided Software Engineering) hỗ trợ Pha Đặc tả như thế nào?
A. Tự động viết tất cả mã nguồn.
B. Chỉ giúp in tài liệu.
C. Chỉ dùng để kiểm thử phần mềm.
D. Cung cấp các công cụ để tạo, quản lý và kiểm tra các mô hình và tài liệu đặc tả, đảm bảo tính nhất quán và đầy đủ.v