WikiDer > Programmstrukturdiagramm
EIN Programmstrukturdiagramm (manchmal geschrieben als: Programmstrukturdiagramm), abgekürzt PSD, ist eine schematische Technik zur Vorbereitung auf die Softwareprogrammierung. Ein Programmstrukturdiagramm wird auch als a . bezeichnet Nassi-Shneiderman-Diagramm erwähnt.
Die PSD wurde 1972 erstellt und 1973 erstmals beschrieben von Isaac Nassic und Ben Shneiderman[1][2]. Ein PSD ist ein Diagramm, das die Kohärenz – die Struktur – von Anweisungen innerhalb eines Programms zeigt. PSDs bestehen aus:
- Rechtecke
- Dreiecke
- Text
Diese Elemente werden zur Vorbereitung der Codierung in einer Programmiersprache verwendet. Sie sind programmiersprachenunabhängig. Außerdem gibt es keine strengen Sprachregeln; Problemlösung ist zentral. Es gibt Open-Source-Programme sowie kommerzielle Produkte zum Erstellen und Bearbeiten von Programmstrukturdiagrammen.
Algorithmus
Wir sprechen in diesem Zusammenhang von a Algorithmus: Eine Reihe von Regeln in einer bestimmten Reihenfolge, um ein Problem zu lösen.
Der Algorithmus, um von einem Problem zu einem Programm zu gelangen, sieht wie folgt aus:
- Problem
- Analyse
- Schematische Lösung
- Schreiben der Quellcode
- Kompilieren
Grundstrukturen
Bei PSDs gibt es nur drei Grundstrukturen. Wenn sie richtig kombiniert werden, kann jedes Computerprogramm damit beschrieben werden. Die Grundstrukturen sind:
Reihenfolge
Bei der Sequenz oder Sequenz alle Schritte des Algorithmus folgen nacheinander.
| --Titel-- |
| Var1=READ("Der Benutzer muss etwas eingeben") |
| Var2=READ("Der Benutzer muss etwas eingeben") |
| Var3=Var1 & Var2 |
| WRITE("Die Verkettung der beiden Benutzereinträge lautet: " & Var3) |
„READ“: Der Benutzer erhält eine Frage/einen Befehl, das Ergebnis ist eine im Speicher abgelegte Variable.
„WRITE“: fügt etwas auf den Bildschirm des Benutzers.
„Variable“: Speicherplatz.
„=“ ist der Zuweisungsoperator oder das Zuweisungszeichen.
Wiederholung
Wiederholung oder Wiederholung steht für die Möglichkeit, mehrere Operationen über zB eine while-Schleife zu wiederholen, bis die Bedingung für die Schleife nicht mehr erfüllt ist und das Programm weiterläuft.
Auswahl
AuswahlStrukturen werden auch als Auswahl bezeichnet. Beim Umgang mit diesen Strukturen muss eine Wahl getroffen werden, welchen Weg das Programm nehmen wird (Wahl zwischen verschiedenen Operationen oder Aktionen)
Unterstützung
Mehrere Softwareprogramme unterstützen Nassi-Shneiderman-Diagramme:
- STRUCTORIZER ist ein Open-Source-Programm in Java speziell zum Erstellen und Bearbeiten von Nassi-Shneiderman-Diagrammen.[3]
- Code::Blocks ist eine Open-Source-IDE für C und C, die dank eines Plugins Nassi-Shneiderman-Diagramme aus Programmcode generieren kann.[4]
- Struktor ist eine Open Source Java-Applet mit dem man Struktogramme bearbeiten und ausführen kann.[5][6]
- Nessi ist ein Open-Source-Editor für Nassi-Shneiderman-Diagramme in Java.[7]
- Moritz ist eine Open-Source-Erweiterung für Sauerstoff die Nassi-Shneiderman-Diagrammman aus Funktionen in C oder C generieren kann.[8]
- Struktogramme.dot ist eine kostenlose Vorlage für Microsoft Word, mit der Sie Struktogramme erstellen und bearbeiten können.[9]
- Nassi-Shneiderman-Diagramm (Word Vorlage): Eine Microsoft Word-Vorlage für Nassi-Shneiderman-Diagramme.[10]
- Struktex ist ein LatexPaket für Nassi-Shneiderman-Diagramme.[11]
- nassflow ist ein LaTeX-Paket für Nassi-Shneiderman-Diagramme.[12]
- PyNassi ist ein Open-Source-Editor und Debugger für Nassi-Shneiderman-Diagramme in Python 2.3.[13][14]
- Struktogrammeditor ist ein kostenloser Struktogramm-Editor in Java.[15]
- NSD-Editor ist ein Open-Source-Programm in Borland Delphi, mit dem Nassi-Shneiderman-Diagramme gezeichnet und daraus Code in C und Pascal generiert werden können.[16]
- StruktoGraaf ist ein kommerzieller Editor für Struktogramme.[17]
- SmartDraw ist ein Programm zum Zeichnen aller Arten von Diagrammen.[18]
- EasyCODE ist eine kommerzielle Programmierumgebung für C/C, Java und COBOL, in der auch Nassi-Shneiderman-Diagramme erstellt werden können[19]
- Atego X32 ist eine kommerzielle Programmierumgebung für C/C, C#, Java und Pascal, in der auch Nassi-Shneiderman-Diagramme (dt. "Struktogramme") erstellt werden können.[20]
- Edraw Flowchart ist ein Editor für alle Arten von Diagrammen, einschließlich Nassi-Shneiderman-Diagrammen.[21]
Benutzen
In Deutschland wurden Nassi-Shneiderman-Diagramme 1985 als DIN 66261 genormt.[22] Die Diagramme werden noch in deutschen Einführungen in die Softwareentwicklung verwendet, zum Beispiel in der Einführung in C von Böttcher und Kneißl[23], Einführung in C von Baeumle-Courth und Schmidt[24] und Kirch.s Einführung in C#[25].
Nassi-Shneiderman-Diagramme können auch technische Dokumentation verwendet werden.[26]
Externe Links
- Jülich Supercomputing Center (JSC): "Generierung von Nassi-Shneiderman-Diagrammen unter Unix mit nassi", 30.10.2012.
- Shneiderman, Ben: "Eine kurze Geschichte strukturierter Flussdiagramme", Entwurfsfassung, 27. Mai 2003.
- Yoder, Cornelia M; Schrag, Marilyn L.: "Nassi-Shneiderman-Diagramme: Eine Alternative zu Flussdiagrammen für das Design". Proceedings, ACM SIGSOFT/BIGMETRICS Software- und Assurance-Workshop, Nov. 1978.
- Nicholas Hebb: "So erstellen Sie ein Nassi-Shneiderman-Diagramm in Excel" (ohne Datum).
Nüsse
- ↑Shneiderman, Ben: "Eine kurze Geschichte strukturierter Flussdiagramme (Nassi-Shneiderman-Diagramme)", Entwurfsfassung 27. Mai 2003.
- ↑Nassi, I.; Shneiderman, B.: "Flussdiagrammtechniken für strukturierte Programmierung“, SIGPLAN-Mitteilungen XII, August 1973.
- ↑STRUKTORISATOR.
- ↑Code::Blocks-Wiki: Nassi Shneiderman-Plugin.
- ↑Kim Neunert: struktor: ein Nassi-Shneiderman-Diagrammeditor und -Executor in Java (Quellcode auf GitHub)
- ↑learn2prog - Struktogramme zeichnen und ablaufen lassen.
- ↑Nessia.
- ↑Moritz
- ↑Datenspeicher Wald 2 (DSW2): Strukturogramm.
- ↑Kern23: Projekt: Nassi-Shneiderman-Diagramm (Word Vorlage).
- ↑struktex.
- ↑nass flow.
- ↑Ingo Linkweiler: PyNassi.
- ↑Ingo Linkweiler: PyNassie: Download-Seite.
- ↑Strukturogramm-Editor.
- ↑Universität Freiburg (Schweiz) - Institut für Informatik: NSD-Redakteur Nassi-Shneiderman Diagramm-Redakteur: Studentenprojekt von Marcel Kalt.
- ↑Sichemsoft V.o.F.: StruktoGrave.
- ↑SmartDraw: "Einführung in Nassi-Shneiderman - Nassi-Shneiderman-Diagramme - SmartDraw Tutorials".
- ↑EasyCODE GmbH: EasyCODE: Umsetzung mit Strukturdiagrammen.
- ↑Atego: Atego X32 und X32plus.
- ↑EdrawSoft: Nassi-Shneiderman-Diagrammsoftware.
- ↑Deutsches Institut für Normung e. V. (DIN): DIN 66261: Informationsverarbeitung; Sinnbilder für Struktogramme nach Nassi-Shneiderman.
- ↑Bottcher, Axel; Kneill, Franz: Informatik für Ingenieure: Grundlagen und Programmierung in C. 3. Auflage. München: Oldenbourg, 2012. ISBN 978-3-486-70527-0. Siehe insbesondere Kapitel 10: „Kontrollstrukturen“ (Kontrollfluss).
- ↑Bäume-Courth, Peter; Schmidt, Torsten: Praktische Einführung in C. München: Oldenbourg, 2012. ISBN 978-3-486-70799-1. Siehe insbesondere Kapitel 6: „Kontrollstrukturen“ (Kontrollfluss).
- ↑Kirch, Ulla: C#-Lernen und professionelle Anwendung. Heidelberg: mitp, 2009. ISBN 978-3-8266-5915-7. Siehe insbesondere Kapitel 5: "Schleifen und Verzwege".
- ↑Weiss, Edmond H.: "Visualisierung eines Verfahrens mit Nassi-Schneiderman-Diagrammen", Zeitschrift für Technische Redaktion und Kommunikation, Voll. 20, Nr. 3 (1990): 237-54.