Ablaufdiagramme: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
K Textersetzung - „:Programmplanung“ durch „:Vorgehensmodell_(Software)“ |
||
(43 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Ein Ablaufdiagramm veranschaulicht Arbeitsabläufe von Algorithmen | Ein '''Ablaufdiagramm''' veranschaulicht Arbeitsabläufe von Algorithmen und Prozessen. | ||
===Programmablaufdiagramm=== | ===Programmablaufdiagramm=== | ||
[[Datei:Flussdiagramm.jpg|600px|Flussdiagramm]] | |||
*Wird auch ''Flussdiagramm'' oder ''Programmstrukturplan'' genannt | *Wird auch ''Flussdiagramm'' oder ''Programmstrukturplan'' genannt | ||
*Schritte werden durch Sinnbilder und Steuerungsabläufe durch Ablauflinien dargestellt | *Schritte werden durch Sinnbilder und Steuerungsabläufe durch Ablauflinien dargestellt | ||
*Elemente und Symbole sind nach DIN 66001 genormt | *Elemente und Symbole sind nach DIN 66001 genormt | ||
*Jedes Element hat eine Bedeutung (z.B. Rechteck: Operation; Raute: Verzweigung) | *Jedes Element hat eine Bedeutung ''(z. B. Rechteck: Operation; Raute: Verzweigung)'' | ||
*Vorteil: | *''Vorteil:'' einfaches Zeichnen | ||
*Nachteil: | *''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=== | ||
[[Datei:Struktogramm.jpg|600px|Struktogramm]] | |||
*Entwickelt von Isaac Nassi und Ben Schneiderman | *Entwickelt von Isaac Nassi und Ben Schneiderman | ||
*Das aus den Strukturblöcken zusammengesetzte Struktogramm ist im Ganzen rechteckig | *Das aus den ''Strukturblöcken'' zusammengesetzte Struktogramm ist im Ganzen rechteckig | ||
*Jede Anweisung ist in einem rechteckigen Block geschrieben | *Jede Anweisung ist in einem rechteckigen Block geschrieben | ||
*Anweisungsblöcke werden von oben nach unten durchlaufen | *Anweisungsblöcke werden von ''oben nach unten'' durchlaufen | ||
*Vorteil: einheitlich, strukturierte Planung von Programmen | *''Vorteil:'' einheitlich, strukturierte Planung von Programmen | ||
*Nachteil: zeitaufwendig, Syntax muss beachtet werden | *''Nachteil:'' zeitaufwendig, Syntax muss beachtet werden | ||
==Unified-Modeling-Language== | ===Unified-Modeling-Language=== | ||
[[Datei:Uml-klassendiagramm.png|600px|Klassendiagramm]] | |||
*Neueste Art von Ablaufdiagramm | *Neueste Art von Ablaufdiagramm | ||
*Ist eine Sprache zur Modellierung objektorientierter Systeme | *Ist eine Sprache zur Modellierung ''objektorientierter Systeme'' | ||
*Beinhaltet verschiedene Diagrammtypen unterteilt in zwei Hauptgruppen: Struktur- und Verhaltensdiagramme | *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== | ==Quellen== | ||
Zeile 51: | Zeile 61: | ||
#https://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm | #https://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm | ||
#https://de.wikipedia.org/wiki/Unified_Modeling_Language#Diagramme | #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
- 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
- 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
- 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