Edocti Training
Softwarearchitektur und -design — von den Anforderungen zum Anwendungsskelett
Geplante Sessions
Aktuell sind keine Termine verfügbar.
Fähigkeiten, die Sie lernen werden
Software Architektur
UML & C4-Modellierung
Domain-Driven Design
SOLID-Prinzipien
Architecture Decision Records
Forward/Reverse Engineering
Enterprise Architect
Design Patterns (GoF)
Curriculum
Tag 1 — Anforderungen und Systemkontext
- Kickoff, Ziele und Scope; Stakeholder und Constraints
- Elicitation von Software Requirements (funktional & nicht-funktional) für ein Connected-Cars/IoT-Beispiel
- Traceability: Verknüpfung von Anforderungen mit Use Cases und Quality Attributes (Performance, Safety, Security, Portability)
- Systemkontext & Grenzen; Hauptakteure und externe Systeme
- UML Use Case Diagrams in Enterprise Architect; gute Use-Case-Narratives schreiben
- Leichtgewichtiges Risikotrade-off (ATAM-lite) und frühe Spikes/Prototypen
Tag 1 — Von Anforderungen zu Architektur-Views
- Views und Notation wählen (C4/UML): Context, Container/Component, Deployment
- Entscheidungen mit Architecture Decision Records (ADR) dokumentieren
- Quality-Attribute-Taktiken (Availability, Performance, Modifiability) und deren Abbildung auf Designentscheidungen
Tag 2 — Strukturelle Modellierung
- Component Diagrams: Verantwortlichkeiten und Schnittstellen; Mapping auf Teams
- Deployment Diagrams: Ziel-HW/OS, Prozesse und Netzwerke; Randbedingungen für Embedded/Automotive
- Klassenanalyse: Kernklassen, Aggregate und Grenzen (DDD-lite Perspektiven)
- UML Class Diagrams: Beziehungen, Multiplizitäten, Pakete, Layering und Abhängigkeitsregeln
- Designprinzipien: SOLID und Kopplungs/Kohäsions-Heuristiken; Refactoring zu klaren Grenzen
Tag 2 — Verhaltensmodellierung
- Sequence Diagrams für Schlüsselszenarien; Timing-Notizen und Lifelines
- State Machine & Activity Diagrams für kritische Logik und Workflows
- Objektmodellierung für konkrete Szenarien (Object & Sequence Diagrams); Walk-throughs
Tag 3 — Von Modellen zum Code (Forward Engineering)
- Modelle mit der Implementierungsstrategie ausrichten; Namespaces/Packages und Modulstruktur
- Minimales Anwendungsskelett aus Enterprise Architect generieren und Basiskomponenten verdrahten
- Build, Logging und Configuration integrieren; Stubs und Test Seams
- Traceability etablieren: Klassen/Tests mit Requirements und ADRs verknüpfen
Tag 3 — Reverse Engineering und Review
- Fremdcode reengineeren, um Architektur zu rekonstruieren; Code auf Diagramme mappen
- Architektur-Peer-Review: Checklisten und Risk Burndown; Architecture Notebook pflegen
- Nächste Schritte: Governance, Versionierung der Modelle, lebende Dokumentation
Capstone — Offene Diskussion & Q&A
- Architektur ausgewählter Open-Source-Projekte (Top-Level Überblick)
- Kurzer Fokus auf 3–4 GoF Patterns zur Unterstützung des Designs (z. B. Builder, Abstract Factory, Decorator, Visitor)
- Wrap-up: individueller Verbesserungsplan
Optionale Module
Optional — Automotive-Akzente
- Safety & Security Touchpoints (ISO 26262/21434 Awareness) im Architekturprozess
- Performance-Budgets und Scheduling-Constraints für Embedded-Ziele
- Lieferantenintegration und Schnittstellenverträge
Kursablauf
- Teil 1: 09:00–10:30
- Pause: 10:30–10:45
- Teil 2: 10:45–12:15
- Mittagspause: 12:15–13:15
- Teil 3: 13:15–15:15
- Pause: 15:15–15:30
- Teil 4: 15:30–17:30