Präsentation herunterladen
Veröffentlicht von:Lukas Weisbeck Geändert vor über 9 Jahren
1
Software Engineering Strukturierter Entwurf
Dipl. Ing. Päd. Huwaldt
2
Gliederung Einführung Grundelemente Modulhierarchie Unterprogramme
Entwurf und SA Entwurf und Programmierung Vorgehensweise Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
3
Einführung Zielsetzung beim Softwareentwurf ist die Sicherstellung der Korrektheit, Zweckmäßigkeit, Effizienz, Testbarkeit, Änderbarkeit, Erweiterbarkeit, etc. der zu erstellenden Software. Modularisierung hat das Ziel ein System in in sich abgeschlossene Einheiten zu zerlegen. Diese Einheiten sollen einzeln entwickelt, ausgetauscht, verändert, hinzugefügt, ... werden können, ohne dass andere Teile des Gesamtsystems dadurch beeinflusst werden! Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
4
Modul Ein Modul ist eine Sammlung von Algorithmen und Daten bzw. Datenstrukturen zur Bearbeitung einer in sich abgeschlossenen Aufgabe. Die Verwendung des Moduls (d.h. seine Integration in ein Programm-System) erfordert keine Kenntnis seines inneren Aufbaus und der konkreten Realisierung. Seine Korrektheit ist ohne Kenntnis seiner Einbettung in ein bestimmtes Programmsystem nachprüfbar. Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
5
Modul Ein Modul wird anhand folgender Kriterien gebildet: - Abgeschlossenheit (Aufgabe), - Geheimnisprinzip, - Datenabstraktion, Kapselung, - Schnittstellenspezifikation, - Schnittstellenminimalität, - Überschaubarkeit, Testbarkeit, etc. Programmiersprachen bieten zur Implementierung von Modulen unterschiedliche Konzepte: Paket, Unterprogramm, Funktion, Tasks, Unit usw. . Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
6
Strukturierter Entwurf
Methoden für die implementationsnahe Beschreibung von Softwaresystemen. Zielstellung ist die Definition der Programmstruktur und das Abgrenzen von Modulen. Eine weit verbreitete Technik ist das structured chart. Es ist zweckmäßig, die Funktionen der letzten Ebenen der SA als Module strukturiert zu modellieren. Modul Folge AB A B C D E Wiederholung von C Auswahl DE Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
7
Grundelemente A A A B A C A B C A B B Strukturierter Entwurf
Dipl. Ing. Päd. Huwaldt
8
Sequenz A B C D function A() { print (“B“); print (“C“); print (“D“); } Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
9
Alternative E F B if ( bedingung = wahr ) print (“E“); else print (“F“); Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
10
Wiederholung D G while ( anzahl < 2 ) { print (“G“); anzahl=anzahl+1; } Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
11
Modulhierarchie A B C D E F B G D Strukturierter Entwurf
Dipl. Ing. Päd. Huwaldt
12
Modulhierarchie A B C D E F G Strukturierter Entwurf
Dipl. Ing. Päd. Huwaldt
13
Modulhierarchie C F E G A B C D E F G anzahl < 2 bedingung
Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
14
Modulhierarchie A B C D E F G
function A() { if ( bedingung = wahr ) print (“E“); else print (“F“); print (“C“); while ( anzahl < 2 ) { print (“G“); anzahl=anzahl+1; } } C F E G anzahl < 2 bedingung Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
15
Modulhierarchie die 2. Unterprogramme A B C D E F B G D
Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
16
Unterprogramme A B C D E F B G D Strukturierter Entwurf
Dipl. Ing. Päd. Huwaldt
17
Unterprogramme G D E F B A B C D
function D() { while ( anzahl < 2 ) { print (“G“); anzahl=anzahl+1; } } function B() { if ( bedingung = wahr ) print (“E“); else print (“F“); } function A() { B(); print (“G“); D(); } G D E F B A B C D Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
18
SA und Entwurf Funktion: ermittle Kundenumsatz
Kundennummer Umsatz Rechnung Blatt- funktion 3.2 Funktion: ermittle Kundenumsatz IN: Kundennummer (Datenfluss) OUT: Umsatz (Datenfluss) Minispezifikation: suche Rechnungen für Kundennummer wiederhole für jede Rechnung lese Rechnungssumme aus Rechnung wenn Rechnung bezahlt Umsatz=Umsatz+Rechnungssumme gebe Umsatz auf Bildschirm aus Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
19
SA und Entwurf Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
ermittle Kunden- umsatz Kundennummer Umsatz Rechnung Blatt- funktion 3.2 Funktion: ermittle Kundenumsatz IN: Kundennummer (Datenfluss) OUT: Umsatz (Datenfluss) Minispezifikation: suche Rechnungen für Kundennummer wiederhole für jede Rechnung lese Rechnungssumme aus Rechnung wenn Rechnung bezahlt Umsatz=Umsatz+Rechnungssumme gebe Umsatz auf Bildschirm aus deinit Tabelle Rechnungen gebe Umsatz auf BS aus ermittle Kundenumsatz init Tabelle für jeden Datensatz Umsatz=0 open Rechnungen Satzzeiger auf 1 lese Datensatz wenn Kundennummer gleich und bezahlt Umsatz=Umsatz+1 Satzzeiger +1 Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
20
Der Weg zum Quellcode Drag & Drop generiert Strukturierter Entwurf
main init BS Aufbau Eingabeaufforderung Menüauswahl Ausleihe Rückgabe Statistik Stammdaten ende deinit 1 2 3 4 5 generiert Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
21
Die Strukturierte Programmierung
main init BS Aufbau Eingabeaufforderung Menüauswahl Ausleihe Rückgabe Statistik Stammdaten ende deinit 1 2 3 4 5 Mit F8 generiert Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
22
Vorgehensweise Strukturierte Analyse
Blattfunktionen mit Minispezifikationen Entwurf der Blattfunktionen als getrennte Module Entwurf der Anwendungsarchitektur / Hauptmodul Integration der einzelnen Module als Unterprogramme in das Hauptmodul Strukturierter Entwurf Dipl. Ing. Päd. Huwaldt
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.