Projektorganisation und Management in der Software Entwicklung
Sommersemester 2001
Prof. Dr. Manfred Broy

Bereich:  Informatik I, Vorlesung: 2 Std.

Zeit und Ort der Vorlesung:  Mittwoch 8:25-10:00 Uhr, Hörsaal N1179
Beginn:  Mittwoch, 25. April 2001

Sprechstunde:  Mittwoch 11:00 - 12:00 Uhr im Büro 2556 (in der Vorlesungszeit)

Hörerkreis:  Studenten der Informatik im Studiengang Bachelor und im Studiengang Diplom nach dem Vordiplom
Empfehlenswert für:   Hauptfach und Nebenfach Informatik

Zeit und Ort der Zentralübung:  Freitag 9:00-12:00 Uhr, Raum 0602, vierzehntägig
Beginn:   Freitag, 4. Mai 2001
Übungsleitung:  Herbert Ehler und Bernhard Schätz
Klausur: bei Bedarf

Die Aufgabenblätter für die Zentralübung werden regelmäßig in der Vorlesung verteilt. Es ist unverzichtbar, sich mit den Aufgaben auseinanderzusetzen, um sich den Vorlesungsstoff zu erarbeiten. Für Fragen stehen die Übungsleiter nach der Zentralübung zur Verfügung. Bei Bedarf werden in der Vorlesung auch Arbeits- und Merkblätter ausgeteilt.

Inhalt:
Die Vorlesung vermittelt  die grundlegenden Techniken und Methoden der Projektorganisation und des Projektmanagements für die Entwicklung großer Softwaresysteme.

1 GRUNDSÄTZLICHES ZUM MANAGEMENT IM SOFTWARE ENGINEERING

   1.1 Management im Software Engineering und seine Bedeutung
   1.2 Zielsetzung des Managements im Software Engineerings
   1.3 Aufgaben der Projektorganisation und des Managements
   1.4 Planung im Entwicklungsprozeß
   1.5 Unternehmensführung und -planung

2 VORGEHEN BEIM SOFTWARE ENGINEERING

   2.1 Projektphasen und Systemzergliederung
          2.1.1 Phasen der Systementwicklung
          2.1.2 Systemzergliederung und Projektgliederung
   2.2 Das Phasenmodell
          2.2.1 Problem- und Systemanalyse
          2.2.2 Systementwurf
          2.2.3 Implementierung
          2.2.4 Modifikation, Anpassung und Weiterentwicklung
          2.2.5 Allgemeine Bemerkungen zur Organisation der Arbeit in Phasen
   2.3 Bewertung der Vorgehensmodelle aus Sicht des Projektmanagements und der Projektorganisation
          2.3.1 Phasenmodelle, Wasserfallmodell
          2.3.2 Spiralmodell: Der Prototypansatz
          2.3.3 Inkrementelles Vorgehensmodell
          2.3.4 Experimentelles und exploratives Prototyping
          2.3.5 Allgemeine Bemerkungen zur Wahl des Vorgehensmodells

3 ORGANISATION

   3.1 Grundorganisationsformen
          3.1.1 Linienorganisation
          3.1.2 Stab-Linienorganisation
          3.1.3 Matrixorganisation
   3.2 Organisation von Projektteams
          3.2.1 Rollen im Projekt
          3.2.2 Grundsätze der Teamorganisation
          3.2.3 Rollen im Team
          3.2.4 Führungsaufgaben
          3.2.5 Chefprogrammiererorganisation

4 PROJEKTMANAGEMENT - VORBEREITUNG

  4.1 Projektinitierung
          4.1.1 Projektidee
          4.1.2 Projektbeantragung/akquisition, und -genehmigung/beauftragung
   4.2 Projekt- und Arbeitsplanung
          4.2.1 Arbeitsbeschreibung (Projektbeschreibung)
          4.2.2 Tätigkeitsliste
          4.2.3 Meilensteinliste
          4.2.4 Projektstrukturplan
   4.3 Zeit- und Kostenschätzung
          4.3.1 Grundsätzliches zur Zeit- und Kostenschätzung
          4.3.2 Produktivität in der Softwarentwicklung
          4.3.3 Das modifizierte Aron-Modell und das Cocomo-Modell
          4.3.4 Vergleich mit Einzelangaben aus der Literatur
          4.3.5 Function Points
          4.3.6 Aktivitätsorientierte Aufwandsschätzung
   4.4 Kritische Einflußfaktoren auf die Projektkosten
   4.5 Rechtliche Aspekte - Vertragsgestaltung

5 PROJEKTMANAGEMENT -  PLANUNG UND DURCHFÜHRUNG

   5.1 Planungstechniken
          5.1.1 Betriebsmitteleinsatzpläne und Terminpläne
          5.1.2 Netzplantechnik
   5.2 Fortschrittskontrolle
          5.2.1 Allgemeine Prinzipien der Fortschrittskontrolle
          5.2.2 Monatliche Fortschrittsberichte
          5.2.3 Regelmäßige (wöchentliche) Projektbesprechungen
   5.3 Kostenerfassung
   5.4 Änderungskontrolle
   5.5 Fehlermanagement
          5.5.1 Filterung der Fehlermeldungen
          5.5.2 Fehlerlokalisierung
          5.5.3 Fehlerkorrekturen
          5.5.4 Fehlerbehebungskontrolle
   5.6 Konfigurationskontrolle
   5.7 Qualitätssicherung
   5.8 Mittel der Kommunikation
          5.8.1 Organisationsformen der Kommunikation
          5.8.2 Reviews
          5.8.3 Kommunikationsinfrastruktur

6 PROJEKTMANAGEMENT IN DEN ENTWICKLUNGSPHASENE

   6.1 Systemanalyse - Requirements Engineering
          6.1.1 Qualitätsmerkmale
          6.1.2 Aktive Qualitätssicherung
          6.1.3 Systemanforderungen Einzelaufgaben
          6.1.4 Passive Qualitätssicherung: Validierung
   6.2 Systementwurf
          6.2.1 Qulitätsmerkmale einer Softwarearchitektur
          6.2.2 Aktive Qualitätssicherung
          6.2.3 Passive Qualitätssicherung
   6.3 Implementierung
          6.3.1 Qualitätsmerkmale
          6.3.2 Aktive Qualitätssicherung: Zur Codierdisziplin
          6.3.3 Qualitätssicherung: Verifikation, Inspektion, Review, Test und Leistungsnachweis
          6.3.4 Codeinspektion und Code-Reviews
          6.3.5 Testen
   6.4 Auslieferung, Systeminstellation, Wartung
          6.4.1 Phasen bis zur Auslieferung
          6.4.2 Aufwandsabschätzungen
          6.4.3 Wartung
   6.5 Fehlerbehandlung und Qualitätssicherung
          6.5.1 Fehler- und Aufwandsabschätzungen
          6.5.2 Wartung

7 BEWERTUNG VON SOFTWARE UND ENTWICKLUNGSPROZEß

   7.1 Metriken
          7.1.1 Zu messende Merkmale von Software
          7.1.2 Ausgewählte Metriken
   7.2 Werkzeuge im Softwareentwurf
   7.3 Implementierungsplattform
   7.4 Softwarereifegradmodelle
   7.5 Best Practice

8 PROJEKTÜBERGREIFENDE MANAGEMENTAUFGABEN

   8.1 Managementbewertung unterschiedlicher Programmieransätze
   8.2 Unternehmensweite Softwarestrategien
   8.3 Legacy Software
          8.3.1 Klassifizierung von Legacy Software
          8.3.2 Entscheidungsfindung
          8.3.3 Technische Ansätze: Reengineering, Reverse Engineering
   8.4 Reengineering  - Reverse Engineering
   8.5 Betrieb von Softwaresystemen

9 PRINZIPIEN UND ERFOLGSFAKTOREN IN DER PROJEKTORGANISATION

   9.1 Prozeßorientierung
   9.2 Dokumentation
   9.3 Modularisierung und Wiederverwendbarkeit
   9.4 Strategische Erfolgsfaktoren


Herbert Ehler, 25.4.2001