Architekturdokumentation mit arc42
Warum Softwarearchitekturen überhaupt dokumentiert werden sollten
Softwaresysteme wachsen nicht selten über mehrere Jahre. Da sammelt sich implizites Wissen über die Struktur, getroffene Entscheidungen, Muster und Konzepte in den Köpfen der Beteiligten an. Wechseln im Laufe der Zeit die Mitglieder des Teams, geht dieses Wissen verloren und Neu- bzw. Umsteigern wird das Zurechtfinden unnötig erschwert.
Abhilfe kann hier eine gut strukturierte Architekturdokumentation bieten.
Architekturarbeit
Was gehört denn eigentlich alles zur Architekturarbeit? Wer übernimmt die Aufgaben?
- Anforderungen und Randbedingungen klären
- Strukturen entwerfen
- Technische Konzepte entwerfen
- Architektur kommunizieren
- Umsetzung begleiten
- Architektur bewerten
Das arc42 Template
Welche Vorteile bietet ein Template? Was gibt es da bereits für Vorlagen?
- Einführung und Ziele
- Randbedingungen
- Kontextabgrenzung
- Lösungsstrategie
- Bausteinsicht
- Laufzeitsicht
- Verteilungssicht
- Konzepte
- Entwurfsentscheidungen
- Qualitätsszenarien
- Risiken
- Glossar
Architekturdokumentation in der Praxis
Wie kann die Architekturdokumentation teil der täglichen Arbeit werden? Welches Tooling gibt es und was davon passt zum Team?
- MindMap – für kleinere Vorhaben
- Word Dokument – für Microsoft Office-affine Unternehmen und Alleindokumentierer
- Wiki – für Kollaboratives Dokumentieren
- DocFX, docToolchain & Co. – Dokumentation sehr nahe am Quellcode
- PlantUML – UML Diagramme textuell beschreiben
- yEd – einfaches Zeichnen von Diagrammen
- Enterprise Architect – UMLs modellieren