Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

42
Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay

Transcript of Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Page 1: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Software-Entwicklung

Gesamtschule HungenMartin Müller-Fay

Page 2: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Was versteht man unter Softwareentwicklung?

• Unter Software-Entwicklung versteht man den Vorgang ein Computerprogramm zu erstellen

Page 3: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Schritte der Software-Entwicklung

• Kernprozesse der Software-Entwicklung• Unterstützungsprozesse

Page 4: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Kernprozesse

• Planung• Analyse• Entwurf• Programmierung• Validierung und Verifikation

Page 5: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Planung

• Lastenheft• Pflichtenheft• Aufwandsabschätzung• Festlegen der Vorgehensweise

Page 6: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Aufgabe

1. Erstelle mit Deinem Nachbar ein Lastenheft für ein Programm zur Überprüfung der Versetzung in Klasse 12!

2. Erweitere das Lastenheft zu einem Pflichtenheft. Wie soll das Lastenheft umgesetzt werden?

• Literatur:Verordnung über die Bildungsgänge und die Abiturprüfung in der gymnasialen Oberstufe und dem beruflichen Gymnasium (VOGO/BG) § 17 Abs. 2f.

Page 7: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Analyse

• Anforderungsanalyse• Prototyp erstellen• Prozessanalyse • Erstellen eines Prozessmodells• Systemanalyse

Page 8: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Aufgabe

• Zeichnet ein Diagramm, welches Eure Vorgehensweise bei der Ermittlung der Zulassung für die Jahrgangsstufe 12/13 darstellt.

• Versucht anhand des Diagramms herauszufinden, ob Ihr alles richtig verstanden habt.

• Behebt mögliche Fehler

Page 9: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Entwurf

• Software-Architektur• Top – Down• Bottom – Up• Visualisierug

Page 10: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Programmierung

• Codierung

Page 11: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Validierung und Verifikation

• Test der einzelnen Module• Systemtest• Belastungstests• Benutzerfreundlichkeit• Abnahmetest durch den Kunden

Page 12: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Unterstützungsprozesse

• Anforderungsmanagement• Projektmanagement• Qualitätsmanagement• Konfigurationsmanagement• Dokumentation

Page 13: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Anforderungsmanagement

• Erhebung von Anforderungen• Kontrolle von Anforderungen• Verwaltung von Anforderungen

Page 14: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Qualitätsmanagement

• Qualitätsplanung• Qualitätslenkung• Qualitätssicherung• Qualitätsverbesserung

Page 15: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Projektmanagement

• Projektplanung• Risikomanagemnent• Projektsteuerung

Page 16: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Konfigurationsmanagement

• Versionsverwaltung• Änderungsmanagement /

Veränderungsmanagement• Release Management• Application Lifecycle Management

Page 17: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Dokumentation

• Handbuch• Online-Hilfe• Quellcode-Dokumentation• Konfigurations-Dokumentation

Page 18: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Prozessmodelle Rational Unified Process

Page 19: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Programmablaufplan(Flussdiagramm)

• Darstellung festgelegt in DIN 66001 • Graphische Umsetzung eines Algorithmus

in einem Programm und beschreibt die Folge von Operationen zur Lösung einer Aufgabe.

Quelle: wikipedia.de

Page 20: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Beispiel

Page 21: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Wichtige Elemente (1)

• Operation

• Aufruf eines Unterprogramms

• Ein- bzw. Ausgabe

Page 22: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Wichtige Elemente (2)

• Verzweigung

Übergangsstelle

• Grenzstelle, Start oder Ende

Page 23: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Wichtige Elemente (3)

• Ablauflinien

• Schleifenbeginn

• Schleifenende

Quelle: http://schulen.freiepresse.de/gymnasiumolbernhau/informatik/algorithmen.htm#struktogramm

Page 24: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Struktogramm(Nassi und Shneiderman)

• Darstellung festgelegt in DIN 66261 • Das Gesamtproblem wird in immer kleinere

Teilprobleme zerlegt.

Page 25: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Beispiel

Page 26: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Wichtige Elemente (1)

• Operationen

• Eingabe

• Ausgabe

Page 27: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Wichtige Elemente (2)

• Schleife mit Überprüfung am Ende der Schleife

• Schleife mit Überprüfung am Beginn der Schleife

Page 28: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Wichtige Elemente (3)

• Einfache Verzweigung

• Mehrfache Verzweigung

Page 29: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Wichtige Elemente (4)

• Aufruf eines Unterprogramms

Quelle: http://schulen.freiepresse.de/gymnasiumolbernhau/informatik/algorithmen.htm#struktogramm

Page 30: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Programmierung

Martin Müller-Fay

Page 31: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Programmiersprachen

Page 32: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Maschinensprache

• Der Mikroprogrammspeicher enthält Schaltgruppen zur Ausführung bestimmter Befehle, die durch ein spezielles Bitmuster identifiziert werden.

• Die Menge aller Bitmuster, denen Befehle zugeordnet werden, bilden die Maschinensprache der jeweiligen informationsverabeitenden Anlage.

• Jede Folge von Maschinenbefehlen ist direkt ausführbar.

Page 33: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Assembler Sprachen

• Programmiersprache, die der Maschinensprache sehr nahe ist.

Page 34: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Imperative Programmiersprachen

• „imperativ“ heißt das Befehlsfolgen codiert werden.

• Synonym:– prozedurale Programmiersprache – universelle Programmiersprache – problemorientierte Programmiersprache

Page 35: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Imperative ProgrammiersprachenGemeinsamkeiten

• Alphabet• Namenskonzept• Variablen• Operatorpriorität und Typanpassung• Anweisungen• Unterprogrammkonzept

Quelle: Duden Abiturwissen Informatik

Page 36: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Deklarative Sprachen

• Das Problem wird beschrieben, aber der Lösungsweg bleibt offen

Page 37: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Anweisungssprachen (1)

Page 38: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Normierte Programmierung

• Fest vorgegebene Verarbeitungsreihenfolge• DIN 66220

Page 39: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Quellen

• Duden Basiswissen Schule – Abitur Informatik

• Wilson & Adyman: Pascal• Wikipedia

Page 40: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Lastenheft

• Nach DIN 69905 die „vom Auftraggeber festgelegte Gesamtheit der Forderungen an die Lieferungen und Leistungen eines Auftragnehmers innerhalb eines Auftrages“.

Page 41: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Pflichtenheft

• Nach DIN 69905 die „vom Auftragnehmer erarbeiteten Realisierungsvorgaben aufgrund der Umsetzung des vom Auftraggeber vorgegebenen Lastenhefts“.

Page 42: Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay.

Systemanalyse

• Beschreibung aller relevanten Systemelemente und deren Beziehungen zueinander Ziel ist ausgehend vom Ist-Modell zu planen. Die Unterschiede zwischen dem Ist- und diesem Soll-Modell zeigen was das Programm leisten soll.