Software-Entwicklung Gesamtschule Hungen Martin Müller-Fay
Was versteht man unter Softwareentwicklung? Unter Software-Entwicklung versteht man den Vorgang ein Computerprogramm zu erstellen
Schritte der Software-Entwicklung Kernprozesse der Software-Entwicklung Unterstützungsprozesse
Kernprozesse Planung Analyse Entwurf Programmierung Validierung und Verifikation
Planung Lastenheft Pflichtenheft Aufwandsabschätzung Festlegen der Vorgehensweise
Aufgabe Erstelle mit Deinem Nachbar ein Lastenheft für ein Programm zur Überprüfung der Versetzung in Klasse 12! 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.
Analyse Anforderungsanalyse Prototyp erstellen Prozessanalyse Erstellen eines Prozessmodells Systemanalyse
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
Entwurf Software-Architektur Top – Down Bottom – Up Visualisierug
Programmierung Codierung
Validierung und Verifikation Test der einzelnen Module Systemtest Belastungstests Benutzerfreundlichkeit Abnahmetest durch den Kunden
Unterstützungsprozesse Anforderungsmanagement Projektmanagement Qualitätsmanagement Konfigurationsmanagement Dokumentation
Anforderungsmanagement Erhebung von Anforderungen Kontrolle von Anforderungen Verwaltung von Anforderungen
Qualitätsmanagement Qualitätsplanung Qualitätslenkung Qualitätssicherung Qualitätsverbesserung
Projektmanagement Projektplanung Risikomanagemnent Projektsteuerung
Konfigurationsmanagement Versionsverwaltung Änderungsmanagement / Veränderungsmanagement Release Management Application Lifecycle Management
Dokumentation Handbuch Online-Hilfe Quellcode-Dokumentation Konfigurations-Dokumentation
Prozessmodelle Rational Unified Process
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
Beispiel
Wichtige Elemente (1) Operation Aufruf eines Unterprogramms Ein- bzw. Ausgabe
Wichtige Elemente (2) Verzweigung Übergangsstelle Grenzstelle, Start oder Ende
Wichtige Elemente (3) Ablauflinien Schleifenbeginn Schleifenende Quelle: http://schulen.freiepresse.de/gymnasiumolbernhau/informatik/algorithmen.htm#struktogramm
Struktogramm (Nassi und Shneiderman) Darstellung festgelegt in DIN 66261 Das Gesamtproblem wird in immer kleinere Teilprobleme zerlegt.
Beispiel
Wichtige Elemente (1) Operationen Eingabe Ausgabe
Wichtige Elemente (2) Schleife mit Überprüfung am Ende der Schleife Schleife mit Überprüfung am Beginn der Schleife
Wichtige Elemente (3) Einfache Verzweigung Mehrfache Verzweigung
Wichtige Elemente (4) Aufruf eines Unterprogramms Quelle: http://schulen.freiepresse.de/gymnasiumolbernhau/informatik/algorithmen.htm#struktogramm
Programmierung Martin Müller-Fay
Programmiersprachen
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.
Assembler Sprachen Programmiersprache, die der Maschinensprache sehr nahe ist.
Imperative Programmiersprachen „imperativ“ heißt das Befehlsfolgen codiert werden. Synonym: prozedurale Programmiersprache universelle Programmiersprache problemorientierte Programmiersprache
Imperative Programmiersprachen Gemeinsamkeiten Alphabet Namenskonzept Variablen Operatorpriorität und Typanpassung Anweisungen Unterprogrammkonzept Quelle: Duden Abiturwissen Informatik
Deklarative Sprachen Das Problem wird beschrieben, aber der Lösungsweg bleibt offen
Anweisungssprachen (1)
Normierte Programmierung Fest vorgegebene Verarbeitungsreihenfolge DIN 66220
Quellen Duden Basiswissen Schule – Abitur Informatik Wilson & Adyman: Pascal Wikipedia
Lastenheft Nach DIN 69905 die „vom Auftraggeber festgelegte Gesamtheit der Forderungen an die Lieferungen und Leistungen eines Auftragnehmers innerhalb eines Auftrages“.
Pflichtenheft Nach DIN 69905 die „vom Auftragnehmer erarbeiteten Realisierungsvorgaben aufgrund der Umsetzung des vom Auftraggeber vorgegebenen Lastenhefts“.
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.