Wie erstelle ich ein PAP? (Programmablaufplan)

Davon wie man logische Abläufe, Algorithmen und Programmvorläufer in einem Programmablaufplan (PAP) darstellen kann.

Programmablaufplan PAP

Programmablaufplan PAP

Eine Grundlage, um Software zu entwerfen und komplizierte logische Abfolgen darzustellen, bietet der PAP. In einfachen sequenziellen Schritten kann so eine komplexe Programmlogik beschrieben werden. Zumeist dient der Programmablaufplan dazu einen programmneutralen Algorithmus zu beschreiben. Wie sich der Algorithmus vom tatsächlichen Programm unterscheidet erfährst du hier: Algorithmus vs. Programm

Elemente und Aufbau eines PAP

Die Elemente des Programmablaufplans können frei miteinander kombiniert werden und ermöglichen so eine komplette Darstellung einer Programmlogik. Folgend gebe ich eine detaillierte Beschreibung der PAP-Elemente:

Start und Ende

PAP Start Ende

PAP Start Ende

Das Start und Ende Element – welches obligatorisch (verpflichtend) – wird im PAP durch eine abgerundeten Rechteck dargestellt. Diese markieren den absoluten und eindeutigen Start und Ende des Programms.

Eingabe und Ausgabe

PAP Eingabe Ausgabe

PAP Eingabe Ausgabe

Die Ein- und Ausgabe wird mit einem nach rechts gekippten Rechteck (Parallelogramm) dargestellt. Dieses repräsentiert bspw. eine Eingabe von der Tastatur (Maus oder Touchpad) oder eine Ausgabe auf den Bildschirm (auch Audioausgabe oder Vibrationsalarm bspw. auf dem Handy).

Operation, Interaktion

PAP Operation

PAP Operation/Interaktion

Die Operationssequenz wird im PAP mit einem einfachen Rechteck dargestellt. Diese beschreiben eine Abarbeitung wie bspw. „i = i +1;“, „i = 42;“, „s = ‚Douglas Adams'“. Bei diesem Element im Programmablaufplan ist eine gewissen Freiheit gegeben, denn es können nicht nur Zuweisungen, sondern auch Variablen Initialisierungen vorgenommen werden (viele verzichten auf diese).
Achtung: Unterprogramme werden mit einem separaten Element aufgerufen!

Unterprogramm

PAP Unterprogramm

PAP Unterprogramm

Das Unterprogramm wird im Programmablaufplan ebenfalls – wie die Operation – mit einem Rechteck dargestellt, jedoch um zwei vertikale Linien ergänzt. Zwischen den vertikalen Begrenzungslinien steht der Unterprogrammname. Dieses Element kommt zum Einsatz wenn im PAP eine weiterer Programmteil – bspw. eine Funktion – aufgerufen werden soll. Dieser aufgerufene Programmteil kann ebenfalls in einem separaten PAP dargestellt werden.

Verzweigung und Entscheidung

PAP Entscheidung

PAP Entscheidung

Die Verzweigung bzw. Entscheidung ist ein essentieller Bestandteil des Programmablaufplans und wird durch eine Raute dargestellt. Diese verkörpert eine Entscheidung und hat zwei Ausgänge einer für den Wahrwert (richtig, true) und den Falschwert (falsch, false). In der Entscheidung werden immer Fragen gestellt die mit booleschen Werten (Wahr und Falsch) beantwortet werden können bspw. „i > 2?“, „s = ‚abc‘?“. Dabei müssen die Fragen nicht unbedingt mathematisch sondern können auch verbal formuliert sein: „ist Wert i vorhanden?“.

Linie

PAP Linie

PAP Linie

Linien stellen im PAP die Verbindung zwischen den Elementen und den sequenziellen Ablauf dar. Diese müssen immer gerichtet sein,  das heißt eine Richtung mittels Pfeil vorgeben. So wird der Programmfluss eindeutig dargestellt.

Schleifen und Wiederholungen

[ContentAd]

Schleifen und Wiederholungen werden in Programmablaufplänen je nach Typ verschieden dargestellt. Bei Kopf- und fußgesteuerten Schleifen werden Verzweigungs-(Entscheidungens)-Elemente als Laufzeit- und Abbruchbedingung verwendet. Für Zählerschleifen gibt es eine eigene Darstellung mit begrenzenden Trapezen (siehe Bild).

Schleife: kopfgesteuerte

Schleife: kopfgesteuerte

Schleife: fußgesteuert

Schleife: fußgesteuert

PAP Zählerschleife

PAP Zählerschleife

Konnektoren

PAP Konnektoren

PAP Konnektoren

Konnektoren werden durch Kreise dargestellt und drücken einfache Verbindungen im PAP aus. Das heißt, wenn bspw. zwei logische Abläufe (Stränge) aufeinander treffen, kann die Verbindung durch einen Kreis verdeutlicht werden. Dieses Element wird oft als optional betrachtet und somit weggelassen.

Sprungmarken

PAP Sprungmarke

PAP Sprungmarke

Die Sprungmarken werden wie die Konnektoren ebenfalls als Kreise dargestellt. Diese Stellen Sprünge im Programm dar und werden meist aus Gründen der übersichtlichen Darstellung herangezogen. Damit kann von einer Stelle zu einer anderen gesprungen werden. Dazu wird einfach eine Verbindungslinie auf einen Kreis gerichtet welcher eine Kennung hat. Der Sprung erfolgt zu dem Kreis mit gleicher Nummer der nur einen ausgehenden gerichteten Pfeil besitzt.

Kommentare

PAP Kommentar

PAP Kommentar

Kommentare stellt man im PAP mit geöffneten eckigen Klammern dar. Damit kann man nähere Beschreibungen oder Erklärungen – welche bspw. in einer Operation verboten sind – hinzufügen. Kommentare können den gesamten Programmablaufplan betreffen (ohne Verbindung zu einem Element) oder bezogen auf ein Element – mit ungerichteter Verbindungslinie (ohne Pfeil) zum Element – dargestellt werden.

PAP Beispiel:

Natürlich darf ein PAP-Beispiel nicht fehlen: Dazu stelle ich folgend einen textuellen Algorithmus in ein Programmablaufplan um. Achtung: Die Beschreibung klingt sehr nach Programm gehört aber zum Algorithmus (ebenso wie der PAP), da wir uns – was die technische Umsetzung angeht – nicht festlegen.

Das Programm soll ein komplettes Jahreseinkommen über ein gewissen Zeitraum mit Zinseszins verzinsen:

  • Der Name (Vor- und Nachname), Geschlecht, Jahreseinkommen, Verzinsungssatz und Verzinsungsdauer soll angegeben werden
  • Das Geschlecht soll in eine Anrede umgewandelt werden
  • Bei gültigem Zinssatz (>0) und Laufzeit (>0) wird der Zinseszins über die Jahre berechnet
  • anschließend soll ein Umfangreicher Text mit Anrede, Zinsertrag und Gesamtkontostand auf den Bildschirm ausgegeben werden
Beispiel Programmablaufplan

Beispiel Programmablaufplan

Tools:

Zum Designen gibt es zwei gute Tools. Zum einen DIA – mit vollem aber etwas aufwendigen Funktionsumfang und PAPDesigner – mit super schnellen Ergebnissen, aber eingeschränkter Funktionalität (keine Konnektoren, Sprungmarken, verbundene Kommentare usw.)

MrKnowing

Programmierer und Wissensnerd! Kontaktiere mich auf Google+ oder einfach per Mail danny@mrknowing.com

Das könnte dich auch interessieren …

4 Antworten

  1. Samuel Schmdit sagt:

    Hallo und vielen Dank,

    welchen Objektbogen eignet sich in DIA am besten für PAPs?

    Gruß

    Samuel

  2. chris sagt:

    Hi und danke für den Text.
    Er wimmelt vor Rechtschreibfehlern.
    Falls dir das noch nicht aufgefallen ist, solltest du noch einmal drüber schauen.
    Gruß
    Chris..

  1. 13. März 2014

    […] Wie genau du einen Programmablaufplan erstellst, erfährst du hier! […]

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert