Ablaufdiagramme: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
K Textersetzung - „:Programmplanung“ durch „:Vorgehensmodell_(Software)“
 
(49 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Ein Ablaufdiagramm veranschaulicht Arbeitsabläufe von Algorithmen oder von Prozessen. Üblich vorhanden sind optionale Pfade und Fallunterscheidungen.
Ein '''Ablaufdiagramm''' veranschaulicht Arbeitsabläufe von Algorithmen und Prozessen.


==Arten==
===Programmablaufdiagramm===
*Es gibt mehrere Arten von Diagrammen.
[[Datei:Flussdiagramm.jpg|600px|Flussdiagramm]]
*Vornehmlich werden drei Arten in der Programmierung benutzt.
*Wird auch ''Flussdiagramm'' oder ''Programmstrukturplan'' genannt
**Programmablaufdiagramm (PAP)
*Schritte werden durch Sinnbilder und Steuerungsabläufe durch Ablauflinien dargestellt
**Nassi-Schneiderman-Diagramm (Struktogramm)
*Elemente und Symbole sind nach DIN 66001 genormt
**Unified-Modeling-Language (UML)
*Jedes Element hat eine Bedeutung ''(z. B. Rechteck: Operation; Raute: Verzweigung)''
*''Vorteil:'' einfaches Zeichnen
*''Nachteil:'' große Programme können zu Unübersichtlichkeit führen
 
Für das obige Beispiel könnte ein C-Programm so aussehen:
<stdio.h>
int main() {
  int zahl1, zahl2;
  double mittel;
  printf("Erste Zahl eingeben:\n");
  scanf("%d", &zahl1);
  printf("Zweite Zahl eingeben:\n");
  scanf("%d", &zahl2);
  mittel = (zahl1+zahl2)/2;
  printf("Der Mittelwert beträgt %d\n", mittel);
  return 0;
}
 
===Struktogramm===
[[Datei:Struktogramm.jpg|600px|Struktogramm]]
*Entwickelt von Isaac Nassi und Ben Schneiderman
*Das aus den ''Strukturblöcken'' zusammengesetzte Struktogramm ist im Ganzen rechteckig
*Jede Anweisung ist in einem rechteckigen Block geschrieben
*Anweisungsblöcke werden von ''oben nach unten'' durchlaufen
*''Vorteil:'' einheitlich, strukturierte Planung von Programmen
*''Nachteil:'' zeitaufwendig, Syntax muss beachtet werden
 
===Unified-Modeling-Language===
[[Datei:Uml-klassendiagramm.png|600px|Klassendiagramm]]
*Neueste Art von Ablaufdiagramm
*Ist eine Sprache zur Modellierung ''objektorientierter Systeme''
*Beinhaltet verschiedene Diagrammtypen unterteilt in zwei Hauptgruppen: ''Struktur- und Verhaltensdiagramme''
 
====Strukturdiagramme====
*''Klassendiagramm:'' zeigt Klassen und ihre Beziehungen untereinander
*''Paketdiagramm:'' Gliedert Softwaresystem in Untereinheiten
*''Objektdiagramm:''  Objekte, Assoziationen und Attributwerte zu einem bestimmten Zeitpunkt während Laufzeit
*''Kompositionsstrukturdiagramm:'' Abbildung innerer Zusammenhänge einer Systemarchitektur
*''Verteilungsdiagramm:'' Einsatzdiagramm
*''Komponentendiagramm:'' zeigt Komponenten und ihre Beziehungen und Schnittstellen
 
====Verhaltensdiagramme====
*''Sequenzdiagramm:'' zeigt den zeitlichen Ablauf von Nachrichten zwischen Objekten
*''Anwendungsfalldiagramm:'' stellt Beziehungen zwischen Akteuren und Anwendungsfällen dar
*''Aktivitätsdiagramm:'' beschreibt Ablaufmöglichkeiten, die aus einzelnen Aktivitäten bestehen
*''Zustandsdiagramm:'' zeigt eine Folge von Zuständen eines Objekts
*''Kommunikationsdiagramm:'' zeigt Beziehungen und Interaktionen zwischen Objekten
*''Zeitverlaufsdiagramm:'' Zeitverlaufskurven von Zuständen
*''Interaktionsübersichtsdiagramm:'' ähnlich dem Aktivitätsdiagramm, Übersicht über Abfolgen von Interaktionen
 
==Quellen==
#https://de.wikipedia.org/wiki/Programmablaufplan
#https://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm
#https://de.wikipedia.org/wiki/Unified_Modeling_Language#Diagramme
#https://www.torsten-horn.de/techdocs/uml.htm
 
[[Kategorie:Vorgehensmodell_(Software)]]

Aktuelle Version vom 14. Juli 2023, 08:55 Uhr

Ein Ablaufdiagramm veranschaulicht Arbeitsabläufe von Algorithmen und Prozessen.

Programmablaufdiagramm

Flussdiagramm

  • Wird auch Flussdiagramm oder Programmstrukturplan genannt
  • Schritte werden durch Sinnbilder und Steuerungsabläufe durch Ablauflinien dargestellt
  • Elemente und Symbole sind nach DIN 66001 genormt
  • Jedes Element hat eine Bedeutung (z. B. Rechteck: Operation; Raute: Verzweigung)
  • Vorteil: einfaches Zeichnen
  • Nachteil: große Programme können zu Unübersichtlichkeit führen

Für das obige Beispiel könnte ein C-Programm so aussehen:

<stdio.h>
int main() {
  int zahl1, zahl2;
  double mittel;

  printf("Erste Zahl eingeben:\n");
  scanf("%d", &zahl1);
  printf("Zweite Zahl eingeben:\n");
  scanf("%d", &zahl2);
  mittel = (zahl1+zahl2)/2;
  printf("Der Mittelwert beträgt %d\n", mittel);
  return 0;
}

Struktogramm

Struktogramm

  • Entwickelt von Isaac Nassi und Ben Schneiderman
  • Das aus den Strukturblöcken zusammengesetzte Struktogramm ist im Ganzen rechteckig
  • Jede Anweisung ist in einem rechteckigen Block geschrieben
  • Anweisungsblöcke werden von oben nach unten durchlaufen
  • Vorteil: einheitlich, strukturierte Planung von Programmen
  • Nachteil: zeitaufwendig, Syntax muss beachtet werden

Unified-Modeling-Language

Klassendiagramm

  • Neueste Art von Ablaufdiagramm
  • Ist eine Sprache zur Modellierung objektorientierter Systeme
  • Beinhaltet verschiedene Diagrammtypen unterteilt in zwei Hauptgruppen: Struktur- und Verhaltensdiagramme

Strukturdiagramme

  • Klassendiagramm: zeigt Klassen und ihre Beziehungen untereinander
  • Paketdiagramm: Gliedert Softwaresystem in Untereinheiten
  • Objektdiagramm: Objekte, Assoziationen und Attributwerte zu einem bestimmten Zeitpunkt während Laufzeit
  • Kompositionsstrukturdiagramm: Abbildung innerer Zusammenhänge einer Systemarchitektur
  • Verteilungsdiagramm: Einsatzdiagramm
  • Komponentendiagramm: zeigt Komponenten und ihre Beziehungen und Schnittstellen

Verhaltensdiagramme

  • Sequenzdiagramm: zeigt den zeitlichen Ablauf von Nachrichten zwischen Objekten
  • Anwendungsfalldiagramm: stellt Beziehungen zwischen Akteuren und Anwendungsfällen dar
  • Aktivitätsdiagramm: beschreibt Ablaufmöglichkeiten, die aus einzelnen Aktivitäten bestehen
  • Zustandsdiagramm: zeigt eine Folge von Zuständen eines Objekts
  • Kommunikationsdiagramm: zeigt Beziehungen und Interaktionen zwischen Objekten
  • Zeitverlaufsdiagramm: Zeitverlaufskurven von Zuständen
  • Interaktionsübersichtsdiagramm: ähnlich dem Aktivitätsdiagramm, Übersicht über Abfolgen von Interaktionen

Quellen

  1. https://de.wikipedia.org/wiki/Programmablaufplan
  2. https://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm
  3. https://de.wikipedia.org/wiki/Unified_Modeling_Language#Diagramme
  4. https://www.torsten-horn.de/techdocs/uml.htm