400+ câu Trắc nghiệm Lập trình hệ thống có đáp án - Phần 10
30 câu hỏi
Trong thiết kế hệ thống, ‘cơ sở dữ liệu quan hệ’ (relational database) lưu trữ dữ liệu dưới dạng nào?
Các cây và nhánh
Các bảng (tables) bao gồm các hàng (rows) và cột (columns) với các mối quan hệ được định nghĩa giữa chúng
Các tài liệu văn bản phi cấu trúc
Các đồ thị có hướng
Chọn đáp án B
Trong thiết kế hệ thống, ‘giao diện lập trình ứng dụng’ (Application Programming Interface – API) có vai trò là:
Mã nguồn đầy đủ của một ứng dụng
Một tập hợp các định nghĩa và giao thức cho phép các ứng dụng khác tương tác với nhau và truy cập các chức năng hoặc dữ liệu của một dịch vụ
Cơ sở dữ liệu lưu trữ thông tin người dùng
Công cụ để kiểm tra lỗi trong mã nguồn
Chọn đáp án B
Mục tiêu chính của việc xây dựng mô hình dữ liệu (data modeling) là gì?
Đảm bảo hiệu năng xử lý của ứng dụng
Xác định các quy trình nghiệp vụ cần tự động hóa
Hiểu và biểu diễn cấu trúc dữ liệu, mối quan hệ và các ràng buộc của dữ liệu trong hệ thống
Thiết kế giao diện người dùng trực quan và dễ sử dụng
Chọn đáp án C
Trong mô hình Agile, vai trò của ‘Product Owner’ là gì?
Chịu trách nhiệm kỹ thuật cho việc phát triển sản phẩm
Quản lý quá trình phát triển và loại bỏ các trở ngại cho nhóm
Đại diện cho khách hàng, xác định và ưu tiên các tính năng của sản phẩm trong Product Backlog
Thực hiện các bài kiểm thử và đảm bảo chất lượng sản phẩm
Chọn đáp án C
Biểu đồ trạng thái (Statechart Diagram) trong UML được sử dụng để mô tả điều gì?
Mối quan hệ giữa các lớp trong hệ thống
Luồng dữ liệu qua các thành phần của hệ thống
Các trạng thái khác nhau mà một đối tượng có thể trải qua trong vòng đời của nó và các sự kiện gây ra sự chuyển đổi trạng thái
Cấu trúc và mối quan hệ giữa các thành phần phần cứng
Chọn đáp án C
Khi phân tích hệ thống, việc sử dụng ‘bảng quyết định’ (decision table) hữu ích nhất cho việc gì?
Mô tả cấu trúc dữ liệu của hệ thống
Biểu diễn các quy tắc nghiệp vụ phức tạp và các kết hợp điều kiện/hành động khác nhau một cách có cấu trúc
Xác định các thành phần giao diện người dùng
Lập kế hoạch kiểm thử hệ thống
Chọn đáp án B
Khi thiết kế một hệ thống, việc sử dụng các lớp trừu tượng (abstract classes) và các giao diện (interfaces) trong lập trình hướng đối tượng giúp đạt được mục tiêu nào?
Tăng tốc độ biên dịch mã nguồn
Tạo ra các lớp có khả năng tự chạy độc lập
Khuyến khích tính tái sử dụng mã và hỗ trợ đa hình (polymorphism)
Giảm thiểu việc sử dụng bộ nhớ của hệ thống
Chọn đáp án C
Trong giai đoạn thiết kế hệ thống, ‘UI/UX design’ tập trung vào khía cạnh nào?
Cấu trúc cơ sở dữ liệu và các thuật toán
Trải nghiệm tổng thể của người dùng khi tương tác với hệ thống, bao gồm cả giao diện và cách thức hoạt động
Hiệu năng xử lý của máy chủ
An ninh mạng và phòng chống tấn công
Chọn đáp án B
Trong thiết kế hệ thống, ‘thiết kế hướng đối tượng’ (Object-Oriented Design – OOD) nhấn mạnh vào việc:
Tối ưu hóa việc sử dụng bộ nhớ
Mô hình hóa hệ thống dựa trên các đối tượng, lớp, kế thừa, đóng gói và đa hình
Phân tích luồng dữ liệu và quy trình xử lý
Đảm bảo tính nhất quán của dữ liệu trong cơ sở dữ liệu
Chọn đáp án B
Trong thiết kế hệ thống, ‘tính kế thừa’ (inheritance) trong lập trình hướng đối tượng cho phép?
Một lớp có thể có nhiều đối tượng
Một lớp có thể kế thừa các thuộc tính và phương thức từ một lớp cha, tạo ra mối quan hệ ‘là một loại của’ (is-a)
Một lớp có thể thay đổi hành vi của lớp cha
Các lớp độc lập hoàn toàn với nhau
Chọn đáp án B
Công nghệ ‘kiến trúc microservices’ có ưu điểm chính là gì so với kiến trúc ‘monolithic’ truyền thống?
Đơn giản hóa việc triển khai và quản lý toàn bộ ứng dụng
Tăng khả năng phát triển, triển khai và mở rộng độc lập từng thành phần của ứng dụng
Giảm thiểu số lượng yêu cầu về giao tiếp mạng
Yêu cầu ít tài nguyên phần cứng hơn để chạy
Chọn đáp án B
Trong chu trình phát triển hệ thống thông tin (SDLC), giai đoạn nào chịu trách nhiệm xác định rõ ràng các yêu cầu nghiệp vụ và kỹ thuật của hệ thống mới hoặc cải tiến?
Giai đoạn Thiết kế (Design)
Giai đoạn Phát triển (Development)
Giai đoạn Khảo sát và Phân tích yêu cầu (Requirements Analysis)
Giai đoạn Kiểm thử và Triển khai (Testing and Deployment)
Chọn đáp án B
Trong phân tích hệ thống, ‘kịch bản sử dụng’ (use case) mô tả điều gì?
Kiến trúc kỹ thuật chi tiết của hệ thống
Một tương tác cụ thể giữa người dùng (actor) và hệ thống để đạt được một mục tiêu
Cấu trúc cơ sở dữ liệu và mối quan hệ giữa các bảng
Quy trình kiểm thử đơn vị cho từng module phần mềm.Phần mềm
Chọn đáp án B
Mô hình RUP (Rational Unified Process) là một quy trình phát triển phần mềm có đặc điểm chính là gì?
Chỉ tập trung vào giai đoạn thiết kế
Mang tính lặp và tăng trưởng (iterative and incremental), bao gồm nhiều pha như Khởi tạo, Phát triển, Tương tác, và Đóng gói
Sử dụng phương pháp Waterfall truyền thống
Chỉ phù hợp với các dự án phần mềm nhúng
Chọn đáp án B
Khi phân tích một hệ thống hiện có, việc sử dụng ‘phỏng vấn’ là một kỹ thuật để:
Kiểm tra tính bảo mật của hệ thống
Đánh giá hiệu năng phần cứng
Thu thập thông tin từ người dùng và các bên liên quan về cách họ sử dụng hệ thống và những vấn đề họ gặp phải
Tạo mã nguồn mới cho hệ thống
Chọn đáp án C
Kiến trúc ‘client-server’ là gì?
Một mô hình nơi tất cả các máy tính trong mạng đều có vai trò ngang nhau.Phần cứng máy tính
Một mô hình mạng nơi một máy chủ (server) cung cấp tài nguyên hoặc dịch vụ cho nhiều máy khách (clients)
Một kiến trúc chỉ sử dụng cho các ứng dụng di động
Một mô hình mà mọi dữ liệu được lưu trữ trên một máy tính duy nhất
Chọn đáp án B
Khi thiết kế giao diện người dùng, ‘nguyên tắc nhất quán’ (consistency) có vai trò gì quan trọng nhất?
Giúp người dùng làm quen nhanh chóng với hệ thống và giảm thiểu sai sót
Tăng tính thẩm mỹ cho giao diện
Đảm bảo hệ thống hoạt động nhanh hơn
Giảm số lượng dòng mã nguồn cần viết
Chọn đáp án A
Trong thiết kế hệ thống, ‘nguyên tắc tách biệt mối quan tâm’ (Separation of Concerns – SoC) đề cập đến điều gì?
Chia nhỏ hệ thống thành các module độc lập, mỗi module giải quyết một khía cạnh chức năng hoặc nghiệp vụ cụ thể
Tách biệt hoàn toàn dữ liệu và logic xử lý
Phân chia trách nhiệm giữa các nhóm phát triển khác nhau
Sử dụng các công nghệ khác nhau cho các phần khác nhau của hệ thống
Chọn đáp án A
Biểu đồ tuần tự (Sequence Diagram) trong UML mô tả điều gì?
Cấu trúc tĩnh của hệ thống
Trình tự tương tác giữa các đối tượng trong một kịch bản sử dụng cụ thể, thể hiện theo thời gian
Các trạng thái của một đối tượng
Luồng dữ liệu trong một hệ thống
Chọn đáp án B
Trong các kỹ thuật thu thập yêu cầu, ‘brainstorming’ (động não) là một phương pháp chủ yếu để:
Kiểm tra tính khả thi của các yêu cầu
Tạo ra ý tưởng mới và giải pháp tiềm năng một cách tự do, không giới hạn, từ một nhóm người
Tài liệu hóa các quy trình hiện có
Đánh giá hiệu năng của hệ thống
Chọn đáp án B
Khi thiết kế hệ thống, ‘cụm từ khóa’ (keyword) được sử dụng trong phân tích yêu cầu để:
Tạo ra mã nguồn tự động
Xác định các yêu cầu quan trọng, khẩn cấp hoặc các điều kiện đặc biệt cần lưu ý
Đánh giá hiệu năng của hệ thống
Thiết kế giao diện người dùng hấp dẫn
Chọn đáp án B
Khi thiết kế cơ sở dữ liệu, ‘khóa chính’ (primary key) có vai trò gì?
Liên kết hai bảng với nhau
Xác định duy nhất mỗi bản ghi (row) trong một bảng và đảm bảo tính toàn vẹn dữ liệu
Lưu trữ thông tin bổ sung về bản ghi
Xác định mối quan hệ giữa các thuộc tính
Chọn đáp án B
Trong các phương pháp phát triển phần mềm, ‘phương pháp thác nước’ (Waterfall model) có đặc điểm nổi bật là:Phần mềm
Tính lặp và linh hoạt cao, cho phép thay đổi yêu cầu liên tục
Tuân theo một trình tự tuyến tính, tuần tự các giai đoạn (yêu cầu, thiết kế, triển khai, kiểm thử, bảo trì), mỗi giai đoạn phải hoàn thành trước khi bắt đầu giai đoạn tiếp theo
Tập trung vào phát triển nhanh các nguyên mẫu
Sử dụng các vòng lặp ngắn để phát triển và giao sản phẩm
Chọn đáp án B
Khi phân tích hệ thống cũ, ‘phân tích tài liệu hiện có’ (document analysis) giúp ích như thế nào cho nhà phân tích?
Hiểu rõ các quy trình kinh doanh, cấu trúc dữ liệu và các chức năng hiện tại của hệ thống
Đánh giá thái độ và sự hài lòng của người dùng đối với hệ thống
Kiểm tra mã nguồn để tìm lỗi bảo mật
Xác định các yêu cầu mới dựa trên xu hướng thị trường
Chọn đáp án A
Yêu cầu phi chức năng (non-functional requirement) đề cập đến khía cạnh nào của hệ thống?
Các chức năng cụ thể mà hệ thống phải thực hiện (ví dụ: đăng nhập, tìm kiếm)
Cách thức hệ thống hoạt động, như hiệu năng, bảo mật, khả năng sử dụng, độ tin cậy
Giao diện người dùng và trải nghiệm người dùng
Các quy tắc nghiệp vụ mà hệ thống phải tuân thủ
Chọn đáp án B
Việc áp dụng ‘kiến trúc lớp’ (layered architecture) trong thiết kế hệ thống giúp tách biệt các chức năng thành các lớp logic như thế nào?
Tất cả các lớp đều có thể truy cập trực tiếp lẫn nhau
Các lớp được tổ chức theo cấp độ trừu tượng, ví dụ: lớp trình bày (presentation), lớp nghiệp vụ (business logic), lớp truy cập dữ liệu (data access)
Mỗi lớp chỉ chứa một chức năng duy nhất
Các lớp không có bất kỳ mối quan hệ nào với nhau
Chọn đáp án B
Khi phân tích hệ thống, việc thực hiện ‘quan sát trực tiếp’ (observation) giúp nhà phân tích đạt được điều gì?
Hiểu được quy trình làm việc thực tế của người dùng và các vấn đề tiềm ẩn mà họ có thể không nêu ra khi phỏng vấn
Tự động tạo báo cáo kiểm thử
Đánh giá hiệu quả của các chiến dịch marketing
Phát triển chiến lược kinh doanh mới
Chọn đáp án A
Việc sử dụng ‘khảo sát’ (survey) để thu thập yêu cầu có ưu điểm gì so với phỏng vấn?
Cung cấp thông tin chi tiết và sâu sắc hơn về từng cá nhân
Cho phép thu thập thông tin từ một số lượng lớn người dùng một cách hiệu quả và có hệ thống
Dễ dàng phát hiện các vấn đề tiềm ẩn không được người dùng nhận thức
Cho phép tương tác trực tiếp và đặt câu hỏi làm rõ ngay lập tức
Chọn đáp án B
Trong thiết kế cơ sở dữ liệu, ‘chuẩn hóa’ (normalization) là một kỹ thuật nhằm mục đích gì?
Tăng tốc độ truy vấn dữ liệu
Giảm thiểu sự dư thừa dữ liệu và các vấn đề phát sinh như ‘insertion anomaly’, ‘deletion anomaly’, ‘update anomaly’
Đơn giản hóa việc thiết kế giao diện người dùng
Tăng cường khả năng bảo mật cho cơ sở dữ liệu
Chọn đáp án B
Việc sử dụng ‘nguyên mẫu’ (prototype) trong quá trình phân tích và thiết kế hệ thống có lợi ích chính là gì?
Thay thế hoàn toàn giai đoạn phát triển phần mềm.Phần mềm
Giúp làm rõ và xác nhận yêu cầu với người dùng, thu thập phản hồi sớm
Tự động hóa quy trình kiểm thử hệ thống
Đảm bảo hiệu năng hoạt động của hệ thống ở mức tối ưu
Chọn đáp án B








