Thi lại · SWD392 · Summer 2026
Ôn tập thi lại SWD392 Summer 2026
119 câu gom từ 2 đề ôn của kỳ Summer 2026.
2 đề gốc
Bấm để làm trọn một đề thay vì tra từng câu
119 câu hỏi
Trang 6 / 6AEntity object
BBoundary object
CControl object
DInterface object
Lời giải
Mở trang câu hỏi này →Đáp án đúng: C. Control object (đối tượng điều khiển) là đối tượng đóng vai trò điều phối, quyết định trình tự hoạt động và sự phối hợp giữa nhiều đối tượng khác trong một use case. Nó nắm logic điều khiển, nhận sự kiện từ đối tượng biên và điều động các đối tượng thực thể thực hiện công việc. Entity object (A) lưu trữ dữ liệu tồn tại lâu dài của hệ thống; boundary object (B) là đối tượng biên, giao tiếp với tác nhân bên ngoài; interface object (D) chỉ là cách gọi khác của đối tượng biên. Không đối tượng nào trong ba loại đó đảm nhận vai trò điều phối hành vi.
What does a delegation connector join?4 lựa chọn
AAn outer provided port to an inner provided port
BAn outer provided port to an inner required port
CAn outer required port to an inner provided port
DAn outer provided port to an outer required port
Lời giải
Mở trang câu hỏi này →Đáp án đúng: A. Trong sơ đồ cấu trúc hỗn hợp của UML, delegation connector nối một cổng bên ngoài của thành phần hỗn hợp với một cổng tương ứng của thành phần con bên trong, tức là ủy thác yêu cầu từ ngoài vào trong. Cụ thể, cổng provided bên ngoài được nối tới cổng provided bên trong (và tương tự cổng required bên trong nối ra cổng required bên ngoài) - hai đầu nối phải cùng loại. Phương án B và C ghép hai cổng khác loại nên không phải delegation; phương án D nối hai cổng đều nằm ở lớp ngoài, đó là quan hệ giữa các thành phần ngang hàng chứ không phải ủy thác vào trong.
A
CompositeB
DecoratorC
AdapterD
ProxyLời giải
Mở trang câu hỏi này →Đáp án đúng: A. Composite pattern tổ chức các đối tượng thành cấu trúc cây phần - toàn thể và cho phép client đối xử với đối tượng đơn lẻ (lá) và với tập hợp đối tượng (nút) một cách đồng nhất thông qua cùng một giao diện. Đây chính là đặc trưng "treating individual objects and compositions uniformly". Decorator (B) bọc thêm trách nhiệm cho một đối tượng lúc chạy; Adapter (C) chuyển đổi giao diện của một lớp sang giao diện mà client mong đợi; Proxy (D) đứng thay cho một đối tượng khác để kiểm soát truy cập. Không mẫu nào trong ba mẫu đó nhằm mục đích xử lý đồng nhất phần tử đơn và tập hợp.
AIt reduces documentation requirements
BIt avoids stakeholder involvement during early phases
CIt allows progressive refinement of requirements and architecture with feedback loops
DIt eliminates the need for system testing
Lời giải
Mở trang câu hỏi này →Đáp án đúng: C. Ưu thế cốt lõi của phát triển lặp và tăng dần so với mô hình thác nước là cho phép tinh chỉnh dần yêu cầu và kiến trúc qua các vòng phản hồi: mỗi vòng lặp cho ra một phần sản phẩm chạy được, người dùng đánh giá và kết quả đánh giá quay lại điều chỉnh yêu cầu cùng thiết kế cho vòng sau. Nhờ đó rủi ro được phát hiện sớm thay vì dồn về cuối dự án. Phương án A sai vì phát triển lặp không cắt giảm tài liệu; phương án B ngược hẳn tinh thần lấy phản hồi của các bên liên quan; phương án D sai vì kiểm thử hệ thống vẫn là bắt buộc trong mọi mô hình.
ADevelop one state-dependent control object for each use case.
BDevelop one state-dependent control object containing states from each use case.
CDevelop a hierarchical state machine
DDevelop a coordinator object
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. Theo phương pháp COMET, nếu cùng một máy trạng thái xuất hiện trong nhiều use case thì trên sơ đồ tương tác ta chỉ dựng MỘT đối tượng điều khiển phụ thuộc trạng thái, và đối tượng đó chứa các trạng thái lấy từ tất cả các use case liên quan. Cách làm này giữ được tính toàn vẹn của máy trạng thái: mọi chuyển trạng thái vẫn nằm trong một nơi duy nhất. Phương án A tạo nhiều bản sao của cùng một máy trạng thái nên dễ mâu thuẫn; phương án C và D đưa ra những giải pháp thiết kế khác (phân cấp trạng thái, đối tượng điều phối) không phải cách xử lý tình huống này.
Which design pattern is used to provide a unified interface to a set of interfaces in a subsystem?4 lựa chọn
AObserver pattern
BFactory method pattern
CFacade pattern
DStrategy pattern
Lời giải
Mở trang câu hỏi này →Đáp án đúng: C. Facade pattern cung cấp một giao diện thống nhất, đơn giản cho cả một tập hợp giao diện của hệ thống con, giúp phía client không phải làm việc trực tiếp với nhiều lớp bên trong. Nhờ đó hệ thống con được che giấu, giảm phụ thuộc và dễ thay đổi bên trong mà không ảnh hưởng client. Observer (A) dùng để thông báo thay đổi trạng thái tới nhiều đối tượng quan sát; Factory Method (B) tách việc khởi tạo đối tượng ra khỏi mã sử dụng; Strategy (D) cho phép hoán đổi thuật toán lúc chạy. Cả ba đều giải quyết bài toán khác, không phải mục đích gom nhóm giao diện của một hệ thống con.
ADetailing class implementations
BDefining system structure and high-level components
CWriting test cases
DRefactoring source code
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. Thiết kế kiến trúc trong phát triển phần mềm tập trung vào việc xác định cấu trúc tổng thể của hệ thống và các thành phần ở mức cao: hệ thống gồm những khối nào, mỗi khối chịu trách nhiệm gì, chúng giao tiếp qua giao diện và cơ chế nào, đồng thời cân nhắc các thuộc tính chất lượng như hiệu năng, bảo mật, khả năng mở rộng. Chi tiết hoá hiện thực của từng lớp (A) thuộc thiết kế chi tiết; viết ca kiểm thử (C) thuộc pha kiểm thử; tái cấu trúc mã nguồn (D) là hoạt động cải tiến mã đã có, đều nằm ở mức thấp hơn so với thiết kế kiến trúc.
AAbility to handle increasing load
BAbility to be portable across platforms
CSecurity to protect resources
DSpeed of algorithm
Lời giải
Mở trang câu hỏi này →Đáp án đúng: A. Scalability - khả năng mở rộng - là thuộc tính chất lượng phản ánh khả năng hệ thống đáp ứng được tải tăng lên (nhiều người dùng, nhiều giao dịch, nhiều dữ liệu hơn) mà vẫn giữ được mức chất lượng dịch vụ, thường bằng cách bổ sung tài nguyên theo chiều ngang hoặc chiều dọc. Khả năng chạy trên nhiều nền tảng (B) là portability; bảo vệ tài nguyên (C) là security; còn tốc độ thuật toán (D) chỉ là một yếu tố góp phần vào performance. Cả ba đều là những thuộc tính chất lượng khác, không phải định nghĩa của scalability.
ARequirement gathering
BSoftware architecture design
CUser interface design
DTesting and validation
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. Pha thiết kế kiến trúc phần mềm là nơi trả lời câu hỏi các thành phần phần mềm ghép với nhau và tương tác ra sao để thoả mãn yêu cầu: xác định các thành phần chính, giao diện, cơ chế giao tiếp và các mẫu kiến trúc được dùng. Thu thập yêu cầu (A) mới chỉ làm rõ hệ thống phải làm gì; thiết kế giao diện người dùng (C) chỉ giải quyết một khía cạnh hẹp là tương tác với người dùng; kiểm thử và thẩm định (D) diễn ra sau, nhằm kiểm chứng rằng hệ thống đã xây dựng đáp ứng đúng yêu cầu chứ không phải nơi định hình cấu trúc.
AIncrease database performance
BProvide structured architectural modeling
CEliminate the need for state charts
DEnforce strict coding conventions
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. COMET (Collaborative Object Modeling and Architectural Design Method) là phương pháp thiết kế cung cấp một quy trình mô hình hoá kiến trúc có cấu trúc: đi từ mô hình use case sang mô hình phân tích tĩnh và động, rồi tới thiết kế kiến trúc phần mềm bằng các mẫu kiến trúc và mẫu thiết kế. Mục tiêu chính là giúp nhóm phát triển tổ chức được quá trình thiết kế một cách có hệ thống. Phương án A nhầm sang tối ưu cơ sở dữ liệu; phương án C sai vì COMET dùng rất nhiều statechart; phương án D nói về quy ước viết mã, hoàn toàn nằm ngoài phạm vi của một phương pháp thiết kế kiến trúc.
AA class that cannot be instantiated and may contain abstract operations
BA class that has no attributes
CA class with only static methods
DA class defined without associations
Lời giải
Mở trang câu hỏi này →Đáp án đúng: A. Trong UML, abstract class là lớp không thể tạo thể hiện trực tiếp và có thể chứa các thao tác trừu tượng - những thao tác chỉ khai báo chữ ký, để lớp con hiện thực hoá. Lớp trừu tượng tồn tại nhằm gom phần chung của các lớp con và định nghĩa giao diện đa hình cho chúng; trong sơ đồ, tên lớp được viết nghiêng để đánh dấu. Phương án B, C, D nêu những đặc điểm không liên quan: một lớp không có thuộc tính, một lớp chỉ có phương thức tĩnh hay một lớp không có liên kết đều vẫn có thể được khởi tạo bình thường nên không phải lớp trừu tượng.
AIt serves only as a message queue.
BIt acts as an intermediary for all service calls, functioning as an integration hub and orchestration engine.
CIt is responsible for data persistence.
DIt handles only user interface requests.
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. Trong kiến trúc hướng dịch vụ, service bus (thường là Enterprise Service Bus) đóng vai trò trung gian cho mọi lời gọi dịch vụ: nó vừa là trung tâm tích hợp vừa là bộ điều phối, đảm nhận định tuyến thông điệp, chuyển đổi giao thức và định dạng dữ liệu, điều phối chuỗi lời gọi giữa nhiều dịch vụ. Nhờ đó bên tiêu thụ và bên cung cấp dịch vụ không phải biết trực tiếp về nhau. Phương án A thu hẹp nó thành một hàng đợi thông điệp đơn thuần; phương án C nhầm sang tầng lưu trữ dữ liệu; phương án D giới hạn sai vào các yêu cầu từ giao diện người dùng.
ADefine user interface layouts
BIdentify the system’s objects and their relationships
COptimize database queries
DDevelop a deployment model
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. Mục tiêu chính của phân tích hướng đối tượng là nhận diện các đối tượng của hệ thống trong miền bài toán cùng thuộc tính, trách nhiệm và quan hệ giữa chúng, từ đó xây dựng mô hình tĩnh và mô hình động phản ánh bài toán thực tế. Đây là bước "làm rõ cái gì" trước khi chuyển sang thiết kế "làm như thế nào". Phương án A và D thuộc pha thiết kế (giao diện người dùng, mô hình triển khai); phương án C là việc tối ưu ở mức hiện thực và cơ sở dữ liệu, diễn ra rất muộn trong vòng đời và không phải mục tiêu của phân tích.
A
TrueB
FalseLời giải
Mở trang câu hỏi này →Đáp án đúng: A. Phát biểu đã cho là ĐÚNG. Hệ thống con là đơn vị che giấu thông tin ở mức thô hơn đối tượng: nó gom nhiều đối tượng cộng tác chặt chẽ và chỉ để lộ ra ngoài một giao diện hẹp. Cơ sở để nhóm là mức độ kết dính: các đối tượng cùng hiện thực hoá một use case thường trao đổi thông điệp liên tục với nhau nên có coupling cao, trong khi liên hệ với đối tượng của use case khác thì thấp hoặc không có, đúng như thể hiện trên sơ đồ tương tác theo use case. Vì vậy chọn "False" (B) là sai với nguyên tắc phân rã hệ thống con của COMET.
A
ProxyB
DecoratorC
CompositeD
BridgeLời giải
Mở trang câu hỏi này →Đáp án đúng: B. Decorator pattern cho phép gắn thêm trách nhiệm cho một đối tượng một cách động lúc chạy bằng cách bọc đối tượng gốc trong một lớp trang trí có cùng giao diện. Nhờ vậy có thể chồng nhiều lớp trang trí lên nhau mà không cần sửa lớp gốc, thay thế linh hoạt cho việc kế thừa cứng nhắc. Proxy (A) cũng bọc đối tượng nhưng mục đích là kiểm soát truy cập chứ không thêm chức năng; Composite (C) tổ chức cây phần - toàn thể; Bridge (D) tách phần trừu tượng khỏi phần hiện thực để hai bên biến đổi độc lập.
AThe entity classes in the system
BHow the system interfaces to other systems
CThe boundary between the system and the external environment
DThe context classes in the system
Lời giải
Mở trang câu hỏi này →Đáp án đúng: C. Sơ đồ lớp ngữ cảnh hệ thống (system context class diagram) vẽ hệ thống như một lớp tổng hợp duy nhất ở giữa và các lớp ngoài quanh nó, qua đó xác định RANH GIỚI giữa hệ thống và môi trường bên ngoài: cái gì nằm trong phạm vi phải xây, cái gì nằm ngoài.
B đúng một phần nhưng hẹp hơn đáp án — hệ thống ngoài chỉ là một loại thực thể ngoài; môi trường còn gồm người dùng và thiết bị, nên "ranh giới với môi trường bên ngoài" mới là mô tả đủ. A sai vì lớp thực thể thuộc mô hình tĩnh bên trong hệ thống. D sai vì "các lớp ngữ cảnh trong hệ thống" chỉ là cách nói vòng lại tên sơ đồ, không nói được nó định nghĩa cái gì.
What is an information hiding object?4 lựa chọn
AAn active object that encapsulates data
BA passive object that encapsulates data
CA class that encapsulates data
DA task that encapsulates data
Lời giải
Mở trang câu hỏi này →Một đối tượng ẩn thông tin là một khái niệm trong lập trình hướng đối tượng, trong đó một đối tượng được thiết kế để ẩn dữ liệu của nó khỏi các phần khác của chương trình. Đối tượng ẩn thông tin thường được sử dụng để ngăn chặn truy cập trực tiếp vào dữ liệu của nó, từ đó giúp bảo vệ dữ liệu khỏi bị thay đổi hoặc bị xâm phạm. Đối tượng ẩn thông tin thường được tạo ra bằng cách sử dụng các kỹ thuật như encapsulation, trong đó dữ liệu và các phương thức liên quan đến dữ liệu được nhóm lại trong một đối tượng duy nhất. Điều này giúp tăng cường bảo mật và giảm thiểu rủi ro xảy ra khi sử dụng dữ liệu.
What is a finite state machine?4 lựa chọn
AA machine with infinite states
BA machine with finite states
CA model of computation
DA model of system behavior
Lời giải
Mở trang câu hỏi này →Một máy trạng thái hữu hạn (Finite State Machine - FSM) là một mô hình toán học được sử dụng để mô tả và phân tích các hệ thống có trạng thái. Nó được đặc trưng bởi một tập hợp hữu hạn các trạng thái và một tập hợp hữu hạn các chuyển tiếp giữa các trạng thái. Máy trạng thái hữu hạn có thể được sử dụng để mô hình hóa các hệ thống như máy tính, các hệ thống tự động hóa, và các hệ thống giao tiếp. Trong một máy trạng thái hữu hạn, mỗi trạng thái được xác định bởi một tập hợp các biến trạng thái và mỗi chuyển tiếp được xác định bởi một tập hợp các biến trạng thái và một tập hợp các hành động. Máy trạng thái hữu hạn có thể được sử dụng để mô hình hóa các hệ thống có trạng thái và để phân tích các hệ thống này.
AControl is divided among various control components.
BIt responds to multiple requests from client subsystems.
CIt provides overall control by coordinating several control components.
DIt provides distributed control over various I/O objects.
Lời giải
Mở trang câu hỏi này →Đáp án đúng: A. Trong mẫu Distributed Control, quyền điều khiển được chia cho nhiều thành phần điều khiển, mỗi thành phần điều khiển một phần của hệ thống và trao đổi trực tiếp với nhau — không có một thành phần trung tâm nào nắm toàn quyền.
C sai vì "điều phối nhiều thành phần điều khiển" là đặc trưng của Hierarchical Control, nơi có một thành phần cấp trên phối hợp các thành phần cấp dưới. D sai vì "điều khiển toàn bộ các đối tượng vào/ra" là đặc trưng của Centralized Control. B sai vì đáp ứng yêu cầu từ nhiều hệ thống con khách là đặc trưng của mẫu client/service, không phải mẫu điều khiển.
Đi tiếp từ đây
Kỳ khác cùng môn
Summer 2025Về lát
Thi lại · SWD392