250+ MCQs on Finalizing Software Architecture and Answers

Software Design Multiple Choice Questions on “Finalizing Software Architecture”.

1. What are the characteristics does a good SAD consist of?
a) Consistency, Feasibility, Adequacy
b) Completeness, Well-formedness
c) Reliability, Usability
d) Consistency, Feasibility, Adequacy, Completeness, Well-formedness

Answer: d
Clarification: A good SAD consists of Feasibility, Adequacy, Clarity, Completeness, Consistency, well-formedness.

2. Which of these has to be followed for a design to be feasible?
a) The software architects must investigate their design thoroughly to ensure that it can be implemented
b) The software architecture must specifies a program that, when built, can meet its requirements subject to constraints
c) The software architecture notations should be used properly
d) All of the mentioned

Answer: a
Clarification: For a Design to be feasible the software architects must investigate their design thoroughly to ensure that it can be implemented.

3. Which of these has to be followed for a design to be consistent?
a) The software architecture must specifies a program that, when built, can meet its requirements subject to constraints
b) The software architecture notations should be used properly
c) A single program that can satisfy them all
d) All of the mentioned

Answer: c
Clarification: A design is consistent if a single program that can satisfy all.

4. What is a Review?
a) It is an examination of a work product by qualified individuals
b) It is an evaluation of a work process by qualified teams
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: A review is an examination and evaluation of a work product or process by qualified individuals or teams.

5. Which of these are subcategories for a review?
a) Desk Check
b) Walk Through
c) Audit
d) All of the mentioned

Answer: d
Clarification: A review is further classified as Desk-check, Walk-through, Audit and Active review.

6. What is an Active review?
a) It is a review conducted by experts who are not members of the design team
b) It is an informal presentation to a team of reviewers
c) It is an examination by experts who answer questions about specific aspects of the design
d) It is an assessment of a design by the designer

Answer: c
Clarification: An active review is an examination by experts who answer questions about specific aspects of the design.

7. Which of the options are true for an Active review?
a) Active design reviews were developed to remedy problems with traditional reviews
b) The review preparation phase begins with the activity Identify Review Goals, during which the designers choose a specific aspect of the software architecture that they would like to have reviewed
c) Active review is an examination by experts who answer questions about specific aspects of the design
d) All of the mentioned

Answer: d
Clarification: Active review follows all the above mentioned statements.

8. What are the different stages included in Active design review?
a) Identify review goals
b) Choose Reviewers
c) Study Reviews
d) All of the mentioned

Answer: d
Clarification: The Active design review follows all the mentioned steps.

9. What are the different activities for an active review process?
a) Review Preparation
b) Review Performance
c) Review Completion
d) All of the mentioned

Answer: d
Clarification: The different activities for an active review process includes all of the above mentioned.

10. Which of the following are true with reference to active review?
a) The review performance phase begins when the designers and reviewers Hold an Overview Meeting
b) The designers Study Reviews during the review completion phase
c) Reviews can and should be used during the entire architectural design process to help catch defects as soon as possible
d) All of the mentioned

Answer: d
Clarification: All the statements are true with reference to Active reviews.

250+ MCQs on Mid-Level Design Pattern Categories and Broker Pattern

Software Design Questions and Answers for Experienced people on “Mid-Level Design Pattern Categories and Broker Pattern”.

1. Which of the following does not belong to mid-level design patterns?
a) Broker
b) Iterator
c) Generator
d) Reactor

Answer: b
Clarification: All the rest belongs to mid level design patterns whereas iterator is object oriented mid level design.

2. Which of the following pattern features a client that needs a service from a supplier,but there is some problem with the supplier providing the
service directly to the client?
a) Broker
b) Iterator
c) Generator
d) Reactor

Answer: a
Clarification: Broker pattern features a client that needs service from a supplier.

3. Which of the following pattern includes client that generally creates a instance that registers with a target to carry out tasks in response to target events on behalf of the client?
a) Broker
b) Iterator
c) Generator
d) Reactor

Answer: d
Clarification: Reactor pattern creates reactor instance that registers with the target.

4. Which of the following is true with respect to generator pattern?
a) They have a broker that mediates interactions between a client and a supplier
b) They have a generator that creates instances of a product on behalf of a client
c) They have a reactor that registers with a target to respond to target events on behalf of a client
d) None of the mentioned

Answer: b
Clarification: Generator pattern have a generator that creates instances of a product on behalf of a client.

5. Which of the following is true for broker pattern?
a) Broker patterns are the simplest mid-level design patterns
b) All broker patterns have instances of a Broker class that mediate the interaction between Client and Supplier class instances
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: All of the mentioned statement are true.

6. Brokers patterns can be used for which of the following reasons?
a) Simplify the Supplier
b) Decompose the supplier
c) Facilitate Client/Server interface
d) All of the mentioned

Answer: d
Clarification: Broker pattern is used because of all the following reasons.

7. Which of the following involves breaking of complex supplier into parts with a broker presenting a uniform interface to the client and deciding how to route client requests?
a) Simplify the Supplier
b) Decompose the supplier
c) Facilitate Client/Server interface
d) All of the mentioned

Answer: b
Clarification: Decompose of supplier involved breaking of complex supplier.

8. Which of the following is false for broker pattern?
a) Broker classes mediate communications between clients and suppliers, and in doing so they may slow this interaction, causing a performance penalty
b) A broker may sometimes be able to provide some services to clients more cheaply than if the clients interacted directly with the suppliers
c) Brokers always damage performance
d) None of the mentioned

Answer: c
Clarification: Brokers do not always damage performance.

9. Which of the following is considered when broker is compared to iterator pattern?
a) An iterator provides access to the elements of a collection on behalf of a client
b) An iterator do not provides access to the elements of a collection on behalf of a client
c) Broker is not an iterator pattern
d) None of the mentioned

Answer: a
Clarification: An iterator provides access to the elements of a collection on behalf of a client.

10. Which among these are the consequences for the broker pattern?
a) Broker patterns simplify or decompose suppliers, or ease communication between them
b) Broker patterns thus increase changeability, modifiability, and re usability
c) By interposing additional processing, they may degrade performance
d) All of the mentioned

Answer: d
Clarification: All of the mentioned are the consequences.

250+ MCQs on Unit Operations and Answers

Software Architecture Multiple Choice Questions on “Unit Operations”.

1. Which of the following is correct?
a) Unit operations are more abstract from Design patterns
b) Design patterns are more abstract from Unit operations
c) Unit operations may or may not be abstract from Design patterns
d) None of the mentioned

Answer: a
Clarification: Unit operations are more abstract from Design patterns.

2. What are the types of Unit operations?
a) Separations
b) Uniform Decomposition
c) Abstraction
d) All of the mentioned

Answer: d
Clarification: Types of Unit operations are Separations, Uniform Decomposition, Abstraction.

3. The operation of separation aids which of the following?
a) Modifiability and portability
b) Modifiability and Scalability
c) Portability and Scalability
d) None of the mentioned

Answer: a
Clarification: The operation of separation aids modifiability and portability.

4. What is Decomposition?
a) Decomposition is the operation which places distinct piece of functionality into distinct component
b) Decomposition is the operation of separating a large system component into two or more smaller ones
c) Decomposition is the operation of creating virtual machine
d) None of the mentioned

Answer: b
Clarification: Decomposition is the operation of separating a large system component into two or more smaller ones.

5. What is Abstraction?
a) It is the operation which places distinct piece of functionality into distinct component
b) It is the operation of separating a large system component into two or more smaller ones
c) It is the operation of creating virtual machine
d) None of the mentioned

Answer: c
Clarification: Abstraction is the operation of creating virtual machine.

6. What are the decomposition types?
a) Part-Whole
b) Is-a
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: Decomposition types are Part-Whole, Is-a.

7. What is Part-Whole?
a) Every component in the system can be built only from these sub component
b) Each of the sub component represents a specialization of its parent functionality
c) All of the mentioned
d) None of the mentioned

Answer: a
Clarification: Part-Whole-Every component in the system can be built only from these sub component.

8. What is replication used to enhance?
a) Reliability
b) Performance
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: Replication used to enhance reliability and performance.

9. What is compression used for?
a) To improve performance
b) To circumvent layering when it does not provide needed services
c) To speed system development
d) All of the mentioned

Answer: d
Clarification: Compression used for all the mentioned purposes.

10. What is Resource Sharing?
a) It is an operation that encapsulates either data or services and shares them among multiple independent consumers
b) It is the operation which places distinct piece of functionality into distinct component
c) It is the operation of separating a large system component into two or more smaller ones
d) None of the mentioned

Answer: a
Clarification: Resource sharing is an operation that encapsulates either data or services and shares them among multiple independent consumers.

250+ MCQs on Ensuring Conformance to an Architecture and Answers

Software Architecture Quiz on “Ensuring Conformance to an Architecture”.

1. Which of the following are followed for creating product?
a) Requirements for a system have been analyzed
b) Its pattern developed
c) Skeletal system created and fleshed out
d) All of the mentioned

Answer: d
Clarification: All of the mentioned are followed for creating a product.

2. Which of the following are considered for investigation?
a) Top Down strategies
b) Bottom Up strategies
c) Model Based strategies
d) All of the mentioned

Answer: d
Clarification: All of the mentioned are considered for investigation.

3. Which of the following is true about the top down strategies?
a) Starting at the highest level of system abstraction and recursively filling in understanding of the sub parts
b) Understanding the lowest level components and how these work together to accomplish the system’s goals
c) All of the mentioned
d) None of the mentioned

Answer: a
Clarification: For top down strategies-Starting at the highest level of system abstraction and recursively filling in understanding of the sub parts.

4. Which of the following is true about the bottom up strategies?
a) Starting at the highest level of system abstraction and recursively filling in understanding of the subparts
b) Understanding the lowest level components and how these work together to accomplish the system’s goals
c) All of the mentioned
d) None of the mentioned

Answer: b
Clarification: For bottom up strategies-Understanding the lowest level components and how these work together to accomplish the system’s goals.

5. Which of the following is true about the Model based strategies?
a) Starting at the highest level of system abstraction and recursively filling in understanding of the subparts
b) Understanding the lowest level components and how these work together to accomplish the system’s goals
c) The investigator already has the mental model of how system works and tries to deepen the understanding of selected areas
d) Investigators current level of understanding and needs

Answer: c
Clarification: For Model based strategies-The investigator already has the mental model of how system works and tries to deepen the understanding of selected areas.

6. Which of the following is true about the Opportunistic based strategies?
a) Starting at the highest level of system abstraction and recursively filling in understanding of the subparts
b) Understanding the lowest level components and how these work together to accomplish the system’s goals
c) The investigator already has the mental model of how system works and tries to deepen the understanding of selected areas
d) Investigators current level of understanding and needs

Answer: d
Clarification: For Opportunistic based strategies- Investigators current level of understanding and needs.

7. Technical approaches center on extracting information from which of the following?
a) Existing compiler technology
b) Data Flow analysis
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: Technical approaches center on extracting information from all of the mentioned.

8. For what purpose data flow analysis is used?
a) To determine the static data relationships among components
b) To determine the execution behavior of the system
c) To extract software relationship
d) All of the mentioned

Answer: a
Clarification: Data flow analysis is used- To determine the static data relationships among components.

9. For what purpose Profiling is used?
a) To determine the static data relationships among components
b) To determine the execution behavior of the system
c) To extract software relationship
d) All of the mentioned

Answer: b
Clarification: Profiling-To determine the execution behavior of the system.

10. For what purpose Compiler technology is used?
a) To determine the static data relationships among components
b) To determine the execution behavior of the system
c) To extract software relationship
d) All of the mentioned

Answer: c
Clarification: Compiler technology is used to extract software relationship.

250+ MCQs on Finalizing Product Design and Answers

Software Design Multiple Choice Questions on “Finalizing Product Design”.

1. Which among these are the quality characteristics concentrated by designers?
a) Well Formedness
b) Clarity
c) Correctness
d) Both Well Formedness & Clarity

Answer: d
Clarification: WellFormdness and Clarity are design characteristics whereas correctness validation characteristic.

2. Which statements are followed by Well Formedness?
a) Requirements must be atomized)
b) Requirements should include keywords like”must and ” shall”
c) Requirements are written in active voice
d) All of the mentioned

Answer: d
Clarification: All of the statements are true and comes under Well Formedness.

3. Which of the following statement is false?
a) An SRS is clear if it is easily understood
b) A set of requirement is consistent if a single product can satisfy them all
c) Not all requirements can be verifiable
d) Requirements must be realized to check feasibility

Answer: c
Clarification: All requirements should be verifiable.

4. What are the characteristics for validation of requirements?
a) Correctness
b) Proper Requirement prioritization
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: All the mentioned are the characteristics which helps in validating requirements.

5. Which of the following gives true meaning for a review?
a) A review is examination of work product by qualified individuals
b) A review is evaluation of work process by qualified teams
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: A review includes individuals as well as teams and hence the combinations is true definition.

6. Different types of review are?
a) Desk Check
b) Walk through
c) Inspection
d) All of the mentioned

Answer: d
Clarification: All of the mentioned are types of review.

7. What are the main roles played by requirement inspectors?
a) Moderator
b) Designer
c) Manager
d) All of the mentioned

Answer: a
Clarification: The main roles played are moderator, Inspector, Author, Reader.

8. Which of the following statements are true?
a) Inspections are driven by checklists that the inspectors used to guide
b) Team inspection meeting begins with Inspector
c) Inspection meetings can be late for more than 2 hours
d) All of the mentioned

Answer: a
Clarification: Team inspection meeting begins with manager and Inspection meeting can not last for more than 2 hours.

9. Which of the following statements is False?
a) Inspections are driven by checklist that inspector uses to guide their review
b) Designer should modify requirements inspection continuously
c) Inspection meeting is aimed at detecting defects
d) None of the mentioned

Answer: d
Clarification: All of the statements are true.

10. What are Critical reviews?
a) Critical review is an evaluation of finished product to determine whether it is of acceptable quality
b) Critical reviews are intended as quality gated that keep poor quality work products
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: All are true for critical review.

250+ MCQs on Advanced UML Class Diagrams and Answers

Software Design Multiple Choice Questions on “Advanced UML Class Diagrams”.

1. Detailed design is further classified into which of the following?
a) Mid-Level Design
b) Low-Level Design
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: Detailed design is further classified as mid level and low level design.

2. Mid-level design is the activity of specifying software at the level of medium-sized components such as?
a) Compilation units or classes
b) Their Properties, Relationship
c) Interaction of units
d) All of the mentioned

Answer: d
Clarification: Mid-level design is the activity of specifying software at the level of medium-sized components such as Compilation units or classes, their Properties, Relationship and Interaction of units.

3. Which of the following statement is correct?
a) Low-level design is the activity of filling in small details at the lowest levels of abstraction
b) Low-level design uses DeSCRIPTOR specification
c) Mid-level design uses DeSCRIPTOR-PAID specification
d) All of the mentioned

Answer: d
Clarification: Low level design uses DeSCRIPTOR-PAID whereas Mid level design uses DeSCRIPTOR alone.

4. Which of the following is carried out for the detailed design process?
a) Both SRS and SAD are taken as input for the detailed design stage
b) Design alternatives are evaluated first and then Design is finalized
c) Detailed design is the output for the process
d) All of the mentioned

Answer: d
Clarification: Design alternatives are evaluated first and then design is finalized.

5. A design document is a complete engineering design specification composed of?
a) Software Architecture Document(SAD)
b) Detailed Design Document(DDD)
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: A design document is a complete engineering design specification composed of Software Architecture Document(SAD) and Detailed Design Document(DDD).

6. Which of the following statements are true?
a) The SAD specifies a program’s software architecture
b) DDD specifies a program’s detailed design
c) There is no standard template for DDD
d) All of the mentioned

Answer: d
Clarification: There is no standard template for DDD.

7. Which of the following consists of the DDD template?
a) Mid level Design and Low level Design
b) Mapping between models
c) Detailed Design Rationale
d) All of the mentioned

Answer: d
Clarification: The DDD template consists of which of the following Mid level Design and Low level Design, Mapping between models, Detailed Design Rationale.

8. Which of these statements states Generalization connector?
a) A generalization connector is more like a link line between objects than an association line between classes
b) The generalization connector always indicates that two particular classes participate in the generalization relation, as a link line shows that two objects participate in a particular relation
c) Never place a name, role names, or multiplicities on a generalization connector
d) All of the mentioned

Answer: d
Clarification: All of the mentioned statements about generation connector are true.

9. Which of the following is correct?
a) A concrete operation is an operation without a body, which cannot be called
b) An abstract operation has a body, which can be called
c) A concrete class is a class that cannot be instantiated
d) None of the mentioned

Answer: d
Clarification: All the statements are incorrect, An abstract operation is an operation without a body, which cannot be called whereas A concrete operation has a body, which can be called and An abstract class is a class that cannot be instantiated.

10. A provided interface can be shown in which of these ways?
a) To attach the stick of an interface lollipop symbol to a class or component
b) To connect a stereotyped class symbol representing the interface to the providing class or component using a special realization connector
c) All of the mentioned
d) None of the mentioned

Answer: c
Clarification: Provided Interface can be matched for both of the ways.

11. A required interface can be shown in which of the following ways?
a) To attach the stick of an interface socket symbol to a class or component
b) To connect the class or component requiring the interface to an interface ball with a dependency arrow
c) To connect the class or component to a stereotyped class symbol with a dependency arrow
d) All of the mentioned

Answer: d
Clarification: A required interface can be shown in all the three ways mentioned.

12. UML provides which of these levels of visibility that can be applied to attributes and operations?
a) Public
b) Package
c) Protected and Private
d) All of the mentioned

Answer: d
Clarification: UML provides which of these levels of visibility that can be applied to attributes and operations Public, Package, Protected and Private.

13. Which of the following is correct?
a) An attribute is a class variable when each object stores its own value for the attribute
b) An attribute can also be an instance variable, which means that there is only one value stored for the attribute that is shared by all class instances
c) An instance operation can be called using any object
d) A class operation is encapsulated in a class and can be called through the class

Answer: d
Clarification: An attribute is an instance variable when each object stores its own value for the attribute whereas an attribute can also be a class variable, which means that there is only one value stored for the attribute that is shared by all class instances and An instance operation can be called only by using instance.

14. Which of the following is true?
a) The aggregation association represents the part-whole relation between the instances of the associated classes
b) In a composition association, each part can be related to only a single whole at one time
c) An association class represents a relation on the sets of instances of the classes it connects, and it also holds data and behavior the pertinent to the relation
d) All of the mentioned

Answer: d
Clarification: All of the mentioned statements are true.

15. Which of the following are the heuristics for the class diagram?
a) Never place a name, role names, or multiplicities on a generalization connector
b) Use the interface ball and socket symbols to abstract interface details and a stereotyped class symbol to show details
c) Don’t italicize interface or operation names
d) All of the mentioned

Answer: d
Clarification: All of the mentioned are the statements for heuristics of class diagram.