M 2.486 Dokumentation der Architektur von Webanwendungen und Web-Services
Verantwortlich für Initiierung: Verantwortliche der einzelnen Anwendungen, Leiter Entwicklung
Verantwortlich für Umsetzung: Administrator, Entwickler
Das Verständnis der Software-Architektur einer Webanwendung beziehungsweise eines Web-Service ist notwendig, um diese effizient und fehlerfrei zu warten, zu entwickeln und zu erweitern. Neben der systemspezifischen Dokumentation (siehe zum Beispiel M 2.25 Dokumentation der Systemkonfiguration, M 2.31 Dokumentation der zugelassenen Benutzer und Rechteprofile und M 2.34 Dokumentation der Veränderungen an einem bestehenden System) sind bei der Dokumentation von Webanwendungen und Web-Services einige Besonderheiten zu berücksichtigen.
Die Dokumentation muss alle Bestandteile berücksichtigen. Dabei sollten mindestens folgende Punkte durch die spezifische Dokumentation abgedeckt werden:
- Alle Abhängigkeiten (zum Beispiel zu Frameworks, Bibliotheken, Betriebssystemen, Hardware) und Schnittstellen (zum Beispiel zu Hintergrundsystemen) sollten dokumentiert werden. Bei Web-Services muss auch die Interaktion mit anderen Web-Services dokumentiert werden.
- Für den Betrieb notwendige Komponenten, die nicht Bestandteil der Webanwendung oder des Web-Service sind, müssen als solche gekennzeichnet werden (zum Beispiel Hintergrundsysteme wie eine Datenbank).
- Aus der Dokumentation muss hervorgehen, welche Komponenten Sicherheitsmechanismen umsetzen. Im Folgenden sind die Sicherheitsfunktionen von Webanwendungen und Web-Services aufgeführt, die mindestens berücksichtigt werden sollten:
- Benutzermanagement,
- Rollen- und Berechtigungskonzept,
- Authentisierung,
- Autorisierung,
- Session-Management,
- Protokollierung und
- Transportsicherheit.
- Die Integration in eine gegebenenfalls bestehende Netzinfrastruktur muss in der Dokumentation behandelt werden. Hierbei ist die Maßnahme M 5.169 Systemarchitektur einer Webanwendung zu beachten.
- Die eingesetzten kryptographischen Funktionen und Verfahren müssen dokumentiert sein, siehe Baustein B 1.7 Kryptokonzept.
Die Dokumentation sollte während des Projektverlaufs aktualisiert und angepasst werden, sodass sie schon während der Entwicklungstätigkeit genutzt werden kann und Entscheidungsfindungen dokumentiert sind.
Prüffragen:
-
Ist die Software-Architektur der Webanwendung beziehungsweise des Web-Service mit allen Bestandteilen und Abhängigkeiten dokumentiert?
-
Werden für den Betrieb notwendige Komponenten, die nicht Bestandteil der Webanwendung beziehungsweise des Web-Service sind, als solche gekennzeichnet?
-
Ist eine Zuordnung umgesetzter Sicherheitsmechanismen zu den Komponenten der Webanwendung beziehungsweise des Web-Service dokumentiert?
-
Berücksichtigt die Dokumentation eine Integration der Webanwendung beziehungsweise des Web-Service in bestehende Netzinfrastruktur?
-
Sind die eingesetzten kryptographischen Funktionen und Verfahren dokumentiert?
-
Erfolgt die Dokumentation der Architektur einer Webanwendung beziehungsweise eines Web-Service bereits während der Entwicklungstätigkeit?