Đề 2 - Đề thi, câu hỏi trắc nghiệm online Phân tích và thiết kế hệ thống thông tin
1. Khi nào nên sử dụng mô hình xoắn ốc (Spiral Model) trong phát triển phần mềm?
A. Khi yêu cầu của dự án đã được xác định rõ ràng và ổn định.
B. Khi dự án có rủi ro cao và yêu cầu đánh giá liên tục.
C. Khi dự án có thời gian thực hiện rất ngắn.
D. Khi dự án có chi phí hạn chế.
2. Trong thiết kế cơ sở dữ liệu, mục đích của việc chuẩn hóa (normalization) là gì?
A. Tăng tốc độ truy vấn dữ liệu.
B. Giảm thiểu sự dư thừa dữ liệu và cải thiện tính nhất quán.
C. Tăng cường bảo mật cho cơ sở dữ liệu.
D. Đơn giản hóa quá trình sao lưu và phục hồi dữ liệu.
3. Trong bảo trì phần mềm, loại bảo trì nào liên quan đến việc sửa chữa các lỗi hoặc khuyết điểm được phát hiện sau khi phần mềm đã được triển khai?
A. Bảo trì thích ứng (Adaptive Maintenance)
B. Bảo trì hoàn thiện (Perfective Maintenance)
C. Bảo trì phòng ngừa (Preventive Maintenance)
D. Bảo trì sửa chữa (Corrective Maintenance)
4. Phương pháp nào sau đây giúp xác định các yếu tố bên ngoài có thể ảnh hưởng đến dự án, chẳng hạn như chính trị, kinh tế, xã hội và công nghệ?
A. Phân tích SWOT
B. Phân tích PEST
C. Phân tích chi phí - lợi ích
D. Phân tích bên liên quan
5. Trong quản lý cấu hình phần mềm, mục đích của việc kiểm soát phiên bản (version control) là gì?
A. Tự động hóa quá trình kiểm thử.
B. Quản lý và theo dõi các thay đổi của mã nguồn và các tài liệu liên quan.
C. Tối ưu hóa hiệu suất của cơ sở dữ liệu.
D. Đảm bảo tính bảo mật của hệ thống.
6. Trong quản lý dự án phần mềm, biểu đồ Gantt được sử dụng để làm gì?
A. Quản lý chi phí dự án.
B. Quản lý rủi ro dự án.
C. Theo dõi tiến độ và lịch trình của dự án.
D. Quản lý nguồn lực dự án.
7. Trong phân tích hệ thống, phân tích SWOT được sử dụng để đánh giá những yếu tố nào?
A. Strengths, Weaknesses, Opportunities, Threats.
B. Political, Economic, Social, Technological.
C. Planning, Organizing, Staffing, Directing, Controlling.
D. Requirements, Analysis, Design, Implementation.
8. Trong thiết kế giao diện người dùng, nguyên tắc `tuân thủ` (consistency) có nghĩa là gì?
A. Giao diện phải có màu sắc bắt mắt.
B. Giao diện phải dễ dàng tùy chỉnh.
C. Các yếu tố giao diện và hành vi phải nhất quán trên toàn hệ thống.
D. Giao diện phải sử dụng công nghệ mới nhất.
9. Trong kiểm thử phần mềm, loại kiểm thử nào tập trung vào việc xác minh rằng mỗi đơn vị (module, component) của phần mềm hoạt động đúng như thiết kế?
A. Kiểm thử tích hợp (Integration Testing)
B. Kiểm thử hệ thống (System Testing)
C. Kiểm thử đơn vị (Unit Testing)
D. Kiểm thử chấp nhận (Acceptance Testing)
10. Trong thiết kế hệ thống, mục đích của việc sử dụng mẫu thiết kế (design patterns) là gì?
A. Tăng tốc độ phát triển phần mềm.
B. Cung cấp các giải pháp đã được kiểm chứng cho các vấn đề thiết kế phổ biến.
C. Giảm chi phí bảo trì phần mềm.
D. Tất cả các đáp án trên.
11. Trong kiểm thử phần mềm, kiểm thử tích hợp (integration testing) nhằm mục đích gì?
A. Kiểm tra từng đơn vị (module) riêng lẻ.
B. Kiểm tra sự tương tác giữa các đơn vị (module) đã được kiểm thử riêng lẻ.
C. Kiểm tra toàn bộ hệ thống.
D. Kiểm tra hiệu năng của hệ thống.
12. Trong phân tích yêu cầu, kỹ thuật nào sử dụng các buổi họp có sự tham gia của nhiều bên liên quan để thu thập và làm rõ yêu cầu?
A. Phỏng vấn cá nhân
B. JAD (Joint Application Development)
C. Quan sát người dùng
D. Nghiên cứu tài liệu
13. Loại biểu đồ UML nào được sử dụng để mô tả cấu trúc tĩnh của hệ thống, bao gồm các lớp, thuộc tính và mối quan hệ giữa chúng?
A. Biểu đồ tuần tự (Sequence Diagram)
B. Biểu đồ trạng thái (State Diagram)
C. Biểu đồ lớp (Class Diagram)
D. Biểu đồ hoạt động (Activity Diagram)
14. Trong thiết kế hệ thống, kiến trúc ba lớp (three-tier architecture) bao gồm những lớp nào?
A. Presentation tier, application tier, data tier.
B. Client tier, server tier, database tier.
C. User interface tier, business logic tier, storage tier.
D. Input tier, processing tier, output tier.
15. Trong phân tích hệ thống, kỹ thuật nào được sử dụng để xác định các bên liên quan (stakeholders) và nhu cầu của họ đối với hệ thống?
A. Phân tích SWOT
B. Phân tích PEST
C. Phân tích bên liên quan (Stakeholder Analysis)
D. Phân tích chi phí - lợi ích
16. Công cụ CASE (Computer-Aided Software Engineering) được sử dụng để làm gì trong quá trình phát triển hệ thống?
A. Tự động hóa việc viết mã.
B. Hỗ trợ các hoạt động phân tích, thiết kế, lập trình và kiểm thử.
C. Quản lý cấu hình phần cứng.
D. Tối ưu hóa hiệu suất mạng.
17. Phương pháp phát triển phần mềm nào nhấn mạnh sự hợp tác chặt chẽ giữa các thành viên trong nhóm, phản hồi nhanh chóng và khả năng thích ứng với các thay đổi?
A. Mô hình thác nước (Waterfall)
B. Mô hình xoắn ốc (Spiral)
C. Phát triển phần mềm linh hoạt (Agile)
D. Mô hình nguyên mẫu (Prototype)
18. Trong phân tích hệ thống, sơ đồ luồng dữ liệu (DFD) được sử dụng để mô tả điều gì?
A. Cấu trúc của cơ sở dữ liệu.
B. Luồng dữ liệu giữa các thành phần của hệ thống.
C. Cấu trúc của mã nguồn.
D. Giao diện người dùng.
19. Loại biểu đồ UML nào được sử dụng để mô tả luồng điều khiển giữa các đối tượng trong một kịch bản cụ thể?
A. Biểu đồ lớp (Class Diagram)
B. Biểu đồ trạng thái (State Diagram)
C. Biểu đồ thành phần (Component Diagram)
D. Biểu đồ tuần tự (Sequence Diagram)
20. Trong phân tích hệ thống, ma trận RACI được sử dụng để làm gì?
A. Xác định rủi ro của dự án.
B. Phân công trách nhiệm và vai trò cho các thành viên trong dự án.
C. Ước tính chi phí của dự án.
D. Lập kế hoạch kiểm thử.
21. Trong kiểm thử phần mềm, kiểm thử hộp đen (black-box testing) là gì?
A. Kiểm thử dựa trên cấu trúc bên trong của mã nguồn.
B. Kiểm thử dựa trên yêu cầu và chức năng của phần mềm, không cần biết cấu trúc bên trong.
C. Kiểm thử chỉ được thực hiện bởi nhà phát triển.
D. Kiểm thử chỉ được thực hiện bởi người dùng cuối.
22. Trong quản lý rủi ro dự án, mục đích của việc phân tích định tính rủi ro (qualitative risk analysis) là gì?
A. Định lượng xác suất và tác động của rủi ro.
B. Xác định và đánh giá mức độ ưu tiên của các rủi ro.
C. Lập kế hoạch ứng phó rủi ro.
D. Theo dõi và kiểm soát rủi ro.
23. Mục tiêu chính của việc thiết kế giao diện người dùng (UI) là gì?
A. Tối đa hóa số lượng tính năng.
B. Tối ưu hóa hiệu suất của cơ sở dữ liệu.
C. Đảm bảo tính bảo mật tuyệt đối của hệ thống.
D. Tạo ra trải nghiệm người dùng trực quan và dễ sử dụng.
24. Trong mô hình thác nước (Waterfall), giai đoạn nào tập trung vào việc xác định yêu cầu của người dùng và các chức năng cần thiết của hệ thống?
A. Thiết kế (Design)
B. Kiểm thử (Testing)
C. Phân tích yêu cầu (Requirements Analysis)
D. Triển khai (Deployment)
25. Phương pháp nào sau đây giúp xác định các ca sử dụng (use cases) bằng cách mô tả tương tác giữa người dùng và hệ thống để đạt được một mục tiêu cụ thể?
A. Phân tích SWOT
B. Mô hình thực thể liên kết (ERD)
C. Phân tích ca sử dụng (Use Case Analysis)
D. Phân tích chi phí - lợi ích
26. Trong quản lý dự án phần mềm, đường găng (critical path) là gì?
A. Chuỗi các nhiệm vụ có thời gian thực hiện ngắn nhất.
B. Chuỗi các nhiệm vụ quan trọng nhất, quyết định thời gian hoàn thành dự án.
C. Chuỗi các nhiệm vụ có chi phí thấp nhất.
D. Chuỗi các nhiệm vụ ít rủi ro nhất.
27. Trong thiết kế hệ thống, kiến trúc hướng dịch vụ (SOA) là gì?
A. Một phương pháp quản lý dự án phần mềm.
B. Một kiểu kiến trúc phần mềm cho phép các thành phần ứng dụng tương tác thông qua các dịch vụ.
C. Một kỹ thuật kiểm thử phần mềm.
D. Một phương pháp thiết kế giao diện người dùng.
28. Mục đích của việc tạo mẫu (prototyping) trong quá trình phát triển hệ thống là gì?
A. Thay thế hoàn toàn giai đoạn thiết kế.
B. Thu thập và xác nhận yêu cầu của người dùng một cách nhanh chóng và hiệu quả.
C. Giảm chi phí phát triển hệ thống.
D. Tăng tốc độ xử lý của hệ thống.
29. Trong kiểm thử phần mềm, kiểm thử hồi quy (regression testing) được thực hiện khi nào?
A. Sau khi phát triển tính năng mới.
B. Sau khi sửa chữa lỗi.
C. Sau khi thay đổi mã nguồn.
D. Tất cả các trường hợp trên.
30. Trong phân tích hệ thống hướng đối tượng, khái niệm nào thể hiện một thực thể trong thế giới thực có các thuộc tính và hành vi?
A. Giao diện (Interface)
B. Lớp (Class)
C. Đối tượng (Object)
D. Thuộc tính (Attribute)