Share ZU:
8 Mai 2012 @ Philip Stolz

Anforderungen und Design Patterns

Es ist mittlerweile unbestritten, dass Modellierung ein fester Bestandteil des Repertoires eines Anforderungsexperten sein sollte. Software-Designer arbeiten vorwiegend mit Modellen. Ihr Verhältnis zu Anforderungen ist nicht immer ungetrübt und die Zusammenarbeit von Anforderungsexperten und Designern damit nicht immer leicht.

Ein gutes Modell hat eine klare Struktur und ist leicht zu verstehen, es nutzt Software -Design Patterns und reduziert damit Komplexität. Design Patterns sind ein Ansatzpunkt, den wir nutzen, um die Kommunikation zwischen Anforderungsexperten und Designern zu fördern.

Design Patterns für die Softwareentwicklung werden gemäß des Buches „Design Patterns“ (Erich Gamma et al., Addison Wesley 1995) in natürlicher Sprache und mit Hilfe von Diagrammen beschrieben. Die Dokumentation solcher Patterns folgt typischerweise dem Muster:

  • Intent
  • Applicability
  • Structure

Dabei liefert der Abschnitt „Intent“ eine abstrakte Beschreibung des Ziels, das ein Design Pattern erreichen will. Der Abschnitt „Applicability“ liefert durch die Nennung möglicher verfeinerter Ziele unterschiedliche mögliche Abstrakte Problembeschreibungen und der Abschnitt „Structure“, gefolgt von weiteren ergänzenden Abschnitten, stellt eine konkrete Lösungsbeschreibung dar.

Design Patterns vereinen daher die Warum-, Was- und Wie-Anforderungen aus unserem Informationsmodell (siehe Abbildung Informationsmodell).

Abbildung: Informationsmodell

Sie erleichtern die Ableitung von Lösungen aus Problembeschreibungen. Damit sollte es möglich sein, Begriffe und Ausdrücke in Anforderungen zu identifizieren, die Hinweise auf die Anwendung von Patterns geben. Zwei Beispiele sollen dies verdeutlichen:

Proxy Pattern

Ein Stellvertreter (Proxy) ist eine Klasse, die stellvertretend und damit als Schnittstelle zu einer anderen Klasse, einem anderen Subjekt, auftritt. Dies kann eine Ressource, ein „teures“ Objekt im Speicher, eine Netzwerkverbindung oder eine Datei sein. Über den Stellvertreter kann der Zugriff auf das Subjekt gesteuert werden. Ausdrücke wie

  • “Zugriff muss transparent sein”
  • “darf kein direkter Zugriff auf”
  • „verteilter Zugriff“
  • „kontrollierter Zugriff“

geben einen Hinweis darauf, dass die Anwendung des Proxy Pattern hilfreich sein könnte.

Abbildung: Proxy Pattern

Abstract Factory Pattern

Wenn ein System eine Produktfamilie unterstützen soll, wenn es unabhängig davon sein soll, wie seine Produkte erzeugt, zusammengesetzt oder dargestellt werden, wenn die aktuelle Technologie seiner Produkte sich in Zukunft wahrscheinlich ändern wird, wenn also Ausdrücke wie

  • “unabhängig vom Hersteller”
  • “unabhängig vom Gerät”
  • “muss eine Produktfamilie unterstützen”

in den Anforderungen auftauchen, dann wäre es wahrscheinlich eine gute Idee, das Abstract Factory Pattern in Betracht zu ziehen.

Abbildung: Abstract Factory Pattern

Ähnlich, wie ein Katalog von Weak Words zur Verbesserung der Anforderungsqualität benutzt werden kann, kann ein Katalog von Begriffen gebildet werden, deren Verwendung in Anforderungen die Möglichkeit des Einsatzes von Design Patterns anzeigt und damit einen reibungsloseren Übergang von der Analyse zum Design ermöglicht.

Dieser Blogbeitrag wurde von Uwe Valentini und Philip Stolz für HOOD geschrieben.

Diskussion

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*dieses Feld ist erforderlich

Profile Picture

Philip Stolz

Kontaktieren Sie Philip Stolz

Herr Philip Stolz ist als Senior Consultant im Bereich Requirements Engineering (RE) tätig. Seine Schwerpunkte liegen in der Einführung und Prozessverbesserung von Requirements Engineering (RE). Herr Stolz verfügt über eine fundierte Ausbildung im Bereich Software Engineering (Dipl.-Inf., Softwaretechnik). Durch Erfahrung aus unterschiedlichen Entwicklungsprojekten in verschiedenen industriellen Branchen sind ihm typische Projektsituationen sowie das Vorgehen bei der Einführung methodischer Verfahren innerhalb von Projektteams bekannt.

Wissen, das bewegt!

Verpasse keinen der spannenden Artikel mehr auf blog.hood-group.com und melde dich für unseren Newsletter an! Erfahre alle 2 Wochen als Erster von den neuesten Branchentrends, erhalte exklusive Experten-Tipps und bleib über unsere Veranstaltungen immer auf dem Laufenden. Alles direkt in dein Postfach.

Jetzt abonnieren und keine wichtigen Insights mehr verpassen!