17
Software-Technik „Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige Entwicklung und Anwendung von umfangreichen Software- Systemen. Zielorientiert bedeutet die Berücksichtigung z.B. von Kosten, Zeit, Qualität.“, vgl. H. Balzert: Lehrbuch der

Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Embed Size (px)

Citation preview

Page 1: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Software-Technik

„Zielorientierte Bereitstellung und systematische

Verwendung von Prinzipien, Methoden und

Werkzeugen für die arbeitsteilige, ingenieurmäßige

Entwicklung und Anwendung von umfangreichen

Software-Systemen. Zielorientiert bedeutet die

Berücksichtigung z.B. von Kosten, Zeit, Qualität.“, vgl. H. Balzert: Lehrbuch der Software-Technik, 2000

Page 2: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

PrinzipienPrinzipien

Methoden

VorgehensweisenVorgehensweisen KonzepteKonzepte

SchritteSchritte RegelnRegeln BeispieleBeispiele

NotationenNotationen

GrafikGrafik TextText

Methodenkomponenten

vgl. H. Balzert: Lehrbuch der Software-Technik, 2000

Page 3: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Wissenschaftliche Prinzipien

HierarchisierungHierarchisierung

ModularisierungModularisierung

StrukturierungStrukturierung

Abstraktion

Page 4: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Prinzip => Vorgehensweise

Vorgehensweisen zeigen den Weg auf den man gehen soll, sie stellen eine Gebrauchs-anweisung für Prinzipien dar.

Beispiel:

Ein Programm wird unter Anwendung der Strukturierung erstellt, indem nur Kontrollstrukturen wie Sequenz, Auswahl und Wiederholung verwendet werden

Page 5: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Vorgehensweise => Verfahren

Verfahren sind nun konkrete Vorschriften wie die empfohlene Vorgehensweisen umgesetzt werden soll.

Beispiel:

Die Verwendung der Kontrollstrukturen: begin-end, if-then-else, repeat-until, etc. sind konkrete Verfahren das Prinzip der strukturierten Vorgehensweise in PASCAL umzusetzen.

Page 6: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Konzepte => Notation

Zur Beschreibung von Konzepten stehen unterschiedliche Notationen zur Verfügung. Die Informationen werden durch Symbole dargestellt.

Beispiel:

Die Kontrollstrukturen der Wiederholung wird in Form eines Struktogramms dargestellt.

Page 7: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Struktogramm(Mehrfachauswahl)

Ausdruck

default

Anweisung(en)

Fall 1Fall 2Anw. 1

Anw. 3Anw. 2 Fall 3 Ausnahme-

Anweisungen

Page 8: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Verfahren => Werkzeuge

Werkzeuge erleichtern die praktische Umsetzung, Anwendung und Überprüfung der gewünschten Methoden und Verfahren.

Beispiel:

Automatische Überprüfung des Quellcodes bei der strukturierten Programmierung das keine Sprungbefehle verwendet werden.

Page 9: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Lebenszyklusphasen

• Planungs- oder Machbarkeitsphase

• Definitions- oder Anforderungsphase

• Entwurfs- oder Designphase

• Implementierungs- / Integrationsphase

• Auslieferungs- und Abnahmephase

• Wartungs- und Pflegephase

Page 10: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Die Planungsphase

• Durchführbarkeits- /Machbarkeitsstudien

Lastenheft (grobes Pflichtenheft)

Glossar

Projektkalkulation

Projektplan

Page 11: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Die Definitionsphase

• Anforderungsanalyse und Verabschiedung der Anforderungen.

Erweitertes Glossar

Pflichtenheft

Prototyp oder Pilotsystem

Erste Version des Benutzerhandbuches

Page 12: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Die Designphase

• Rand- und Umgebungsbedingungen definieren und deren Einflussgrößen konzipieren

Softwarearchitektur

Spezifikation der Systemkomponenten

Page 13: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Implementierungsphase

• Programmieren im Kleinen

• Datenstrukturen und Algorithmen

• Dokumentation der Implementierung

• Performancedokumentation

• Testen und VerifizierenQuell- und ObjektcodeTest- und Prüfprotokolle

Page 14: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Abnahmephase

• Übergabe der SW und Abnahmetest

• Installation und Schulung

• Inbetriebnahme

Gesamtdokumentation

Abnahmeprotokoll

Einführungsprotokoll

Page 15: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Wartungsphase

• Stabilisierung / Korrektur

• Optimierung / Leistungsverbesserung

• Anpassung / Änderung

• Erweiterung

vgl. H. Sneed, Softwarewartung, 1988 in: H. Balzert: Lehrbuch der Software-Technik, 2000

Page 16: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

WasserfallmodellMachbarkeits-

studieAnforderungs-

analyseSystem- entwurf

Codieren & Modultest

Integrations- & Systemtest

Auslieferung & Installation

Wartung

Entwicklung

Entwicklung

Page 17: Software-Technik Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige

Evolutionäres Modell

Planung und erste Produktdefinition

Modifikation der Produktdefinition

Prototyperstellung

Validierung

PrototypOK?

Auslieferung und Einsatz

jaWartung

nein

vgl. H. Balzert: Lehrbuch der Software-Technik, 2000