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
124/436 câuCòn 312
105What do class structuring criteria help with?4 lựa chọnTrung bình
AStructuring an application into classes
BDefining the attributes of a class
CDefining the associations of a class
DDefining the operations of a class
Lời giải
Mở trang câu hỏi này →Các tiêu chí cấu trúc lớp giúp chúng ta phân chia một ứng dụng lớn thành các lớp nhỏ hơn, dễ quản lý và dễ bảo trì. Điều này giúp giảm thiểu sự phức tạp của ứng dụng và tăng cường tính linh hoạt trong việc phát triển và sửa chữa. Bằng cách sử dụng các tiêu chí cấu trúc lớp, chúng ta có thể tạo ra các lớp có trách nhiệm rõ ràng và dễ hiểu, giúp các lập trình viên khác dễ dàng hiểu và sử dụng.
106What is carried out during analysis modeling?4 lựa chọnTrung bình57% trả lời đúng
ADeveloping use case models
BDeveloping data flow and entityrelationship diagrams
CDeveloping static and dynamic models
DDeveloping software architectures
Lời giải
Mở trang câu hỏi này →Trong quá trình phân tích mô hình hóa, các nhà phát triển phần mềm sẽ tiến hành xây dựng các mô hình tĩnh và động. Mô hình tĩnh bao gồm các yếu tố như lớp, đối tượng, phương thức, trong khi mô hình động mô tả các tương tác giữa các đối tượng và các quy trình. Việc xây dựng các mô hình này giúp xác định rõ yêu cầu của hệ thống, xác định các mối quan hệ giữa các thành phần và tạo cơ sở cho việc thiết kế hệ thống. Mô hình tĩnh và động đóng vai trò quan trọng trong việc đảm bảo hệ thống được thiết kế một cách hợp lý và hiệu quả.
107What are software structuring criteria?4 lựa chọnDễ100% trả lời đúng
AFundamental ideas that can be applied to designing a system.
BSystematic approaches for producing a design.
CGuidelines used to help in structuring a software system into its components.
DOverall plans for developing a design.
Lời giải
Mở trang câu hỏi này →Các tiêu chí cấu trúc phần mềm là các nguyên tắc, phương pháp giúp phân chia và tổ chức hệ thống phần mềm thành các thành phần, mô-đun riêng biệt. Chúng cung cấp hướng dẫn cụ thể để giúp các nhà phát triển phần mềm tạo ra một hệ thống phần mềm có cấu trúc rõ ràng, dễ dàng bảo trì và mở rộng. Các tiêu chí cấu trúc phần mềm giúp đảm bảo rằng hệ thống phần mềm được thiết kế một cách hệ thống và có thể đáp ứng được các yêu cầu của người dùng. Chúng cũng giúp giảm thiểu sự phức tạp của hệ thống phần mềm và tăng cường khả năng bảo trì, sửa lỗi và nâng cấp.
108What role do design patterns play in software architecture?4 lựa chọnDễ100% trả lời đúng
AThey introduce unnecessary complexity into software design
BThey provide tested, proven development paradigms to solve common design issues
CThey are only useful for graphical user interface design
DThey restrict creativity in software design
Lời giải
Mở trang câu hỏi này →Mô hình thiết kế đóng vai trò quan trọng trong kiến trúc phần mềm. Chúng cung cấp các khuôn mẫu đã được kiểm tra, chứng minh và chứng minh để giải quyết các vấn đề thiết kế phổ biến. Điều này giúp các nhà phát triển có thể xây dựng phần mềm ổn định, dễ bảo trì và mở rộng. Mô hình thiết kế giúp giảm thiểu sự phức tạp trong thiết kế phần mềm bằng cách cung cấp các giải pháp đã được chứng minh để giải quyết các vấn đề thiết kế phổ biến. Điều này giúp các nhà phát triển có thể tập trung vào việc phát triển phần mềm thay vì phải tìm kiếm các giải pháp mới cho các vấn đề thiết kế.
109How is an actor depicted on a use case diagram?4 lựa chọnDễ80% trả lời đúng
AAn oval
BA stick figure
CA box
DA dashed line
Lời giải
Mở trang câu hỏi này →Trong sơ đồ trường hợp sử dụng, diễn viên được thể hiện bằng hình dạng đặc biệt để phân biệt với các đối tượng khác. Hình dạng này thường là một hình dạng đơn giản, chẳng hạn như một hình oval hoặc một hình dạng khác. Tuy nhiên, trong trường hợp này, diễn viên được thể hiện bằng một hình dạng đặc biệt khác, đó là một hình dạng giống như một người, thường được gọi là một 'stick figure' hoặc 'hình người'. Hình dạng này được sử dụng để thể hiện diễn viên trong quá trình tương tác với hệ thống.
110What is a component in component-based software architecture?4 lựa chọnDễ100% trả lời đúng
AA function
BA class
CA database
DA reusable piece of software
Lời giải
Mở trang câu hỏi này →Trong kiến trúc phần mềm dựa trên thành phần, một thành phần (component) được định nghĩa là một phần mềm tái sử dụng có thể được kết hợp lại để tạo thành các hệ thống phần mềm phức tạp. Thành phần là một đơn vị độc lập, có thể được phát triển, thử nghiệm và bảo trì riêng biệt. Nó có thể được sử dụng nhiều lần trong nhiều hệ thống khác nhau, giúp giảm thiểu thời gian và chi phí phát triển phần mềm. Thành phần thường được mô tả bằng các lớp (class) hoặc các hàm (function) trong ngôn ngữ lập trình, nhưng nó không chỉ giới hạn ở đó. Thành phần có thể bao gồm cả dữ liệu và các dịch vụ, và nó có thể được kết hợp lại để tạo thành các hệ thống phần mềm phức tạp.
111How should an external object be designed to interface to the system?4 lựa chọnTrung bình50% trả lời đúng
AIt should interface to one subsystem
BIt should interface to several subsystems.
CIt should interface to every subsystem.
DIt should interface to none of the subsystems.
Lời giải
Mở trang câu hỏi này →Khi thiết kế một đối tượng bên ngoài để giao tiếp với hệ thống, chúng ta cần xem xét cách thức giao tiếp này sẽ diễn ra. Mỗi hệ thống đều có các thành phần riêng biệt, được gọi là các subsystem. Để giao tiếp hiệu quả, đối tượng bên ngoài nên giao tiếp với một subsystem duy nhất. Điều này giúp giảm thiểu sự phức tạp và tăng cường khả năng bảo trì. Giao tiếp với một subsystem duy nhất cũng giúp đối tượng bên ngoài có thể tập trung vào việc giao tiếp với một thành phần cụ thể của hệ thống, thay vì phải xử lý nhiều thành phần khác nhau. Điều này giúp giảm thiểu khả năng xảy ra lỗi và tăng cường khả năng tương tác giữa đối tượng bên ngoài và hệ thống.
112What does UML stand for?4 lựa chọnDễ86% trả lời đúng
AUnified Modeling Language
BUniversal Modeling Language
CUniform Modeling Language
DUnique Modeling Language
Lời giải
Mở trang câu hỏi này →UML là viết tắt của Unified Modeling Language, là một ngôn ngữ mô hình hóa thống nhất được sử dụng để mô tả và thiết kế các hệ thống phần mềm. UML cung cấp một bộ công cụ để mô tả các đối tượng, mối quan hệ và hành vi của các đối tượng trong một hệ thống. Nó giúp các nhà phát triển phần mềm tạo ra các mô hình và thiết kế hệ thống một cách rõ ràng và thống nhất. UML bao gồm các yếu tố như lớp, đối tượng, mối quan hệ, hoạt động và quy trình, giúp các nhà phát triển phần mềm hiểu rõ về cấu trúc và hành vi của hệ thống. Sử dụng UML giúp tăng cường hiệu suất và giảm thiểu sai sót trong quá trình phát triển phần mềm.
113What is the primary purpose of modeling in software development?4 lựa chọnDễ100% trả lời đúng
AWriting code
BMarketing software
CSimulating hardware
DDesigning applications before coding
Lời giải
Mở trang câu hỏi này →Đáp án đúng: D. Mục đích chính của việc mô hình hoá là thiết kế và hiểu ứng dụng TRƯỚC KHI viết mã: mô hình cho phép suy nghĩ ở mức trừu tượng, phát hiện sai sót và thử phương án khi giá của việc sửa còn rẻ, đồng thời làm ngôn ngữ chung giữa các bên.
A sai vì viết mã là việc diễn ra sau khi mô hình đã định hình. B sai vì tiếp thị phần mềm không liên quan gì đến mô hình hoá kỹ thuật. C sai vì mô phỏng phần cứng chỉ là một ứng dụng hẹp trong một số lĩnh vực, không phải mục đích chung.
114In the Waterfall Model, what is the correct order of phases?4 lựa chọnDễ100% trả lời đúng
ADesign, Implementation, Testing, Maintenance
BRequirements, Design, Implementation, Testing, Deployment, Maintenance
CPlanning, Design, Execution, Evaluation
DAnalysis, Development, Deployment, Support
Lời giải
Mở trang câu hỏi này →Trong mô hình Waterfall, các giai đoạn được thực hiện theo một trình tự cố định. Giai đoạn đầu tiên là thu thập yêu cầu (Requirements), sau đó là thiết kế (Design), tiếp theo là triển khai (Implementation), kiểm thử (Testing), triển khai (Deployment) và cuối cùng là bảo trì (Maintenance). Mô hình này được gọi là mô hình thác nước vì các giai đoạn được thực hiện theo một trình tự tuyến tính, không có sự lặp lại hoặc điều chỉnh giữa các giai đoạn. Mỗi giai đoạn phải được hoàn thành trước khi chuyển sang giai đoạn tiếp theo.
115What is the primary purpose of software modeling in the software development process?4 lựa chọnDễ100% trả lời đúng
ATo create a visually appealing user interface
BTo write code and implement software functionality
CTo document, analyze, and design software systems
DTo perform software testing and quality assurance
Lời giải
Mở trang câu hỏi này →Mục đích chính của mô hình hóa phần mềm trong quá trình phát triển phần mềm là để tạo ra một mô hình chi tiết và chính xác về hệ thống phần mềm. Điều này giúp các nhà phát triển phần mềm hiểu rõ về yêu cầu của hệ thống, xác định các yêu cầu chức năng và không chức năng, và thiết kế hệ thống phần mềm một cách hiệu quả. Mô hình hóa phần mềm cũng giúp các nhà phát triển phần mềm xác định các mối quan hệ giữa các thành phần của hệ thống, từ đó có thể tạo ra một hệ thống phần mềm ổn định và dễ bảo trì.
116What does the software architecture describe?4 lựa chọnDễ100% trả lời đúng
AThe software inside a building
BThe structure of a client/server system
CThe overall structure of a software system
DThe software classes and their relationships
Lời giải
Mở trang câu hỏi này →Kỹ thuật thiết kế phần mềm (software architecture) mô tả tổng thể cấu trúc của một hệ thống phần mềm. Nó bao gồm các thành phần chính như mô hình tổ chức, giao tiếp giữa các thành phần, và cách thức hoạt động của hệ thống. Mục tiêu của kỹ thuật thiết kế phần mềm là đảm bảo hệ thống phần mềm có thể mở rộng, dễ dàng bảo trì và sửa lỗi, đồng thời đáp ứng được các yêu cầu chức năng và hiệu suất. Nó giống như một bản thiết kế kiến trúc cho một tòa nhà, giúp đảm bảo rằng tòa nhà được xây dựng một cách hợp lý và hiệu quả.
117The basic client/single service architectural pattern states that:4 lựa chọnDễ100% trả lời đúng
AMultiple clients request services, and multiple services fulfill client requests.
BMultiple clients request services, and a service fulfills client requests.
CA client requests services, and a service fulfills client requests.
DA client requests services, and multiple services fulfill client requests.
Lời giải
Mở trang câu hỏi này →Mô hình kiến trúc cơ bản của một khách hàng/dịch vụ đơn (Client/Single Service) mô tả một hệ thống trong đó có nhiều khách hàng yêu cầu dịch vụ từ một dịch vụ duy nhất. Trong mô hình này, một dịch vụ cung cấp các dịch vụ cho nhiều khách hàng khác nhau. Điều này cho phép khách hàng truy cập vào các dịch vụ mà không cần phải tạo ra nhiều dịch vụ riêng biệt. Mô hình này thường được sử dụng trong các hệ thống có số lượng khách hàng lớn và cần cung cấp các dịch vụ giống nhau.
118What is a compound transaction?4 lựa chọnDễ100% trả lời đúng
AThe compound transaction is indivisible
BThe compound transaction is atomic.
CThe compound transaction is decomposed into atomic transactions.
DThe compound transaction is decomposed into subatomic transactions.
Lời giải
Mở trang câu hỏi này →Một giao dịch phức hợp (compound transaction) là một chuỗi các hoạt động được thực hiện cùng một lúc. Để hiểu rõ hơn về giao dịch phức hợp, chúng ta cần biết rằng giao dịch phức hợp có thể được chia thành các giao dịch nguyên tử (atomic transaction). Mỗi giao dịch nguyên tử là một đơn vị nhỏ nhất của giao dịch phức hợp, và nó phải được thực hiện hoàn toàn hoặc không được thực hiện. Điều này đảm bảo rằng giao dịch phức hợp luôn được thực hiện một cách nhất quán và không bị ảnh hưởng bởi các sự cố ngoài ý muốn. Ví dụ, khi thực hiện giao dịch phức hợp, chẳng hạn như chuyển tiền từ tài khoản này sang tài khoản khác, giao dịch phức hợp có thể được chia thành hai giao dịch nguyên tử: giao dịch rút tiền từ tài khoản nguồn và giao dịch chuyển tiền vào tài khoản đích. Nếu bất kỳ giao dịch nguyên tử nào bị lỗi, giao dịch phức hợp sẽ được hủy bỏ để đảm bảo tính toàn vẹn của hệ thống.
119Which of the following is considered a software quality attribute?4 lựa chọnDễ100% trả lời đúng
AFile organization
BCode syntax
CMaintainability
DUser interface design
Lời giải
Mở trang câu hỏi này →Tính chất chất lượng phần mềm là những đặc điểm quan trọng mà phần mềm cần có để đáp ứng nhu cầu của người dùng. Trong các lựa chọn trên, tính maintainability (tính dễ bảo trì) là một trong những đặc điểm quan trọng của phần mềm. Tính maintainability cho phép phần mềm được cập nhật, sửa lỗi và mở rộng dễ dàng mà không ảnh hưởng đến hiệu suất và tính ổn định của phần mềm. Điều này giúp giảm thiểu chi phí và thời gian cần thiết để duy trì phần mềm.
120What role do software architectural patterns play in the development of an application?4 lựa chọnDễ100% trả lời đúng
AThey specify detailed algorithms for specific tasks
BThey dictate the user interface design
CThey provide the skeleton or template for the overall software architecture
DThey focus on low-level implementation details
Lời giải
Mở trang câu hỏi này →Mô hình kiến trúc phần mềm đóng vai trò quan trọng trong quá trình phát triển ứng dụng. Chúng cung cấp khung xương hoặc mẫu tổng thể cho kiến trúc phần mềm, giúp các nhà phát triển tạo ra một cấu trúc logic và tổ chức cho ứng dụng. Mô hình kiến trúc phần mềm giúp giảm thiểu sự phức tạp và tăng cường khả năng mở rộng, bảo trì và sửa lỗi. Chúng cũng giúp đảm bảo tính nhất quán và dễ dàng tích hợp với các thành phần khác trong hệ thống. Vì vậy, mô hình kiến trúc phần mềm đóng vai trò như một bản thiết kế tổng thể cho ứng dụng, giúp các nhà phát triển tạo ra một sản phẩm chất lượng cao và hiệu quả.
121What is a key characteristic of SOA?4 lựa chọnTrung bình57% trả lời đúng
AServices are dependent on each other
BServices are autonomous
CServices are not reusable
DServices are tightly integrated
Lời giải
Mở trang câu hỏi này →SOA (Service-Oriented Architecture) là một phương pháp thiết kế hệ thống dựa trên các dịch vụ độc lập. Một trong những đặc điểm quan trọng của SOA là các dịch vụ tự chủ (autonomous). Điều này có nghĩa là mỗi dịch vụ có thể được triển khai, quản lý và duy trì độc lập với các dịch vụ khác. Các dịch vụ tự chủ cho phép hệ thống trở nên linh hoạt, dễ dàng mở rộng và nâng cấp. Điều này cũng giúp giảm thiểu sự phụ thuộc giữa các dịch vụ, từ đó tăng cường khả năng chịu lỗi và độ tin cậy của hệ thống. Ngoài ra, các dịch vụ tự chủ cũng cho phép các tổ chức dễ dàng tích hợp các dịch vụ từ các nguồn khác nhau, tạo điều kiện cho việc hợp tác và cạnh tranh.
122What is broadcast message communication?4 lựa chọnKhó
AA message sent to several recipients
BA message sent to a specific recipient
CA message sent to all recipients
DA message sent to recipients who are members of a group
Lời giải
Mở trang câu hỏi này →Tiêu đề: Thông điệp phát sóng trong giao tiếp.
Thông điệp phát sóng là một phương thức giao tiếp trong đó một thông điệp được gửi đến nhiều người nhận. Điều này khác với giao tiếp một chiều, nơi thông điệp được gửi đến một người nhận cụ thể. Trong giao tiếp phát sóng, thông điệp được gửi đến tất cả người nhận hoặc một nhóm người nhận cụ thể. Điều này thường được sử dụng trong các ứng dụng như tin nhắn nhóm, tin nhắn hệ thống hoặc thông báo hệ thống.
Để trả lời câu hỏi này, chúng ta cần hiểu rõ về tính chất của giao tiếp phát sóng và cách nó khác với các phương thức giao tiếp khác.
123If two actions are shown on a given state transition, which of the following is true?4 lựa chọnKhó
AThe two actions are dependent on each other.
BThe two actions are independent of each other.
COne action provides an input to the other action.
DThe second action executes when the first action completes execution.
Lời giải
Mở trang câu hỏi này →Khi hai hành động được hiển thị trên một trạng thái chuyển đổi, chúng ta cần xác định mối quan hệ giữa chúng. Trong trường hợp này, câu trả lời đúng là "Hai hành động độc lập với nhau". Điều này có nghĩa là việc thực hiện một hành động không phụ thuộc vào việc thực hiện hành động kia. Mỗi hành động có thể được thực hiện độc lập và không ảnh hưởng đến kết quả của hành động kia. Ví dụ, nếu chúng ta đang sử dụng một ứng dụng và có hai nút bấm, việc nhấn nút bấm thứ nhất không ảnh hưởng đến việc nhấn nút bấm thứ hai. Cả hai hành động đều có thể được thực hiện độc lập và không phụ thuộc vào nhau.
124What is inheritance?4 lựa chọnDễ78% trả lời đúng
AA mechanism for inheriting characteristics from a parent
BA mechanism for sharing and reusing code between classes
CA mechanism for sharing data between classes
DA mechanism for hiding information between classes
Lời giải
Mở trang câu hỏi này →Inheritance là một khái niệm quan trọng trong lập trình hướng đối tượng. Nó cho phép một lớp con kế thừa các tính chất, phương thức và thuộc tính từ lớp cha. Điều này giúp giảm thiểu sự lặp lại mã và tăng cường tính tái sử dụng. Khi một lớp con kế thừa từ lớp cha, nó có thể sử dụng các phương thức và thuộc tính đã được định nghĩa trong lớp cha mà không cần phải định nghĩa lại. Điều này giúp đơn giản hóa quá trình lập trình và tăng cường tính linh hoạt.