Strukturiertes Design

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Dieser Artikel oder nachfolgende Abschnitt ist nicht hinreichend mit Belegen (beispielsweise Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst entfernt. Bitte hilf der Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Näheres ist eventuell auf der Diskussionsseite oder in der Versionsgeschichte angegeben. Bitte entferne zuletzt diese Warnmarkierung.

Strukturiertes Design (SD) ist ein Entwurfsmuster in der Softwaretechnik nach Edward Yourdon und Larry Constantine, welches modulares Design unterstützt, um neben der reinen Funktionshierarchie auch die Wechselwirkungen von übergeordneten Modulen zu beschreiben. SD wird mit der Strukturierten Analyse (SA) in der Softwaretechnik verwendet.

Ansatz[Bearbeiten]

Das Strukturierte Design schlägt eine Brücke zwischen der technologieneutralen Analyse und der eigentlichen Implementierung. Im Strukturierten Design werden technische Randbedingungen eingebracht und die Grobstruktur des Systems aus technischer Sicht festgelegt. Es stellt damit die inhaltliche Planung der Implementierung dar.

Die Methodik stellt mittels Strukturdiagrammen funktionale Module hierarchisch dar und zeigt dadurch die einzelnen Aufrufhierarchien der Module untereinander. Ein funktionales Modul besteht aus einer oder mehreren funktionalen Abstraktionen. Diese wiederum stellt eine der ersten Abstraktionsmechanismen dar und gruppiert mehrere zusammengehörende Programmbefehle zu Einheiten (Funktionen). Ein Beispiel wäre die Berechnung der Quadratwurzel sqrt(x). Der Benutzer muss keine Details über die Implementierung wissen, sondern wendet die Funktion nur an. Dafür benötigt er eine entsprechende Schnittstellenbeschreibung, die ebenso zum Strukturierten Entwurf gehört wie das Erstellen der Modulhierarchie. Ein Funktionales Modul besitzt kein internes Gedächtnis, das heißt es beinhaltet keine Daten (private Daten), die nur im Modul sichtbar sind. Es kann nur in globalen Daten Informationen hinterlegen (beispielsweise bei der Berechnung einer Zufallszahl). Spätere darauf aufbauende Methoden, wie das Modulare Design (MD), führen abstrakte Datentypen und Datenobjekte ein.

Verwendung[Bearbeiten]

Objektorientierte Analyse und Design haben strukturierte Methoden in vielen Bereichen verdrängt. Bei Banken, Versicherungen und im Embedded-Bereich finden noch viele Systementwicklungen mit strukturierten Methoden statt. Insbesondere im Bereich des Mobile-Business werden oft Rechnersysteme verwendet, die über limitierte Ressourcen verfügen, für die eine objektorientierte Realisierung mit ihrem Overhead zu teuer ist. Weiterhin sind im Rahmen der Integration von bestehenden Anwendungen im Rahmen von EAI oft Teilsysteme zu realisieren, die nicht mit objektorientierten Sprachen umgesetzt werden können. Daher würden objektorientierte Analyse und Design, die ansonsten weltweit sehr große Verbreitung gefunden haben, falsche Implementierungsvorbereitungen darstellen.

Funktionsorientierte Methode[Bearbeiten]

Aufgaben werden top-down in Teilaufgaben zerlegt und dann diese auf die Module abgebildet (Prinzip der Modularisierung).

Beschreibungsmittel sind Strukturdiagramme in denen die Module und die Verbindungen zwischen Modulen dargestellt werden.

Beispiel[Bearbeiten]

Menü Kundenverwaltung wird unterteilt in Formular Kunde und Bericht Kunde.

Formular Kunde wird erneut unterteilt in Aktualisieren und Umsatzrabatt, Bericht Kunde in Seitenansicht und Drucken.