Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Section
titleThe arc42 Template


Section


Column

To document your software or system architecture, follow the arc42 Template. The documentation for the template is available online.

If you are using projectdoc, it is recommended to create a modular documentation. That is, you create a separate document for each topic you want to cover. If you identify a role or a stakeholder, use the Role or Stakeholder template and store the document on the doctype's homepage.


Section


Tip Box
titleExample

Have a look at the HTML Sanity Checker space for an example documentation based on the arc42 Template.



Here is an example with the Stakeholder Template Wizard:

Since the checkbox "Send to Homepage" is checked, the document will be stored on the stakeholder homepage regardless of the page in the browser.

Note Box
titleDocuments do not show up on Space Homepage?

On the chapter pages of the arc42 Template the queries are restricted.

For instance the list of stakeholders on 'Introduction and Goals' is restricted to those documents of type Stakeholder that are marked with the Tag named 'primary'.

Section


Column


Column


So in case you are looking for list to get filled automatically, but they do not: Check the selection criteria of the query macros!

The arc42 SWAD will then automatically reference the documents you create by the use of the Display Table Macro. You may want to adjust the select criteria for the queries to meet you needs, but the defaults will get you started. Not all information is provided by documents that are stored on the doctype homepages. Some information is added directly to the generated pages of the arc42 SWAD (such as the Solution Strategy).

Note Box

If you want to keep it modular, use the Module Template and transclude the content. This approach is recommended if you

  • use the content from several pages.
  • collaborate simultaneously with your team on the creation of your documentation.

To help you get started with the arc42 Template and projectdoc, we introduce to you some of the templates of the doctype add-ons. So here we go!

Section
level2
titleFind your Stakeholders

The project is under high risk to fail, if you fail to identify the important stakeholders of your project.

Use the Stakeholder template to document your stakeholders.

Note Box

You may choose to document stakeholders as Roles, Persons or Organizations. The Stakeholder documents reference the basic data and allows to store information about the interests of the stakeholder for your project.



Section
level2
titleQuality Targets

It is important to define and prioritize the quality targets for your project. This will keep your team on track to come to decisions on architectural issues.

Note Box
You may prefer to define the qualities by the Quality template and reuse this information for several of your projects.



Section
level2
titleGet aware of your Constraints

With your stakeholders at hand, query for constraints the project has to adhere to.

Note Box
You may prefer to use a requirement management tool for this task. In this case reference the requirements in your tool.



Section
level2
titleDefine your Solution Strategy

Define your solution strategy. Use chapter 4 of your SWAD.


Section
titleDocument your System Context

Use the View Template to document the context of your system.


Section
titleBuilding Blocks

The most important view after the system context is usually the view on the building blocks of your system. Create a view document and then drill deeper into your system by alternating between the Blackbox View of your components and its Whitebox View.

Info Box

Alternatively you may use the Component Template to create a component document and add view documents to them.



Section
level2
titleDocument your Decisions

Document your important decisions on the architecture level.


Section
level2
titleThat's all?

Probably not. There may be much more information you want to cover for your team members or other stakeholders. Here is a list of templates you may choose from.

Section
titleSoftware Development Doctypes

Display Table
doctypedoctype
selectName, Short Description, Set, Documentation Type, Categories
sort-bySort Key, Name
whereTags = "Software Development" NOT $<Parent> = [arc42 Template]
render-counter-columntrue


Section
titleCore Doctypes

Display Table
doctypedoctype
where$<Set> = [Core]

If the templates do not match your requirements, adjust them! If you feel overwhelmed by the amount of templates, stick to Topics or Generic documents. But using a doctype for a particular information usually makes it easier to select it from your queries.

Warning Box

Keep in mind that agile documentation is not about filling out templates. Templates exist to guide you documenting an aspect of your project you deem worth noting. Every document is a liability since it has to be maintained. Therefore keep an eye on the creation and maintenance cost of each document!



...