SWD392DễKỳ 7Chuyên ngành Cập nhật 07/09/2026
Software Architecture and Design - Kiến Trúc & Thiết Kế Phần Mềm
436Câu hỏi
5Bộ đề
9Chủ đề
5,03 đánh giá
Câu hỏi của môn
144/436 câuCòn 292
125What is a composition hierarchy?4 lựa chọnDễ73% trả lời đúng
AA weak form of a generalization/specialization hierarchy
BA strong form of a generalization/specialization hierarchy
CA weak form of a whole/part relationship
DA strong form of a whole/part relationship
Lời giải
Mở trang câu hỏi này →Một cấu trúc tổ chức gọi là hiệp hội cấu trúc (composition hierarchy) mô tả mối quan hệ giữa một đối tượng và các thành phần của nó. Trong một hiệp hội cấu trúc, các thành phần được coi là một phần không thể tách rời của đối tượng. Ví dụ, một chiếc xe có thể được xem là một hiệp hội cấu trúc bao gồm các thành phần như khung xe, động cơ, bánh xe, v.v. Mỗi thành phần trong hiệp hội cấu trúc đều đóng vai trò quan trọng và không thể thiếu trong cấu trúc tổng thể của đối tượng. Điều này khác với mối quan hệ tổng thể và bộ phận, trong đó các bộ phận có thể được thêm hoặc loại bỏ mà không ảnh hưởng đến cấu trúc tổng thể của đối tượng.
126What is the primary purpose of determining the boundary object(s) in the state-dependent dynamic interaction modeling strategy?4 lựa chọnTrung bình60% trả lời đúng
ATo execute the statechart
BTo identify alternative sequence scenarios
CTo specify the interactions between software objects
DTo consider objects that receive inputs from the external environment
Lời giải
Mở trang câu hỏi này →Đáp án đúng: D. Trong chiến lược mô hình hoá tương tác động phụ thuộc trạng thái (state-dependent dynamic interaction modeling) của COMET, bước đầu tiên là xác định đối tượng biên (boundary object) — vì đây chính là đối tượng nhận sự kiện từ môi trường bên ngoài rồi chuyển thành thông điệp gửi vào hệ thống. Không xác định được nguồn kích thích bên ngoài thì không dựng được chuỗi tương tác.
A sai vì đối tượng thực thi statechart là đối tượng điều khiển (control object), không phải đối tượng biên. B sai vì việc liệt kê các kịch bản thay thế thuộc pha mô hình hoá use case, không phải mục đích của việc xác định đối tượng biên. C sai vì đó là mục tiêu chung của cả sơ đồ tương tác, không phải lý do riêng để xác định đối tượng biên.
127Software Quality Attributes, Scalability is the extent to which the system is capable of growing after its initial deployment.2 lựa chọnDễ100% trả lời đúng
A
TrueB
FalseLời giải
Mở trang câu hỏi này →Tính chất Scalability trong phần mềm chất lượng là mức độ mà hệ thống có thể mở rộng sau khi được triển khai ban đầu. Điều này có nghĩa là hệ thống có thể đáp ứng được nhu cầu tăng trưởng của người dùng mà không cần phải thay đổi cơ bản. Ví dụ, một hệ thống có thể được thiết kế để xử lý 1000 người dùng và sau đó có thể mở rộng lên 10.000 người dùng mà không cần phải thay đổi cơ bản. Tính chất Scalability rất quan trọng trong phần mềm chất lượng vì nó giúp hệ thống trở nên linh hoạt và có thể đáp ứng được nhu cầu của người dùng.
128What are the typical components of a service subsystem?4 lựa chọnDễ100% trả lời đúng
AGraphical displays and keyboards
BCoordinator objects and business logic objects
CStandalone, non-composite objects
DMultiple threads of control
Lời giải
Mở trang câu hỏi này →Một hệ thống dịch vụ thường được chia thành các phần tử nhỏ hơn gọi là subsystem. Các phần tử này thường bao gồm các đối tượng logic kinh doanh và đối tượng điều phối. Đối tượng logic kinh doanh chịu trách nhiệm thực hiện các hoạt động kinh doanh cụ thể, trong khi đối tượng điều phối chịu trách nhiệm quản lý và điều phối các hoạt động của hệ thống. Ví dụ, đối tượng logic kinh doanh có thể là một lớp thực hiện việc tính toán thuế, trong khi đối tượng điều phối có thể là một lớp quản lý việc lưu trữ và truy xuất dữ liệu. Các phần tử này thường được thiết kế để hoạt động độc lập và có thể được sử dụng lại trong nhiều hệ thống khác nhau.
AEllipse
BSquare
CStick figure
DDiamond
Lời giải
Mở trang câu hỏi này →Trong UML, biểu tượng đại diện cho một diễn viên (actor) trong sơ đồ trường hợp sử dụng (use case diagram) là hình dạng đơn giản có đầu và chân giống như người. Đây là biểu tượng được sử dụng để mô tả các đối tượng bên ngoài hệ thống mà hệ thống sẽ tương tác. Ví dụ, người dùng, nhân viên, khách hàng,... đều được thể hiện dưới dạng diễn viên trong sơ đồ trường hợp sử dụng. Biểu tượng này giúp xác định rõ ràng các đối tượng bên ngoài hệ thống và cách họ tương tác với hệ thống.
130What is an entry action in a state machine?4 lựa chọnTrung bình60% trả lời đúng
AAn action that is performed when the state is entered
BAn action that is performed when the state is left
CAn action that starts executing when the state is entered and completes executing when the state is left
DAn action that executes as a result of a state transition
Lời giải
Mở trang câu hỏi này →Trong mô hình trạng thái, một hành động nhập (entry action) là một hành động được thực hiện khi trạng thái được vào. Nó thường được sử dụng để thực hiện các tác vụ cần thiết khi trạng thái được vào, chẳng hạn như khởi tạo dữ liệu, thiết lập trạng thái ban đầu, hoặc thực hiện các hành động khác cần thiết khi trạng thái được vào. Ví dụ, khi một người dùng đăng nhập vào ứng dụng, hành động nhập có thể được sử dụng để tải dữ liệu người dùng và thiết lập trạng thái đăng nhập. Hành động nhập thường được thực hiện một lần khi trạng thái được vào, và nó không được thực hiện lại khi trạng thái được rời.
131What is the main function of the COMET methodology in Software Architecture Design?4 lựa chọnDễ100% trả lời đúng
AFocusing on object-oriented methods for modularity
BSimplifying data storage
CTesting the performance of the system
DAutomating the coding process
Lời giải
Mở trang câu hỏi này →COMET (Component-Oriented Methodology for Engineering and Technology) là một phương pháp thiết kế kiến trúc phần mềm tập trung vào việc sử dụng các phương pháp hướng đối tượng để đạt được mô-đun hóa. Phương pháp này giúp các nhà phát triển tạo ra các thành phần phần mềm độc lập, dễ dàng tích hợp và bảo trì. COMET tập trung vào việc phân chia hệ thống thành các thành phần nhỏ, mỗi thành phần có trách nhiệm riêng biệt, giúp giảm thiểu sự phức tạp và tăng cường khả năng mở rộng của hệ thống. Điều này giúp các nhà phát triển dễ dàng thêm hoặc thay thế các thành phần mới mà không ảnh hưởng đến các thành phần khác.
132What is software modeling?4 lựa chọnDễ
ADeveloping models of software, include Structural Modeling, Behavioral Modeling, Architectural Modeling
BDesigning software applications before coding, include Structural Modeling, Behavioral Modeling, Architectural Modeling, Use Case Modeling
CDeveloping software diagrams, include, Architectural Modeling, Use Case Modeling
DDeveloping software prototypes, include Structural Modeling, Behavioral Modeling, Architectural Modeling
Lời giải
Mở trang câu hỏi này →Quá trình xây dựng mô hình phần mềm, hay còn gọi là mô hình hóa phần mềm, là một phần quan trọng trong quá trình phát triển phần mềm. Mô hình phần mềm là một cách thể hiện ý tưởng và thiết kế của phần mềm dưới dạng các mô hình, giúp cho các nhà phát triển phần mềm hiểu rõ hơn về yêu cầu và chức năng của phần mềm. Có nhiều loại mô hình phần mềm khác nhau, bao gồm mô hình cấu trúc, mô hình hành vi, mô hình kiến trúc và mô hình trường hợp sử dụng. Mô hình phần mềm giúp cho các nhà phát triển phần mềm xác định rõ yêu cầu và chức năng của phần mềm, từ đó có thể thiết kế và phát triển phần mềm một cách hiệu quả hơn.
133What is the main focus of the COMET software life cycle?4 lựa chọnTrung bình
AImplementing code without modeling
BUsing UML diagrams for software maintenance only
CFocusing exclusively on post-deployment activities
DIntegrating software modeling and design from requirements to architecture
Lời giải
Mở trang câu hỏi này →COMET (Component-Based Modeling and Engineering Tool) là một công cụ hỗ trợ phát triển phần mềm. Trong vòng đời của COMET, trọng tâm chính là tích hợp mô hình hóa phần mềm và thiết kế từ yêu cầu đến kiến trúc. Điều này có nghĩa là COMET tập trung vào việc sử dụng mô hình hóa để hỗ trợ thiết kế và phát triển phần mềm từ giai đoạn yêu cầu đến giai đoạn kiến trúc. Điều này cho phép các nhà phát triển có thể tạo ra các mô hình phần mềm chính xác và chi tiết, từ đó có thể xây dựng các phần mềm chất lượng cao và đáp ứng được các yêu cầu của khách hàng.
134What is an advantage of component-based architecture?4 lựa chọnTrung bình60% trả lời đúng
AIncreased development time
BReduced reusability
CEnhanced maintainability
DDecreased modularity
Lời giải
Mở trang câu hỏi này →Mô hình kiến trúc dựa trên thành phần (Component-Based Architecture) mang lại nhiều lợi thế trong việc phát triển phần mềm. Một trong những lợi thế chính là tính dễ bảo trì (Enhanced maintainability). Khi sử dụng mô hình này, các thành phần được tách biệt và độc lập, giúp giảm thiểu tác động khi có thay đổi. Điều này cho phép các nhà phát triển dễ dàng cập nhật, sửa lỗi và thêm mới các thành phần mà không ảnh hưởng đến các thành phần khác. Tính dễ bảo trì này giúp giảm thiểu thời gian và chi phí cần thiết cho việc bảo trì và sửa lỗi phần mềm.
135An activity diagram can therefore be used to provide a more precise description of the use case, because it shows exactly where in the sequence and what the condition is for an alternative sequence to diverge from the main sequence.2 lựa chọnDễ100% trả lời đúng
A
TrueB
FalseLời giải
Mở trang câu hỏi này →Hoạt động trong sơ đồ hoạt động có thể được sử dụng để cung cấp mô tả chính xác hơn về trường hợp sử dụng, vì nó cho thấy chính xác ở đâu trong chuỗi và điều kiện gì cho chuỗi thay thế phân nhánh khỏi chuỗi chính. Sơ đồ hoạt động giúp xác định rõ hơn các bước trong một quy trình và điều kiện để chuyển sang bước khác. Điều này giúp cho việc phân tích và thiết kế hệ thống trở nên dễ dàng hơn. Ngoài ra, sơ đồ hoạt động cũng giúp xác định rõ hơn các điểm phân nhánh và kết hợp trong quy trình, giúp cho việc thực hiện quy trình trở nên hiệu quả hơn.
136Yellow pages brokering is useful when a service requester:4 lựa chọnTrung bình50% trả lời đúng
ANeeds to discover the location of the service
BKnows the type of service required but not the specific service
CKnows the specific service required but not the type of service
DNeeds to discover the broker
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. Môi giới kiểu trang vàng (yellow pages brokering) tra cứu theo LOẠI dịch vụ: bên yêu cầu biết mình cần loại dịch vụ nào nhưng chưa biết dịch vụ cụ thể nào đáp ứng, nên hỏi broker để nhận về danh sách ứng viên rồi chọn — đúng cách người ta dùng cuốn danh bạ trang vàng.
A sai vì tra cứu vị trí của một dịch vụ ĐÃ BIẾT TÊN là môi giới kiểu trang trắng (white pages), đây là cặp khái niệm đối lập cần phân biệt. C sai vì đảo ngược tình huống: biết dịch vụ cụ thể mà không biết loại là điều vô lý về nghiệp vụ. D sai vì địa chỉ của chính broker phải biết trước thì mới hỏi được, đó là điều kiện tiên quyết chứ không phải thứ đi tìm.
137What does a component's provided interface consist of?4 lựa chọnDễ75% trả lời đúng
AThe operations that a component must fulfill
BThe operations inside a component
CThe operations that a component uses
DThe operations of a component
Lời giải
Mở trang câu hỏi này →Một giao diện được cung cấp bởi một thành phần bao gồm các phương thức mà thành phần đó phải thực hiện. Nó là một tập hợp các phương thức mà thành phần phải cung cấp để tương tác với các thành phần khác trong ứng dụng. Giao diện được cung cấp bởi một thành phần thường bao gồm các phương thức như khởi tạo, cập nhật trạng thái, xử lý sự kiện, v.v. Mục đích của giao diện được cung cấp là giúp các thành phần khác trong ứng dụng biết cách tương tác với thành phần đó một cách chính xác và an toàn. Điều này giúp tránh các lỗi và sự cố không mong muốn trong ứng dụng.
AIt creates data and stores it for later use
BIt independently performs all actions in a use case
CIt orchestrates the behavior of other objects, guiding them on what to perform
DIt only interacts with entity objects
Lời giải
Mở trang câu hỏi này →Một đối tượng kiểm soát có thể được so sánh với một người dẫn dắt dàn nhạc vì nó có khả năng điều phối hành vi của các đối tượng khác, hướng dẫn chúng về những gì cần thực hiện. Điều này tương tự như cách một người dẫn dắt dàn nhạc sẽ chỉ đạo các nhạc sĩ khác về cách chơi nhạc cụ của họ, tạo ra một bản nhạc hoàn chỉnh. Trong lập trình, một đối tượng kiểm soát sẽ chỉ đạo các đối tượng khác về cách hành xử, tạo ra một hành vi phức tạp từ các hành vi đơn giản của các đối tượng khác.
139What is a kernel system in a SPL?4 lựa chọnTrung bình67% trả lời đúng
AA member of the SPL only composed of kernel classes
BA member of the SPL composed of kernel classes and possibly some default classes
CA member of the SPL composed of kernel classes and possibly some optional classes
DA member of the SPL composed of kernel classes and possibly some entity classes
Lời giải
Mở trang câu hỏi này →Đáp án đúng: B. Hệ thống nhân (kernel system) là thành viên NHỎ NHẤT của dòng sản phẩm: nó gồm các lớp nhân — những lớp bắt buộc có ở mọi thành viên — và có thể kèm một số lớp mặc định, tức biến thể được chọn sẵn khi khách hàng không yêu cầu gì đặc biệt.
A sai vì bỏ mất phần lớp mặc định, khiến định nghĩa hẹp hơn thực tế. C sai vì lớp tuỳ chọn (optional) theo định nghĩa là thứ chỉ có ở MỘT SỐ thành viên — đưa chúng vào hệ thống nhân là phá vỡ đúng ý nghĩa "nhân". D sai vì lớp thực thể là phân loại theo VAI TRÒ của đối tượng (lưu dữ liệu), không phải phân loại theo tính chung/biến thiên trong dòng sản phẩm; hai cách phân loại này nằm ở hai trục khác nhau.
ADeployment Diagram
BSequence Diagram
CClass Diagram
DActivity Diagram
Lời giải
Mở trang câu hỏi này →Sơ đồ triển khai UML là một trong những sơ đồ quan trọng trong việc mô hình hóa hệ thống triển khai trên các nút cứng. Nó giúp mô tả cách các thành phần hệ thống được triển khai trên các nút cứng khác nhau, bao gồm cả các thiết bị mạng và máy chủ. Sơ đồ này cho phép các nhà phát triển xác định vị trí của các thành phần hệ thống, cách chúng tương tác với nhau và cách chúng được triển khai trên các nút cứng khác nhau. Điều này giúp đảm bảo rằng hệ thống được triển khai một cách hiệu quả và hiệu suất cao.
141What is a state transition out of a composite state equivalent to?4 lựa chọnDễ100% trả lời đúng
AA transition out of only one of the substates
BA transition out of each of the substates
CA transition out of none of the substates
DA transition out of any one of the substates
Lời giải
Mở trang câu hỏi này →Khi một trạng thái phức tạp (composite state) chuyển sang trạng thái khác, điều này tương đương với việc chuyển trạng thái ra khỏi tất cả các trạng thái con (substates) của nó. Điều này có nghĩa là khi trạng thái phức tạp kết thúc, tất cả các trạng thái con cũng sẽ kết thúc cùng với nó. Ví dụ, nếu một trạng thái phức tạp đại diện cho một quá trình mua hàng, thì khi quá trình mua hàng kết thúc, trạng thái phức tạp sẽ chuyển sang trạng thái khác, tương đương với việc chuyển trạng thái ra khỏi trạng thái "đang mua hàng" của từng bước trong quá trình mua hàng.
142What can an extension use case be used for?4 lựa chọnDễ83% trả lời đúng
ATo describe a lengthy interaction with an actor
BTo describe functionality that is common to more than one use case
CTo describe the functionality of a use case that is extended by another use case(s)
DTo describe a conditional part of a different use case that is only executed under certain circumstances
Lời giải
Mở trang câu hỏi này →Đáp án đúng: D. Use case mở rộng (extension use case) mô tả một phần CÓ ĐIỀU KIỆN của một use case khác — phần chỉ chạy trong hoàn cảnh nhất định, tại một điểm mở rộng đã định trước của use case cơ sở. Nhờ vậy luồng chính giữ được sự gọn gàng, còn các nhánh ngoại lệ hoặc tuỳ chọn được tách riêng.
C là bẫy sát nhất nhưng mô tả ngược vai: đó là use case CƠ SỞ (bị mở rộng bởi use case khác), không phải use case mở rộng. B sai vì phần chức năng dùng chung cho nhiều use case được tách bằng quan hệ include, không phải extend. A sai vì độ dài của tương tác không liên quan gì đến khái niệm mở rộng.
143What constitutes a client/server software architecture's fundamental structure?4 lựa chọnDễ100% trả lời đúng
AOne client and multiple services
BMultiple clients and one service
CMultiple clients and multiple services
DOne client and one service
Lời giải
Mở trang câu hỏi này →Mô hình kiến trúc phần mềm client/server được cấu tạo bởi một hoặc nhiều máy khách (client) và một hoặc nhiều máy chủ (server). Trong đó, máy chủ cung cấp các dịch vụ cho máy khách. Trong cấu trúc cơ bản của kiến trúc này, có thể có một máy khách và một máy chủ, hoặc có nhiều máy khách và một máy chủ. Điều này cho phép máy chủ xử lý nhiều yêu cầu từ nhiều máy khách khác nhau, đồng thời máy khách có thể kết nối với nhiều máy chủ khác nhau để sử dụng các dịch vụ.
144What is a control task?4 lựa chọnDễ100% trả lời đúng
AA task that control other module
BA task that executes a statechart
CA task that executes on command
DA task that controls I/O service
Lời giải
Mở trang câu hỏi này →Một nhiệm vụ kiểm soát (control task) là một phần mềm thực hiện một trạng thái cụ thể theo một sơ đồ trạng thái (statechart). Nó có thể được sử dụng để mô hình hóa các hành vi của một hệ thống, chẳng hạn như một thiết bị điện tử. Trong một hệ thống phân tán, một nhiệm vụ kiểm soát có thể được thực hiện bởi một module riêng biệt, chịu trách nhiệm quản lý các trạng thái của hệ thống. Điều này giúp tăng cường tính linh hoạt và dễ dàng mở rộng hệ thống. Ví dụ, một nhiệm vụ kiểm soát có thể được sử dụng để quản lý trạng thái của một hệ thống điều khiển nhiệt độ, nơi nó sẽ thực hiện các hành động khác nhau dựa trên các giá trị nhiệt độ khác nhau.