Free Software Design and Architecture MCQs with Answers

493 Software Design and Architecture MCQs from Software Engineering, each with the correct answer and a written explanation of why it is correct. Free and unlimited, with no account needed.

Last updated

493 questions · page 21 of 25

  • A. Association
  • B. Aggregation
  • C. Realization
  • D. Generalization

Explanation: An association is a structural link showing that instances of one class can be connected to instances of another.

Correct answer: Association
  • A. Structural things
  • B. Behavioral things
  • C. Grouping things
  • D. Annotational things

Explanation: Classes and interfaces define the static vocabulary and structure of a model, so UML groups them among structural things.

Correct answer: Structural things
  • A. Structural things
  • B. Behavioral things
  • C. Grouping things
  • D. Annotational things

Explanation: Behavioral things represent the dynamic aspects of a UML model, such as actions, state changes, and object interactions.

Correct answer: Behavioral things
  • A. Use Case
  • B. Actor
  • C. Interface
  • D. Relationship

Explanation: An interface is a collection of operation signatures that specifies services offered by a class or component.

Correct answer: Interface
  • A. object
  • B. attribute
  • C. operation
  • D. instance

Explanation: An operation is a behavior that can be invoked on an object, such as a method that changes its state or produces a result.

Correct answer: operation
  • A. Activity
  • B. Sequence
  • C. Collaboration
  • D. Class

Explanation: A sequence diagram lays out messages along a time axis, making their order explicit from top to bottom.

Correct answer: Sequence
  • A. Activity diagram
  • B. Sequence diagram
  • C. Statechart diagram
  • D. Object diagram

Explanation: A statechart diagram models how an object or system changes state in response to events, making it suitable for real-time and concurrent…

Correct answer: Statechart diagram
  • A. Structural things
  • B. Behavioral things
  • C. Grouping things
  • D. Annotational things

Explanation: Annotational things are the explanatory parts of UML models, such as notes and comments that clarify other model elements.

Correct answer: Annotational things
  • A. Object
  • B. State
  • C. Interface
  • D. None of the mentioned

Explanation: A state describes the condition of an object, including the values of its attributes and the actions or activities associated with that…

Correct answer: State
  • A. Deployment diagram
  • B. Component diagram
  • C. Node diagram
  • D. ER-diagram

Explanation: A deployment diagram shows the arrangement of physical nodes and the software artifacts running on them at runtime.

Correct answer: Deployment diagram
  • A. A node
  • B. An interface
  • C. An activity
  • D. None of the mentioned

Explanation: A node is a physical computational resource that exists at runtime, such as a server, device, or execution environment.

Correct answer: A node
  • A. Things
  • B. Relationships
  • C. Diagrams
  • D. All of the mentioned

Explanation: UML is built from three main building blocks: things, relationships, and diagrams.

Correct answer: All of the mentioned
  • A. Interaction diagrams are at their best when they deal with one main design flow and not multiple variants that can happen
  • B. Interaction diagrams are good at designing part or all of one use case's functionality across multiple objects
  • C. Interaction diagrams allow the analyst to show iteration and conditional execution for messaging between objects
  • D. All of the mentioned

Explanation: Interaction diagrams describe object collaboration for a use case, including message ordering, loops, and conditional paths.

Correct answer: All of the mentioned
  • A. operations only
  • B. attributes only
  • C. both operations and attributes
  • D. none of the mentioned

Explanation: At the conceptual level, a class diagram concentrates on domain concepts and their attributes, while implementation details such as…

Correct answer: attributes only
  • A. A class that has direct instances, but whose descendants may have direct instances
  • B. A class that has direct instances, but whose descendants may not have direct instances
  • C. A class that has no direct instances, but whose descendants may have direct instances
  • D. All of the mentioned

Explanation: An abstract class cannot be instantiated directly, but its concrete descendant classes can have instances.

Correct answer: A class that has no direct instances, but whose descendants may have direct instances
  • A. They can be used to discover parallel activities
  • B. They are used to depict workflow for a particular business activity
  • C. Activity diagram do not tell who does what and are difficult to trace back to object models
  • D. All of the mentioned

Explanation: Activity diagrams model workflows, expose parallel activities through forks, and do not inherently assign actions to objects or people…

Correct answer: All of the mentioned
  • A. Generalization
  • B. Include
  • C. Extend
  • D. All of the mentioned

Explanation: Use case diagrams support generalization between actors or use cases, include for mandatory reused behavior, and extend for optional or…

Correct answer: All of the mentioned
  • A. specify required services for types of objects
  • B. program in Java, but not in C++ or Smalltalk
  • C. define executable logic to reuse across classes
  • D. define an API for all classes

Explanation: A UML interface specifies the services or operations that an object type promises to provide or requires, without prescribing the…

Correct answer: specify required services for types of objects
  • A. software-based
  • B. transaction-based
  • C. server-based
  • D. client-based
  • E. View Answer

Explanation: Transaction-based systems process requests that read or update shared data, usually through database transactions.

Correct answer: transaction-based
  • A. ERP systems
  • B. Transaction-based information systems
  • C. Language processing systems
  • D. None of the mentioned

Explanation: Language-processing systems translate source languages into another representation and may execute the resulting code, as compilers and…

Correct answer: Language processing systems