-         
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 19

Thema: Programmablauf skizzieren, wie macht Ihr das?

  1. #1
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.11.2003
    Beiträge
    1.111

    Programmablauf skizzieren, wie macht Ihr das?

    Anzeige

    Hallo!
    Es ist immer wieder das Gleiche: bevor man mit dem Programmieren beginnt, braucht man einen Überblick über das zukünftige Programm, um seine Gedanken ordnen zu können, damit das Programmieren effektiver wird. Das ist umso nützlicher, je komplizierter das Programm ist.

    Dazu gibt es verschiedene Ansätze:
    - Flussdiagramme
    - Statusdiagramme
    - einfach drauf los schreiben
    - ...

    Ich programmiere in C und bevorzuge Diagramme, aber leider habe ich noch kein Patentrezept welches Diagramm ich bei welchem Programm nutzen soll, welche Symbole wie verknüpfen usw.
    Es hängt auch davon ab, ob man ein eventgesteuertes Programm hat (Aufruf der Ppogramme per IRQs) oder ein zyklisch gesteuertes (Aufruf nach Zeitablauf oder Reihenfolge).
    Mir fehlt die Routine, meine Gedanken zu Papier zu bringen und daher frage ich:

    1. Wie macht Ihr das in den entsprechenden Fällen?
    2. Nutzt Ihr Software dafür (welche)?
    3. Kennt Ihr Literatur dazu (Buch, Internetlink)?
    4. Sonstige Hinweise?
    Danke schon mal,
    Gruß Gock


    PS: Habe das hier schon gefunden:
    https://www.roboternetz.de/phpBB2/ze...=flussdiagramm
    https://www.roboternetz.de/phpBB2/ze...=flussdiagramm

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    08.02.2006
    Beiträge
    57
    Hi,

    für eventgetriebene Abläufe finde ich Zustandsautomaten sinnvoll. Ich mache sowas momentan mit Visio als UML-Diagramm. Das klappt ganz gut. Wenn man den Zustandsautomat sorgfältig konzipiert, ist das Coden nur noch Formalität. Als Beispiel hab ich was zur Steuerung des TWI angehängt, das hab ich als Grundlage für meine Implementierung vewendet.
    Gruß
    Jonas
    Miniaturansichten angehängter Grafiken Miniaturansichten angehängter Grafiken twi.png  
    Gruß
    Jonas

  3. #3
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.11.2003
    Beiträge
    1.111
    Hallo!
    Wenn ich mich nicht irre, dann ist das ein Mealy Automat und ein äußerst gutes Beispiel, danke.
    Visio benutze ich auch, aber ich finde die Handhabung umständlich und schlecht. Außerdem können DIagramm leicht unübersichtlich werden und es benötigt recht viel Zeit.
    Es wundert mich ein bisschen, dass das so wenige hier zu interessieren scheint. Dabei ist die Erstellung der Struktur eines Programms, wie Du ja auch sagst, per Diagramm doch um vieles leichter, als einfach drauflos zu programmieren und damit ein sehr starkes Werkzeug. Am Ende muss man nur noch die "Unterprogramme" schreiben und hat immer einen Überblick, auch 1 Jahr später.
    Danke jedenfalls, das ist mal eine Anregung.
    Gruß

  4. #4
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.675
    Zitat Zitat von Gock
    ... Es wundert mich ein bisschen, dass das so wenige hier zu interessieren scheint...
    Na so ist es nicht ganz. Ich kann nur nicht mitreden. Meine Erfahrung mit Programmkonstruktion liegt etwas zurück (FORTRAN, Nassi-Shneidermann-Diagramme und mehrmals ein paar hundert Seiten Code - selbst verfasst oder verfassen lassen). Nun quäle ich mich seit ein paar Monaten in C hinein (aus eigenem Antrieb, ich wollte es immer lernen), und da ist (bei mir eben) die Programmkonstruktion noch total skizzenhaft, weil ich teils garnicht weiß, was erlaubt oder möglich ist.

    Und Aussagen wie
    ... dann ist das ein Mealy Automat ...
    führen bei mir zu längerem Grübeln (und heftigem wikiklicken und so), weil ich den Automatismus darin nicht erkenne ...
    Ciao sagt der JoeamBerg

  5. #5
    Benutzer Stammmitglied
    Registriert seit
    08.02.2006
    Beiträge
    57
    Zitat Zitat von Gock
    Visio benutze ich auch, aber ich finde die Handhabung umständlich und schlecht
    Ich muss zugeben, dass ich bis jetzt nur mit Visio gearbeitet habe. Bin allerdings auch unzufrieden. Ich orientiere mich bei der Modellierung an UML2.1, und das stellt Visio nicht vollständig zur Verfügung. In der Firma, wo ich als Werkstudent arbeite, verwenden sie Rhapsody. Das muss ziemlich genial sein, allerdings auch unerschwinglich
    Zitat Zitat von Gock
    Außerdem können DIagramm leicht unübersichtlich werden und es benötigt recht viel Zeit.
    Das ist aber glaub ich nicht Visio-spezifisch. Bei Zustandsautomaten z.B. kann man einfach nur einen begrenzten Funktionsumfang in einem Diagramm darstellen (viel mehr als in dem TWI-Beispiel sollte man m.E. nicht auf ein Blatt packen). Es gibt aber Mittel, um ein umfangreicheres Modell (entweder ein großer Zustandsautomat, oder mehrere kleinere, die interagieren) sinnvoll auf viele Diagramme aufzuteilen(z.B. durch zusammengesetzte Zustände).

    Gruß
    Jonas
    Gruß
    Jonas

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.11.2003
    Beiträge
    1.111
    @gothmog
    Diagramme, die nach UML gefertigt sind, habe ich schon mal gesehen. Sie wurden verwendet für sehr umfangreiche Zustandsautomaten, ist für meinen Fall wahrscheinlich zu viel des Guten.
    Mit unübersichtlich und Visio meine ich u.a., dass das automatische Layouting der Verknüpfungen unschön ist. Sie werden meist viel zu nah an vorhandene Elemente verlegt, überkreuzen sich genauso zahlreich wie schamlos und die Labels der Verknüpfungen liegen überall, nur nicht dort, wo man sie haben will. Um das dann wieder aufzuräumen, braucht man etwas Zeit...
    Außerdem ärgert es mich, dass es keine Bibliotheken gibt, die eben genau die Elemente enthahlten, die für einen bestimmten Diagrammtyp notwendig sind, zB für das genannte Nassi-Shneidermann Diagramm. Die einzelnen Elemente zu finden kann schon mal in Zorn ausarten.
    Aber gerade zu letzterem gibt es die typischen "Schleifen-Elemente", dummerweise sind sie nicht in gewohnter Weise beschriftbar, was sie wieder überflüssig macht.

    @ oberallgeier
    Dann sprichst Du von Diagrammen, die schon recht tief ins Detail gehen (Schleifen usw.) Ich würde gerne Diagramme erstellen, die in jede Sprache übertragbar wären, egal welche Form eine Schleife hat. Also quasi eine Schnittstelle zwischen Code und "menschlichem Verständnis".
    Dazu gibt es auch was interessantes von Atmel:
    Den AVR Builder, leider nur für Assembler. Das ist eine Software, mit der man im Diagrammstil programmiert.
    http://www.atmel.com/dyn/resources/p...vr_builder.pdf
    http://www.scienceprog.com/algorithm...ke-assembling/
    http://algrom.net/
    Gibt es sowas auch für C???
    Gruß

  7. #7
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.996
    Zitat Zitat von Gock
    Ich würde gerne Diagramme erstellen, die in jede Sprache übertragbar wären, egal welche Form eine Schleife hat. Also quasi eine Schnittstelle zwischen Code und "menschlichem Verständnis".
    Schau dir, bitte, das an:

    https://www.roboternetz.de/wissen/in...ablaufdiagramm

    Vielleicht ist es das, was du suchst?

    MfG

  8. #8
    Benutzer Stammmitglied
    Registriert seit
    26.05.2008
    Alter
    66
    Beiträge
    35
    Das beste Werkzeug ist ja in der Regel eine Kombizange. Ich möchte wie schon an anderer Stelle, mal für CMapTools Reklame machen. Nicht, weil ich daran beteiligt bin, sondern weil die Entwicklung von Anwendungen eines solchen Werkzeuge nur Sinn macht, wenn man sie mit anderen teilt. Denn jede Entwicklung ist zuerst einmal Arbeit und muss motiviert werden. http://cmapspublic3.ihmc.us:80/servl...tName=htmltext zeigt an einem Beispiel, wie man eine Programmstruktur visualisiert

  9. #9
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    25.11.2003
    Beiträge
    1.111
    @PICture
    Ja, so mache ich das zur Zeit, aber es wird auf Grund fehlender Übung gelegentlich noch etwas unübersichtlich, vor allem, wenn man mehrere Interrupts hat. Aber das geht schon.
    Mich interessiert, wie das andere machen, die öfters programmieren als ich.

    @ErNa
    Das sieht schon ganz gut nach einer Software aus, die das Erstellen von Diagrammen vereinfacht.
    Unterschiedliche Formen bei unterschiedlichen Knoten könnten vielleicht helfen.
    Wenn man ein eindeutiges Diagramm hat, wäre es theoretisch ja auch möglich, daraus den Code generieren zu lassen...
    Entwickelst Du daran mit?
    Kann es sein, dass bei vielen Programmieren zumindest im Hobbybereich die Einstellung vorherrscht, dass "man sowas nicht braucht"? Ich höre das gelegentlich...

  10. #10
    Benutzer Stammmitglied
    Registriert seit
    26.05.2008
    Alter
    66
    Beiträge
    35
    Ja. Ich glaube, dass man auf dieser Basis wirklich etwas Gutes machen kann. Sie ist nicht eigentlich dafür vorgesehen, aber genau das gibt auch die Freiheit. Es existiert eine XML-Schnittstelle. Es gibt sehr viele Freiheiten für die Darstellung, aber es gibt noch keine Festlegung, wie man was codiert. Mein Ziel ist natürlich eine graphische Programmierung, ich hatte so was schon mal vor 20 Jahren, aber dann hat man mir den Prozessor geklaut. Jetzt ist er wieder da . Aber ich Suche noch Leute, die mitmachen.

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •