Strukturiertes Design

Strukturiertes Design

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.

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.

Bei Banken, Versicherungen und im Embedded-Bereich finden noch viele Systementwicklungen mit strukturierten Methoden statt. Insbesondere im Bereich des m-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 falsche Implementierungsvorbereitungen darstellen.

Funktionsorientierte Methode

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

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.


Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Computer-Aided Software Engineering — Der Begriff Computer Aided Software Engineering (CASE; auch Rechnergestützte Softwareentwicklung) bezeichnet den intensiven Einsatz IT gestützter Werkzeuge für die Umsetzung einer Software Konzeption. CASE Tools sind Programme, die den Software… …   Deutsch Wikipedia

  • Innovator (UML-Werkzeug) — Innovator Entwickler: MID GmbH Aktuelle Version: 10.0.3 (19. Oktober 2008) Betriebssystem: ab Windows 2000, ab SuSE Linux 10.3, ab Solaris 8, (Red Hat auf Anfrage) Kategorie: UML Werkzeug …   Deutsch Wikipedia

  • Innovator Modellierungsplattform — Innovator Entwickler: MID GmbH Aktuelle Version: 10.0.3 (19. Oktober 2008) Betriebssystem: ab Windows 2000, ab SuSE Linux 10.3, ab Solaris 8, (Red Hat auf Anfrage) Kategorie: UML Werkzeug …   Deutsch Wikipedia

  • Anwendungsentwicklung — Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition… …   Deutsch Wikipedia

  • Software-Engineering — Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition… …   Deutsch Wikipedia

  • Software-Entwicklung — Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition… …   Deutsch Wikipedia

  • Software-Life-Cycle — Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition… …   Deutsch Wikipedia

  • Software-Technik — Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition… …   Deutsch Wikipedia

  • Software-life-cycle — Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition… …   Deutsch Wikipedia

  • Software Engineering — Die Softwaretechnik (engl. software engineering) beschäftigt sich mit der Herstellung von Software, also der Entwicklung und dem Betrieb von Softwaresystemen und der Organisation und Modellierung der zugehörigen Datenstrukturen. Eine Definition… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”