Die ersten Ergebnisse der Anforderungs- und Anwendungsfallanalyse für das neue Entwicklungsprojekt liegen vor, doch wie geht es nun weiter? Jetzt unmittelbar mit dem Programmieren loszulegen, ist häufig keine gute Idee. Ohne einen Softwareentwurf, also eine teamübergreifende gemeinsame Vorstellung darüber wie die Lösung aussehen soll, ist die Gefahr von Fehlentwicklungen sehr hoch.
Dieses praxisorientierte Training ist speziell auf die für die Realisierung verantwortlichen Mitarbeiter aus Softwareentwicklungsteams zugeschnitten. Anhand eines Fallbeispiels und basierend auf den vorhandenen Ergebnissen einer zuvor durchgeführten Anforderungs- und Anwendungsfallanalyse lernen Sie, wie man mit Hilfe der standardisierten Modellierungssprache Unified Modeling Language (UML) systematisch und methodisch fundiert ein Softwaredesign ableitet.
Inhalt
• Was ist ein Entwurf? – Abgrenzung zwischen Softwaredesign und Softwarearchitektur
• Einführung in die Unified Modeling Language (UML)
• Die Ergebnisse einer Anforderungs- und Anwendungsfallanalyse verstehen und interpretieren
• Das UML-Klassendiagramm (class diagram)
• Ein Fachklassenmodell (domain model) verstehen und interpretieren
• Designklassen (Entitäten, Controller) ableiten
• Designprinzipien aus der Praxis (Kohäsion, Kopplung, Geheimnisprinzip)
• Abhängigkeiten designen (Dependency Inversion Principle)
• Entwurfsmuster: Adapter, Fabrik, Dependency Injection
• Schnittstellen ableiten mit UML-Sequenzdiagrammen (sequence diagram)
• Zustände und Zustandsübergänge modellieren mit UML Zustandsdiagrammen (state machine diagram)
• Weitere Diagramme/Notationen der UML: Paketdiagramm (package diagram), Objektdiagramm (object diagram)
• Projektspezifische Erweiterung der UML mit Hilfe von Profilen und Stereotypen
Voraussetzungen
Grundkenntnisse in der objekt-orientierten Softwareentwicklung
Vorkenntnisse in der Modellierungssprache UML sind hilfreich, aber nicht zwingend erforderlich.