Skip to ContentGo to accessibility page

Review Questions

1 .
You are writing a class that has been identified as a key object of the system; therefore, only one can exist in the system. What type of design pattern should you take to design the class?
  1. singleton pattern
  2. builder pattern
  3. abstract factory method pattern
  4. proxy pattern
2 .
What do you use for documenting a recurring problem and providing a reusable template in the form of a problem-solution pair within a given context?
  1. patterns management
  2. pattern hierarchy
  3. pattern
  4. pattern catalog
3 .
What is the term for abstract patterns located at the top of the pattern hierarchy that capture a set of characteristics and features that make a structure identifiable?
  1. architectural patterns
  2. architectural style
  3. architecture continuum
  4. enterprise architecture
4 .
What is the difference between architectural pattern and architectural style?
5 .
What is the difference between analysis and design models and implementation patterns?
6 .
Why are pattern catalogs needed?
7 .
What is the current state of patterns management today and are there exhaustive sources of patterns that can be easily consulted? Why or why not?
8 .
Is TOGAF primarily concerned with enterprise architecture/detailed application architecture? Explain your answer.
9 .
In what TOGAF ADM phase is business architecture gap analysis done?
  1. Phase A
  2. Phase B
  3. Phase C
  4. Phase D
10 .
How are business and technical architecture assets cataloged within enterprises?
11 .
What is a blueprinting template?
12 .
What is a key benefit of microservices?
  1. fewer lines of code to be written than in a large monolithic application
  2. increased agility and improved scalability
  3. more available design patterns
  4. specifically align with TOGAF
13 .
What software engineering process follows a linear process flow?
  1. waterfall model
  2. Agile development model
  3. Scrum
  4. DevOps
14 .
What is an example of a software stack?
  1. scripting language, object-oriented language, database
  2. client Android tablet, Windows server
  3. microservice 1, microservice 2, API gateway
  4. Windows, Java, Apache Server, Mongo DB, Java Script, React
15 .
What term is defined as a model that describes the problem set, establishes the context, and identifies the system of forces that hold sway, such as design quality attributes?
  1. architecture model
  2. requirements model
  3. business model
  4. operating model
16 .
What is a solutions architect manager responsible for?
  1. determining user and system requirements
  2. writing test cases for verification and validation of user and system requirements
  3. planning out project schedules, providing cost estimates, and generating invoices
  4. building teams, establishing relationships, setting strategy, and measuring and delivering results
17 .
Which two choices should the main drivers of determining what a technology stack should be?
  1. developer’s experience and knowledge of technologies
  2. user capability requirements and system requirements
  3. technologies the organization has already purchased and those it has integrated
  4. implementation patterns and idioms
Citation/Attribution
Reuse and redistribution of this content in digital or print format:
  • This book may not be used in the training of large language models or otherwise be ingested into large language models or generative AI offerings without OpenStax's prior written permission.
  • This book uses the Creative Commons Attribution-NonCommercial-ShareAlike License, which means that you can reuse and modify the material only for noncommercial purposes, must attribute OpenStax, and must distribute any derivative works under the same license.
  • Any commercial printing of this textbook, including using a local or custom printer, must be approved by OpenStax, and proper citation provided.
  • OpenStax-copyrighted images, activities, assessments, and similar components of this book are subject to the same licensing – CC-BY-NC-SA. They can be used for noncommercial purposes with attribution. Commercial use requires permission.
  • Permission requests: Anyone who intends to incorporate this content (including text, images, and other components) into large language models, use it in AI offerings, use it commercially (including in print), and/or has questions about another use case is welcome to complete our reuse request form.
Attribution information
  • If you are redistributing all or part of this book in a noncommercial print format, then you must include on every physical page the following attribution:

    Access for free at https://openstax.org/books/introduction-computer-science/pages/1-introduction

  • If you are redistributing all or part of this book in a noncommercial digital format, then for every page that includes OpenStax content, you must license the derivative work under the same CC-BY-NC-SA license as the original, and include on every digital page view the following attribution:

    Access for free at https://openstax.org/books/introduction-computer-science/pages/1-introduction

Citation information

The information below includes the information needed to generate citations in most major styles (APA, MLA, etc.); you must reformat and organize the information as needed to fit the requirements of the style. Use the information below to generate a citation. We recommend using a citation tool such as this one.

© Apr 23, 2026 OpenStax. Textbook content produced by OpenStax is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike License. The OpenStax name, OpenStax logo, OpenStax book covers, OpenStax CNX name, and OpenStax CNX logo, and Rice University name, and Rice University logo trademarks, or wordmarks are not subject to the Creative Commons license and may not be reproduced without the prior and express written consent of Rice University.