Entwicklung, Anpassung und Einführung betrieblicher Anwendungssysteme. Beruht auf ingenieurmässigen Prinzipien und Methoden. Trägt Anforderungen an Funktionalität, Qualität, Entwicklungszeit und Kosten Rechnung
Teilgebiete
Entwicklung
Phasenmodell
Vorstudie
Analyse
Entwurf
Implementierung
Programmiersprachen
prozedurale Programmiersprachen
Maschinensprachen (1. Generation)
Maschinencode
Maschinenorientierte Sprachen (2. Generation)
Assembler
höhere prozedurale Sprachen (3. Generation)
Fortran
COBOL
BASIC
PASCAL
C
objektorientierte Programmiersprachen
reine objektorientierte Sprachen
Java
Smalltalk
Hybride objektorientierte Sprachen
C++
Visual Basic
höhere Programmiersprachen
Endbenutzersprachen (4. Generation)
SQL
Wissensorientierte Sprachen / KI-Sprachen
PROLOG
LISP
Scriptsprachen
Perl
PHP
Test
Einführung
Wartung
Ausserbetriebnahme
Prototyping
Prinzipien
Strukturierung
Abstraktion
Hirarchisierung
Modularisierung
Methoden
allgemein
Top-Down
ausgehend von einer groben Ebene immer detaillierter werdend
Bottom-Up
Detaillpunkte werden zusammengestellt, bis das Gesamtsystem beschrieben ist
speziell
Entwicklungsansatz
Phasenmodell
Methoden in den einzelnen Phasen
Werkzeuge, die die Methoden unterstützen
strukturierter Ansatz
Analyse
e.g. Structured System Analysis
Entwurf
e.g. structured Design
e.g. Pseudocode
Implementierung
e.g. Pseudocode
e.g. COBOL / C / BASIC
Test
e.g. Black-Box Test
e.g. Grenzwertanalyse
Objektorientierter Ansatz
Phasen
Analyse / Entwurf
UML
OOA (objektorientierte Analyse)
Beschreibung von Anwendungsfällen (Use Cases)
fachliches Modell
statisch
Klassendiagramm
Objektdiagramm
dynamisch
Sequenzdiagramm
Kollaborationsdiagramm
Zustandsdiagramm
Aktivitätendiagramm
UML
Prototyp Benutzeroberfläche
Dialog
Fenster
Dialogelemente
Menü
OOD (objektorientierter Entwurf)
kein Strukturbruch zur OOA
Entscheidung Softwarearchitektur
Drei-Schichten-Architektur
höhere schichten nehmen Leistungen von tieferen Schichten in Anspruch
GUI-Schicht
Nutzung einer GUI-Bibliothek
Klassendiagramm GUI-Schicht
Schnittstelle GUI->Fachkonzeptschicht
Sequenzdiagramme
Fachkonzept-Schicht
Container-Klassen : zusätzliche Klassen zur Verwaltung