Entwickler-Ecke

Off Topic - Sinn von Struktogrammen...


Martok - Mi 30.05.07 14:01
Titel: Sinn von Struktogrammen...
Hallo!

Ich möchte mal wieder eine Diskussion anstoßen. Ich sitze hier grade im Info-Unterricht und im Test eben waren Struktogramme gefragt.

Die finde ich allerdings immer extrem sinnlos, denn wer Zeit hat, ein Struktogramm zu malen, kann auch gleich Pseudocode schreiben (meine Meinung).

So, jetzt lasst mal hören ;)

PS: ich meine keine Flowcharts, die finde ich sehr sinnvoll.


g1o2k4 - Mi 30.05.07 14:14

es geht ja nur um einen überblick der verschiedenen wege die man in einem programm durchlaufen kann. dafür sind die sehr sinnvoll ! und wenn du sagst du schreibst es lieber gleich in pseudo-code dann scheinst du noch keine umfangreichen programme geschrieben zu haben.
struktogramme bieten bei großen projekten viel mehr übersicht. was meinste warum sich uml programme in der industrie so gut verkaufen ? kein programmierer programmiert einfach drauf los.


ZeitGeist87 - Mi 30.05.07 14:17

Struktogramme mag ich auch nicht, ich zeichne mir lieber PAPs (Programmablaufpläne).

Aber an und für sich, sind diese Dinge sehr sinnvoll, denn das kann beispielsweise auch ein DAU "lesen" und verstehen.


azubi_20 - Mi 30.05.07 14:22

@user profile icong1o2k4:Es geht hier nicht darum, dass Visualisierungen für Programmabläufe im Allgemeinen sinnlos sind, sondern im speziellen Nassi-Schneidermann-Struktogramme.

Also ich denke, dass Struktogramme nur für sehr kleine Codeabschnitte geeignet sind und höchstens im Anfangsstatium eines Programmierlebens nützlich sind. Umfangreichere Programme kann man mit anderen Darstellungsarten besser visualisieren(UML,Flowchart...).
Es ist schon eine Qual diese Dinger zu zeichnen, v.a. als Planungsgrundlage. Bei jeder Veränderung muss man das halbe Struktogramm neu malen.


Stefan.Buchholtz - Mi 30.05.07 14:55

Als Lehrwerkzeuge sind sie vielleicht noch ganz brauchbar, sonst eher nutzlos. In der praktischen Softwareentwicklung jedenfalls werden nach meiner Erfahrung weder Struktogramme noch Flowcharts benutzt. Flowcharts sind ausser bei trivialen Algorithmen zu gross und zu unübersichtlich. Struktogramme sind als Entwurfswerkzeug unbrauchbar, weil man sie bei jeder Änderung neu zeichnen darf (und beim Entwurf ändert man schliesslich ständig). Zur Dokumentation braucht man beide nicht - Algorithmen dokumentiert man besser direkt aus Quellcode.

In der praktischen Softwareentwicklung benutzte Diagrammformen sind z.B. Suche in Wikipedia ER-DIAGRAMM und Suche in Wikipedia UML.

Stefan


Moony - Do 31.05.07 17:42

Ich stimm euch da vollkommen zu. Wozu Struktogramme.... In meinen Augen Zeitverschwendung! Frag da aber mal meinen Lehrer :rofl:
Zwerg: "Ihr lasst die Rechner gefälligst aus und zeichnet als erstes ein Struktogramm :mahn:!
Kurs: " :puke: "
Zwerg: "Das machen Programmierer nun mal :mrgreen:"
Kurs: *murmel "Als ob"*

Zwerg=Lehrer ^^


Martok - Do 31.05.07 17:55

Da bin ich ja beruhigt, dass ihr das auch so seht ;)

@Laura: irgendwie kommt mir der Dialog bekannt vor, nur dass es bei uns kein Zwerg ist :)


Moony - Do 31.05.07 18:01

*g*. Am schönsten ist es dann, wenn trotzdem alle ihre Rechner hochfahren (oder schon hochgefahren haben) und dann die Bildsperre aktiviert wird (zur Freude des Zwerges :twisted:) .... :motz: und dann: "Hört auf zu meckern, Laura du malst deines gleich an die Tafel" :puke: Und dann malt frau lustlos ihre paar Striche an die Tafel und wehe die Befehle sind nicht umgangssprachlich genug ...


Marco D. - Do 31.05.07 21:59

Ich finde es auch absolut sinnlos.
Meine Lehrerin antwortete mal auf die Frage, welchen Sinn diese Dinger hätten, diese würden heutzutage halt von Programmierern häufig benutzt. :autsch:
Das kann ich nicht glauben, da ich es lästig und mühselig finde, diese Struktogramme zu zeichnen. Und wenn man einen Fehler macht oder eine Element einbauen will, muss man das meiste nochmal machen.
IMHO also sinnlos :!:


Sidorion - Fr 01.06.07 10:46

Zu dem Zeitpunkt, an dem solche Diagramme zum Einsatz kommen könnten (Planung einer einzelnen Prozedur oder eines einzelnen Programmabschnittes) ist die Planung (Konzeption) eines Projektes in der Regel schon so weit fortgeschritten, dass eh klar ist, was die Prozedur tun muß.
Wenn man das schon weiß, kann man entweder schon mit dem Programmieren anfangen oder zumindest einen Pseudocode schreiben. Ich hatte in meiner beruflichen Laufbahn (gut es sind erst 8 Jahre) erst einen Fall, bei dem ein Struktogramm geholfen hätte. Dieses wäre aber so kompliziert geworden, das das Zeichnen länger gedauert hätte, als de Code zu programmieren. In der Praxis finden sie (nach meiner Erfahrung) also kaum Anwendung.

Dennoch sind Struktogramme als Lehr- oder Übungsmittel durchaus sinnvoll, da man mit ihrer Hilfe leichter das Verständnis für die 'Mehrpfadigkeit' einer Prozedur trainieren kann. So manche Anfängerfrage würde sich erübrigen wenn der Fragesteller sich ein Struktogramm gezeichnet hätte. Diese kann man nämlich durchaus auch hinterher anhand des Codes zeichnen und erkennt denn ggf. eher einen logischen Fehler z.B. bei stark verschachtelten Verzweigungen.

also nicht verzagen und 'Ja, Herr Zwerg. Gerne, Herr Zwerg. Mach ich, Herr Zwerg. Welche Farben, Herr Zwerg? A4 oder A3, Herr Zwerg? Darf ich an die Tafel, Herr Zwerg?' sagen :twisted:


Tastaro - Fr 01.06.07 10:54

Ich arbeite auch schon so einige Jahre als Softwareentwickler und kann Sidorion zu 100% beipflichten.

An alle Struktogramm-geplagten Schüler hier: Wenn der Lehrer jemanden sucht, der ein Struktogramm an die Tafel malt, dann springt auf und schreit "hier". Viel leichter ist ne gute Mitarbeitsnote doch gar nicht zu bekommen. :)

Beste Grüße
Tastaro


Chatfix - Sa 02.06.07 19:52

Wie viele hier auch musste auch in zu meiner Schulzeit Struktogramme zeichnen.
Zur Prüfung allerdings hab ich damals erst das gefoderte Programm geschrieben und dann das Struktogramm gezeichnet.

Ging wunderbar, hatte eine 1 in Programmierung.

Heute mach ich das nur noch äußert selten, oder wenn ich jemandem die Programmierung bildlich näher bringen will.