Nassi-Shneiderman-Diagramm
Ein Nassi-Shneiderman-Diagramm (NS-Diagramm) ist eine Entwurfsmethode für die strukturierte Programmierung. Es ist genormt nach DIN 66261. Benannt wurde es nach seinen Vätern, Dr. Ike Nassi und Dr. Ben Shneiderman. Da NS-Diagramme Programmstrukturen darstellen, werden sie auch als Struktogramme bezeichnet.
Die Methode zerlegt das Gesamtproblem, das man mit dem gewünschten Algorithmus lösen will, in immer kleinere Teilprobleme bis schließlich nur noch elementare Grundstrukturen wie Sequenzen und Kontrollstrukturen zur Lösung des Problems übrig bleiben. Diese können dann durch ein NS-Diagramm oder einen Programmablaufplan (PAP) visualisiert werden.
In der Softwareentwicklung werden Nassi-Shneiderman-Diagramme sehr selten eingesetzt, da normaler Programmcode einfacher zu schreiben und zu verändern ist: Korrigiert man einen Fehler oder macht eine Ergänzung, muss man ein NS-Diagramm i.a. komplett neu zeichnen.
Wesentlich ist auch, dass die beiden Autoren nachweisen konnten, dass in keinem Algorithmus ein unbedingter Sprung (GOTO) benötigt wird und dies mit ihren Diagrammen aufzeigen konnten.
Beispieldiagramm
Das folgende Beispiel zeigt ein Diagramm für die Berechnung des größten gemeinsamen Teilers mit dem euklidischen Algorithmus
als Nassi-Shneiderman-Diagramm | .. und in Pascal: |
---|---|
![]() |
PROGRAM GGT(Input,Output); VAR a,b: Integer; BEGIN ReadLn(a,b); WHILE a>0 and b>0 DO IF a>b THEN a:=a-b ELSE b:=b-a; IF b=0 THEN WriteLn(a) ELSE WriteLn(b); END. |