Trắc nghiệm Công nghệ Phần mềm Bài: CASE STUDY CHO PHA THIẾT KẾ Trắc nghiệm Công nghệ Phần mềm Bài: CASE STUDY CHO PHA THIẾT KẾ 25 câu hỏi 30 phút Công nghệ Phần mềmBẮT ĐẦU LÀM BÀITrắc nghiệm Công nghệ Phần mềm Bài: CASE STUDY CHO PHA THIẾT KẾ 25 câu hỏi 30 phút Công nghệ Phần mềmPHẦN I. Câu trắc nghiệm nhiều phương án lựa chọn.Câu 1Nhận biếtTrong pha thiết kế cho hệ thống đặt món ăn trực tuyến, nếu mục tiêu là phát triển độc lập các phần `Quản lý Đơn hàng`, `Quản lý Nhà hàng` và `Quản lý Giao hàng` và khả năng mở rộng từng phần riêng biệt, kiến trúc nào sẽ được ưu tiên?A.Kiến trúc tập trung (Monolithic).B.Kiến trúc phân lớp (Layered Architecture).C.Kiến trúc Client-Server đơn giản.D.D Lát kiểm tra lại Câu 2Nhận biếtThiết kế một hệ thống đặt món ăn trực tuyến theo mô hình 3 tầng (3-tier architecture), nơi logic xử lý đơn hàng sẽ nằm ở tầng nào?A.Tầng giao diện người dùng (Presentation Layer).B.Tầng truy cập dữ liệu (Data Access Layer).C.Tầng cơ sở dữ liệu (Database Layer).D.D Lát kiểm tra lại Câu 3Nhận biếtKhi thiết kế cơ sở dữ liệu cho hệ thống đặt món, việc xác định các bảng (ví dụ: `Customers`, `Orders`, `Dishes`) và mối quan hệ giữa chúng thuộc hoạt động thiết kế nào?A.Thiết kế giao diện người dùng.B.Thiết kế kiến trúc tổng thể.C.Thiết kế logic nghiệp vụ.D.D Lát kiểm tra lại Câu 4Nhận biếtLớp `DonHang` (Order) có một phương thức `thayDoiTrangThai()` (changeStatus()). Để đảm bảo tính đóng gói tốt trong thiết kế, các thuộc tính nội bộ của `DonHang` nên có mức độ truy cập nào?A.Public.B.Protected.C.Package-private.D.D Lát kiểm tra lại Câu 5Nhận biếtTrong thiết kế, để xử lý việc khách hàng có thể chọn nhiều phương thức thanh toán khác nhau (tiền mặt, thẻ, ví điện tử) mà không cần sửa đổi code mỗi khi thêm phương thức mới, mẫu thiết kế nào phù hợp nhất?A.Singleton Pattern.B.Observer Pattern.C.Factory Pattern.D.D Lát kiểm tra lại Câu 6Nhận biếtBiểu đồ nào trong UML sẽ được sử dụng để mô tả chi tiết luồng thông điệp và tương tác giữa đối tượng `KhachHang`, `TrangDatMonUI`, `OrderService` và `PaymentGateway` khi khách hàng thực hiện thanh toán?A.Biểu đồ lớp (Class Diagram).B.Biểu đồ hoạt động (Activity Diagram).C.Biểu đồ thành phần (Component Diagram).D.D Lát kiểm tra lại Câu 7Nhận biếtĐể đảm bảo hiệu suất tốt khi hàng ngàn khách hàng cùng lúc tìm kiếm món ăn và đặt hàng, điều gì cần được chú trọng trong thiết kế hệ thống?A.Chỉ sử dụng ngôn ngữ lập trình mới nhất.B.Chỉ cần một cơ sở dữ liệu đơn giản.C.Bỏ qua các yêu cầu về hiệu suất.D.D Lát kiểm tra lại Câu 8Nhận biếtKhi thiết kế API cho dịch vụ `NhaHang` (Restaurant Service) để `KhachHang` (Customer Service) có thể truy cập thực đơn, điều gì là quan trọng nhất để đảm bảo tính phụ thuộc thấp?A.API phải rất phức tạp.B.API phải chứa nhiều thông tin không cần thiết.C.API phải được viết bằng một ngôn ngữ cụ thể.D.D Lát kiểm tra lại Câu 9Nhận biếtMột yêu cầu là "Hệ thống phải mã hóa thông tin thẻ tín dụng của khách hàng trước khi lưu trữ." Điều này thuộc về khía cạnh thiết kế nào?A.Thiết kế giao diện người dùng.B.Thiết kế hiệu suất.C.Thiết kế khả năng sử dụng.D.D Lát kiểm tra lại Câu 10Nhận biếtNếu một nhóm phát triển quyết định sử dụng một thư viện xử lý thanh toán của bên thứ ba, điều này liên quan đến quyết định thiết kế nào?A.Tự xây dựng (Build).B.Tái cấu trúc (Refactor).C.Tích hợp (Integrate).D.D Lát kiểm tra lại Câu 11Nhận biếtĐể đảm bảo một lớp `DonHang` (Order) có tính liên kết cao (High Cohesion), điều gì là cần thiết?A.Nó có thể gọi bất kỳ phương thức nào của lớp khác.B.Nó chứa tất cả các thuộc tính của khách hàng và món ăn.C.Nó là một phần của nhiều module khác nhau.D.D Lát kiểm tra lại Câu 12Nhận biếtKhi thiết kế hệ thống, cần xác định các giao diện (interfaces) mà các module sẽ cung cấp. Việc này giúp gì trong giai đoạn cài đặt và tích hợp?A.Làm cho code dài hơn.B.Giảm sự cần thiết của kiểm thử.C.Gây ra xung đột mã.D.D Lát kiểm tra lại Câu 13Nhận biếtNếu thiết kế ban đầu của lớp `Shipper` (người giao hàng) không tối ưu và cần được cải thiện mà không làm thay đổi hành vi bên ngoài, hoạt động nào nên được thực hiện?A.Thêm tính năng mới.B.Sửa lỗi chức năng.C.Kiểm thử hiệu suất.D.D Lát kiểm tra lại Câu 14Nhận biếtTrong Biểu đồ lớp (Class Diagram) sau pha thiết kế, chúng ta sẽ thấy chi tiết hơn về các thuộc tính và phương thức của các lớp như `MonAn`, `NhaHang`, `DonHang`, cũng như các mối quan hệ như:A.Luồng dữ liệu.B.Trình tự thời gian.C.Các trường hợp sử dụng.D.D Lát kiểm tra lại Câu 15Nhận biếtĐể xử lý các sự kiện thay đổi trạng thái của đơn hàng (ví dụ: `DonHang` từ `ChoXacNhan` sang `DangXuLy` sang `DangGiao`), mẫu thiết kế nào phù hợp để thông báo tự động cho các bên liên quan (khách hàng, nhà hàng)?A.Strategy Pattern.B.Factory Pattern.C.Singleton Pattern.D.D Lát kiểm tra lại Câu 16Nhận biếtNếu hệ thống đặt món ăn cần chạy trên cả ứng dụng di động (iOS/Android) và trình duyệt web, chiến lược thiết kế nào giúp tối ưu hóa việc phát triển giao diện người dùng?A.Xây dựng hai hệ thống độc lập.B.Chỉ tập trung vào một nền tảng.C.Bỏ qua yêu cầu đa nền tảng.D.D Lát kiểm tra lại Câu 17Nhận biếtTrong pha thiết kế, một rủi ro tiềm tàng là "nợ thiết kế" (Design Debt). Điều này có nghĩa là gì đối với hệ thống đặt món?A.Khách hàng nợ tiền nhà phát triển.B.Nhà phát triển nợ tiền ngân hàng.C.Hệ thống sẽ có ít tính năng.D.D Lát kiểm tra lại Câu 18Nhận biếtĐể đảm bảo hệ thống có thể xử lý được một lượng lớn các yêu cầu cùng lúc (ví dụ: trong giờ cao điểm), điều gì cần được thiết kế cẩn thận?A.Giao diện người dùng.B.Tài liệu.C.Kiểm thử tự động.D.D Lát kiểm tra lại Câu 19Nhận biếtMột yêu cầu nói rằng "Hệ thống phải có nhật ký đầy đủ về mọi thao tác của người dùng." Điều này ảnh hưởng đến thiết kế như thế nào?A.Giảm độ phức tạp của thiết kế.B.Không liên quan đến thiết kế.C.Chỉ ảnh hưởng đến giao diện người dùng.D.D Lát kiểm tra lại Câu 20Nhận biếtBiểu đồ nào trong UML sẽ hữu ích nhất để mô tả cách các thành phần phần mềm của hệ thống (ví dụ: `WebAppClient`, `BackendAPI`, `DatabaseServer`, `DeliveryService`) sẽ được triển khai trên các nút vật lý và mạng?A.Biểu đồ lớp.B.Biểu đồ trình tự.C.Biểu đồ thành phần.D.D Lát kiểm tra lại Câu 21Nhận biếtTrong thiết kế kiến trúc, việc sử dụng một "Message Queue" (Hàng đợi tin nhắn) giữa các dịch vụ `Order` và `Delivery` giúp gì?A.Làm cho các dịch vụ phụ thuộc chặt chẽ hơn.B.Giảm khả năng giao tiếp.C.Chỉ áp dụng cho các hệ thống nhỏ.D.D Lát kiểm tra lại Câu 22Nhận biếtMục tiêu của việc kiểm thử thiết kế (Design Review) trong case study này là gì?A.Để tìm lỗi cú pháp trong mã nguồn.B.Để kiểm tra hiệu suất của ứng dụng.C.Để xác nhận các yêu cầu chức năng.D.D Lát kiểm tra lại Câu 23Nhận biếtMột "Mẫu thiết kế" (Design Pattern) phù hợp để quản lý việc tạo ra các đối tượng `MonAn` (Dish) khác nhau (ví dụ: `MonAnChay`, `MonAnMan`) mà không cần phải gọi hàm tạo trực tiếp là gì?A.Observer Pattern.B.Strategy Pattern.C.Singleton Pattern.D.D Lát kiểm tra lại Câu 24Nhận biếtKhi thiết kế hệ thống đặt món, việc phân biệt rõ ràng giữa `PhuongThucThanhToan` (PaymentMethod) và `GiaoDienThanhToan` (PaymentUI) thể hiện nguyên tắc thiết kế nào?A.Tính kế thừa.B.Tính đa hình.C.Tính liên kết.D.D Lát kiểm tra lại Câu 25Nhận biếtĐiều gì là kết quả quan trọng nhất sau khi hoàn thành pha thiết kế cho hệ thống đặt món ăn trực tuyến?A.Một ứng dụng di động hoàn chỉnh.B.Một danh sách dài các yêu cầu.C.Một ngân sách dự án mới.D.D Lát kiểm tra lại Số câu đã làm0/25|Thời gian còn lại--:--NỘP BÀI