Modellierung und Design Patterns
Dieses Modul besteht aus einer Lehrveranstaltung.
Prüfungsordnung: MI-BA-2013
Studienorganisation
Studiensemester: 1
Turnus: Wintersemester, jährlich
Schwerpunkt: Studienschwerpunkt Medien-Programmierung
Modultyp: Pflichtveranstaltung
Lehrform: Vorlesung/Labor
Sprache: Deutsch
Kompetenzen/Lernziele
Sie analysieren komplexe dynamische Systeme und beschreiben die für eine gegebene Problemstellung relevanten Ausschnitte. Sie sind in der Lage, die strukturelle Zusammenhänge sowie das Verhalten dynamischer Systeme exakt zu beschreiben. Sie können geeignete Repräsentationsmechanismen auswählen und gezielt UML-Diagramme zur Visualisierung der Problemstellung sowie des Verhaltens dynamischer Systeme einsetzen.
Sie kennen objektorientierte Analyse- und Entwurfsmethoden sowie die wichtigsten Entwurfsmuster. Sie nutzen die UML-Notation zur Beschreibung von Entwurfsmustern und wissen, wie die Grundstruktur von Entwurfsmustern in der Programmiersprache Java umgesetzt wird. Sie erkennen in der Software-Architektur genutzte Entwurfsmuster. Sie können die Erweiterbarkeit von Software-Designs bewerten und diese durch Reengineering und Refactoring gezielt verbessern.
Inhalte
Komplexe Softwaresysteme bilden für ein konkretes Anwendungsproblem relevante Ausschnitte der realen Welt ab. Sie beruhen auf formalen Modellen. Diese erfassen beobachtete Phänomene in Datenstrukturen und bilden das Verhalten dynamischer Systeme in Algorithmen nach.
Modellierung
Formale Modelle ermöglichen:
- die Repräsentation von Wissen und Beobachtungen,
- die Begriffs- und Theoriebildung zur Beschreibung komplexer dynamischer Systeme,
- die Entwicklung von Hypothesen,
- die experimentelle Bestätigung dieser Modelle sowie
- die Vorhersage künftiger Entwicklungen.
Die Veranstaltung analysiert an einer Reihe konkreter Beispiele:
- das Verhalten komplexer dynamischer Systeme,
- stellt Möglichkeiten zur Repräsentation von Expertenwissen in formalen Systemen vor,
- stellt formale Kalküle zur Vorhersage des zukünftigen Verhaltens komplexer dynamischer Systeme vor,
- präsentiert formale Sprachen zur exakten Beschreibung von Modellen und
- stellt Diagramme zum einfacheren Verständnis der modellierten Ausschnitte der Welt sowie der Vorhersage-Ergebnisse dar.
Die Veranstaltungen führt die Grundlagen objektorientierter und komponentenbasierter Analyse- und Entwurfsverfahren ein.
Design Patterns:
Entwurfsmuster (Design Patterns) sind abstrakte Beschreibungen von Problemen und deren Lösung beim Entwurf und der Implementierung von Softwaresystemen. Das Verständnis von Entwurfsmustern erleichtert die Analyse von Anwendungsproblemen.
Anhand erkannter Muster in der Problemstellung lassen sich:
- relevante Objekte und deren Zusammenwirken vorhergesagen,
- verbreiterte Probleme beim Design wiederverwertbarer und erweiterbarer Softwaresysteme vermeiden.
Entwurfsmuster führen klar definierte Begriffe zur Beschreibung des Verhaltens komplexer Softwaresysteme ein und vereinfachen so die Kommunikation zwischen Software-Entwicklern bei der Problemanalyse und des Design erweiterbarer Lösungen.
Arbeitsaufwand
4 SWS, 5,0 Creditpoints (CP)
60 h Präsenzstudium, 90 h Eigenstudium
Prüfung
Art der Prüfung: Prüfungsleistung
Prüfungsform: K(2)
Literatur
- E. Freeman, E. Freemann, K. Sierra und B. Bates: Entwurfsmuster von Kopf bis Fuß. O'Reilly, 2005
- E. Gamma, R. Helm, R. Johnso und J. Vlissides; Entwurfsmuster: Elemente wiederverwendbarer objektorientierter Software; Addison-Wesley, Neuauflage 2010
Voraussetzungen
Voraussetzungen lt. Prüfungs- und Studienordnung
keine
Verantwortliche Dozenten
Modulverantwortliche(r): B.Sc. Oliver Preikszas
Dozent(in): B.Sc. Oliver Preikszas