arc42 FAQ
136 frequently asked questions on arc42.

  • Home
  • All keywords
  • A - General questions
  • B - Questions on methodology
  • C - Questions on arc42 sections
  • D - Questions on modeling
  • E - Questions on arc42 and agile
  • F - Questions on arc42 and tools
  • G - Questions on versioning
  • H - Questions on traceability
  • J - Questions on management
  • K - Questions on customizing
  • All questions
  • arc42 examples
  • About this site
  • Contact

All questions


Question A-1: What does 42 mean?

  • #42

Question A-2: What's the License for arc42?

  • #license
  • #organization

Question A-3: What's the pricing model of arc42?

  • #license
  • #pricing
  • #organization

Question A-4: How widely is arc42 used?

  • #usage
  • #organization

Question A-5: What's the target audience of architecture documentation?

  • #audience
  • #reader
  • #stakeholder

Question A-6: What are possible alternatives to arc42?

  • #alternative
  • #sa4d

Question A-7: I have additional questions...


Question A-8: What is the master format for the template

  • #asciidoc

Question A-9: Where can I find documentation or tips?

  • #help

Question A-10: Can I change layout and/or header of arc42 documents?

  • #help
  • #license
  • #layout

Question A-11: What's the license of documents I created based upon the arc42 template?

  • #license

Question B-1: Which parts of arc42 are essential, which are optional?

  • #method
  • #essential
  • #optional

Question B-2: Does arc42 prescribe or enforce specific notations?

  • #method
  • #notation
  • #UML
  • #syntax

Question B-3: Shall I use UML for arc42 documentation?

  • #method
  • #UML
  • #notation
  • #tools

Question B-4: What is the minimal amount of an arc42 documentation?

  • #method
  • #minimal

Question B-5: Where to document external interfaces?

  • #method
  • #interface
  • #external
  • #context

Question B-6: How to document external interfaces?

  • #method
  • #interface
  • #external
  • #context

Question B-7: Where to put links to external systems (neighbors) documentation?

  • #method
  • #interface
  • #external
  • #context

Question B-8: What is a blackbox / the blackbox template?

  • #method
  • #template
  • #blackbox
  • #building-block

Question B-9: What is a whitebox?

  • #method
  • #template
  • #whitebox
  • #building-block

Question B-10: What is the building block hierarchy?

  • #method
  • #whitebox
  • #blackbox
  • #building-block
  • #hierarchy

Question B-11: How to document/specify a whitebox with the whitebox template?

  • #method
  • #whitebox
  • #blackbox
  • #building-block
  • #hierarchy

Question B-12 : Where shall I describe important (blackbox) components?

  • #method
  • #blackbox
  • #building-block
  • #hierarchy

Question B-13: Can I use arc42 in agile projects, e.g. with Scrum?

  • #method
  • #agile
  • #scrum
  • #lean

Question B-14: Can I update documentation incrementally? Or shall I document after the implementation is finished?

  • #method

Question B-15: What kind of information shall I provide for which stakeholder?

  • #method
  • #audience
  • #stakeholder

Question B-16: What does 'economical' documentation mean?

  • #method
  • #economical
  • #pragmatic

Question C-1-1: How extensive shall I describe the requirements of the system?

  • #requirements
  • #stakeholder

Question C-1-2: What are quality goals (aka quality attributes)?

  • #requirements
  • #quality
  • #scenario

Question C-1-3: Why does arc42 propose a stakeholder table?

  • #requirements
  • #stakeholder

Question C-1-4: What shall be included in a stakeholder table?

  • #requirements
  • #stakeholder

Question C-1-5: What are the expected deliverables in the stakeholder table?

  • #requirements
  • #stakeholder

Question C-1-6: In which cases shall we describe requirements more extensively?

  • #requirements

Question C-1-7: Where to document quality requirements?

  • #requirements
  • #quality
  • #scenario
  • #quality-tree

Question C-2-1: What are constraints?

  • #requirements
  • #constraints

Question C-2-2: What types of constraints exist?

  • #requirements
  • #constraints
  • #organization
  • #technical

Question C-2-3: What kind of constraints shall I document?

  • #requirements
  • #constraints

Question C-2-4: Can/shall we negotiate constraints?

  • #requirements
  • #constraints

Question C-3-1: What is the context?

  • #requirements
  • #context
  • #external-interface
  • #_TBD

Question C-3-2: What does _business_ and _technical_ context mean?

  • #requirements
  • #context

Question C-3-3: Does it make any sense to show the major components of my application in the context view?

  • #context
  • #building-block

Question C-3-4: In which cases shall I document the business context?

  • #requirements
  • #context

Question C-3-5: How can I simplify documentation of the business context?

  • #requirements
  • #context
  • #lean

Question C-3-6: Shall I document risks or problems in the context?

  • #requirements
  • #context
  • #risk

Question C-4-1: What is the solution strategy?

  • #solution-strategy

Question C-4-2: How to document the 'solution strategy'?

  • #solution-strategy

Question C-4-3: Can you provide examples for the 'solution strategy'?

  • #solution-strategy

Question C-4-4: How is 'solution strategy' related to 'Quality goals' (section 1.2)?

  • #solution-strategy
  • #quality

Question C-5-1: What is a 'building block'?

  • #building-block

Question C-5-2: Do third-party libraries, frameworks or tools count among building blocks?

  • #building-block

Question C-5-3: How does source code relate to building blocks?

  • #building-block
  • #source-code
  • #hierarchy

Question C-5-4: How detailed shall we document or specify the building block view?

  • #building-block
  • #economical
  • #minimal

Question C-5-5: Can I refine a group of building blocks together?

  • #building-block
  • #hierarchy

Question C-5-6: How can I document or specify building blocks?

  • #building-block
  • #interface
  • #template
  • #blackbox

Question C-5-7: How shall I document building blocks for non-object-oriented systems?

  • #building-block

Question C-5-8: How do I describe internal interfaces?

  • #building-block
  • #interface
  • #internal

Question C-5-9: How do I describe external interfaces?

  • #building-block
  • #interface
  • #external

Question C-6-1: What is the runtime view? What are runtime scenarios??

  • #scenario
  • #runtime
  • #view

Question C-6-2: What do I document or specify in the runtime view?

  • #runtime
  • #scenario

Question C-6-3: How can I describe scenarios or execution flows?

  • #runtime
  • #scenario
  • #UML
  • #sequence-diagram

Question C-6-4: What are partial scenarios?

  • #runtime
  • #scenario
  • #economical
  • #lean
  • #pragmatic

Question C-6-5: Which scenarios shall I describe or document?

  • #scenario
  • #runtime

Question C-7-1: What does the deployment view show?

  • #deployment

Question C-7-2: Why do I need a deployment view?

  • #deployment

Question C-7-3: Who shall describe/document the deployment view?

  • #deployment
  • #stakeholder

Question C-7-4: Shall I use UML deployment diagrams for the deployment view?

  • #deployment
  • #UML
  • #diagram

Question C-7-5: Can there be different deployment scenarios or variants?

  • #deployment
  • #scenario

Question C-7-6: What shall I do when my building blocks get dynamically assigned an execution environment (node) - so I cannot statically assign them to infrastructure nodes?

  • #deployment

Question C-8-1: What is a 'crosscutting concept'?

  • #concept

Question C-8-2: Our arc42 section 8 (on concepts) is a melting pot of information we couldn't put elsewhere? How can we keep an overview?

  • #concept

Question C-8-3: How shall I deal with the multitude of potentially crosscutting topics?

  • #concept
  • #_TBD

Question C-8-4: How shall I describe my business-/domain model?

  • #concept
  • #domain
  • #economical
  • #_TBD

Question C-8-5: Are there any general rules how to describe a 'concept'?

  • #concept
  • #pragmatic
  • #economical

Question C-8-6: What are candidates for 'concepts'?

  • #concept
  • #pragmatic
  • #_TBD

Question C-9-1: What kind of decisions shall I describe or document?

  • #decision
  • #quality
  • #stakeholder

Question C-9-2: How can I document an architectural decision?

  • #decision

Question C-9-3: What's an 'Architecture Decision Record' (ADR)?

  • #decision

Question C-9-4: How can we handle a 'large number' of architecture decisions?

  • #decision

Question C-10-1: What is 'Software Quality'?

  • #quality

Question C-10-2: What is a 'quality scenario'?

  • #quality
  • #scenario

Question C-10-3: What is a 'quality tree'?

  • #quality
  • #_TBD

Question C-10-4: Are there examples for quality scenarios?

  • #quality
  • #scenario

Question C-10-5: Why is the 'Quality' section one of the last in the template, rather than being at the start?

  • #quality
  • #scenario

Question C-11-1: What are 'risks' and 'technical debt'?

  • #risk
  • #technical-debt
  • #problem

Question C-12-1: Why is the glossary important?

  • #glossary

Question C-12-2: How can we describe important terms without much effort?

  • #glossary
  • #economical

Question C-5-10: How can I avoid redundancy with interfaces in the building block view?

  • #building-block
  • #optional
  • #interface

Question C-5-11: How does the hierarchy of building blocks relate to the arc42 sections (5.1, 5.2 etc.)?

  • #building-block
  • #hierarchy

Question C-5-12: What kind of building blocks don't I need to document or specify?

  • #building-block
  • #don't-do

Question C-5-13: What kind of building blocks shall I document or specify?

  • #building-block

Question D-1: Why do I need a 'model'? I have source code.

  • #model
  • #abstraction

Question D-2: What alternatives to UML exist for architecture models?

  • #model
  • #modeling
  • #UML
  • #alternative
  • #C4

Question D-3: How do arc42 and UML relate to each other?

  • #modeling
  • #UML

Question D-4: How can I use UML to communicate a hierarchy of building blocks?

  • #modeling
  • #UML
  • #diagram
  • #hierarchy
  • #building-block

Question D-5: How can I describe interfaces with UML?

  • #modeling
  • #UML
  • #interface
  • #diagram

Question D-6: What can I use UML ports for?

  • #modeling
  • #UML
  • #port
  • #diagram

Question D-7: How can I improve the 'understandability' of my diagrams/models?

  • #modeling
  • #diagram
  • #stakeholder

Question D-8: How can I reduce the number of elements in a component /building block diagram?

  • #modeling
  • #diagram
  • #building-block

Question D-9: How can I improve the consistency of models?

  • #modeling
  • #abstraction
  • #consistency

Question E-1: Does arc42 work with Scrum, Kanban or other lean/agile approaches?

  • #agile
  • #scrum
  • #lean

Question E-2: Shall our team make arc42 part of the definition of done (DoD)?

  • #agile
  • #scrum
  • #lean

Question E-3: How can arc42 help us in reducing documentation effort?

  • #agile
  • #lean
  • #economical

Question E-4: We use Scrum. How can we integrate arc42 into our sprints?

  • #agile
  • #scrum

Question E-5: In agile projects, what kind of information shall we write down and what shall we communicate orally?

  • #agile
  • #lean
  • #stakeholder

Question E-6: In agile projects, can we skip (defer) documentation for a while and focus only on implementing?

  • #agile
  • #lean

Question E-7: What are the most important tips for documentation in agile projects?

  • #agile

Question F-1: What tools are well-suited for arc42?

  • #tools

Question F-2: What are useful criteria for selecting a toolset for arc42?

  • #tools
  • #criteria

Question F-3: Can I automatically include important code artifacts in arc42 documentation?

  • #tools
  • #import
  • #source-code
  • #asciidoc

Question F-4: How do I use arc42 with modeling tools??

  • #tools
  • #modeling

Question F-5: How can I use arc42 together with (Sparx) Enterprise Architect®?

  • #tools
  • #modeling
  • #EA
  • #_TBD

Question F-6: Are there (free or open-source) modeling tools available?

  • #tools
  • #modeling

Question F-7: Can we use arc42 with (Atlassian) Confluence® wiki?

  • #tools
  • #wiki
  • #confluence

Question F-8: What tools can I use to setup arc42 in Confluence®?

  • #tools
  • #wiki
  • #confluence

Question F-9: How can I create diagrams in Confluence®?

  • #tools
  • #wiki
  • #confluence
  • #diagram

Question F-10: What tools shall I use for sequence diagrams?

  • #tools
  • #sequence-diagram
  • #plant-uml

Question F-11: Can I use PlantUML for building block / component diagrams?

  • #tools
  • #diagram
  • #plant-uml

Question G-1: Shall I version control our architecture documentation?

  • #versioning
  • #organization

Question G-2: We cannot use version control for documents. What to do?

  • #versioning
  • #organization

Question G-3: How does versioning work with graphical models?

  • #versioning
  • #model
  • #diagram

Question G-4: How can I describe several 'variants' of a system?

  • #versioning
  • #stereotypes
  • #_TBD

Question H-1: What does 'traceability' mean (with arc42)?

  • #traceability
  • #requirements

Question H-2: Shall we strive for traceability in our documentation?

  • #traceability
  • #requirements
  • #_TBD

Question H-3: How can I keep architecture documentation in sync with source code?

  • #traceability
  • #source-code

Question J-1: How to document (very) large systems with arc42?

  • #management
  • #organization
  • #large
  • #microservice
  • #modular

Question J-2: Does a _documentation governance_ make sense for architecture documentation??

  • #management
  • #governance

Question J-3: Is there a checklist for arc42 documentation?

  • #management

Question J-4: Is there a general checklist for architecture documentation?

  • #management

Question J-5: How can I create delta-documentation with arc42?

  • #management
  • #versioning
  • #_TBD

Question J-6: What level of access permissions shall stakeholders have on the architecture documentation?

  • #management

Question K-1: Are we allowed to customize arc42 for our (company/organization/system) purpose?

  • #management
  • #customization
  • #license

Question K-2: What kinds of customizations are common for arc42?

  • #management
  • #customization

Question A-12: Is arc42 available in other languages?

  • #language

Question A-13: How can I translate arc42 to another language?

  • #language,
  • #translation

Question B-17: What about arc42 and C4?

  • #method
  • #pragmatic

Question F-12: How can I switch off the integrated help?

  • #tools
  • #asciidoc
  • #plaintext

arc42 offers architecture training.

The data is currently loaded from the backend and should display here shortly. If not, you can see the next dates at trainings.arc42.org .


Status   Imprint + Privacy

Maintained by Gernot Starke, supported by Peter Hruschka and Per Starke Web Development