SWD392 - Tổng hợp ôn tập cuối kỳ · trang 12 / 15

Câu hỏi trong chủ đề

Câu 133 – 144 trong 175 câu
ATo divide a system into smaller, manageable components for design and development
BTo create testing frameworks for software applications
CTo simplify the use of UML diagrams
DTo centralize data storage
Lời giải
Đáp án đúng: A. Kiến trúc hệ thống con tồn tại để chia một hệ thống lớn thành các phần nhỏ, quản lý được, mỗi phần có ranh giới và giao diện rõ ràng để có thể thiết kế, phát triển, kiểm thử và triển khai tương đối độc lập. B sai vì khung kiểm thử là công cụ hỗ trợ, không phải mục đích của việc phân rã kiến trúc. C sai vì sơ đồ UML là phương tiện diễn đạt kiến trúc, không phải mục tiêu của kiến trúc. D sai vì tập trung hoá lưu trữ dữ liệu là một quyết định thiết kế cụ thể, thậm chí thường đi ngược lại tinh thần phân rã.
Mở trang câu hỏi này →
AThe ability of a system to perform its intended functions without failure.
BThe ease with which software can be modified to correct defects, improve performance, or adapt to changes.
CThe ability of a system to scale and handle increased load.
DThe degree to which software can be used in different operating environments.
Lời giải
Đáp án đúng: B. Khả năng bảo trì (maintainability) là mức độ dễ dàng khi sửa đổi phần mềm: sửa lỗi, cải thiện hiệu năng, hoặc thích ứng với thay đổi của môi trường và yêu cầu. Trọng tâm là CHI PHÍ THAY ĐỔI, không phải chất lượng lúc vận hành. A sai vì "thực hiện đúng chức năng, không hỏng" là định nghĩa của độ tin cậy (reliability). C sai vì "mở rộng để chịu tải cao hơn" là khả năng mở rộng (scalability). D sai vì "dùng được trên nhiều môi trường vận hành khác nhau" là tính khả chuyển (portability).
Mở trang câu hỏi này →
AWith conditional frames (alt)
BWith optional frames (opt)
CWith loops (loop)
DWith concurrent regions (par)
Lời giải
Đáp án đúng: A. Đường đi thay thế trong sơ đồ tuần tự được biểu diễn bằng khung điều kiện 'alt': khung được chia thành nhiều ngăn, mỗi ngăn có một điều kiện canh, và lúc chạy chỉ ngăn khớp điều kiện được thực hiện — đúng nghĩa "hoặc nhánh này, hoặc nhánh kia". B sai vì 'opt' chỉ diễn tả một đoạn CÓ THỂ xảy ra hoặc không, tức chỉ một nhánh có điều kiện, không phải nhiều đường đi thay thế nhau. C sai vì 'loop' diễn tả lặp. D sai vì 'par' diễn tả các đoạn chạy song song, tức xảy ra ĐỒNG THỜI chứ không phải loại trừ nhau.
Mở trang câu hỏi này →
ABoundary object
BEntity object
CControl object
DUser interface object
Lời giải
Đáp án đúng: C. Trong mô hình hoá tương tác phụ thuộc trạng thái, đối tượng thực thi máy trạng thái là đối tượng điều khiển (control object) — cụ thể là đối tượng điều khiển phụ thuộc trạng thái. Nó nhận thông điệp đến, tra bảng chuyển trạng thái, đổi trạng thái và phát ra các hành động tương ứng. A sai vì đối tượng biên chỉ nhận sự kiện từ bên ngoài rồi chuyển tiếp vào cho đối tượng điều khiển, bản thân nó không giữ máy trạng thái. B sai vì đối tượng thực thể chỉ lưu dữ liệu. D sai vì đối tượng giao diện người dùng cũng chỉ là một dạng đối tượng biên.
Mở trang câu hỏi này →
AA rounded rectangle
BA small black circle
CA small black circle inside a larger white circle (bull's-eye)
DA diamond shape
Lời giải
Đáp án đúng: B. Trạng thái khởi đầu (initial state) trong sơ đồ máy trạng thái UML được vẽ bằng một chấm tròn đen đặc, với một mũi tên đi ra trỏ tới trạng thái đầu tiên thật sự của máy. C sai vì chấm đen nằm trong vòng tròn trắng lớn hơn (hình mắt bò) là ký hiệu trạng thái KẾT THÚC — rất dễ nhầm với trạng thái khởi đầu, đây chính là bẫy của câu này. A sai vì hình chữ nhật bo góc là ký hiệu của một trạng thái thường. D sai vì hình thoi là điểm rẽ nhánh theo điều kiện (choice/decision).
Mở trang câu hỏi này →
ATo replace the operating system on each node in the network
BTo directly manage hardware resources across distributed systems
CTo provide a uniform platform that abstracts heterogeneous operating systems for distributed applications
DTo serve as a graphical interface for user interaction in distributed environments
Lời giải
Đáp án đúng: C. Middleware nằm giữa hệ điều hành và ứng dụng phân tán, cung cấp một nền tảng đồng nhất che đi sự khác biệt giữa các hệ điều hành, ngôn ngữ và giao thức mạng bên dưới. Nhờ đó ứng dụng viết một lần vẫn chạy được trên các nút không đồng nhất. A sai vì middleware chạy TRÊN hệ điều hành, không thay thế nó. B sai vì việc quản lý tài nguyên phần cứng vẫn thuộc về hệ điều hành từng nút; middleware không đụng trực tiếp phần cứng. D sai vì middleware không phải tầng giao diện người dùng — nó nằm hoàn toàn phía dưới, người dùng không thấy nó.
Mở trang câu hỏi này →
AMonolithic architecture
BComponent-based architecture
CLayered architecture
DEvent-driven architecture
Lời giải
Đáp án đúng: B. Kiến trúc hướng thành phần (component-based architecture) tổ chức phần mềm thành các thành phần độc lập, có giao diện rõ ràng, thay thế và tái sử dụng được, tương tác với nhau qua các giao diện đó. A sai vì kiến trúc nguyên khối gộp tất cả vào một khối duy nhất — ngược hẳn với "tách rời". C sai vì kiến trúc phân tầng tổ chức theo TẦNG chồng lên nhau với ràng buộc tầng trên gọi tầng dưới, cách chia khác với chia theo thành phần. D sai vì kiến trúc hướng sự kiện nói về cách các bên giao tiếp (qua sự kiện), không phải về cách chia phần mềm thành đơn vị.
Mở trang câu hỏi này →
ARepresent interactions between users and system
BDetail hardware setup
CDrill down into source code
DShow low-level database design
Lời giải
Đáp án đúng: A. Sơ đồ use case dùng để biểu diễn tương tác giữa người dùng (tác nhân) và hệ thống: mỗi use case là một chức năng đem lại giá trị cho tác nhân, và các đường nối cho biết ai dùng chức năng nào. B sai vì cấu hình phần cứng được thể hiện bằng sơ đồ triển khai. C sai vì sơ đồ use case cố tình đứng ở mức cao, không đi xuống mã nguồn. D sai vì thiết kế cơ sở dữ liệu mức thấp thuộc pha thiết kế chi tiết, hoàn toàn không phải việc của sơ đồ use case.
Mở trang câu hỏi này →
AOnly the business layer can access the database.
BServices must communicate using REST.
CDevelopment teams should use asynchronous messaging between services to increase performance.
DThe system must be deployed on Linux servers.
Lời giải
Đáp án đúng: C. Nguyên tắc thiết kế (design principle) là hướng dẫn — nó định hướng đội phát triển nhưng vẫn để chỗ cho phán đoán trong từng tình huống. Câu "đội phát triển NÊN dùng nhắn tin bất đồng bộ giữa các dịch vụ để tăng hiệu năng" đúng dạng đó: một khuyến nghị có lý do, không phải mệnh lệnh tuyệt đối. A, B, D đều là QUYẾT ĐỊNH kiến trúc hoặc ràng buộc, không phải nguyên tắc: "chỉ tầng nghiệp vụ được truy cập cơ sở dữ liệu", "dịch vụ phải giao tiếp bằng REST", "hệ thống phải triển khai trên máy chủ Linux" đều là luật cứng, buộc phải tuân thủ, không có chỗ cho phán đoán. Dấu hiệu phân biệt nằm ở chữ "nên" so với "phải/chỉ".
Mở trang câu hỏi này →
ATo minimize the number of use cases
BTo increase communication between subsystems
CTo ensure each subsystem handles a distinct and relatively independent function
DTo remove dynamic modeling steps
Lời giải
Đáp án đúng: C. Mục tiêu chính khi phân rã hệ thống thành các hệ thống con là để mỗi hệ thống con đảm nhận một chức năng riêng biệt và tương đối độc lập — tức gắn kết bên trong cao và phụ thuộc lẫn nhau thấp. Đó là điều kiện để các hệ thống con phát triển, kiểm thử và thay đổi song song mà không giẫm chân nhau. B sai hẳn hướng: tăng giao tiếp giữa các hệ thống con là tăng độ dính, đúng thứ cần tránh. A sai vì số lượng use case do yêu cầu quyết định, không phải mục tiêu của việc phân rã. D sai vì mô hình hoá động là bước cần thiết, không phải thứ để loại bỏ.
Mở trang câu hỏi này →
AA sequence of operations performed by an object
BA shared attribute among different classes
CA relationship between two or more classes that shows how instances of those classes interact
DThe inheritance relationship between a parent class and its child classes
Lời giải
Đáp án đúng: C. Trong mô hình tĩnh, liên kết (association) biểu diễn quan hệ giữa hai hay nhiều lớp, cho biết đối tượng của các lớp này có mối nối với nhau và qua đó tương tác được với nhau; liên kết còn mang bội số (multiplicity) và có thể mang tên vai trò. A sai vì chuỗi thao tác của một đối tượng thuộc mô hình động, không phải quan hệ giữa các lớp. B sai vì liên kết nối các LỚP với nhau chứ không phải chia sẻ thuộc tính giữa chúng. D sai vì quan hệ kế thừa cha–con là tổng quát hoá (generalization), một loại quan hệ khác hẳn liên kết.
Mở trang câu hỏi này →
AA client sends a request and waits synchronously for a direct reply from a specific server.
BComponents receive messages by polling a central queue rather than being notified.
CComponents subscribe to a group and automatically receive multicast messages sent to that group.
DEach component must be individually addressed to receive updates from the sender.
Lời giải
Đáp án đúng: C. Mẫu Subscription/Notification hoạt động theo kiểu đăng ký nhận tin: thành phần quan tâm đăng ký vào một nhóm (hoặc chủ đề), và mọi thông điệp gửi tới nhóm đó sẽ tự động được phát tới toàn bộ thành viên đã đăng ký — bên gửi không cần biết ai đang nghe. A sai vì gửi rồi chờ hồi đáp trực tiếp từ một máy chủ cụ thể là mẫu Synchronous Message Communication with Reply. B sai vì tự đi hỏi hàng đợi (polling) là cơ chế kéo, ngược hẳn với "được thông báo" (đẩy) trong tên mẫu. D sai vì phải gọi tên từng thành phần một là gửi đơn hướng (unicast), làm mất chính lợi ích tách rời bên gửi và bên nhận mà mẫu này đem lại.
Mở trang câu hỏi này →
Xem cả 175 câu của chủ đề

Đề có câu hỏi của chủ đề này

5 đề chứa ít nhất một câu thuộc chủ đề — mở đề để làm cả bộ, không chỉ từng câu.