Cuối kỳ · SWD392 · Summer 2026

Ôn tập cuối kỳ SWD392 Summer 2026

60 câu gom từ 1 đề ôn của kỳ Summer 2026.

Đề gốc

Bấm để làm trọn một đề thay vì tra từng câu

60 câu hỏi

Trang 1 / 3
What is a unary association in UML?4 lựa chọn
AAn association between objects of different classes
BAn association between objects of the same class
CAn association between an object and an external system
DAn association that does not involve any objects
Lời giải
Trong UML, một liên kết đơn (unary association) là một loại liên kết giữa một đối tượng và một đối tượng khác của cùng một lớp. Nó đại diện cho mối quan hệ giữa một đối tượng và một thuộc tính hoặc phương thức của nó. Liên kết đơn thường được sử dụng để mô tả mối quan hệ giữa một đối tượng và một thuộc tính của nó, chẳng hạn như một nhân viên có thể có một số địa chỉ liên lạc. Liên kết đơn có thể được biểu diễn bằng một đường thẳng từ đối tượng đến thuộc tính của nó.
Mở trang câu hỏi này →
ATo develop a single software product that fits all market needs
BTo decrease software production costs by reducing the quality
CTo focus exclusively on the customization of software for individual customers
DTo create a set of software products sharing a common, managed set of features to satisfy specific market segments
Lời giải
Kỹ thuật sản xuất dòng sản phẩm phần mềm (Software Product Line Engineering - SPL) là một phương pháp thiết kế và phát triển phần mềm nhằm tạo ra một tập hợp các sản phẩm phần mềm chia sẻ một bộ tính năng chung, được quản lý và có thể được tùy chỉnh để đáp ứng các nhu cầu cụ thể của các phân khúc thị trường khác nhau. Mục tiêu chính của SPL là giảm thiểu chi phí sản xuất phần mềm bằng cách giảm thiểu sự đa dạng và tăng cường khả năng tái sử dụng các thành phần phần mềm.
Mở trang câu hỏi này →
A1..*
Bm..n
C*
D0..1
Lời giải
Trong sơ đồ lớp, mối quan hệ tùy chọn được biểu diễn bằng cách sử dụng ký hiệu 0..1. Điều này cho biết một lớp có thể có nhiều đối tượng khác hoặc không có đối tượng nào từ lớp khác. Ví dụ, một người có thể có nhiều bạn bè, nhưng cũng có thể không có bạn bè nào. Mối quan hệ tùy chọn thường được sử dụng để mô tả mối quan hệ giữa lớp và lớp khác, nơi một lớp có thể có nhiều đối tượng từ lớp khác hoặc không có đối tượng nào.
Mở trang câu hỏi này →
AEmergency Monitoring System
BATM System
COnline Shopping System
DInventory Management System
Lời giải
Hệ thống thường được sử dụng làm ví dụ minh họa để minh họa quá trình xử lý giao dịch ngân hàng là hệ thống ATM. Hệ thống ATM cho phép người dùng rút tiền, chuyển tiền và kiểm tra tài khoản từ các máy ATM được đặt ở nhiều nơi. Quá trình xử lý giao dịch trong hệ thống ATM bao gồm các bước như xác thực người dùng, xác thực thẻ, xác thực số tiền, cập nhật số dư tài khoản và in hóa đơn. Hệ thống ATM là một ví dụ điển hình về hệ thống xử lý giao dịch ngân hàng vì nó phải đảm bảo tính bảo mật, tính toàn vẹn và tính kịp thời của giao dịch.
Mở trang câu hỏi này →
AThey provide guidelines for programming language syntax
BThey represent non-functional requirements that influence architectural choices
CThey describe database constraints only
DThey replace functional requirements
Lời giải
Trong thiết kế kiến trúc phần mềm, các đặc trưng chất lượng phần mềm đóng vai trò quan trọng. Chúng đại diện cho các yêu cầu không chức năng (non-functional requirements) có ảnh hưởng đến các quyết định kiến trúc. Ví dụ, hiệu suất, độ tin cậy, bảo mật và khả năng mở rộng là các đặc trưng chất lượng phần mềm thường được xem xét trong thiết kế kiến trúc. Mục đích của chúng là đảm bảo rằng hệ thống phần mềm đáp ứng được các yêu cầu không chức năng và cung cấp trải nghiệm người dùng tốt nhất. Vì vậy, các đặc trưng chất lượng phần mềm không chỉ là các yêu cầu kỹ thuật mà còn là yếu tố quan trọng trong việc định hình kiến trúc phần mềm.
Mở trang câu hỏi này →
AThe web server layer.
BThe application server layer.
CThe database server layer.
DAll of the above
Mở trang câu hỏi này →
AObserver
BSubject
CMediator
DAdapter
Lời giải
Khi áp dụng mô hình thiết kế Observer, vai trò chịu trách nhiệm thông báo cho tất cả các đối tượng phụ thuộc về một thay đổi trạng thái là Subject. Subject là đối tượng chịu trách nhiệm lưu trữ trạng thái và thông báo cho các đối tượng khác khi trạng thái thay đổi. Các đối tượng khác, được gọi là Observer, sẽ đăng ký để nhận thông báo từ Subject. Khi trạng thái thay đổi, Subject sẽ thông báo cho tất cả các Observer đã đăng ký, giúp chúng cập nhật trạng thái của mình. Mô hình này cho phép các đối tượng tách biệt và độc lập, nhưng vẫn có thể tương tác với nhau thông qua việc đăng ký và thông báo.
Mở trang câu hỏi này →
AUse case modeling
BRequirements analysis
CStatic modeling
DActivity diagrams
Lời giải
Để xác định các yêu cầu chức năng của một hệ thống, người ta thường sử dụng phương pháp mô hình hóa trường hợp sử dụng (Use case modeling). Phương pháp này giúp xác định các hoạt động và giao diện của hệ thống, từ đó xác định các yêu cầu chức năng cần phải đáp ứng. Mô hình hóa trường hợp sử dụng bao gồm việc xác định các trường hợp sử dụng, các yêu cầu chức năng và các ràng buộc liên quan. Phương pháp này giúp đảm bảo rằng hệ thống đáp ứng được các yêu cầu chức năng của người dùng và cung cấp được các chức năng cần thiết.
Mở trang câu hỏi này →
What is inheritance?4 lựa chọn
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
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.
Mở trang câu hỏi này →
AA class can contain method implementations, an interface cannot
BAn interface can contain method implementations, a class cannot
CA class can be instantiated, an interface can also be instantiated
DThere is no difference between a class and an interface
Lời giải
Một lớp (class) và một giao diện (interface) là hai khái niệm cơ bản trong lập trình hướng đối tượng. Lớp là một bản mô tả chi tiết về một đối tượng, bao gồm cả các thuộc tính và hành vi của nó. Trong khi đó, giao diện chỉ là một bản mô tả về các hành vi mà một đối tượng cần phải thực hiện, mà không cần phải cung cấp chi tiết về các thuộc tính. Một lớp có thể chứa các thực hiện phương thức (method implementations), trong khi giao diện không thể. Điều này có nghĩa là một lớp có thể chứa cả mã nguồn của các phương thức, trong khi giao diện chỉ chứa các khai báo về các phương thức mà các lớp cần phải thực hiện.
Mở trang câu hỏi này →
AEntity object
BBoundary object
CControl object
DUser object
Lời giải
Dưới đây là câu hỏi về các loại đối tượng cấu trúc trong thiết kế phần mềm. Các loại đối tượng cấu trúc thường được sử dụng bao gồm đối tượng thực thể (Entity object), đối tượng ranh giới (Boundary object) và đối tượng kiểm soát (Control object). Tuy nhiên, đối tượng người dùng (User object) không phải là một trong những loại đối tượng cấu trúc chính thức. Đối tượng người dùng thường được coi là một loại đối tượng thực thể, nhưng nó không được coi là một loại đối tượng cấu trúc độc lập. Vì vậy, trong số các lựa chọn trên, đối tượng người dùng là lựa chọn không đúng.
Mở trang câu hỏi này →
What is a composition hierarchy?4 lựa chọn
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ộ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.
Mở trang câu hỏi này →
AControl is divided among various control components.
BIt provides the overall control and sequencing of the system.
CIt provides overall control by coordinating several control components.
DIt provides overall control over various I/O objects.
Lời giải
Mô hình kiến trúc Centralized Control là một trong những mô hình kiến trúc phổ biến trong lập trình. Trong mô hình này, tất cả các hoạt động kiểm soát và điều khiển của hệ thống được tập trung vào một điểm duy nhất. Điều này có nghĩa là hệ thống có một bộ phận kiểm soát trung tâm chịu trách nhiệm điều khiển và sắp xếp các hoạt động của hệ thống. Bộ phận kiểm soát trung tâm này sẽ quyết định khi nào và làm gì, và nó sẽ đảm bảo rằng tất cả các hoạt động của hệ thống được thực hiện theo đúng kế hoạch. Mô hình này thường được sử dụng trong các hệ thống có yêu cầu kiểm soát và điều khiển cao, chẳng hạn như hệ thống tự động hóa, hệ thống điều khiển nhiệt độ, v.v.
Mở trang câu hỏi này →
ASequence Diagram
BClass Diagram
CUse Case Diagram
DActivity Diagram
Lời giải
UML (Unified Modeling Language) là một ngôn ngữ mô hình hóa được sử dụng để mô tả và thiết kế các hệ thống thông tin. Trong đó, có bốn loại sơ đồ UML chính: Sequence Diagram, Class Diagram, Use Case Diagram và Activity Diagram. Mỗi loại sơ đồ đều có mục đích và phạm vi khác nhau. Trong câu hỏi này, chúng ta cần tìm loại sơ đồ UML được sử dụng để mô tả cấu trúc tĩnh của một hệ thống. Cấu trúc tĩnh của một hệ thống bao gồm các lớp, mối quan hệ giữa các lớp và các thuộc tính của các lớp. Loại sơ đồ UML phù hợp với yêu cầu này là Class Diagram. Class Diagram là một loại sơ đồ UML được sử dụng để mô tả cấu trúc tĩnh của một hệ thống, bao gồm các lớp, mối quan hệ giữa các lớp và các thuộc tính của các lớp. Nó giúp các nhà phát triển hiểu rõ về cấu trúc của hệ thống và thiết kế hệ thống một cách hiệu quả.
Mở trang câu hỏi này →
AObserver pattern
BStrategy pattern
CFactory method pattern
DDecorator pattern
Lời giải
Mô hình thiết kế thường được áp dụng để xử lý thông báo sự kiện trong Hệ thống Giám sát khẩn cấp là Mô hình quan sát viên (Observer pattern). Mô hình này cho phép các đối tượng quan sát viên đăng ký để nhận thông báo khi có sự kiện xảy ra. Khi một sự kiện xảy ra, hệ thống sẽ thông báo cho tất cả các quan sát viên đã đăng ký. Điều này giúp hệ thống giám sát khẩn cấp có thể phản ứng nhanh chóng và hiệu quả khi có sự kiện xảy ra.
Mở trang câu hỏi này →
What is a periodic task?4 lựa chọn
AA task that responds to each message it receives
BA task that is activated by a timer event
CA task that is activated by an external event
DA task that is activated by an input event
Lời giải
Một nhiệm vụ chu kỳ là một loại nhiệm vụ được kích hoạt theo một lịch trình đã được định nghĩa. Nó được thực hiện một cách tự động và thường được sử dụng để thực hiện các tác vụ lặp lại như gửi tin nhắn hàng ngày, cập nhật dữ liệu hàng tuần, v.v. Nhiệm vụ chu kỳ có thể được kích hoạt bởi một timer, một lịch trình hoặc một sự kiện cụ thể. Ví dụ, một ứng dụng có thể có một nhiệm vụ chu kỳ để gửi thông báo hàng ngày về các sự kiện quan trọng. Nhiệm vụ chu kỳ giúp giảm tải công việc của người dùng và đảm bảo rằng các tác vụ quan trọng được thực hiện một cách đều đặn.
Mở trang câu hỏi này →
AIdentifying the interactions between users and the system
BDeveloping algorithms for data storage
CAutomating performance testing
DEstablishing network protocols
Lời giải
Sử dụng mô hình Use Case trong phát triển hệ thống nhằm xác định mục đích chính là xác định các tương tác giữa người dùng và hệ thống. Mô hình này giúp các nhà phát triển hiểu rõ về nhu cầu và hành vi của người dùng, từ đó thiết kế hệ thống đáp ứng được nhu cầu của họ. Quá trình này bao gồm việc xác định các trường hợp sử dụng (Use Case) và mô tả các tương tác giữa người dùng và hệ thống trong từng trường hợp sử dụng. Điều này giúp đảm bảo rằng hệ thống được phát triển đáp ứng được nhu cầu của người dùng và đạt được hiệu suất cao.
Mở trang câu hỏi này →
AAs a primary key in the superclass table.
BAs an attribute in each subclass table.
CAs part of the concatenated primary key in each subclass table.
DAs an explicit attribute of the superclass table.
Lời giải
Trong quan hệ cơ sở dữ liệu, phân biệt (discriminator) được đại diện bằng một thuộc tính riêng biệt của bảng cha (superclass). Nó thường được sử dụng để xác định loại đối tượng cụ thể trong một quan hệ cơ sở dữ liệu có nhiều loại đối tượng khác nhau. Ví dụ, trong một bảng có thể có nhiều loại sản phẩm khác nhau, và phân biệt sẽ được sử dụng để xác định loại sản phẩm cụ thể. Điều này giúp cho việc truy vấn và xử lý dữ liệu trở nên dễ dàng hơn.
Mở trang câu hỏi này →
ATo make subsystems more interconnected
BTo assign multiple concerns to each subsystem
CTo ensure each subsystem addresses a distinct concern
DTo combine all subsystems into one aggregate object
Lời giải
Khi áp dụng nguyên tắc tách biệt mối quan tâm (Separation of Concerns) trong thiết kế mô-đun, mục tiêu chính là đảm bảo mỗi mô-đun chỉ tập trung vào một mối quan tâm cụ thể. Điều này giúp giảm thiểu sự phức tạp và tăng cường tính linh hoạt trong thiết kế hệ thống. Mỗi mô-đun sẽ có chức năng riêng biệt, dễ dàng hiểu và sửa chữa, từ đó cải thiện hiệu suất và độ tin cậy của hệ thống. Việc tách biệt mối quan tâm cũng giúp giảm thiểu sự phụ thuộc giữa các mô-đun, giúp hệ thống trở nên linh hoạt và dễ dàng mở rộng.
Mở trang câu hỏi này →
APhased software development
BThrowaway prototyping
CRisk-driven development
DIncremental development
Lời giải
Spiral model tập trung vào phương pháp phát triển phần mềm dựa trên rủi ro. Phương pháp này nhấn mạnh việc đánh giá và quản lý rủi ro trong suốt quá trình phát triển phần mềm. Mỗi vòng trong mô hình này bao gồm bốn giai đoạn chính: xác định mục tiêu, đánh giá rủi ro, lập kế hoạch và thực hiện. Quá trình này lặp đi lặp lại cho đến khi đạt được mục tiêu cuối cùng. Spiral model cho phép phát triển phần mềm một cách linh hoạt và có thể thích nghi với những thay đổi trong yêu cầu hoặc rủi ro mới phát sinh.
Mở trang câu hỏi này →
Đi tiếp từ đây