12. Projektmanagement Softwaretechnik (CNAM) Wintersemester 2009 / 2010 Prof. Dr. Bernhard Humm Hochschule Darmstadt, FB Informatik 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Einordnung in den gesamten Kurs 1. Einführung 2. Vorgehensmodelle 3. Analyse: Anwendungsfälle 4. Analyse: Datenmodell 5. Analyse: Dialoge 6. Design: Architektur-Grundlagen 7. Design: Referenzarchitektur betriebliche Informationssysteme 8. Design: Querschnittsthemen und Muster 9. Programmierung, Konfigurationsmanagement 10.Test, Einführung, Qualitätsmanagement 11. Projektmanagement 2 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit und Kontrollfragen
Softwareprojekte sind schwierig und oft scheitern sie Typ Succeeded : Projekt wurde in time, in budget beendet. Und zwar mit allen urprünglich vorgesehenen Funktionen. Typ: Failed : Projekt wurde während der Entwicklung abgebrochen und nicht produktiv. Typ Challenged : Projekt wurde produktiv, aber mit über Budget, über Termin und mit weniger Funktionen als spezifiziert. Amerikanische Unternehmen haben 1995 schätzungsweise 81 Mrd. USD für gescheiterte Projekte ( failed ) ausgegeben Quelle: EXTREME CHAOS Report 2001 der Standish Group www.standishgroup.com Untersucht wurden ca. 30.000 Applikationen 4 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Häufige Ursache für das Scheitern von Projekten ist mangelhafte Projektmanagement-Kompetenz 5 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Vom Wert der Zahlen Was man nicht misst, das kann man nicht steuern. Tom de Marco, Controlling Software Projects, 1982. Aber: Not everything that counts can be counted, and not everything that can be counted counts. Albert Einstein 6 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit und Kontrollfragen
Beispielprojekt Reiseveranstalter: Customer Relationship Management Steckbrief: Zeitraum: 11/2001 9/2002 Gesamtaufwand: 7,5 BJ Standard-Software für Beschwerdemanagement Technik: C++, Cobol, DB2 unter MVS Herausforderungen: Kunden-DB als Integrations-Plattform für CRM-Anwendungen Erste produktive Stufe 4/2002 Kooperation von 4 Partnern: Reiseveranstalter, Produkthersteller, Berater, Integrator 8 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Lösung: Konsequente Stufung und inkrementelles Vorgehen Parallelisierung Fachkonzeption parallel zur Plattform- Entwicklung Inkrementelles Vorgehen Zentrale Plattform- Architektur sofort implementieren Standard- Installation für technischen Durchstich Stufung Minimalstufe im April, um fachlich zwingenden Termin zu halten 9 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit und Kontrollfragen
Regelkreis der Projektdurchführung Projektschätzung Projektcontrolling Projektplanung Erstellen Soll-Vorgaben Kontrolle und Soll-Ist-Vergleiche Steuernde Maßnahmen Erfassung der Ist-Werte Projektdurchführung 11 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit und Kontrollfragen
Projektschätzung im Regelkreis der Projektdurchführung Projektschätzung Projektcontrolling Projektplanung Erstellen Soll-Vorgaben Kontrolle und Soll-Ist-Vergleiche Steuernde Maßnahmen Erfassung der Ist-Werte Projektdurchführung 13 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Wir unterscheiden Bottom-Up und Top-Down Schätzverfahen Bottom-Up Top-Down 1?? 2 FSM Σ # Fenster # Ziegel Spezifikation Umsetzung 14 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010 f (x) Quelle: S. Frohnhoff, Capgemini sd&m AG: Aufwandsschätzung und Projektkalkulation
Als erster Anhaltspunkt für Teamgröße und Projektlaufzeit dient Brooks Faustformel Optimale Teamgröße = Aufwand in BM Quelle: S. Frohnhoff, Capgemini sd&m AG: Aufwandsschätzung und Projektkalkulation 15 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Die Aufwandsschätzung wird durch ein Mitarbeitergebirge plausibilisiert Den Projektablauf mit geschätzter Dauer und Teamgröße skizzieren Fläche ausrechnen hier: 30 Zeitmonate (ZtM) 1 ZtM = 0,8 BM wegen Feiertagen, Fortbildung, Krankheit, Meetings, etc. Anzahl Mitarbeiter 6 5 4 Hier ergibt die Umrechnung von ZtM auf BM: 30 * 0,8 = 24 BM Passt das zur Aufwandsschätzung? 3 2 1 0 Jun Jul Aug Sep Okt Nov Dez Quelle: S. Frohnhoff, Capgemini sd&m AG: Aufwandsschätzung und Projektkalkulation 16 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Aus dem Mitarbeitergebirge und dem Gesamtaufwand kann die Projektdauer ermittelt werden In diesem Beispiel wurde der Gesamtaufwand von 104 BM auf 14 Monate verteilt: Maximum 11 Mitarbeiter, im Schnitt 7,4 Mitarbeiter Teamaufbau und maximale Teamgröße sind vernünftig. Anzahl MA 12 10 8 6 4 Aufwand [BM] (10/12) kumulierter Aufwand 2 0 M J J A S O N D J F M A M J Anzahl MA 5 8 9 10 11 11 11 11 11 10 10 10 5 2 4,2 6,5 7,3 8,6 9,4 9,4 9,4 9,4 9,4 8,5 8,5 8,1 3,9 1,7 4,2 11 18 27 36 45 55 64 74 82 91 99 103 104 Quelle: S. Frohnhoff, Capgemini sd&m AG: Aufwandsschätzung und Projektkalkulation 17 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Erweiterte Use-Case-Point Schätzmethodik Quelle: S. Frohnhoff, Capgemini sd&m AG: Aufwandsschätzung und Projektkalkulation Gesamtaufwand über alle Phasen M-Faktor 0,425 1,7 x T-Faktor 0,6 1,3 x Faktor aus Erfahrungswerten, ca. 20-40 Bh/UCP Produktivitätsfaktor (PF) Use Case Points = Bereinigte Use Case Points Σ Use Case Gewichte + Σ Aktoren Gewichte Use Case Auftrag verwalten Anzahl Steps 8 Use Case Gewicht 15 Aktor Stammdaten Typ Nachbarsystem (API) Aktoren Gewicht 1 Kunde verwalten Produkt verwalten... 2 6... 5 10... Geschäftspartner Händler... Nachbarsystem (Protokoll) Benutzer-Interface... 2 3... ABC Individuelle Analyse Berechnung nach Standard-Metrik (einfach, mittel, komplex) Berechnung nach firmeneigener Metrik 18 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit und Kontrollfragen
Planung im Regelkreis der Projektdurchführung Projektschätzung Projektcontrolling Projektplanung Erstellen Soll-Vorgaben Kontrolle und Soll-Ist-Vergleiche Steuernde Maßnahmen Erfassung der Ist-Werte Projektdurchführung 20 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Projektplanung Die Projektplanung gibt Antworten auf die folgenden sechs W-Fragen: WARUM WAS WANN DURCH WEN WOMIT WIE Veranlassung und Projektziele, Motivation die zurchzführenden Aufgaben die geplanten Termine Personen und ihre Verantwortlichkeiten die zur Verfügung stehenden Mittel (Geld, Geräte, Software...) das Vorgehen und die Maßnahmen zur Sicherstellung des Projekterfolgs 21 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
WAS: Die Aufgaben im Projekt können auf der Basis der Stückliste der Schätzung erstellt werden Werkzeug: MS Project 22 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
DURCH WEN: Den Aufgaben werden Team-Mitglieder zugeordnet Ressource = Mitarbeiter Material 23 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
WANN: Die Aufgaben und Meilensteine werden auf die Zeitachse umgebrochen (Gantt-Diagramm) Aufgabe Meilenstein (Zwischenziel) 24 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit und Kontrollfragen
Controlling im Regelkreis der Projektdurchführung Projektschätzung Projektcontrolling Projektplanung Erstellen Soll-Vorgaben Kontrolle und Soll-Ist-Vergleiche Steuernde Maßnahmen Erfassung der Ist-Werte Projektdurchführung 26 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Steuerung und Unschärfe Quelle: G. Starke: Effektive Softwarearchitekturen, Hanser; 2002 27 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Soll-Ist-Vergleich: Vergleich der tatsächlichen Projektaufwände mit dem Plan Soll-Aufwand Soll-Ist-Vergleich Ist-Aufwand 28 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Darstellung verbrauchte Aufwände / Zeit Interpretation der berichteten Zahlen Berichtete Werte Interpretation 1: Arbeit schneller als gedacht Interpretation 2: Aufwandsüberschreitung Interpretation 3: Termin/Aufwandsüberschreitung 29 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Restaufwände als Zusatzinformation Zahlen für die verbrauchten Aufwände genügen nicht Fertigstellungsgrad oder Restaufwände erforderlich Fertigstellungsgrad Anteil der fertig gestellten Funktionalität Restaufwände = Aufwände bis zur Fertigstellung Übliches Mittel: Schätzung der Restaufwände, dann Fertigstellungsgrad = Erbrachte Aufwände Erbrachte Aufwände + Restaufwände Restaufwände zur Prognose des Endetermins und der erwarteten Kosten 30 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Beispiel für Restaufwandsschätzung Querschnittsaufgaben Aufwand Aufwand Aufwand Aufwand Schätzung durchgeführt von... erbracht Plan Rest (gesch.) Differenz 1 Workshop mit der Betriebsführung zum Thema DB-Zugriff 5 5 0 0 2 Datenzugriffsschicht für NOF-DB: OR-Mapping 10 8 0-2 3 Datenzugriffsschicht für KundA-DB (Kundeninfo): Lesen und Suchen 0 10 10 0 4 Datenzugriffsschicht für App-Server (DS): Lesen und Suchen 3 3 10-10 5 Datenzugriffsschicht für Schlüsseltabellen (vgl Spez. Seite 123) 8 10 0 2 6 Dokumentation des Datenbankzugriffs im Betriebshandbuch 10 10 0 0 7 Spezifikationsmeeting: Querschnittsthemen 8 email versendung im Notfall 20 15 2-7 9 automatische ISDN Nummernerkennung 5 5 0 0 10 Checkout der Versicherungsdokumente 3 3 0 0 11 Checkin der Versicherungsdokumente 10 10 0 0 12 Suchfunktion auf den Versicherungsdokumenten (Volltextsuche) 15 15 10-10 13 Berechtigungsfunktionen für Vertriebsbeauftragte 17 10 2-9 14 Logging, Tracing und Audittrailing 5 10 2 3 15 Querschnittliche Fehlerbehandlung, Protokollierung, Anschluss an Tivoli 15 20 5 0 16 Dynamisches Menü, Menüaufbau, Einbau des MX-Produktes 2 5 2 1 17 Aktualisierter Linkverfolger 15 20 0 5 18 Vorbelegungsfunktion für Eingabefelder, Anschluss Dialoggedächtnis 5 3 0-2 ## 0 Summe: 148 162 43-29 Fertigstellungsgrad = 148 148 + 43 = 77 % 31 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit und Kontrollfragen
Projektorganisation Allgemeine Projektorganisation Projektmanager Projektleiter Fachlicher Chefdesigner Technischer Chefdesigner Bündelung der Rollen schlanke Projektorganisation Bei mittleren Projekten: Fachlicher Chefdesigner = Techn. Chefdesigner Qualitätsbeauftragter ist Teilzeitaufgabe Bei kleinen Projekten zusätzlich: Keine Teilprojekte Chefdesign und Projektleitung sind Teilzeitaufgaben Querschnittsrollen unabhängig vom Stufenschnitt Teilprojekt 1 Mitarbeiter Qualitäts- Beauftragter Teilprojektleiter... Mitarbeiter Teilprojekt n Querschnittsthemen werden auf Ebene des Gesamtprojektes besetzt Zu den querschnittlichen Themen (z.b. Design) werden in den Teilprojekten Ansprechpartner benannt Quelle: Capgemini sd&m AG 33 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
So viele Meetings wie nötig, aber nicht mehr Teilnehmer Meeting Periode Kunde PM PL FCD TCD QB TPL Team Lenkungsausschuss 4-8 wöchig Projektmanagement Meeting 2/Monat ( ) ( ) ( ) Design-Runde extern 2 4/Monat Design-Runde intern 2 4/Monat ( ) Gesamtprojekt-Meeting 2 6/Jahr Teilprojekt-Meeting wöchentlich Dauer typisch 2 Stunden, Teilprojektmeeting 1 Stunde Nimmt teil ( ) Nimmt nur bei Bedarf teil Quelle: Capgemini sd&m AG 34 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Agenda Motivation Beispiel Übersicht Schätzung Planung Controlling Organisation Fazit Fazit und und Kontrollfragen
Brooks' Law: Adding manpower to a late software project makes it later Der Mann-Monat als Maßstab für den Umfang des Arbeitsaufwandes ist ein gefährlicher und irreführender Mythos. Der Begriff will uns glauben machen, Bearbeiter und Monate seien austauschbare Faktoren Fred Brooks in Vom Mythos des Mann-Monats Eine maximale Austauschbarkeit ist bestenfalls bei vollständig unterteilbaren Aufgaben vorstellbar. Das müssen Aufgaben sein, bei denen kein Informationsaustausch notwendig ist, wie etwa die Ernte von Weizen. Viele Aufgaben sind dagegen unteilbar und können nur in einer bestimmten Reihenfolge von genau einer Person durchgeführt werden, zum Beispiel das Austragen eines Kindes. Bei Softwareprojekten haben wir es üblicherweise mit bedingt unterteilbaren Aufgaben, verbunden mit einer komplexen Kommunikationsstruktur, zu tun. Der Aufwand einer Aufgabe steigt also mit der Anzahl der Bearbeiter, die Informationen austauschen müssen. 36 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Fazit Projektmanagement erfordert viel Erfahrung Zahlenmaterial ist wichtig, aber: Trau keiner Statistik, die Du nicht selbst gefälscht hast (Winston Churchill) Einschätzung zum Projektstand aus vielen Quellen beziehen Aktives Lenken des Projektes erfordert Souveränität Weitere wichtige Themen des Projektmanagements (z.t. in anderen Vorlesungen behandelt): Auswahl Vorgehensmodell Risiko-Managment 37 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010
Kontrollfragen Wie funktioniert der Regelkreis der Projektdurchführung? Wie werden Projektaufwände typischerweise geschätzt? Wie können Projektaufwände plausibilisiert werden? Welche Aufgaben umfasst die Projektplanung? Was ist ein Gantt-Diagramm? Was ist ein Meilenstein? Was versteht man unter Controlling? Wie wird ein Soll-Ist-Vergleich durchgeführt? Wozu werden Restaufwandsschätzungen durchgeführt? 38 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Softwaretechnik (CNAM), WS 09/10. 26.1.2010