CPSA Views and Documentation 5 β Questions and Answers
Question 1: Which statement best describes the relationship between views and viewpoints in ISO/IEC 42010?
- Views and viewpoints are synonymous terms
- A viewpoint is a specification that governs how a view is constructed and what concerns it addresses (Correct answer)
- A view defines the rules; a viewpoint is the result
- Viewpoints are only used in the 4+1 model
Correct answer: A viewpoint is a specification that governs how a view is constructed and what concerns it addresses
ISO/IEC 42010 defines a viewpoint as the convention or template used to construct a view, which is the actual artifact documenting one perspective.
Question 2: What is the key difference between a 'whitebox' and 'blackbox' description in arc42's Building Block View?
- Whitebox shows internal structure; blackbox shows only external interface and behavior (Correct answer)
- Whitebox is for testing; blackbox is for production
- Whitebox uses UML; blackbox uses informal notation
- Whitebox covers runtime; blackbox covers deployment
Correct answer: Whitebox shows internal structure; blackbox shows only external interface and behavior
A whitebox description reveals the internal components and relationships of a building block, while a blackbox description hides internals and shows only its interface.
Question 3: When should an architect choose to document a decision as an ADR versus simply commenting in the code?
- ADRs are only for rejected options
- ADRs are warranted when the decision has significant architectural impact, cross-cutting consequences, or is likely to be questioned later (Correct answer)
- Code comments are always sufficient for any architectural decision
- ADRs are required only for decisions made by external consultants
Correct answer: ADRs are warranted when the decision has significant architectural impact, cross-cutting consequences, or is likely to be questioned later
ADRs capture high-impact decisions with context and rationale that code comments cannot adequately convey.
Question 4: A system context diagram shows 'Person: Customer' interacting with 'Software System: Online Store'. Which C4 model level does this represent?
- Level 4 β Code
- Level 3 β Component
- Level 2 β Container
- Level 1 β System Context (Correct answer)
Correct answer: Level 1 β System Context
C4 Level 1 System Context diagrams show people and systems interacting with the software system at the highest level of abstraction.
Question 5: Which quality attribute of documentation directly suffers when diagrams are manually maintained in drawing tools disconnected from source code?
- Accessibility
- Currency (up-to-dateness) (Correct answer)
- Readability
- Format consistency
Correct answer: Currency (up-to-dateness)
Manually maintained diagrams drift from the actual system as code evolves, making documentation stale and potentially misleading.
Question 6: In the context of architecture documentation, what is meant by 'appropriate level of detail'?
- Always documenting every method signature and variable
- Including enough detail to support the decisions and understanding needs of the intended audience, no more (Correct answer)
- Using only high-level diagrams without any specifics
- Matching the number of pages to the project budget
Correct answer: Including enough detail to support the decisions and understanding needs of the intended audience, no more
Appropriate detail means providing what stakeholders need to understand and act on the architecture without overwhelming them with unnecessary information.
Question 7: Which arc42 section would contain a description of the team's rationale for choosing a microservices architecture over a monolith?
- Section 2 β Architecture Constraints
- Section 4 β Solution Strategy
- Section 9 β Architecture Decisions (Correct answer)
- Section 11 β Risks and Technical Debt
Correct answer: Section 9 β Architecture Decisions
Arc42 Section 9 records Architecture Decisions, including the rationale, options considered, and the chosen approach for significant structural choices.
Which statement best describes the relationship between views and viewpoints in ISO/IEC 42010?