5. Bausteinsicht

Diese Sicht zeigt die statische Zerlegung des Systems in Bausteine (Module, Komponenten, Subsysteme, Klassen, Interfaces, Pakete, Bibliotheken, Frameworks, Schichten, Partitionen, Tiers, Funktionen, Makros, Operationen, Datenstrukturen, …​) sowie deren Beziehungen.

5.1 Whitebox Gesamtsystem

building blocks

Bausteine der Ebene 1:

Baustein Verantwortung

User Interface

SVG-Canvas für Wardley Map Darstellung, Toolbar für Aktionen

Map Engine

Verwaltung der Map-Datenstruktur, Koordinaten-Transformation

Event Handler

Mouse-Events verarbeiten, Drag & Drop Koordination

Storage Manager

Persistierung in LocalStorage, JSON Serialisierung

Export Engine

draw.io XML-Format Generierung, Download-Funktionalität

5.2 Whitebox Map Engine

Zweck/Verantwortung: Zentrale Komponente für Wardley Map Logik und Datenmanagement.

map engine detail

Enthaltene Bausteine:

Baustein Verantwortung

MapData

Hauptdatenstruktur, CRUD-Operationen für Components/Dependencies

Component

Einzelne Wardley Map Komponente mit Position und Label

Dependency

Verbindung zwischen zwei Komponenten

CoordinateSystem

Transformation zwischen Wardley-Koordinaten (0-1) und Pixel-Koordinaten

5.3 Whitebox Event Handler

Zweck/Verantwortung: Verarbeitung aller Benutzerinteraktionen und UI-Events.

Schnittstellen: - Input: Mouse Events (mousedown, mousemove, mouseup, click) - Output: Map Engine Updates (addComponent, moveComponent)

Algorithmus:

Mouse Click auf Canvas → neue Komponente erstellen
Mouse Down auf Komponente → Drag-Modus starten
Mouse Move (während Drag) → Komponente Position updaten
Mouse Up → Drag-Modus beenden, Position speichern