1. Trong quy trình Phân tích và Thiết kế Hệ thống, loại yêu cầu nào mô tả các hành vi hoặc dịch vụ cụ thể mà hệ thống phải thực hiện?
A. Yêu cầu phi chức năng (Non-functional Requirement)
B. Yêu cầu chức năng (Functional Requirement)
C. Yêu cầu giao diện (Interface Requirement)
D. Yêu cầu phần cứng (Hardware Requirement)
2. Biểu đồ nào trong UML được sử dụng để mô tả cấu trúc tĩnh của hệ thống bằng cách hiển thị các lớp, thuộc tính, phương thức và mối quan hệ giữa chúng?
A. Biểu đồ Use Case (Use Case Diagram)
B. Biểu đồ Lớp (Class Diagram)
C. Biểu đồ Tuần tự (Sequence Diagram)
D. Biểu đồ Hoạt động (Activity Diagram)
3. Trong mô hình quan hệ thực thể (ERD), mối quan hệ ‘Nhiều – Nhiều’ (N:M) giữa hai thực thể thường được giải quyết như thế nào khi chuyển sang thiết kế cơ sở dữ liệu quan hệ?
A. Gộp hai thực thể thành một bảng duy nhất
B. Thêm khóa ngoại vào cả hai bảng thực thể
C. Tạo một bảng trung gian (thực thể liên kết) chứa khóa chính của cả hai thực thể
D. Xóa bỏ một trong hai thực thể để đơn giản hóa
4. Trong Biểu đồ Luồng dữ liệu (DFD), cấp độ nào chỉ bao gồm một quy trình duy nhất đại diện cho toàn bộ hệ thống và các tác nhân bên ngoài?
A. Biểu đồ ngữ cảnh (Context Diagram – Level 0)
B. Biểu đồ mức 1 (Level 1 DFD)
C. Biểu đồ mức 2 (Level 2 DFD)
D. Biểu đồ phân rã chức năng (Functional Decomposition)
5. Nguyên lý thiết kế phần mềm nào khuyến khích việc các module nên có tính độc lập cao, ít phụ thuộc lẫn nhau?
A. High Coupling (Ghép nối cao)
B. Low Coupling (Ghép nối thấp)
C. Low Cohesion (Kết dính thấp)
D. High Complexity (Độ phức tạp cao)
6. Trong phương pháp Agile Scrum, ai là người chịu trách nhiệm quản lý Product Backlog và tối ưu hóa giá trị của sản phẩm?
A. Scrum Master
B. Development Team
C. Product Owner
D. Stakeholder
7. Kỹ thuật thu thập yêu cầu nào cho phép nhà phân tích quan sát trực tiếp người dùng thực hiện công việc thực tế của họ để hiểu rõ quy trình?
A. Phỏng vấn (Interview)
B. Bảng câu hỏi (Questionnaire)
C. Quan sát (Observation)
D. Nghiên cứu tài liệu (Document Review)
8. Mối quan hệ ‘Include’ trong Biểu đồ Use Case (UML) mang ý nghĩa gì?
A. Use Case cơ sở có thể tùy chọn thực hiện Use Case được include
B. Use Case cơ sở bắt buộc phải thực hiện Use Case được include để hoàn thành chức năng
C. Use Case được include là một phiên bản đặc biệt hóa của Use Case cơ sở
D. Hai Use Case diễn ra song song độc lập
9. Trong kiểm thử phần mềm, phương pháp ‘Kiểm thử hộp đen’ (Black-box Testing) tập trung vào yếu tố nào?
A. Cấu trúc mã nguồn bên trong
B. Logic thuật toán chi tiết
C. Đầu vào và đầu ra dựa trên yêu cầu mà không quan tâm code bên trong
D. Tối ưu hóa hiệu suất cơ sở dữ liệu
10. Giai đoạn nào trong vòng đời phát triển hệ thống (SDLC) tập trung vào việc xác định tính khả thi về kinh tế, kỹ thuật và vận hành của dự án?
A. Thiết kế hệ thống (System Design)
B. Khảo sát và Lập kế hoạch (Planning & Investigation)
C. Triển khai (Implementation)
D. Bảo trì (Maintenance)
11. Khái niệm ‘Cohesion’ (Độ kết dính) trong thiết kế hệ thống đề cập đến điều gì?
A. Mức độ phụ thuộc giữa các module khác nhau
B. Mức độ liên quan và tập trung của các thành phần bên trong một module duy nhất
C. Số lượng bảng trong cơ sở dữ liệu
D. Tốc độ phản hồi của giao diện người dùng
12. Loại bảo trì nào được thực hiện để sửa chữa các lỗi phát sinh trong quá trình vận hành thực tế mà trước đó chưa được phát hiện?
A. Bảo trì hoàn thiện (Perfective Maintenance)
B. Bảo trì thích ứng (Adaptive Maintenance)
C. Bảo trì phòng ngừa (Preventive Maintenance)
D. Bảo trì khắc phục (Corrective Maintenance)
13. Trong biểu đồ Tuần tự (Sequence Diagram), trục dọc (trục Y) thường biểu diễn yếu tố gì?
A. Không gian bộ nhớ
B. Thời gian (theo chiều từ trên xuống dưới)
C. Các lớp đối tượng
D. Mức độ ưu tiên của thông điệp
14. Chiến lược triển khai nào cho phép hệ thống mới và hệ thống cũ hoạt động song song cho đến khi hệ thống mới được chứng minh là ổn định?
A. Chuyển đổi trực tiếp (Direct Cutover)
B. Chuyển đổi song song (Parallel Operation)
C. Chuyển đổi thí điểm (Pilot Operation)
D. Chuyển đổi theo giai đoạn (Phased Operation)
15. Mục đích chính của việc ‘Chuẩn hóa dữ liệu’ (Data Normalization) là gì?
A. Tăng tốc độ truy vấn bằng cách lặp lại dữ liệu
B. Giảm thiểu sự dư thừa dữ liệu và ngăn chặn các dị thường khi cập nhật
C. Mã hóa dữ liệu để bảo mật
D. Tạo ra các báo cáo đẹp mắt hơn
16. Trong UML, mối quan hệ ‘Kế thừa’ (Inheritance/Generalization) cho phép lớp con làm gì đối với lớp cha?
A. Chỉ sử dụng tên của lớp cha
B. Thay đổi hoàn toàn cấu trúc của lớp cha
C. Kế thừa các thuộc tính và phương thức của lớp cha, đồng thời có thể mở rộng hoặc ghi đè chúng
D. Ngăn chặn lớp cha khởi tạo đối tượng
17. Yếu tố nào sau đây là một ví dụ về ‘Yêu cầu phi chức năng’ liên quan đến bảo mật?
A. Hệ thống phải cho phép người dùng đăng nhập bằng email
B. Mọi mật khẩu người dùng phải được mã hóa trong cơ sở dữ liệu
C. Hệ thống phải in được hóa đơn bán hàng
D. Người quản lý có thể xem báo cáo doanh thu
18. Trong mô hình Thác nước (Waterfall), nhược điểm lớn nhất thường được nhắc đến là gì?
A. Thiếu tài liệu hướng dẫn
B. Chi phí phát triển quá thấp
C. Khó thích ứng với những thay đổi yêu cầu sau khi giai đoạn trước đã hoàn tất
D. Quy trình quá lỏng lẻo và thiếu kỷ luật
19. Biểu tượng hình thoi (Diamond shape) trong Lưu đồ thuật toán (Flowchart) hoặc Activity Diagram đại diện cho điều gì?
A. Điểm bắt đầu hoặc kết thúc
B. Một hành động xử lý
C. Quyết định hoặc rẽ nhánh (Decision)
D. Luồng dữ liệu
20. Trong thiết kế giao diện người dùng (UI), nguyên tắc ‘Consistency’ (Nhất quán) nghĩa là gì?
A. Sử dụng càng nhiều màu sắc càng tốt
B. Giao diện, thuật ngữ và hành vi phải đồng nhất trên toàn bộ hệ thống
C. Mỗi màn hình phải có một thiết kế hoàn toàn khác biệt
D. Luôn hiển thị tất cả thông tin trên một trang duy nhất
21. Khóa chính (Primary Key) trong thiết kế cơ sở dữ liệu phải thỏa mãn điều kiện gì?
A. Có thể chứa giá trị Null
B. Phải là dữ liệu dạng số nguyên
C. Duy nhất (Unique) và không được chứa giá trị Null
D. Phải trùng lặp để dễ tìm kiếm
22. Trong DFD, quy tắc nào sau đây là ĐÚNG về luồng dữ liệu?
A. Dữ liệu có thể đi trực tiếp từ Kho dữ liệu này sang Kho dữ liệu khác
B. Dữ liệu có thể đi trực tiếp từ Tác nhân này sang Tác nhân khác
C. Mọi luồng dữ liệu đều phải bắt đầu hoặc kết thúc tại một Quy trình (Process)
D. Dữ liệu có thể đi từ Tác nhân thẳng vào Kho dữ liệu không qua xử lý
23. Mô hình xoắn ốc (Spiral Model) đặc biệt chú trọng vào yếu tố nào hơn so với các mô hình SDLC truyền thống khác?
A. Viết mã nguồn nhanh nhất có thể
B. Phân tích và quản lý rủi ro (Risk Analysis)
C. Giảm thiểu tài liệu thiết kế
D. Loại bỏ hoàn toàn vai trò của người dùng
24. ‘User Acceptance Testing’ (UAT) thường được thực hiện bởi ai và khi nào?
A. Bởi lập trình viên trong quá trình viết mã
B. Bởi người dùng cuối hoặc khách hàng trước khi hệ thống được đưa vào vận hành chính thức
C. Bởi quản trị mạng sau khi hệ thống đã chạy được 1 năm
D. Bởi nhà thiết kế giao diện ở giai đoạn phác thảo
25. Từ điển dữ liệu (Data Dictionary) đóng vai trò gì trong phân tích hệ thống?
A. Lưu trữ dữ liệu thực tế của người dùng
B. Chứa siêu dữ liệu (metadata) mô tả chi tiết về các phần tử dữ liệu, kho dữ liệu và luồng dữ liệu
C. Là nơi chứa mã nguồn của chương trình
D. Là danh sách các nhân viên tham gia dự án
26. Kiến trúc Client-Server (Khách – Chủ) chia tách hệ thống thành các phần nào?
A. Máy trạm yêu cầu dịch vụ và máy chủ cung cấp dịch vụ/tài nguyên
B. Chỉ gồm một máy tính lớn xử lý tất cả
C. Các máy tính ngang hàng không có máy chủ trung tâm
D. Phần cứng và phần mềm không liên lạc với nhau
27. Trong phân tích hướng đối tượng, ‘Đa hình’ (Polymorphism) cho phép điều gì?
A. Một đối tượng chỉ có một hình thức duy nhất
B. Các đối tượng thuộc các lớp khác nhau có thể phản hồi cùng một thông điệp theo những cách khác nhau
C. Dữ liệu được bảo mật tuyệt đối không thể truy cập
D. Lớp con không được phép thay đổi phương thức của lớp cha
28. Một trong những lợi ích chính của việc sử dụng công cụ CASE (Computer-Aided Software Engineering) là gì?
A. Tự động hóa hoàn toàn việc viết code mà không cần lập trình viên
B. Giúp cải thiện chất lượng, tính nhất quán của thiết kế và tăng năng suất phát triển
C. Loại bỏ nhu cầu về quản lý dự án
D. Giảm dung lượng lưu trữ của phần mềm
29. Đặc điểm nào sau đây KHÔNG phải là đặc trưng của phương pháp Agile?
A. Phát triển lặp và tăng trưởng (Iterative & Incremental)
B. Tập trung vào tài liệu chi tiết và quy trình cứng nhắc
C. Thích ứng nhanh với thay đổi
D. Hợp tác chặt chẽ với khách hàng
30. Biểu đồ trạng thái (State Machine Diagram) trong UML được sử dụng chủ yếu để làm gì?
A. Mô tả luồng dữ liệu giữa các phòng ban
B. Mô tả vòng đời của một đối tượng thông qua các trạng thái và sự kiện chuyển đổi
C. Mô tả cấu trúc vật lý của phần cứng
D. Mô tả chi phí dự án
31. Giai đoạn đầu tiên và quan trọng nhất trong chu trình phát triển hệ thống (SDLC) là gì, nhằm xác định mục tiêu và phạm vi của dự án?
A. Bảo trì và nâng cấp
B. Xác định yêu cầu
C. Thiết kế hệ thống
D. Phát triển và triển khai
32. Mô hình thác nước (Waterfall) trong SDLC thường phù hợp nhất với loại dự án nào?
A. Dự án thử nghiệm các công nghệ mới không chắc chắn
B. Dự án có yêu cầu ổn định và rõ ràng ngay từ đầu
C. Dự án có yêu cầu thay đổi liên tục
D. Dự án cần phản hồi nhanh chóng từ người dùng
33. Điểm khác biệt cơ bản nhất giữa phương pháp Agile và mô hình Waterfall trong phát triển hệ thống là gì?
A. Agile không có tài liệu, Waterfall không yêu cầu sự tham gia của khách hàng
B. Agile không có giai đoạn kiểm thử
C. Agile ưu tiên tính linh hoạt và khả năng thích ứng với thay đổi, còn Waterfall tuân thủ một quy trình tuyến tính cứng nhắc
D. Agile chỉ dành cho các dự án nhỏ, Waterfall dành cho các dự án lớn
34. Yêu cầu chức năng (Functional Requirement) của một hệ thống thông tin là gì?
A. Mô tả các thuộc tính chất lượng của hệ thống như hiệu suất hoặc bảo mật
B. Mô tả giao diện người dùng và trải nghiệm người dùng
C. Mô tả các tính năng và hành vi cụ thể mà hệ thống phải thực hiện
D. Mô tả cách hệ thống tương tác với các hệ thống bên ngoài
35. Trong quá trình thu thập yêu cầu, kỹ thuật nào sau đây giúp các bên liên quan cùng nhau trao đổi ý tưởng và nhanh chóng đạt được sự đồng thuận về các tính năng của hệ thống?
A. Phát bảng hỏi khảo sát diện rộng
B. Quan sát người dùng thực hiện công việc
C. Tổ chức workshop hoặc các buổi họp nhóm có sự tham gia của tất cả các bên liên quan
D. Phân tích tài liệu hiện có
36. Trong mô hình thực thể-mối quan hệ (ERD), ‘thực thể’ (Entity) đại diện cho điều gì?
A. Một hành động hoặc chức năng mà hệ thống thực hiện
B. Một dòng dữ liệu di chuyển giữa các thành phần hệ thống
C. Một thuộc tính đặc trưng của một đối tượng
D. Một đối tượng, sự kiện hoặc khái niệm quan trọng mà hệ thống cần lưu trữ thông tin
37. Một mối quan hệ ‘1-nhiều’ (One-to-Many) trong ERD được hiểu là gì?
A. Một thực thể có thể liên quan đến không hoặc nhiều thực thể khác
B. Mỗi thực thể chỉ liên quan đến một thực thể khác
C. Một thực thể có thể liên quan đến nhiều thực thể khác, nhưng mỗi thực thể khác chỉ liên quan đến một thực thể đó
D. Hai thực thể hoàn toàn độc lập với nhau
38. Sơ đồ luồng dữ liệu mức ngữ cảnh (Context DFD) có vai trò chính là gì trong phân tích hệ thống?
A. Biểu diễn cấu trúc cơ sở dữ liệu của hệ thống
B. Phân tích luồng điều khiển giữa các module của hệ thống
C. Mô tả chi tiết các quy trình nghiệp vụ bên trong hệ thống
D. Cung cấp cái nhìn tổng quan về toàn bộ hệ thống và các thực thể bên ngoài tương tác với nó
39. Mục đích chính của việc chuẩn hóa cơ sở dữ liệu (Database 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à loại bỏ các dị thường trong cơ sở dữ liệu
C. Đơn giản hóa cấu trúc bảng cho người dùng cuối
D. Mã hóa dữ liệu để bảo mật
40. Trong UML, biểu đồ Use Case (Use Case Diagram) chủ yếu được sử dụng để mô tả điều gì?
A. Minh họa luồng dữ liệu giữa các thành phần hệ thống
B. Biểu diễn trạng thái của một đối tượng và các chuyển đổi trạng thái
C. Mô tả các chức năng mà hệ thống cung cấp và cách các tác nhân tương tác với chúng
D. Hiển thị cấu trúc bên trong của các lớp trong hệ thống
41. Khi thiết kế giao diện người dùng (UI), nguyên tắc ‘nhất quán’ (Consistency) có ý nghĩa như thế nào?
A. Cung cấp nhiều tùy chọn tùy chỉnh cho người dùng
B. Đảm bảo các yếu tố giao diện, hành vi và phản hồi của hệ thống đồng nhất trong suốt ứng dụng
C. Hiển thị tất cả thông tin quan trọng trên một màn hình duy nhất
D. Giảm số lượng bước người dùng cần thực hiện để hoàn thành một tác vụ
42. Phương pháp tạo mẫu (Prototyping) mang lại lợi ích gì lớn nhất trong giai đoạn phân tích và thiết kế hệ thống?
A. Loại bỏ hoàn toàn lỗi trong quá trình mã hóa
B. Giảm thiểu chi phí phát triển phần mềm ngay từ đầu
C. Đảm bảo tuân thủ nghiêm ngặt các quy trình phát triển
D. Cho phép thu thập phản hồi sớm từ người dùng và nhanh chóng điều chỉnh yêu cầu, thiết kế
43. Ưu điểm chính của kiến trúc Client-Server so với kiến trúc tập trung (centralized) truyền thống là gì?
A. Chỉ yêu cầu một máy tính duy nhất để vận hành toàn bộ hệ thống
B. Giảm thiểu hoàn toàn rủi ro về lỗi mạng
C. Phân tán tải xử lý và dữ liệu, tăng khả năng mở rộng và hiệu suất
D. Đơn giản hóa việc quản lý bảo mật tập trung
44. Test-Driven Development (TDD) là một phương pháp phát triển phần mềm trong đó các bài kiểm thử được viết khi nào?
A. Các bài kiểm thử được viết chỉ khi có lỗi phát sinh
B. Các bài kiểm thử được viết trước khi viết mã nguồn chức năng
C. Các bài kiểm thử được viết sau khi mã nguồn chức năng hoàn thành
D. Các bài kiểm thử được viết bởi một đội ngũ kiểm thử độc lập sau khi phát triển
45. Tại sao việc tích hợp các khía cạnh bảo mật vào giai đoạn thiết kế hệ thống lại quan trọng hơn là chỉ thêm vào ở cuối dự án?
A. Giúp xác định và giải quyết các lỗ hổng tiềm ẩn từ sớm, giảm chi phí và rủi ro bảo mật tổng thể
B. Không ảnh hưởng đến hiệu suất của hệ thống
C. Có thể được thực hiện bởi bất kỳ ai mà không cần kiến thức chuyên sâu
D. Chỉ đơn thuần là một yêu cầu tuân thủ quy định
46. Ký hiệu ‘Process’ (Tiến trình) trong Sơ đồ luồng dữ liệu (DFD) thể hiện điều gì?
A. Một hoạt động hoặc chức năng xử lý và biến đổi dữ liệu
B. Nơi dữ liệu được lưu trữ
C. Một nguồn hoặc đích của dữ liệu bên ngoài hệ thống
D. Một dòng dữ liệu di chuyển giữa các thành phần
47. ‘Hệ thống phải có thời gian phản hồi dưới 3 giây cho 90% các truy vấn của người dùng’ là một ví dụ về loại yêu cầu nào?
A. Yêu cầu nghiệp vụ (Business requirement)
B. Yêu cầu hệ thống bên ngoài (External system requirement)
C. Yêu cầu phi chức năng (Non-functional requirement)
D. Yêu cầu chức năng (Functional requirement)
48. Trong thiết kế hệ thống, khái niệm ‘Cohesion’ (Sự gắn kết) đề cập đến điều gì?
A. Mức độ phụ thuộc giữa các module khác nhau trong hệ thống
B. Số lượng lỗi được tìm thấy trong một module
C. Mức độ các thành phần bên trong một module làm việc chặt chẽ với nhau để thực hiện một chức năng cụ thể
D. Khả năng một module có thể được tái sử dụng trong các dự án khác
49. Biểu đồ Gantt thường được sử dụng trong quản lý dự án để làm gì?
A. Phân tích chi tiết các rủi ro tiềm ẩn của dự án
B. Mô tả cấu trúc phân cấp của các yêu cầu hệ thống
C. Lập kế hoạch và theo dõi tiến độ các nhiệm vụ của dự án theo thời gian
D. Biểu diễn luồng dữ liệu giữa các thành phần phần mềm
50. Lợi ích chính của việc sử dụng kiến trúc Microservices so với kiến trúc Monolithic truyền thống là gì?
A. Giảm độ phức tạp khi quản lý toàn bộ hệ thống
B. Tăng tính linh hoạt, khả năng mở rộng độc lập cho từng dịch vụ và khả năng chống lỗi tốt hơn
C. Đơn giản hóa việc triển khai và gỡ lỗi
D. Yêu cầu ít tài nguyên máy chủ hơn cho cùng một chức năng
51. Trong phát triển Agile, ‘User Story’ (Câu chuyện người dùng) là gì?
A. Một bản kế hoạch dự án tổng thể cho toàn bộ SDLC
B. Một báo cáo kiểm thử tự động của hệ thống
C. Một mô tả ngắn gọn về một tính năng từ góc độ của người dùng cuối, tập trung vào giá trị mà tính năng đó mang lại
D. Một tài liệu kỹ thuật chi tiết mô tả cấu trúc cơ sở dữ liệu
52. Trong giai đoạn thiết kế vật lý của cơ sở dữ liệu, việc lựa chọn chỉ mục (index) cho bảng có mục đích chính là gì?
A. Đảm bảo tính nhất quán của dữ liệu
B. Cải thiện hiệu suất truy vấn dữ liệu
C. Tăng cường bảo mật dữ liệu
D. Giảm dung lượng lưu trữ của cơ sở dữ liệu
53. Từ điển dữ liệu (Data Dictionary) đóng vai trò gì trong giai đoạn phân tích hệ thống?
A. Tài liệu mô tả các yêu cầu chức năng của người dùng
B. Báo cáo tiến độ dự án
C. Lưu trữ định nghĩa chi tiết về tất cả các phần tử dữ liệu, luồng dữ liệu và kho dữ liệu trong hệ thống
D. Biểu đồ hiển thị các luồng xử lý nghiệp vụ
54. Biểu đồ trình tự (Sequence Diagram) trong UML được dùng để thể hiện điều gì?
A. Mô tả cấu trúc tĩnh của các lớp và mối quan hệ giữa chúng
B. Hiển thị các trạng thái khác nhau của một đối tượng
C. Biểu diễn các thành phần phần mềm và giao diện của chúng
D. Minh họa sự tương tác giữa các đối tượng theo một trình tự thời gian cụ thể
55. Loại kiểm thử nào sau đây do người dùng cuối hoặc khách hàng thực hiện để xác nhận rằng hệ thống đáp ứng các yêu cầu nghiệp vụ và sẵn sàng triển khai?
A. Kiểm thử chấp nhận (Acceptance Testing)
B. Kiểm thử đơn vị (Unit Testing)
C. Kiểm thử hệ thống (System Testing)
D. Kiểm thử tích hợp (Integration Testing)
56. Thách thức lớn nhất khi phân tích và thiết kế một hệ thống thông tin mới để thay thế hoặc tích hợp với một hệ thống kế thừa (legacy system) là gì?
A. Thiếu hụt công nghệ hiện đại
B. Hiểu rõ cấu trúc, logic nghiệp vụ và dữ liệu của hệ thống kế thừa, thường thiếu tài liệu và phức tạp
C. Khó khăn trong việc tìm kiếm nhân sự có kinh nghiệm
D. Chi phí phát triển hệ thống mới quá cao
57. Mục đích của ‘Domain Model’ trong phân tích và thiết kế hướng đối tượng là gì?
A. Thiết kế giao diện người dùng của ứng dụng
B. Xác định các lớp phần mềm và phương thức của chúng
C. Mô tả các khái niệm, thuộc tính và mối quan hệ quan trọng trong miền nghiệp vụ của hệ thống
D. Quản lý các luồng điều khiển giữa các thành phần hệ thống
58. Phương pháp triển khai hệ thống mới nào sau đây đòi hỏi cả hệ thống cũ và hệ thống mới cùng chạy song song trong một khoảng thời gian nhất định?
A. Triển khai trực tiếp (Direct Cutover)
B. Triển khai thí điểm (Pilot Conversion)
C. Triển khai song song (Parallel Conversion)
D. Triển khai theo pha (Phased Conversion)
59. Ma trận truy vết yêu cầu (Requirement Traceability Matrix) được sử dụng để làm gì?
A. Quản lý tài liệu hướng dẫn sử dụng hệ thống
B. Theo dõi tiến độ tổng thể của dự án
C. Liên kết các yêu cầu với các thành phần thiết kế, mã nguồn và các trường hợp kiểm thử tương ứng
D. Phân tích hiệu suất của cơ sở dữ liệu
60. Kỹ thuật ‘CRC Cards’ (Class-Responsibility-Collaboration Cards) thường được sử dụng trong giai đoạn nào của phân tích và thiết kế hướng đối tượng?
A. Thiết kế giao diện người dùng chi tiết
B. Phân tích và thiết kế hướng đối tượng, đặc biệt để xác định các lớp và trách nhiệm của chúng
C. Lập kế hoạch kiểm thử hệ thống
D. Thu thập yêu cầu phi chức năng
61. Trong vòng đời phát triển hệ thống (SDLC) theo mô hình Thác nước (Waterfall), giai đoạn nào diễn ra ngay sau giai đoạn Phân tích?
A. Kiểm thử (Testing)
B. Triển khai (Implementation)
C. Thiết kế (Design)
D. Bảo trì (Maintenance)
62. Loại yêu cầu nào mô tả các hành vi, chức năng cụ thể mà hệ thống phải thực hiện để phục vụ người dùng?
A. Yêu cầu phi chức năng
B. Yêu cầu chức năng
C. Yêu cầu kỹ thuật
D. Yêu cầu chuyển đổi
63. Trong biểu đồ Use Case của UML, mối quan hệ nào được sử dụng khi một Use Case con BẮT BUỘC phải được thực hiện như một phần của Use Case cha?
A. Extend
B. Include
C. Generalization
D. Association
64. Thuật ngữ nào dùng để chỉ mức độ phụ thuộc giữa các mô-đun trong thiết kế hệ thống, mà nguyên lý thiết kế tốt hướng tới việc giảm thiểu nó?
A. Cohesion (Độ gắn kết)
B. Coupling (Độ phụ thuộc)
C. Inheritance (Kế thừa)
D. Polymorphism (Đa hình)
65. Biểu đồ nào trong UML tập trung mô tả cấu trúc tĩnh của hệ thống bằng cách hiển thị các lớp, thuộc tính, phương thức và mối quan hệ giữa chúng?
A. Biểu đồ Tuần tự (Sequence Diagram)
B. Biểu đồ Hoạt động (Activity Diagram)
C. Biểu đồ Lớp (Class Diagram)
D. Biểu đồ Trạng thái (State Machine Diagram)
66. Trong kiến trúc MVC, thành phần nào chịu trách nhiệm trực tiếp nhận yêu cầu từ người dùng và điều phối các thành phần khác để xử lý?
A. Model
B. View
C. Controller
D. Database
67. Kỹ thuật thu thập yêu cầu nào liên quan đến việc tập hợp các bên liên quan, người dùng và chuyên gia phân tích trong một buổi làm việc chuyên sâu để xác định yêu cầu?
A. Phỏng vấn 1-1
B. JAD (Joint Application Development)
C. Quan sát trực tiếp
D. Phân tích tài liệu
68. Trong Biểu đồ Tuần tự (Sequence Diagram), trục thời gian thường được biểu diễn theo hướng nào?
A. Từ trái sang phải
B. Từ phải sang trái
C. Từ trên xuống dưới
D. Từ dưới lên trên
69. Một thuộc tính trong bảng cơ sở dữ liệu dùng để định danh duy nhất mỗi bản ghi và không được phép chứa giá trị NULL được gọi là gì?
A. Khóa ngoại (Foreign Key)
B. Khóa chính (Primary Key)
C. Khóa ứng viên (Candidate Key)
D. Khóa thay thế (Surrogate Key)
70. Giai đoạn nào của SDLC có mục đích chính là xác định xem dự án có đáng để đầu tư thực hiện hay không thông qua các phân tích kinh tế, kỹ thuật và vận hành?
A. Phân tích yêu cầu
B. Nghiên cứu khả thi (Feasibility Study)
C. Thiết kế hệ thống
D. Bảo trì hệ thống
71. Trong thiết kế hướng đối tượng, nguyên lý nào cho phép ẩn giấu chi tiết cài đặt bên trong và chỉ bộc lộ giao diện cần thiết ra bên ngoài?
A. Kế thừa (Inheritance)
B. Đóng gói (Encapsulation)
C. Đa hình (Polymorphism)
D. Trừu tượng hóa (Abstraction)
72. Loại kiểm thử nào được thực hiện bởi người dùng cuối trong môi trường thực tế để xác nhận hệ thống đáp ứng nhu cầu nghiệp vụ trước khi nghiệm thu?
A. Unit Testing (Kiểm thử đơn vị)
B. Integration Testing (Kiểm thử tích hợp)
C. User Acceptance Testing (UAT)
D. System Testing (Kiểm thử hệ thống)
73. Trong Biểu đồ Hoạt động (Activity Diagram), hình thoi (diamond shape) thường biểu diễn điều gì?
A. Trạng thái bắt đầu
B. Trạng thái kết thúc
C. Quyết định (Decision) hoặc rẽ nhánh
D. Hành động (Action)
74. Mô hình phát triển phần mềm nào đặc trưng bởi các chu kỳ lặp ngắn (sprints), linh hoạt với thay đổi và chuyển giao sản phẩm từng phần?
A. Mô hình Thác nước (Waterfall)
B. Mô hình Agile/Scrum
C. Mô hình chữ V (V-Model)
D. Mô hình Xoắn ốc (Spiral)
75. Trong sơ đồ luồng dữ liệu (DFD), thành phần nào được biểu diễn bằng hai đường thẳng song song (hoặc một hình chữ nhật hở một đầu)?
A. Tác nhân ngoài (External Entity)
B. Quy trình xử lý (Process)
C. Kho dữ liệu (Data Store)
D. Luồng dữ liệu (Data Flow)
76. Khi chuẩn hóa cơ sở dữ liệu, dạng chuẩn nào yêu cầu loại bỏ các phụ thuộc bắc cầu (transitive dependency), tức là thuộc tính không khóa không được phụ thuộc vào thuộc tính không khóa khác?
A. Dạng chuẩn 1 (1NF)
B. Dạng chuẩn 2 (2NF)
C. Dạng chuẩn 3 (3NF)
D. Dạng chuẩn phi chuẩn (Unnormalized)
77. Trong Biểu đồ Lớp (Class Diagram), dấu ‘+’ trước tên phương thức hoặc thuộc tính biểu thị phạm vi truy cập (visibility) nào?
A. Private
B. Public
C. Protected
D. Package
78. Chiến lược chuyển đổi hệ thống nào vận hành song song cả hệ thống cũ và hệ thống mới trong một khoảng thời gian để đảm bảo an toàn?
A. Chuyển đổi trực tiếp (Direct Cutover)
B. Chuyển đổi song song (Parallel Operation)
C. Chuyển đổi thí điểm (Pilot Operation)
D. Chuyển đổi từng giai đoạn (Phased Operation)
79. Thuật ngữ ‘Actor’ trong biểu đồ Use Case đại diện cho điều gì?
A. Chỉ người quản trị hệ thống
B. Bất kỳ thực thể nào (người hoặc hệ thống khác) tương tác với hệ thống
C. Các chức năng bên trong hệ thống
D. Cơ sở dữ liệu của hệ thống
80. Mục đích chính của việc tạo bản mẫu (Prototyping) trong giai đoạn phân tích là gì?
A. Để thay thế hoàn toàn tài liệu đặc tả
B. Để giúp người dùng hình dung rõ hơn về yêu cầu và giao diện hệ thống
C. Để viết mã nguồn chính thức ngay lập tức
D. Để kiểm tra hiệu năng chịu tải của hệ thống
81. Mối quan hệ ‘Composition’ (Hợp thành) trong Biểu đồ Lớp khác với ‘Aggregation’ (Tụ hợp) ở điểm cốt lõi nào?
A. Composition là mối quan hệ lỏng lẻo
B. Trong Composition, phần tử con không thể tồn tại độc lập nếu phần tử cha bị hủy
C. Aggregation biểu thị mối quan hệ sở hữu mạnh mẽ hơn Composition
D. Composition không cho phép kế thừa
82. Kiểm thử hộp đen (Black-box testing) tập trung vào khía cạnh nào của phần mềm?
A. Cấu trúc mã nguồn bên trong
B. Logic thuật toán chi tiết
C. Chức năng đầu vào và đầu ra mà không quan tâm mã nguồn
D. Tối ưu hóa câu lệnh SQL
83. API là viết tắt của thuật ngữ nào trong thiết kế hệ thống?
A. Application Programming Interface
B. Automated Process Integration
C. Applied Protocol Interaction
D. Advanced Programming Instruction
84. Trong mô hình thực thể kết hợp (ERD), quan hệ ‘Nhiều – Nhiều’ (Many-to-Many) giữa hai thực thể thường được xử lý như thế nào khi chuyển sang thiết kế vật lý (bảng)?
A. Gộp hai bảng thành một bảng lớn
B. Thêm khóa ngoại vào cả hai bảng
C. Tạo một bảng trung gian (junction table) chứa khóa chính của cả hai bảng
D. Xóa bỏ mối quan hệ này
85. Đặc điểm nào sau đây KHÔNG phải là tính chất của một thiết kế giao diện người dùng (UI) tốt?
A. Tính nhất quán (Consistency)
B. Phản hồi người dùng (Feedback)
C. Gây bất ngờ cho người dùng (Surprise)
D. Đơn giản và trực quan (Simplicity)
86. Trong Biểu đồ Tuần tự, ‘Lifeline’ (đường đời) của một đối tượng được biểu diễn như thế nào?
A. Một đường thẳng liền nét nằm ngang
B. Một đường đứt nét thẳng đứng bên dưới đối tượng
C. Một hình chữ nhật bao quanh đối tượng
D. Một hình elip chứa tên đối tượng
87. Cohesion (Độ gắn kết) trong thiết kế module nên ở mức nào là tốt nhất?
A. Càng thấp càng tốt
B. Càng cao càng tốt
C. Luôn bằng 0
D. Mức độ trung bình
88. Loại bảo trì nào được thực hiện để sửa chữa các lỗi phát sinh sau khi hệ thống đã đi vào hoạt động?
A. Bảo trì thích ứng (Adaptive)
B. Bảo trì hoàn thiện (Perfective)
C. Bảo trì phòng ngừa (Preventive)
D. Bảo trì khắc phục (Corrective)
89. Khi phân tích yêu cầu, câu hỏi mở (Open-ended question) trong phỏng vấn có tác dụng gì?
A. Thu được câu trả lời ‘Có’ hoặc ‘Không’ nhanh chóng
B. Khuyến khích người được phỏng vấn chia sẻ chi tiết, quan điểm và ý tưởng rộng hơn
C. Giới hạn phạm vi câu trả lời để dễ thống kê
D. Kết thúc buổi phỏng vấn ngay lập tức
90. Trong kiến trúc Client-Server, phần mềm trình duyệt web (Web Browser) thường đóng vai trò là gì?
A. Server
B. Database
C. Client (Thin Client)
D. Middleware
91. Trong phân tích và thiết kế hệ thống thông tin, giai đoạn nào tập trung vào việc xác định ‘hệ thống sẽ làm gì’ thay vì ‘hệ thống sẽ làm như thế nào’?
A. Lập trình.
B. Thiết kế hệ thống.
C. Kiểm thử hệ thống.
D. Phân tích yêu cầu.
92. Một dự án phát triển hệ thống thông tin online có yêu cầu thay đổi liên tục và sự tham gia tích cực từ phía người dùng trong suốt quá trình phát triển nên ưu tiên mô hình vòng đời phát triển hệ thống (SDLC) nào?
A. Agile.
B. Thác nước (Waterfall).
C. Spiral (Vòng xoắn).
D. V-Model.
93. Trong UML, biểu đồ nào được sử dụng để mô tả các hoạt động của hệ thống từ góc độ người dùng, thể hiện mối quan hệ giữa người dùng và các chức năng chính của hệ thống?
A. Biểu đồ lớp (Class Diagram).
B. Biểu đồ Use Case.
C. Biểu đồ trình tự (Sequence Diagram).
D. Biểu đồ hoạt động (Activity Diagram).
94. Thành phần nào trong biểu đồ luồng dữ liệu (DFD) được sử dụng để biểu diễn một nơi lưu trữ dữ liệu mà hệ thống có thể truy cập hoặc cập nhật?
A. Luồng dữ liệu (Data Flow).
B. Kho dữ liệu (Data Store).
C. Tác nhân ngoài (External Entity).
D. Quá trình (Process).
95. Khi thu thập yêu cầu cho một hệ thống quản lý kho hàng online mới, phương pháp phỏng vấn nhóm có thể mang lại lợi ích gì so với phỏng vấn cá nhân?
A. Ít xảy ra mâu thuẫn hoặc bất đồng ý kiến giữa các bên.
B. Giúp thu thập nhiều quan điểm khác nhau và thúc đẩy sự phối hợp giữa các bên liên quan.
C. Đảm bảo tính bảo mật thông tin cá nhân cao hơn.
D. Dễ dàng đào sâu vào các vấn đề cụ thể của từng cá nhân.
96. Yêu cầu nào sau đây là một ví dụ điển hình của yêu cầu phi chức năng (non-functional requirement) đối với một hệ thống thương mại điện tử online?
A. Hệ thống hiển thị danh sách sản phẩm theo danh mục.
B. Hệ thống gửi email xác nhận đơn hàng sau khi thanh toán thành công.
C. Hệ thống phải có khả năng xử lý 1000 giao dịch mỗi phút với thời gian phản hồi không quá 2 giây.
D. Hệ thống cho phép người dùng đăng nhập bằng tài khoản email.
97. Khi thiết kế một hệ thống thông tin online cần khả năng mở rộng (scalability) cao và độc lập giữa các thành phần, kiến trúc nào thường được ưu tiên sử dụng?
A. Kiến trúc Peer-to-Peer.
B. Kiến trúc Monolithic.
C. Kiến trúc Microservices.
D. Kiến trúc Client-Server truyền thống.
98. Chuẩn hóa cơ sở dữ liệu (Database Normalization) ở mức 3NF (Third Normal Form) chủ yếu giải quyết vấn đề gì?
A. Đảm bảo mỗi bảng có một khóa chính duy nhất.
B. Phân chia bảng thành các bảng nhỏ hơn dựa trên dữ liệu không liên quan.
C. Loại bỏ các phụ thuộc bắc cầu của các thuộc tính không khóa vào khóa chính.
D. Loại bỏ tất cả các giá trị NULL trong bảng.
99. Khi thiết kế giao diện người dùng (UI) cho một ứng dụng ngân hàng online, nguyên tắc nào sau đây là quan trọng nhất để đảm bảo tính an toàn và trải nghiệm người dùng tích cực?
A. Cung cấp tùy chọn tùy chỉnh giao diện phức tạp cho mọi đối tượng người dùng.
B. Tối giản hóa số lượng bước để hoàn thành một giao dịch, đôi khi bỏ qua các bước xác nhận.
C. Đảm bảo tính nhất quán và rõ ràng trong các thông báo lỗi và phản hồi hành động của người dùng.
D. Sử dụng nhiều màu sắc và hình ảnh động để thu hút sự chú ý.
100. Trong quá trình kiểm thử hệ thống thông tin online, kiểm thử tích hợp (Integration Testing) có mục đích chính là gì?
A. Kiểm tra từng đơn vị mã nguồn nhỏ nhất một cách độc lập.
B. Kiểm tra xem hệ thống có thể hoạt động dưới tải trọng cao và trong thời gian dài hay không.
C. Kiểm tra sự tương tác và giao tiếp giữa các module hoặc thành phần khác nhau của hệ thống.
D. Kiểm tra toàn bộ hệ thống để đảm bảo nó đáp ứng các yêu cầu nghiệp vụ.
101. Đâu là một trong những nguyên tắc cốt lõi của thiết kế bảo mật, nhằm giới hạn mức độ thiệt hại nếu một thành phần bị xâm nhập?
A. Nguyên tắc bảo mật bằng sự tối nghĩa (Security by Obscurity).
B. Nguyên tắc đặc quyền tối thiểu (Least Privilege).
C. Nguyên tắc chia sẻ thông tin tối đa.
D. Nguyên tắc truy cập phổ quát.
102. Trong quản lý dự án phát triển hệ thống thông tin, việc xác định các rủi ro tiềm ẩn và lập kế hoạch ứng phó nên được thực hiện vào giai đoạn nào của vòng đời dự án?
A. Giai đoạn lập kế hoạch dự án.
B. Chỉ khi hệ thống đã đi vào hoạt động.
C. Sau khi hoàn thành thiết kế hệ thống.
D. Chỉ trong giai đoạn kiểm thử cuối cùng.
103. Điểm khác biệt chính giữa biểu đồ thực thể-quan hệ (ERD) và biểu đồ lớp (Class Diagram) trong ngữ cảnh mô hình hóa dữ liệu là gì?
A. ERD chỉ dùng cho hệ thống online, còn biểu đồ lớp dùng cho hệ thống offline.
B. ERD mô tả luồng dữ liệu, còn biểu đồ lớp mô tả các trường hợp sử dụng.
C. ERD tập trung vào mô hình hóa dữ liệu trong cơ sở dữ liệu, trong khi biểu đồ lớp mô hình hóa cấu trúc tĩnh của hệ thống hướng đối tượng bao gồm cả dữ liệu và hành vi.
D. ERD dùng để thiết kế giao diện người dùng, còn biểu đồ lớp dùng cho thiết kế kiến trúc hệ thống.
104. Một công ty quyết định sử dụng phần mềm kế toán có sẵn từ một nhà cung cấp bên ngoài thay vì tự phát triển. Đây là một ví dụ về chiến lược tìm nguồn cung ứng (system acquisition) nào?
A. Gia công phần mềm (Outsourcing).
B. Phát triển phần mềm mã nguồn mở.
C. Mua phần mềm thương mại có sẵn (COTS).
D. Phát triển phần mềm nội bộ (In-house development).
105. Nguyên tắc ‘khả năng truy cập’ (accessibility) trong thiết kế UI/UX cho hệ thống online nhắm đến mục tiêu chính nào?
A. Giúp hệ thống load nhanh hơn trên mọi thiết bị.
B. Đảm bảo hệ thống có thể được sử dụng bởi nhiều đối tượng người dùng nhất có thể, bao gồm cả người khuyết tật.
C. Làm cho giao diện trông hiện đại và hấp dẫn hơn.
D. Tối ưu hóa hệ thống để chạy trên các trình duyệt web cũ.
106. Đặc điểm nào sau đây KHÔNG phải là một lợi ích chính của kiến trúc dựa trên sự kiện (Event-driven Architecture) trong việc thiết kế hệ thống online quy mô lớn?
A. Khả năng ghép nối lỏng lẻo (loose coupling) giữa các thành phần.
B. Tăng khả năng mở rộng (scalability) và khả năng phản hồi (responsiveness).
C. Giảm độ phức tạp trong việc quản lý các luồng dữ liệu và đảm bảo tính nhất quán của dữ liệu.
D. Tăng cường khả năng phục hồi (resilience) của hệ thống.
107. Phương pháp thu thập yêu cầu nào sau đây liên quan đến việc quan sát người dùng thực hiện công việc của họ trong môi trường tự nhiên?
A. Khảo sát (Questionnaire).
B. Phỏng vấn (Interview).
C. Quan sát (Observation).
D. Phân tích tài liệu (Document Analysis).
108. Trong thiết kế hệ thống online, việc sử dụng các API RESTful mang lại lợi ích chính nào về mặt kiến trúc?
A. Chỉ cho phép giao tiếp giữa các thành phần trong cùng một máy chủ.
B. Đảm bảo tất cả các giao dịch đều có tính ACID (Atomicity, Consistency, Isolation, Durability).
C. Yêu cầu sử dụng một ngôn ngữ lập trình cụ thể cho cả client và server.
D. Tăng cường tính không trạng thái (statelessness), khả năng mở rộng và khả năng tương tác giữa các hệ thống.
109. Loại bảo trì nào liên quan đến việc sửa lỗi được phát hiện sau khi hệ thống đã triển khai, nhằm phục hồi chức năng của hệ thống?
A. Bảo trì thích nghi (Adaptive Maintenance).
B. Bảo trì phòng ngừa (Preventive Maintenance).
C. Bảo trì hoàn thiện (Perfective Maintenance).
D. Bảo trì sửa lỗi (Corrective Maintenance).
110. Một startup công nghệ cần phát triển một hệ thống thông tin online với khả năng mở rộng nhanh chóng và chi phí trả theo mức sử dụng, giải pháp triển khai nào sau đây là phù hợp nhất?
A. Thuê máy chủ vật lý riêng (Dedicated Server).
B. Xây dựng trung tâm dữ liệu riêng.
C. Sử dụng nền tảng điện toán đám mây (Cloud Computing).
D. Sử dụng hosting dùng chung (Shared Hosting).
111. Trong mô hình Agile, ‘Sprint Retrospective’ có mục đích chính là gì?
A. Để nhóm tự nhìn lại và cải tiến quy trình làm việc trong các Sprint tiếp theo.
B. Lập kế hoạch chi tiết cho các tác vụ sẽ thực hiện trong Sprint tiếp theo.
C. Trình bày sản phẩm đã hoàn thành cho khách hàng và thu thập phản hồi.
D. Thực hiện kiểm thử chấp nhận người dùng cuối.
112. Kỹ thuật bảo mật nào sau đây giúp ngăn chặn các cuộc tấn công Cross-Site Scripting (XSS) hiệu quả nhất trên các hệ thống web online?
A. Mã hóa (Escaping) hoặc làm sạch (Sanitizing) tất cả dữ liệu đầu vào và đầu ra từ người dùng.
B. Thực hiện xác thực hai yếu tố (2FA) cho tất cả người dùng.
C. Sử dụng HTTPS để mã hóa kết nối giữa client và server.
D. Triển khai tường lửa ứng dụng web (WAF).
113. Trước khi triển khai một hệ thống online mới vào môi trường sản phẩm, việc sao lưu dữ liệu hiện có và lập kế hoạch khôi phục (rollback) có ý nghĩa quan trọng nhất là gì?
A. Giúp tăng tốc độ tải của hệ thống sau khi triển khai.
B. Giảm thiểu chi phí bảo trì hệ thống trong tương lai.
C. Đảm bảo an toàn dữ liệu và khả năng khôi phục hệ thống về trạng thái ban đầu nếu có sự cố xảy ra trong quá trình triển khai.
D. Đảm bảo tuân thủ các quy định về bảo mật thông tin.
114. Trong một dự án phát triển hệ thống thông tin, yêu cầu thay đổi (change request) thường phát sinh vào thời điểm nào và cần được quản lý như thế nào?
A. Chỉ phát sinh trong giai đoạn phân tích yêu cầu ban đầu và không được chấp nhận sau đó.
B. Luôn được chấp nhận ngay lập tức để đáp ứng nhu cầu của người dùng.
C. Chỉ được xem xét khi hệ thống đã hoàn thành và chuẩn bị triển khai.
D. Có thể phát sinh bất cứ lúc nào trong vòng đời dự án và cần được ghi nhận, đánh giá tác động, và phê duyệt chính thức.
115. Biểu đồ luồng dữ liệu (DFD) cấp 0, còn gọi là biểu đồ ngữ cảnh (Context Diagram), có đặc điểm gì nổi bật?
A. Nó hiển thị tất cả các kho dữ liệu chi tiết của hệ thống.
B. Nó mô tả các chức năng chi tiết bên trong của từng quy trình con.
C. Nó chỉ tập trung vào luồng điều khiển chứ không phải luồng dữ liệu.
D. Nó biểu diễn toàn bộ hệ thống như một quá trình duy nhất, cùng với các tác nhân bên ngoài và luồng dữ liệu chính giữa chúng.
116. Để đánh giá khả năng chịu tải và tốc độ phản hồi của một hệ thống bán vé online vào thời điểm có lượng truy cập cao điểm, loại kiểm thử nào là phù hợp nhất?
A. Kiểm thử chức năng (Functional Testing).
B. Kiểm thử đơn vị (Unit Testing).
C. Kiểm thử bảo mật (Security Testing).
D. Kiểm thử hiệu năng (Performance Testing).
117. Sau khi triển khai một trang web thương mại điện tử, công cụ phân tích web (Web Analytics) có thể cung cấp thông tin giá trị nào cho việc cải tiến hệ thống?
A. Bảng lương chi tiết của nhân viên phát triển dự án.
B. Dữ liệu về hành vi người dùng như số lượt truy cập, tỷ lệ thoát, đường dẫn người dùng để tối ưu hóa trải nghiệm và chuyển đổi.
C. Thông tin về các lỗ hổng bảo mật cấp độ thấp trong mã nguồn.
D. Dự báo thời tiết cho khu vực mà hệ thống đang hoạt động.
118. Vai trò chính của Continuous Integration (CI) trong quy trình phát triển hệ thống online hiện đại là gì?
A. Tạo ra các tài liệu thiết kế hệ thống chi tiết.
B. Quản lý các yêu cầu thay đổi từ khách hàng.
C. Chỉ chịu trách nhiệm triển khai phiên bản phần mềm lên môi trường sản xuất.
D. Tự động hóa quá trình tích hợp mã nguồn từ nhiều nhà phát triển, phát hiện lỗi sớm và đảm bảo chất lượng mã.
119. Công nghệ Blockchain có thể được ứng dụng trong thiết kế hệ thống thông tin online để giải quyết vấn đề nào sau đây một cách hiệu quả nhất?
A. Giảm thiểu chi phí lưu trữ dữ liệu lớn.
B. Tăng tốc độ xử lý các truy vấn cơ sở dữ liệu phức tạp.
C. Đảm bảo tính toàn vẹn, minh bạch và chống giả mạo cho dữ liệu trong các giao dịch.
D. Cải thiện khả năng truy cập và trải nghiệm người dùng cuối.
120. Khi thiết kế một hệ thống website thương mại điện tử, yếu tố nào cần được xem xét ngay từ đầu để tối ưu hóa công cụ tìm kiếm (SEO)?
A. Sử dụng hình ảnh động và video chất lượng cao trên mọi trang.
B. Chỉ tập trung vào tốc độ tải trang mà bỏ qua nội dung.
C. Triển khai nhiều quảng cáo pop-up để tăng tương tác.
D. Cấu trúc URL thân thiện, thẻ meta hợp lý, và tối ưu hóa nội dung cho các công cụ tìm kiếm.
121. Trong vòng đời phát triển hệ thống (SDLC), mô hình nào thực hiện các giai đoạn theo một trình tự tuyến tính và nghiêm ngặt?
A. Mô hình Thác nước (Waterfall model)
B. Mô hình Xoắn ốc (Spiral model)
C. Mô hình Agile
D. Mô hình Prototyping
122. Yêu cầu nào sau đây được phân loại là ‘Yêu cầu chức năng’ (Functional Requirement)?
A. Hệ thống phải có khả năng sao lưu dữ liệu tự động hàng ngày
B. Giao diện hệ thống phải thân thiện với người dùng
C. Hệ thống phải cho phép người quản lý tạo báo cáo doanh thu hàng tháng
D. Hệ thống phải phản hồi kết quả tìm kiếm trong vòng dưới 2 giây
123. Trong sơ đồ luồng dữ liệu (DFD), ký hiệu hình chữ nhật hở một đầu (hoặc hai đường thẳng song song) đại diện cho thành phần nào?
A. Tiến trình (Process)
B. Kho dữ liệu (Data Store)
C. Tác nhân ngoài (External Entity)
D. Luồng dữ liệu (Data Flow)
124. Kỹ thuật thu thập yêu cầu nào cho phép các bên liên quan thảo luận tập trung trong một thời gian ngắn để đạt được sự đồng thuận nhanh chóng?
A. Phỏng vấn cá nhân
B. Phát phiếu điều tra
C. Quan sát thực tế
D. Thiết kế ứng dụng chung (JAD – Joint Application Development)
125. Trong mô hình quan hệ thực thể (ERD), mối quan hệ giữa ‘Lớp học’ và ‘Sinh viên’ (biết một lớp có nhiều sinh viên và một sinh viên chỉ thuộc một lớp) là loại nào?
A. Một – Một (1:1)
B. Một – Nhiều (1:N)
C. Nhiều – Nhiều (M:N)
D. Nhiều – Một (N:1) nhưng tính từ phía Sinh viên
126. Mục tiêu chính của việc chuẩn hóa dữ liệu (Normalization) trong thiết kế cơ sở dữ liệu là gì?
A. Tăng tốc độ truy xuất dữ liệu tối đa
B. Giảm thiểu dư thừa dữ liệu và tránh các bất thường (anomalies)
C. Tạo ra nhiều bảng nhất có thể
D. Dễ dàng viết các câu lệnh truy vấn phức tạp
127. Biểu đồ UML nào mô tả các tương tác giữa các đối tượng theo trình tự thời gian?
A. Biểu đồ lớp (Class Diagram)
B. Biểu đồ ca sử dụng (Use Case Diagram)
C. Biểu đồ trình tự (Sequence Diagram)
D. Biểu đồ trạng thái (State Diagram)
128. Khi phân tích tính khả thi, việc xem xét liệu tổ chức có đủ ngân sách và nhân sự để xây dựng hệ thống hay không thuộc khía cạnh nào?
A. Khả thi về kỹ thuật
B. Khả thi về kinh tế
C. Khả thi về vận hành
D. Khả thi về pháp lý
129. Trong thiết kế hướng đối tượng, nguyên lý nào cho phép một đối tượng ẩn giấu các chi tiết cài đặt bên trong và chỉ lộ ra các giao diện cần thiết?
A. Tính kế thừa (Inheritance)
B. Tính đa hình (Polymorphism)
C. Tính đóng gói (Encapsulation)
D. Tính trừu tượng (Abstraction)
130. Loại kiểm thử nào được thực hiện để đảm bảo các thành phần phần mềm riêng lẻ hoạt động chính xác khi kết hợp lại với nhau?
A. Kiểm thử đơn vị (Unit Testing)
B. Kiểm thử tích hợp (Integration Testing)
C. Kiểm thử hệ thống (System Testing)
D. Kiểm thử chấp nhận (Acceptance Testing)
131. Chiến lược chuyển đổi hệ thống nào tiềm ẩn rủi ro cao nhất khi hệ thống mới thay thế hoàn toàn hệ thống cũ ngay lập tức?
A. Chuyển đổi trực tiếp (Direct cutover)
B. Chuyển đổi song song (Parallel conversion)
C. Chuyển đổi theo giai đoạn (Phased conversion)
D. Chuyển đổi thí điểm (Pilot conversion)
132. Trong DFD mức ngữ cảnh (Context Diagram), có tối đa bao nhiêu tiến trình (Process) được xuất hiện?
A. Không giới hạn
B. tiến trình
C. tiến trình duy nhất
D. tiến trình
133. Thuộc tính nào được dùng để phân biệt duy nhất mỗi bản ghi trong một bảng của cơ sở dữ liệu quan hệ?
A. Khóa ngoại (Foreign Key)
B. Khóa chính (Primary Key)
C. Chỉ mục (Index)
D. Thuộc tính đa trị
134. UML viết tắt của cụm từ nào sau đây?
A. Unified Modeling Language
B. Universal Management Logic
C. User Modeling Layout
D. Unique Modern Language
135. Trong thiết kế giao diện, nguyên tắc ‘Sự nhất quán’ (Consistency) có nghĩa là gì?
A. Mỗi trang phải có một màu sắc hoàn toàn khác nhau
B. Các thành phần tương tự nên có hình dáng và cách hoạt động giống nhau trong toàn hệ thống
C. Hệ thống phải hỗ trợ nhiều ngôn ngữ khác nhau
D. Giao diện phải thay đổi linh hoạt theo sở thích cá nhân của mỗi người dùng
136. Bảo trì hệ thống nhằm mục đích sửa chữa các lỗi phần mềm được phát hiện sau khi hệ thống đã đi vào vận hành gọi là gì?
A. Bảo trì thích nghi (Adaptive maintenance)
B. Bảo trì hoàn thiện (Perfective maintenance)
C. Bảo trì khắc phục (Corrective maintenance)
D. Bảo trì phòng ngừa (Preventive maintenance)
137. Trong mô hình Agile (như Scrum), một chu kỳ phát triển ngắn (thường từ 1-4 tuần) được gọi là gì?
A. Sprint
B. Iteration
C. Milestone
D. Session
138. Yếu tố nào sau đây là quan trọng nhất để đảm bảo thành công của dự án phân tích và thiết kế hệ thống?
A. Sử dụng công nghệ mới nhất
B. Sự tham gia và hỗ trợ tích cực của người dùng/khách hàng
C. Có đội ngũ lập trình viên đông đảo
D. Viết tài liệu hướng dẫn cực kỳ chi tiết
139. Dạng chuẩn nào yêu cầu mọi thuộc tính không phải khóa phải phụ thuộc hàm đầy đủ vào khóa chính?
A. Dạng chuẩn 1 (1NF)
B. Dạng chuẩn 2 (2NF)
C. Dạng chuẩn 3 (3NF)
D. Dạng chuẩn Boyce-Codd (BCNF)
140. Từ điển dữ liệu (Data Dictionary) dùng để làm gì trong giai đoạn phân tích?
A. Lưu trữ mật khẩu của người dùng
B. Mô tả chi tiết ý nghĩa và cấu trúc của các phần tử dữ liệu trong hệ thống
C. Dịch các câu lệnh SQL sang ngôn ngữ tự nhiên
D. Thống kê số lượng bản ghi trong cơ sở dữ liệu
141. Thành phần nào trong biểu đồ ca sử dụng (Use Case Diagram) đại diện cho người hoặc hệ thống bên ngoài tương tác với hệ thống đang thiết kế?
A. Ca sử dụng (Use Case)
B. Tác nhân (Actor)
C. Ranh giới hệ thống (System Boundary)
D. Đường kết nối (Association)
142. Kiểm thử hộp đen (Black-box Testing) tập trung vào khía cạnh nào?
A. Kiểm tra cấu trúc mã nguồn bên trong
B. Kiểm tra các luồng xử lý logic của thuật toán
C. Kiểm tra chức năng của hệ thống dựa trên đầu vào và đầu ra mà không cần biết mã nguồn
D. Kiểm tra hiệu năng của máy chủ vật lý
143. Trong thiết kế hệ thống, khái niệm ‘Cohesion’ (Độ kết dính) nên ở mức độ nào là tốt nhất?
A. Thấp
B. Trung bình
C. Cao
D. Không cần thiết
144. Kỹ thuật nào giúp chuyển đổi các yêu cầu trừu tượng thành các mô hình chức năng trực quan thông qua việc xây dựng các phiên bản sơ khai của hệ thống?
A. Lập mô hình dữ liệu
B. Làm mẫu (Prototyping)
C. Phân tích luồng công việc
D. Phỏng vấn nhóm
145. Tại sao việc xác định ranh giới hệ thống (System Boundary) lại quan trọng trong giai đoạn phân tích?
A. Để biết được hệ thống cần bao nhiêu ổ cứng
B. Để xác định phạm vi công việc, cái gì thuộc về hệ thống và cái gì nằm ngoài hệ thống
C. Để quyết định ngôn ngữ lập trình nào sẽ được sử dụng
D. Để tính toán lương cho nhân viên dự án
146. Mối quan hệ ‘Inheritance’ (Kế thừa) trong UML được biểu diễn bằng ký hiệu nào?
A. Đường thẳng có mũi tên hình tam giác rỗng hướng về lớp cha
B. Đường nét đứt có mũi tên hướng về phía giao diện
C. Đường thẳng có hình thoi đặc ở một đầu
D. Đường thẳng có hình thoi rỗng ở một đầu
147. Dạng chuẩn 3 (3NF) ngăn chặn loại phụ thuộc nào sau đây?
A. Phụ thuộc hàm đầy đủ
B. Phụ thuộc hàm bộ phận
C. Phụ thuộc bắc cầu (Transitive dependency)
D. Phụ thuộc đa trị
148. Công cụ nào thường được dùng để mô tả các quy tắc nghiệp vụ phức tạp với nhiều điều kiện kết hợp khác nhau một cách có hệ thống?
A. Bảng quyết định (Decision Table)
B. Sơ đồ luồng dữ liệu (DFD)
C. Biểu đồ lớp (Class Diagram)
D. Sơ đồ ngữ cảnh
149. Trong kiến trúc 3 lớp (3-tier architecture), lớp nào chịu trách nhiệm lưu trữ và truy xuất dữ liệu?
A. Lớp trình diễn (Presentation Layer)
B. Lớp logic nghiệp vụ (Business Logic Layer)
C. Lớp dữ liệu (Data Layer)
D. Lớp bảo mật
150. Yêu cầu phi chức năng (Non-functional Requirement) nào liên quan đến khả năng hệ thống tiếp tục hoạt động khi có sự cố xảy ra?
A. Tính khả dụng (Availability)
B. Tính bảo mật (Security)
C. Tính bảo trì (Maintainability)
D. Tính chịu lỗi (Fault tolerance)