1. Trong quản lý dự án phần mềm, `scope creep` (phạm vi dự án bị mở rộng không kiểm soát) gây ra tác hại gì?
A. Giúp dự án linh hoạt và đáp ứng tốt hơn yêu cầu của khách hàng.
B. Làm tăng chi phí, kéo dài thời gian và có thể ảnh hưởng tiêu cực đến chất lượng dự án.
C. Không gây ra tác hại đáng kể nếu được quản lý tốt.
D. Giúp nhóm dự án học hỏi và phát triển kỹ năng mới.
2. Phương pháp quản lý dự án Kanban tập trung vào điều gì?
A. Lập kế hoạch chi tiết cho toàn bộ dự án từ đầu.
B. Quản lý luồng công việc và giới hạn công việc đang thực hiện (Work in Progress - WIP).
C. Chia dự án thành các sprint ngắn và lặp đi lặp lại.
D. Tạo ra tài liệu chi tiết cho mọi giai đoạn của dự án.
3. Trong quản lý chất lượng phần mềm, `defect` (lỗi) được định nghĩa là gì?
A. Bất kỳ sự chậm trễ nào trong tiến độ dự án.
B. Sự khác biệt giữa kết quả mong đợi và kết quả thực tế của phần mềm.
C. Chi phí phát sinh vượt quá ngân sách dự án.
D. Bất kỳ thay đổi nào so với kế hoạch dự án ban đầu.
4. Trong Agile, `velocity` (vận tốc) được dùng để đo lường điều gì?
A. Tốc độ phản hồi của ứng dụng.
B. Lượng công việc mà nhóm phát triển có thể hoàn thành trong một sprint.
C. Số lượng lỗi phát hiện được trong một sprint.
D. Thời gian trung bình để hoàn thành một user story.
5. Rủi ro trong dự án phần mềm nên được quản lý như thế nào?
A. Bỏ qua rủi ro nhỏ để tập trung vào tiến độ dự án.
B. Chỉ xử lý rủi ro khi chúng đã xảy ra.
C. Xác định, đánh giá, lên kế hoạch ứng phó và theo dõi rủi ro một cách chủ động.
D. Chuyển hoàn toàn trách nhiệm quản lý rủi ro cho khách hàng.
6. Phương pháp Scrum trong Agile sử dụng khái niệm `Sprint` để chỉ điều gì?
A. Cuộc họp hàng ngày của nhóm phát triển.
B. Khoảng thời gian cố định (thường từ 1-4 tuần) để hoàn thành một phần công việc cụ thể và có thể bàn giao được.
C. Bảng theo dõi tiến độ công việc của dự án.
D. Quy trình kiểm thử phần mềm.
7. Trong quản lý dự án, `change request` (yêu cầu thay đổi) phát sinh khi nào?
A. Khi dự án đã hoàn thành và bàn giao.
B. Khi có bất kỳ sự thay đổi nào so với kế hoạch ban đầu, phạm vi, yêu cầu hoặc bất kỳ yếu tố nào của dự án.
C. Chỉ khi có sự cố nghiêm trọng ảnh hưởng đến tiến độ dự án.
D. Chỉ khi khách hàng yêu cầu thêm tính năng mới.
8. Ma trận trách nhiệm RACI được sử dụng để làm gì trong quản lý dự án?
A. Ước tính thời gian và chi phí dự án.
B. Phân công vai trò và trách nhiệm cho các thành viên trong dự án.
C. Theo dõi và quản lý rủi ro dự án.
D. Đánh giá hiệu suất làm việc của nhóm dự án.
9. Trong quản lý dự án phần mềm, yếu tố nào sau đây được xem là quan trọng nhất để đảm bảo thành công của dự án?
A. Tuân thủ tuyệt đối theo kế hoạch ban đầu, không thay đổi.
B. Sử dụng công nghệ mới nhất và phức tạp nhất.
C. Giao tiếp hiệu quả và thường xuyên giữa các thành viên và bên liên quan.
D. Giảm thiểu tối đa chi phí dự án, ngay cả khi ảnh hưởng đến chất lượng.
10. Phương pháp kiểm thử hộp trắng (white-box testing) tập trung vào việc kiểm thử khía cạnh nào của phần mềm?
A. Chức năng của phần mềm từ góc độ người dùng.
B. Cấu trúc bên trong, logic và đường dẫn thực thi của mã nguồn.
C. Hiệu năng và khả năng mở rộng của hệ thống.
D. Giao diện người dùng.
11. Điều gì là mục tiêu chính của giai đoạn `khởi động dự án` (project initiation)?
A. Phát triển và kiểm thử phần mềm.
B. Lập kế hoạch chi tiết cho toàn bộ dự án.
C. Xác định tính khả thi, mục tiêu, phạm vi và các bên liên quan chính của dự án.
D. Triển khai và bàn giao phần mềm cho khách hàng.
12. Trong quản lý rủi ro, `risk mitigation` (giảm thiểu rủi ro) là gì?
A. Chấp nhận rủi ro và không làm gì để ứng phó.
B. Chuyển giao rủi ro cho bên thứ ba.
C. Thực hiện các hành động để giảm khả năng xảy ra hoặc mức độ ảnh hưởng của rủi ro.
D. Hoàn toàn loại bỏ rủi ro, đảm bảo rủi ro không bao giờ xảy ra.
13. Ước tính COCOMO (Constructive Cost Model) được sử dụng để làm gì trong quản lý dự án phần mềm?
A. Quản lý cấu hình phần mềm.
B. Ước tính chi phí và thời gian phát triển phần mềm.
C. Đánh giá chất lượng mã nguồn.
D. Quản lý rủi ro dự án.
14. Điều gì KHÔNG phải là lợi ích của việc sử dụng công cụ quản lý dự án phần mềm?
A. Cải thiện giao tiếp và cộng tác trong nhóm dự án.
B. Giảm chi phí dự án bằng cách tự động hóa hoàn toàn các công việc.
C. Theo dõi tiến độ, quản lý tài nguyên và ngân sách hiệu quả hơn.
D. Tăng cường khả năng quản lý rủi ro và vấn đề phát sinh.
15. Công cụ Gantt chart thường được sử dụng để làm gì trong quản lý dự án?
A. Quản lý rủi ro dự án.
B. Theo dõi tiến độ và lịch trình dự án.
C. Quản lý giao tiếp trong nhóm dự án.
D. Ước tính chi phí dự án.
16. Yếu tố nào sau đây KHÔNG phải là một phần của tam giác dự án (Project Management Triangle) hay còn gọi là `Iron Triangle`?
A. Phạm vi (Scope).
B. Chi phí (Cost).
C. Chất lượng (Quality).
D. Thời gian (Time).
17. Sản phẩm bàn giao (deliverable) trong dự án phần mềm có thể bao gồm những gì?
A. Chỉ mã nguồn chương trình.
B. Chỉ tài liệu hướng dẫn sử dụng.
C. Mã nguồn, tài liệu, báo cáo, phần mềm đã triển khai và bất kỳ sản phẩm hữu hình nào được tạo ra trong dự án.
D. Chỉ bản kế hoạch dự án.
18. Điều gì là quan trọng nhất trong việc quản lý giao tiếp dự án?
A. Gửi email thông báo cho tất cả các bên liên quan hàng ngày.
B. Xác định rõ kênh giao tiếp, tần suất, nội dung và người nhận thông tin phù hợp.
C. Tổ chức họp dự án càng nhiều càng tốt để đảm bảo mọi người đều được thông tin.
D. Chỉ giao tiếp khi có vấn đề phát sinh để tránh làm phiền các bên liên quan.
19. Vai trò của Project Manager (Quản lý dự án) KHÔNG bao gồm công việc nào sau đây?
A. Xác định và quản lý rủi ro dự án.
B. Viết mã nguồn chương trình.
C. Lập kế hoạch và theo dõi tiến độ dự án.
D. Điều phối và quản lý nhóm dự án.
20. Phương pháp kiểm thử hộp đen (black-box testing) tập trung vào việc kiểm thử khía cạnh nào của phần mềm?
A. Cấu trúc bên trong và logic của mã nguồn.
B. Giao diện người dùng và chức năng của phần mềm từ góc độ người dùng.
C. Hiệu năng và khả năng mở rộng của hệ thống.
D. Tính bảo mật của phần mềm.
21. Phương pháp kiểm thử hồi quy (regression testing) được thực hiện khi nào?
A. Chỉ khi phát hiện lỗi nghiêm trọng trong quá trình kiểm thử.
B. Sau khi thực hiện bất kỳ thay đổi nào đối với mã nguồn, để đảm bảo các thay đổi không gây ra lỗi mới hoặc làm phát sinh lại lỗi cũ.
C. Trước khi bắt đầu giai đoạn phát triển phần mềm.
D. Chỉ khi kiểm thử hộp đen hoàn thành.
22. Trong quản lý yêu cầu, `use case` (ca sử dụng) được dùng để mô tả điều gì?
A. Cấu trúc dữ liệu của phần mềm.
B. Quy trình kiểm thử phần mềm.
C. Tương tác giữa người dùng và hệ thống để đạt được một mục tiêu cụ thể.
D. Kiến trúc tổng thể của phần mềm.
23. Loại biểu đồ nào sau đây thường được sử dụng để trực quan hóa sự phân bổ ngân sách dự án theo thời gian?
A. Biểu đồ Gantt.
B. Biểu đồ Burn-down.
C. Biểu đồ chữ S (S-curve).
D. Biểu đồ Pareto.
24. Trong quản lý cấu hình phần mềm, `baseline` (đường cơ sở) có ý nghĩa gì?
A. Phiên bản phần mềm cuối cùng sau khi hoàn thành dự án.
B. Một phiên bản đã được phê duyệt của sản phẩm dự án, được dùng làm điểm tham chiếu cho các thay đổi sau này.
C. Bản kế hoạch dự án ban đầu.
D. Danh sách các yêu cầu chức năng của phần mềm.
25. Loại tài liệu nào sau đây thường được sử dụng để ghi lại các quyết định quan trọng, vấn đề, hoặc rủi ro phát sinh trong dự án?
A. Báo cáo tiến độ dự án.
B. Nhật ký dự án (Project log) hoặc Issue log.
C. Kế hoạch truyền thông dự án.
D. Tài liệu yêu cầu người dùng.
26. Trong quản lý dự án phần mềm, `stakeholder` (bên liên quan) là những đối tượng nào?
A. Chỉ các thành viên trong nhóm phát triển phần mềm.
B. Chỉ khách hàng và người dùng cuối của phần mềm.
C. Bất kỳ cá nhân, nhóm hoặc tổ chức nào có lợi ích hoặc bị ảnh hưởng bởi dự án.
D. Chỉ nhà quản lý dự án và lãnh đạo công ty.
27. Đâu là mục tiêu chính của giai đoạn `đóng dự án` (project closure)?
A. Phát triển và kiểm thử các tính năng cuối cùng của phần mềm.
B. Đánh giá kết quả dự án, rút ra bài học kinh nghiệm và hoàn tất các thủ tục hành chính.
C. Lập kế hoạch chi tiết cho các dự án tiếp theo.
D. Triển khai phần mềm lên môi trường sản xuất.
28. Trong mô hình thác nước (Waterfall), giai đoạn kiểm thử (testing) thường được thực hiện vào thời điểm nào?
A. Song song với giai đoạn phân tích yêu cầu.
B. Sau giai đoạn triển khai (deployment).
C. Sau giai đoạn phát triển (development).
D. Trước giai đoạn thiết kế (design).
29. Điều gì là quan trọng nhất khi xác định phạm vi dự án phần mềm?
A. Liệt kê tất cả các tính năng có thể có, kể cả những tính năng không cần thiết.
B. Xác định rõ ràng và cụ thể những gì dự án sẽ và KHÔNG thực hiện.
C. Để phạm vi dự án càng rộng càng tốt để tăng cơ hội thành công.
D. Chỉ tập trung vào các yêu cầu chức năng, bỏ qua yêu cầu phi chức năng.
30. Phương pháp quản lý dự án Agile nhấn mạnh điều gì?
A. Lập kế hoạch chi tiết và cố định ngay từ đầu dự án.
B. Sự linh hoạt, thích ứng với thay đổi và làm việc lặp đi lặp lại.
C. Tài liệu hóa đầy đủ và chi tiết mọi khía cạnh của dự án.
D. Phân công công việc rõ ràng và ít tương tác giữa các thành viên.