Datenflussdiagramm
Markus, Markus, Markus..... tststststs....
Du solltest dir IMMER zuerst überlegen, welche Funktionen dein Programm haben soll und wie der Ablauf in den einzelnen Teilen gestaltet sein soll. Das ganze dann als Flussdiagramm auf einem schönen Blatt A3 gekritzelt und es kann losgehen.
Ich habe mich in letzter Zeit etwas genauer mit LV State Chart befasst und findes es wirklich gut (von einigen kleinen Macken mal abgesehen).
Als ich zuletzt etwas Leerlauf hatte, habe ich beispielsweise versucht ein halbautomatisches Testsystem neu zu programmieren, welches ich vor geraumer Zeit als "gewöhnliche" State Machine aufgebaut und programmiert hatte. Ich habe mich dabei ausschliesslich am Flussdiagramm orientiert, welches ich damals vom Kunden erhalten habe mitsamt der anderen Testspezifikationen.
Mir gefiel dabei besonders, dass das State Chart bei guter Dokumentation leicht zu lesen ist und man den eigentlichen Testfluss nahezu 1:1 nachbilden kann.
Sicher - ich habe hier und da ein paar Einzelschritte zusammengefasst, da es einfacher zu implementieren war, aber ich kann auch behaupten, dass ich alles in allem gut 30% weniger Zeit benötigt habe als bei gleichem Programm ohne Statechart.
Davon kann man, denke ich, ca. 10% der heute größeren Erfahrung und Routine zusprechen, aber es bleibt dennoch ein Zeitvorteil von gut 20%.
Ein weiterer Vorteil ist die handhabe bei Flussänderungen. Hier ist man bei der herkömmlichen Zustandsmaschine trotz strict type defs immernoch einem recht großem Aufwand gegenübergestellt und muss des weiteren die Doku anpassen. Beim State Chart fügt man einfach den neuen Zustand ein und erstellt die Übergänge. Dokumentation ist die Optik selbst. Ich habe zumindest subjektive das Empfinden, dass es hier ebenfalls eine Zeitersparnis gibt.
Dennoch muss man auch ganz klar sagen, dass es für einfachste Dinge keines State Chart bedarf, da dies dann doch etwas übertrieben wäre. State Charts lohnen sich erst ab einer gewissen Komplexität des Flussdiagramms. Bei uns in der Firma gilt daher mittlerweile die Empfehlung, dass man bei bis zu 5 States noch mit der Zustandsmaschine arbeiten sollte. Aber auch dabei gehen die Meinungen auseinander.
Grüße,
Tobias
Tobias Brüggemann
Dipl.-Ing.(FH) Nachrichtentechnik/Elektronik
|