Projektmanagement - Cosmopolitan University

Transcription

Projektmanagement - Cosmopolitan University
Vorlesung
Projektmanagement
Sommersemester 2006
Wolfgang Kowarschick
Fachhochschule Augsburg
Draft (29. Juni 2006)
2
Inhalt
1 Definitionen
1.1
5
Projekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6
1.1.1
Definition (von W. Kowarschick) . . . . . . . . . . . . .
6
1.1.2
Ziele . . . . . . . . . . . . . . . . . . . . . . . . . . . .
9
Funktionalität und Qualität sowie Strategische Ziele . . . 10
Zeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Kosten . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.1.3
1.2
1.3
Projektmanagement . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.1
Definition . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.2.2
Aufgaben des Projektmanagements . . . . . . . . . . . . 14
1.2.3
Zusammenfassung . . . . . . . . . . . . . . . . . . . . . 15
Projekterfolg . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.3.1
1.4
Ressourcen . . . . . . . . . . . . . . . . . . . . . . . . . 12
Wie vermeidet man einen Misserfolg? . . . . . . . . . . . 21
Vergleich von Projekten mittels Euro-Tagen . . . . . . . . . . . . 26
2 Projektverlauf
2.1
29
Verschiedene Phasenmodelle . . . . . . . . . . . . . . . . . . . . 31
2.1.1
Die Spezifikationsphase: Was soll gemacht werden? . . . 32
2.1.2
Designphase (Entwurfsphase) . . . . . . . . . . . . . . . 37
2.1.3
Fertigungsphase (Entwicklung) . . . . . . . . . . . . . . 45
2.1.4
Einführungsphase . . . . . . . . . . . . . . . . . . . . . . 46
2.1.5
Review . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.1.6
Die Nutzungs- und Aufarbeitungsphase . . . . . . . . . . 47
2.2
Wasserfall- und Spiralmodell . . . . . . . . . . . . . . . . . . . . 49
2.3
V-Modell XT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3
Draft (29. Juni 2006)
3 Schätzung
3.1
3.2
57
Die Schätzgrößen . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.1.1
Divide et Impera . . . . . . . . . . . . . . . . . . . . . . 59
3.1.2
Akzeptierbare Abweichungen . . . . . . . . . . . . . . . 60
Dreipunkt-Schätzung . . . . . . . . . . . . . . . . . . . . . . . . 62
3.2.1
Erwartungeswert und Standardabweichung . . . . . . . . 68
3.3
Zentraler Grenzwertsatz der Statistik . . . . . . . . . . . . . . . . 69
3.4
Schätzverfahren . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
3.5
3.4.1
Die Function-Point-Methode . . . . . . . . . . . . . . . . 71
3.4.2
COCOMO . . . . . . . . . . . . . . . . . . . . . . . . . 72
3.4.3
Die Güte von Schätzverfahren . . . . . . . . . . . . . . . 77
Was ist ein Personenmonat? . . . . . . . . . . . . . . . . . . . . 79
4 Planung
85
4.1
Projektpläne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
4.2
Grobplanung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
4.3
4.4
4.5
4.2.1
Tätigkeitensammlung . . . . . . . . . . . . . . . . . . . . 87
4.2.2
Work-Breakdown-Structure . . . . . . . . . . . . . . . . 88
Feinplanung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
4.3.1
Netzpläne . . . . . . . . . . . . . . . . . . . . . . . . . . 90
4.3.2
Balkendiagramme . . . . . . . . . . . . . . . . . . . . . 98
Ressourcen-Management . . . . . . . . . . . . . . . . . . . . . . 102
4.4.1
Personalplanung . . . . . . . . . . . . . . . . . . . . . . 102
4.4.2
Bedarfsplanung der Betriebsmittel . . . . . . . . . . . . . 104
4.4.3
Kostenplanung . . . . . . . . . . . . . . . . . . . . . . . 107
4.4.4
Kalender . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Projektkontrolle (Controlling) . . . . . . . . . . . . . . . . . . . 108
Draft (29. Juni 2006)
4
Kapitel 1
Definitionen
Fremdwörterduden (2001):
Projekt: Plan, Unternehmung, Entwurf, Vorhaben
managen: leiten, zustandebringen, geschickt bewerkstelligen, organisieren
Brockhaus (1991):
Projekt (lat. proiectum „das nach vorn Geworfene“):
geplante oder bereits begonnene Unternehmung, Vorhaben
Projektmanagement:
Gesamtheit der Planungs-, Leitungs- und Kontrollaktivitäten, die bei zeitlich
befristeten Vorhaben (d. h. Projekten) anfallen.
Oyen, Schlegel (1986):
Projekt (Frese 1980):
Projekte umfassen Aufgaben, die durch folgende Merkmale gekennzeichnet
sind:
– zeitliche Befristung
– Komplexität
– relative Neuartigkeit
Management (Rogers 1975, Terry 1961):
Planung, Organisation, Führung, Kontrolle der Aktivitäten im Hinblick auf
eine effiziente (besonders wirtschaftliche, wirksame) und ökonomische (wirtschaftlich sparsame) Zielerreichung (Rogers, 1975).
Management ist ein eindeutig identifizierbarer Prozess, bestehend aus den
Phasen Planung, Organisation, Durchführung, Kontrolle, der über den Einsatz von Mensch zur Formulierung und Erreichung von Zielen führt (Terry,
1961).
Projektmanagement (Schröder 1971):
Projektmanagement ist die verantwortliche Leitung der Planung, Projektierung, Durchführung und Kontrolle öffentlicher wie auch industrieller Vorhaben.
Kellner, Hedwig (1994):
Merkmale eines Projektes:
5
Draft (29. Juni 2006)
–
–
–
–
es ist ein einmaliges Vorhaben
es ist zeitlich begrenzt
es ist ein komplexes Vorhaben
es macht die Zusammenarbeit von Menschen aus unterschiedlichen
Fachgebieten notwendig
– es sind neuartige und unbekannte Probleme zu lösen
– es steht unter besonderem Risiko
– es hat ein eigenes Budget
– während der Projektarbeit stehen die Mitarbeiter und der Leiter unter
besonderem Druck
Projektmanagement:
alle Tätigkeiten, die das ausführende Arbeiten im Projekt erst ermöglichen
DIN 69901:
Projekt:
Vorhaben, das im Wesentlichen durch Einmaligkeit der Bedingungen in ihrer
Gesamtheit gekennzeichnet ist, wie z. B.
– Zielvorgabe
– zeitliche, finanzielle oder andere Bedingungen
– Abgrenzung gegenüber anderen Vorhaben
– projektspezifische Organisation
Projektmanagement (PM):
Gesamtheit von Führungsaufgaben, -organisation, -techniken und -mittel für
die Abwicklung eines Projektes.
1.1 Projekte
1.1.1 Definition (von W. Kowarschick)
Ein Projekt (englisch: Project) ist ein zeitlich begenztes, eigenständiges, komplexes Vorhaben mit klaren Vorgaben bezüglich Funktionalität und Qualität und mit
eigenem, meist begrenztem Budget.
Die Realisierung eines Projektes wird von einem Auftraggeber finanziert und einem Auftragnehmer übertragen. Der Auftragnehmer nimmt dazu ein Projektteam
und (anderere) geeignete Ressourcen zuhilfe.
Das Projektergebnis wird nach Projektende von Benutzern eingesetzt. Es kann
überdies Auswirkungen auf weitere Personen haben: die Betroffenen.
Auftraggeber, Auftragnehmer, Projektteam und Benutzer sind die so genannten
Projektbeteiligten. Im weiteren Sinne zählen auch die Betroffenen dazu.
Draft (29. Juni 2006)
6
– Ein Projekt ist ein einmaliges Vorhaben.
⇒ Neuartige, unbekannte Probleme sind zu lösen.
⇒ Großes Risiko im Vergleich zum Tagesgeschäft.
⇒ Risikomanagement ist die zweitwichtigste Aufgabe des Projektmanagements.
– Ein Projekt ist ein komplexes Vorhaben.
⇒ Verschiedene Techniken, Methoden und Spezialisten müssen eingesetzt
und koordiniert werden.
– Ein Projekt hat klare Vorgaben bzgl. Funktionalität und Qualität.
⇒ Der Auftraggeber entscheidet darüber was das Projektergebnis einmal
leisten soll (Funktionalität) und welche Güte es haben soll (Qualität);
der Auftragnehmer akzeptiert oder lehnt ab.
⇒ Am Ende ist entscheidbar, ob die Ziele erreicht oder verfehlt wurden.
– Ein Projekt ist zeitlich begrenzt.
⇒ Der Auftraggeber legt die Dauer fest; der Auftragnehmer akzeptiert
oder lehnt ab.
⇒ Es gibt definierte Start-, Zwischen- und Endtermine; diese werden vom
Auftragnehmer festgelegt; Meilensteine werden mit dem Auftraggeber
abgesprochen.
– Ein Projekt hat ein eigenes, begrenztes Budget.
⇒ Der Auftraggeber trägt die Kosten; der Auftragnehmer akzeptiert oder
lehnt ab.
⇒ Kosten und Nutzen müssen gegeneinander aufgewogen werden.
(die gilt sowohl für Auftraggeber als auch für Auftragnehmer und Benutzer – auch sollte das Projektergebnis nicht auf Kosten Unbeteiligter
gehen).
⇒ „Wer zahlt, schafft an.“ – Falsch!
Die Ziele müssen vorher schriftlich vereinbart werden; Änderungen an
den Zielen müssen ebenfalls schriftlich vereinbart werden. Von Anfang
an sollte bei der Finanzierung ein finanzieller Puffer für spätere Änderungswünsche eingeplant werden.
– Ein Projekt hat einen Auftraggeber und einen Auftragnehmer
⇒ Auftraggeber und Auftragnehmer einigen sich, unter Berücksichtigung der Wünsche der späteren Benutzer, über realistische Projektziele
(Funktionalität, Qualität, Projektdauer und Projektkosten) – Vorgaben
vom Auftraggeber; Vorschläge, Annahme oder Ablehnung durch Auftragnehmer.
7
Draft (29. Juni 2006)
– Ein Projekt wird von einem Projektteam realisiert.
⇒ Der Auftragnehmer wählt geeignete Mitarbeiter und insbesondere einen
geeigneten Projektleiter. Dieser sollte möglichst früh (in den allerersten
Projektphasen) an Projketdefinitionen beteiligt werden.
⇒ Ein großes Projekt kann in mehrere Teilprojekte mit eigenen Teams
und Teilprojektleitern untergliedert werden. Einen Gesamtprojektleiter
(Projektmanager) gibt es dennoch.
⇒ Mitarbeiterführung ist die wichtigste Aufgabe des Projektmanagements.
– Ein Projekt verbraucht Ressourcen (Material etc.).1
⇒ Der Auftragnehmer wählt geeignetes Material, Lizenzen, etc. um das
Projektziel, d. h. die Realisierung der Funktionalitäten in der geforderten Qualität unter Berücksichtigung der Zeit- und Kostenvorgaben, zu
erreichen.
⇒ Die Ressourcen müssen stets zur rechten Zeit in der richtigen Menge
am richtigen Ort sein.
– Das Projektergebnis wird nach Projektende von Benutzern eingesetzt
⇒ Die Wünsche des Benutzers müssen bei der Projektplanung berücksichtigt werden. Ein Projektergebnis, das nicht akzeptiert wird, ist selten für
den Auftraggeber von großem Nutzen.
⇒ Das Projektergebnis eines erfolgreichen Projektes sollte für alle Beteiligten von Nutzen sein: Auftraggeber, Auftragnehmer und Benutzer und
es sollte Betroffenen nicht schaden.
Zitat aus Informationweek, 7/99 „Inkompatibel, IT-Anbieter verstehen ihre Kunden nicht“, S. 37:
Unterschätzte Anwender: IT-Abteilungen wissen, dass die Zufriedenheit der internen Anwender und der Kunden für die Beurteilung
ihrer Leistung wichtig sind; die Hersteller halten die Meinung der
User für unerheblich.
Auf S. 40 im selben Artikel bewerten 350 Anwender die Benutzerfreundlichkeit der IT-Systeme (Rang 2, Vorjahr Rang 3) und den Feedback der Anwender im eigenen Betrieb (Rang 6, Vorjahr Rang 9) als
sehr wichtige Technikaspekte.
Die Hersteller sind ganz anderer Meinung: Rang 11 und Rang 15.
– Das Projektergebnis hat Auswirkungen auf Betroffene (z. B. Anwohner an
einem neuen Flughafen).
1
Von einem rein funktionalen Standpunkt aus gesehen, ist ein Mitarbeiter auch nur eine Ressource, die vom Projekt verbraucht wird (immerhin geht ein Teil seiner gesamten Lebenszeit
für das Projekt drauf). Gegenüber den Mitarbeitern sollte man zwischen Ressource und Personal allerdings tunlichst unterscheiden.
Draft (29. Juni 2006)
8
⇒ Die negativen Auswirkungen auf Betroffene müssen so minimal wie
möglich gehalten werden.
⇒ Prozesskosten, Entschädigungszahlungen etc. müssen berücksichtigt
werden.
1.1.2 Ziele
Ein Projekt verfolgt neben den vier vertraglich festgelegten Zielen Funktionalität,
Qualität, Kosten und Zeit normalerweise auch strategische Ziele, wie Verbesserung des Arbeitsablaufs, Steigerung der Mitarbeitermotivation oder der Kundenzufriedenheit. Diese Ziele können allerdings häufig weder präzise definiert werden noch ist es am Ende möglich, definitiv zu entscheiden, in welchem Maße sie
erreicht wurden. Das wesentliche strategische Ziel dürfte jedoch immer sein, dass
das Projektergebnis für alle Beteiligten in irgendeiner Form von Nutzen ist.
Jedes Projekt basiert auf zwei Ecksäulen: Ziele (was?) und Ressourcen (wie?).
Die formalen Ziele legt der Auftraggeber (in Abstimmung mit den Auftragnehmer) fest und die Ressourcen der Auftragnehmer (oft macht der Auftraggeber
allerdings auch bezüglich der Ressourcen Vorgaben). Beide Vertragsparteien verfolgen i. Allg. auch noch strategische Ziele mit einem Projekt.
Ressourcen
strategische
Ziele
strategische
Ziele
Auftragnehmer
Auftraggeber
Funktionalität
Qualität
Zeit
Projektziele
Kosten
Beispiele für Projekte:
– Asterix und Kleopatra: Bau eines Palastes für Cäsar (Goscinny and
Uderzo (1968))
– Ich baue ein Haus
– Falls erfolgreich: Folgeprojekt: Ich ziehe um
– Entwicklung eines elektronischen Aufsatzdienstes für mehrere bayerische Hochschulen
– Erstellung einer Multimediapräsentation für ein Unternehmen
9
Draft (29. Juni 2006)
Gegenbeispiele (Tagesgeschäfte):
–
–
–
–
Asterix kämpft gegen die Römer
Ich bereite das Frühstück, ich kaufe Lebensmittel ein
Elektronische Lieferung von Aufsätzen
Pressen von Multimedia-CD-Roms
Projekte basieren i. Allg. nicht auf dem Prinzip Hoffnung:
„Fangen wir mal an und sehen dann, ob was dabei rauskommt.“
(Ausnahme: Grundlagenforschungsprojekte)
⇒ Am Anfang müssen klare und erreichbare Ziele formuliert werden (Analyse,
Spezifikation, Pflichtenheft, evtl. Vorprojekte).
⇒ Am Ende muss entschieden werden können, inwieweit diese Ziele erreicht
wurden, d. h., inwieweit das Projekt erfolgreich war.
Die Ziele sollten einen konkreten Nutzen für den Auftraggeber mit sich bringen
(das gilt selbst für die Grundlagenforschung: das „Menschheitswissen“, das als
Basis für alle anderen Projekte dient, wird vermehrt).
Funktionalität und Qualität sowie Strategische Ziele
Spezifikation
Was soll im Projekt erreicht werden (Funktionalität), und von welcher Güte soll
das Ergebnis sein (Qualität). Strategische Ziele werden i. Allg. nicht formuliert.
Asterix und Kleopatra
– Funktionalität: Palast für Cäsar
– Qualität: rechtwinklige Stufen, Steine fallen nicht von der Decke, Türen
klemmen nicht, prunkvoll
– strategische Ziele: Nachweis, dass Ägypter nicht dekadent sind; Gewinn einer Wette
Auftraggeber und Auftragnehmer erwarten sich vom Projektergebnis einen Gewinn oder anderen Nutzen.
Das Projektergebnis sollte die gewünschte Funktionalität (und nur diese!) in der
gewünschten Qualität aufweisen.
⇒ ständige Überwachung des Funktionsumfangs
Draft (29. Juni 2006)
10
⇒ Qualitätstests
Um wirklich von Nutzen zu sein (d. h. Gewinn abzuwerfen), sollte das Projekt
nicht nur funktionierende, sondern auch qualitativ hochwertige Ergebnisse liefern. Gegenbeispiel Windows-Software: häufig viel Funktionalität in schlechter
Qualität. Gutes Marketing oder Monopol ⇒ trotzdem Gewinn.
Es gilt leider nicht „hohe Qualität ⇒ hoher Gewinn“. Oftmals wird der Gewinn
vergrößert mit der Verminderung der Qualität (z. B. CD-ROM heute meist ohne
Staubschutz, da billiger als mit Staubschutz; VHS war viel schlechter als Video
2000, aber dennoch erfolgreicher – erst SVHS reicht an die Qualität von Video
2000 heran).
Bei der Festlegung der Ziele müssen Auftraggeber und Auftragnehmer die Wünsche der späteren Benutzer berücksichtigen. Ein Produkt, das am Benutzer vorbeientwickelt wurde, wird sicherlich kein Erfolg. Das heißt, von Anfang an sollte
der Benutzer in die Projektplanung mit einbezogen werden!
Zeit
Spezifikation: Zeitplan
Auftraggeber: möchte nur begrenzte Zeit warten
(Asterix: genau 3 Monate)
Zeitplan und zur Verfügung stehende Zeit müssen in Einklang gebracht werden:
⇒ eventuelle Abstriche an Funktionalität/Qualität oder mehr Ressourcen
⇒ höhere Kosten
Reale Zeiten und Zeitplan müssen im Einklang gehalten werden:
⇒ ständige Überwachung des Zeitplanes
Auch geringe Zeitüberschreitungen haben evtl. Katastrophen zur Folge, z. B.,
wenn der Konkurrent schneller war oder wenn ein multimedialer Ausstellungskatalog erst nach der zugehörigen Ausstellung fertiggestellt wird oder wenn der
Projektleiter von Krokodilen gefressen wird.
Kosten
Spezifikation: Kostenschätzung
Auftraggeber: stellt i. Allg. nur begrenzte Mittel zur Verfügung
Kostenschätzung und zur Verfügung stehende Mittel müssen in Einklang gebracht
werden
⇒ ständige Überwachung des Budgets (Budgetüberschreitung hat evtl. Katastrophe wie z. B. Konkurs zur Folge)
11
Draft (29. Juni 2006)
Anmerkung
Nicht alle Auftraggeber erwarten die vollständige Erfüllung aller Projektziele.
Special-Effects-Firmen (SFX-Firmen), wie die Firmen ILM (Flubber, 4 Monate
Zeit) oder Digital Domain (Titanic, 25 Mio Dollar, Nachverhandlungen 40 Mio
Dollar ⇒ 4 Mio Dollar + 31 Mitarbeiter Verlust), müssen auf Verlangen der Hollywood Filmstudios entweder on time (d. h. im vorgegebenen Zeitraum) oder on
budget (d. h. im Rahmen des vorgegebenen Budgets) arbeiten (am besten natürlich
beides).
1.1.3 Ressourcen
Wesentlicher Projektbestandteil von Anfang an: der Ressourcenplan.
Es muss insbesondere abgeschätzt werden können, ob die Projektziele überhaupt
erreichbar sind.
Funktionalität/Qualität, Zeitplan und Kostenplan müssen mit Ressourcenplan in
Einklang gebracht werden.
Ressource „Mensch“:
Welche und wie viele Spezialisten werden benötigt?
Achtung: Jede Person ist für Ihr Arbeitsgebiet ein „Spezialist“, das gilt beispielsweise auch für einfache Schreibkräfte, Sklaven (Asterix) und „minderqualifizierte“ Mitarbeiter – in einem guten Team erbringt jede Person die maximale Leistung entsprechend ihren Fähigkeiten.
Ein Witz von einem unbekannten Autor bringt das sehr schön zum Ausdruck:
Bei einer Firma werden 5 Kannibalen als Sekretäre angestellt.
Bei der Begrüßung der Kannibalen sagt der Chef:
„Ihr könnt jetzt hier arbeiten, verdient gutes Geld und könnt zum
Essen in unsere Kantine gehen. Also lasst die anderen Mitarbeiter
in Ruhe.“
Die Kannibalen geloben, keine Kollegen zu belästigen.
Nach vier Wochen kommt der Chef wieder und sagt: „Ihr arbeitet
sehr gut. Nur uns fehlt seit gestern eine Putzfrau, wisst Ihr was aus
der geworden ist?“
Die Kannibalen antworten alle mit nein und schwören mit der Sache
nichts zu tun haben. Als der Chef wieder weg ist fragt der Boss
der Kannibalen: „Wer von euch Affen hat die Putzfrau gefressen?“
Meldet sich hinten der letzte ganz kleinlaut: „Ich war es.“
Sagt der Boss: „Du Idiot, wir ernähren uns seit vier Wochen von
Teamleitern, Abteilungsleitern und Projekt-Managern, damit keiner
etwas merkt und du Depp musst die Putzfrau fressen...!!!“
Draft (29. Juni 2006)
12
Die Mitarbeiterführung ist und bleibt die wesentliche Aufgabe eines jeden
Projektleiters/-managers.
Ressource „Hardware“:
Was für Maschinen, Geräte, Rechner, Steine (Asterix) etc. werden benötigt?
Ressource „Software“:
Was für Programme werden benötigt?
Ressource „Verbrauchsmaterial“
Steht benötigtes Büromaterial bereit? Gibt es eine „Kaffeekasse“ für die Verpflegung von Gästen? (Mitarbeiter verwalten ihre eigene Kaffeekasse). Und
so weiter.
Ressource „Informationen“:
Was für Informationsquellen (Bücher, Internet, Hotline, Archive) werden benötigt?
Ressource „Infrastruktur“:
Was für Räumlichkeiten, welcher Verwaltungsapparat, welche Wartungsverträge, welche Telekommunikationsmöglichkeiten (Videokonferenzing!) etc.
werden benötigt?
Ressource „Rechte“:
Für viele Multimediaobjekte müssen Lizenzgebühren gezahlt, d. h. Verwertungsrechte oder andere Rechte erworben werden.
„Unterauftragnehmer“:
Fremdfirmen, andere Abteilungen, Consultants etc. können als externe „Unterauftragnehmer“ zur Erfüllung der Projektziele beitragen.
Wenn irgendwelche Ressourcen zu den geplanten Kosten oder während des geplanten Zeitraums nicht zur Verfügung stehen, müssen eventuell Abstriche an den
formalen Funktionalität, Qualität, Zeit oder Kosten gemacht werden (an den strategischen Zielen werden i. Allg. keine Abstriche gemacht).
Ressourcenplan und realer Ressourcenverbrauch müssen stets im Einklang gehalten werden.
1.2 Projektmanagement
1.2.1 Definition
Unter Projektmanagement verstehe ich, ein Projekt hinsichtlich der Ecksäulen formale Ziele („Qualität und Funktionalität“, „Kosten“, „ Zeit“) und Ressourcen zu
13
Draft (29. Juni 2006)
führen, zu planen, zu organisieren und zu kontrollieren.
Zu diesem Zweck werden i. Allg. ein verantwortlicher (Gesamt-)Projektleiter und
eventuell mehrere Teilprojektleiter (d. h. Leiter von Teilprojekten) bestimmt.
1.2.2 Aufgaben des Projektmanagements
Die wichtigste Aufgabe eines Projektleiters ist die Menschenführung. Außerdem
muss er das Projekt planen und organisieren:
– Projektziele sind unter Beteiligung des (zukünftigen) Projektleiters frühzeitig zwischen Auftraggeber und Auftragnehmer abzustimmen und schriftlich
in verbindlicher Form (Vertrag) präzise festzuhalten. Änderung an den Projektzielen müssen ebenfalls stets schriflich in verbindlicher Form festgelegt
werden.
– Der Projektleiter muss die Spezifikation durch genaue Projektpläne (Kostenpläne, Zeitpläne, Ressourcenpläne, Aufgabenaufteilung etc.) absichern!
– Im laufenden Projekt muss die Einhaltung dieser Pläne fortwährend
kontrolliert werden, um frühzeitig Risiken zu erkennen, die zu echten Problemen werden:
• Werden die vereinbarten Funktionen (und nur diese!) von den Entwicklern in der vereinbarten Qualität erstellt (Qualitätstests)?
• Werden die Zeitpläne eingehalten?
Sind Zwischenergebnisse zu den erwarteten Terminen (Meilensteinen)
fertig?
• Werden die Kostenpläne eingehalten?
• Entwickelt sich der Ressourcenverbrauch wie geplant; werden die Ressourcen optimal eingesetzt?
Rechtzeitige Lieferungen der benötigten Hard- und Software, keine
Überschreitungen der gesetzten Limits, wie z. B. Rechenkontingente,
zufriedene Mitarbeiter (sehr wichtig, da unzufriedene Mitarbeiter sehr
teuer sind) etc.
– Nach Abschluss des Projektes weist der Projektleiter im Rahmen einer Projektabnahme nach, dass:
•
•
•
•
das Produkt alle geforderten Funktionen der Spezifikation enthält
das Produkt in der vereinbarten Qualität erstellt wurde
das Budget nicht überschritten wurde
die Termine eingehalten werden
Draft (29. Juni 2006)
14
Nach der Menschenführung ist die zweitwichtigste Aufgabe des Projektleiters,
Vorkehrungen für rechtzeitige und richtige Reaktionen bei Planabweichungen zu
treffen und bei allen Abweichungen dann auch rechtzeitig und richtig steuernd
einzugreifen (Risikomanagement).
Gäbe es mit Sicherheit keine Abweichungen, bräuchte man keinen Projektleiter,
sondern nur einen Projektplaner.
Der Projektleiter muss über das nötige Wissen, die nötigen Kompetenzen und die
nötigen Menschenkenntnisse verfügen, um angemessene Entscheidungen treffen
zu können.
Der Projektleiter muss allerdings nicht über soviel Fachwissen verfügen, um selbst
aktiv an der Entwicklung mitwirken zu können. Bei den allermeisten Projekten ist
er bereits mit der Projekt-Leitung (d. h. Führung, Organisation, Problemlösungen
etc.) zu mehr als 100% ausgelastet.
Murphys Gesetze
– Alles dauert länger als geplant, kostet mehr als geplant und leistet weniger
als geplant.
Grund:
– meist menschliches Versagen
Deshalb:
– Nach Abschluss des Projektes: „Erfahrung reflektieren“, um dieselben Fehler nicht ein zweites Mal zu machen (Fehleranalyse).
Konfuzius: „Wer einen Fehler macht und nichts daraus lernt, macht einen
zweiten.“
1.2.3 Zusammenfassung
Wesentliche Aufgaben des Projektleiters:
1. Menschenführung
2. Risikomanagement (Murphy lebt)
3. Planung und Kontrolle
1.3 Projekterfolg
Wann ist ein Projekt erfolgreich?
Wenn man Projektleiter fragt: Misserfolge gibt es nicht!
Daher meine Definitionen:
15
Draft (29. Juni 2006)
Projekterfolg aus neutraler Sicht (juristische Sicht)
Die neutrale Sichtweise kann nur die schriflichen Vereinbarungen zwischen Auftraggeber und -nehmer zur Grundlage haben.
erfolgreich:
Ein Projekt ist erfolgreich, wenn alle vertraglich festgelegten Ziele erfüllt
wurden: Zu den vorgegebenen Terminen und im Rahmen des vorgegebenen
Budgets wird die geforderte Funktionalität in der geforderten Qualität geliefert.
sehr erfolgreich:
Ein erfolgreiches Projekt ist sehr erfolgreich, wenn die Anforderungen (Erwartungen) teilweise übertroffen wurden, d. h., wenn die gewünschten Ergebnisse früher geliefert werden können und/oder wenn die Kosten geringer waren als geplant (kein „Dezemberfieber“) und/oder die geplante Funktionalität
in höherer Qualität realisiert werden konnte und/oder – in Absprache mit den
Auftraggebern – wenn ein erweiterter Funktionsumfang in mindestens der geforderten Qualität realisiert werden konnte.
gescheitert:
Ein Projekt ist gescheitert, wenn ein oder mehrere Produktziele nicht erreicht
wurden.
Vertraglich können auch andere Erfolgsmodelle definiert werden: Zum Beispiel
Hollywood Filmstudios: on time oder on budget. In diesem Fall ist ein Projekt erst
dann gescheitert, wenn es sowohl den Zeit-, als auch den Finanzrahmen überzieht.
Projekterfolg aus Sicht eines Projektbeteiligen (Auftraggeber, -nehmer, Benutzer, Projektleiter . . .)
erfolgreich:
Ein Projekt ist erfolgreich, wenn das Ergebnis für den jeweiligen Projektbeteiligten von Nutzen ist, d. h., wenn z. B. der Nutzen (z. B. späterer Gewinn)
die Kosten wie geplant deutlich übersteigt oder allgemeiner, wenn die strategischen Ziele des Projektbeteiligten erfüllt wurden. Dies gilt selbst dann,
wenn einzelne Projektziele verfehlt worden sind.
sehr erfolgreich:
Ein erfolgreiches Projekt ist sehr erfolgreich, wenn der Nutzen die Erwartungen deutlich übersteigt.
weniger erfolgreich:
Ein Projekt ist weniger erfolgreich, wenn das (evtl. zu spät gelieferte oder zu
teurere oder zu schlechte) Produkt immer noch von Nutzen ist, d. h., wenn
Draft (29. Juni 2006)
16
die strategischen Ziele nur teilweise, nicht aber im gewünschten Maß erreicht
werden.
gescheitert (erfolglos):
Ein Projekt ist gescheitert, wenn das (evtl. gar nicht vorhandene) Ergebnis
nutzlos für den Projektbeteiligten ist.
katastrophal gescheitert:
Ein Projekt ist katastrophal gescheitert, wenn das Ergebnis den Projektbeteiligten ruiniert.
Projekterfolg aus Sicht der Betroffenen
erfolgreich:
Ein Projekt ist erfolgreich, wenn das Ergebnis den Betroffenen nicht ernstlich
schadet.
Fazit: Wirklicher Projekterfolg (aus nicht-juristischer Sicht)
erfolgreich:
Ein Projekt ist für einen Beteiligten (Auftraggeber, Auftragnehmer, Benutzer)
erfolgreich, wenn das geplante Kosten/Nutzen-Verhältnis erzielt wird (Dieses
Verhältnis muss natürlich kleiner als 1 sein.)
sehr erfolgreich:
Ein Projekt ist für einen Beteiligten sehr erfolgreich, wenn das geplante Kosten/Nutzen-Verhältnis deutlich übertroffen wurde (d. h. deutlich kleiner als
geplant ist).
weniger erfolgreich:
Ein Projekt ist für einen Beteiligten weniger erfolgreich, wenn das echte Kosten/Nutzen-Verhältnis zwar nicht erzielt surde, aber zumindest kleiner als 1
ist.
gescheitert:
Ein Projekt ist für einen Beteiligten gescheitert, wenn das echte Kosten/Nutzen-Verhältnis größer 1 ist, aber keinen Ruin für den Beteiligten bedeutet.
katastrophal gescheitert:
Ein Projekt ist für einen Beteiligten katastrophal gescheitert, wenn es ihn
ruiniert.
Ein (sehr) erfolgreiches Projekt, das Betroffenen einen größeren Schaden zufügt,
ist aus Sicht der Betroffenen gescheitert oder sogar katastrophal gescheidert.
17
Draft (29. Juni 2006)
Beispiel
Abwasser auf Kosten der Allgemeinheit ungeklärt in Flüsse ablassen.
Wenn Betroffene mit ihren Klagen Erfolg haben, kann sich das Blatt auch für ein
zunächst erfolgreiches Projekt später in das Gegenteil umkehren (Schadensersatzzahlungen etc.).
Wie mann an diesen Definitionen sieht, kann man den wirklichen Projekterfolg
nur dann bestimmen, wenn man Kosten und Nutzen gleichermaßen geplant hat
(vgl. hierzu Teil IV in DeMarco and Lister (2003)).
Häufig sieht die Planung jedoch so aus:
Kosten: 1.237.534,13 Euro
Nutzen: Das müssen wir haben.
Goldratt definiert die strategischen Ziele eines gewinnorientierten Unternehmens
folgendermaßen (Goldratt (2003)):
1. Gewinn machen bzw. steigern (heute und in Zukunft)
2. sicheres und befriedigendes Umfeld für Belegschaft schaffen (heute und in
Zukunft)
3. Markt zufrieden stellen (heute und in Zukunft)
Was heißt „Gewinn steigern“?
1. Nettogewinn steigern
Nettogewinn = Einnahmen − Ausgaben > 0
(unter Berücksichtigung der Inflation)
2. Rendite steigern
Rendite = Gewinn / Investition
3. Cashflow steigern
Cashflow = Menge des verfügbaren („flüssigen“) Geldes für Investitionen etc.
Geldmittel werden dem Cashflow entzogen durch:
– Lagerbestände
– Infrastruktur (Gebäude etc.)
– laufende Projekte
Achtung: ein länger andauernder negativer Cashflow führt i. Allg. zur Insolvenz, auch wenn der Gewinn und Rendite stimmen.
Beispiele
– Titanic (der Film): sehr erfolgreich für den Auftraggeber, trotz Kosten von
200 Mio Dollar (100 Mio geplant) sowie 6 Monate Verzug.
Draft (29. Juni 2006)
18
Aus Sicht von Digital Domain: weniger erfolgreich, wenn man den Prestigegewinn durch den Film berücksichtigt, oder gescheitert, wenn man die
Verluste berücksichtigt (4 Millionen Dollar + 31 Mitarbeiter Verlust). (Quelle:?)
– Bahnhof Canfranc (Scheytt (1998))
Gebäude: 241m langer „Palast“, 1853 Planungsbeginn, 1882 Bewilligung (6
Jahre Bauzeit, 60000 Pesetas Subvention/km, Steuerfreiheit auf Baumaterialien), 1928 Einweihung (46 Jahre reale Bauzeit), wegen unterschiedlicher
Spurbreiten und fehlender Elektrifizierung auf spanischer Seite: für Auftraggeber ein Flop, d. h. gescheitert! (Allerdings nicht katastrophal gescheitert,
da die beteiligten Staaten Spanien und Frankreich daran nicht Konkurs gegangen sind.)
– Oppenheimer, Robert (22.4.1904 - 18.2.1967; Krebs)
Juli 1943: Direktor der Forschungslaboratorien in Los Alamos (New Mexiko)
Projekt: Bau der ersten Atombombe („Manhattan Project“)
Budget: unbegrenzt; zum Schluss mehr als 2 Milliarden Dollar
Zeit: genau 19 Monate
Team: die besten Physiker Amerikas
Das Projekt wurde erfolgreich abgeschlossen: funktionierendes Ergebnis genau zum angestrebten Termin („Tag X“).
21 und 24 Tage nach Projektende wurde das Ergebnis in Hiroshima und
Nagasaki eingesetzt. Für das amerikanische Militär war das Projektergebnis
ein voller Erfolg; für die Betroffenen – die Bewohner von Hiroshima und
Nagasaki und später für die ganze Menschheit (Wettrüsten) – war das Projekt
katastrophal gescheitert (gerade weil es formal erfolgreich war).
Oppenheimer war kurze Zeit ein Nationalheld. Während des Projektes hat
er allerdings einen Mitarbeiter bei einem Atomunfall verloren (das erste Opfer einer Atombombe). Später widersetzte sich Oppenheimer dem Bau der
Wasserstoffbombe ⇒ Untersuchungsverfahren wegen angeblicher kommunistischer Gesinnung, 1954 Ausschluss von allen Staatsgeheimnissen und
öffentlichen Ämtern, 1963 Rehabilitation
Aussagen von Oppenheimer:
• „Wir entwickeln das Ding nur, für ihren Einsatz tragen andere die Verantwortung.“
• „Manchmal glaube ich, dass wir trotz aller unserer Intelligenz vom
Raubtier abstammen.“
(Quelle: 19. Auflage des Brockhaus, Film „Die Schattenmacher")
19
Draft (29. Juni 2006)
– Betty Dong, Pharmazeutin an der Universität von Kalifornien in San Franzisko
Untersuchung über Heilungswirkung verschiedener Varianten des synthetischen Hormons Levothyroxin bei Schilddrüsenerkrankungen.
Projektergebnis: alle vier untersuchten Präparate wirken bei den meisten Patienten gleich gut.
Einer der Auftraggeber, die Firma Boots, erklärte die Studie für fehlerhaft
(d. h. als Misserfolg) und verbot die Veröffentlichung. Boots stellte das teuerste und meistverschriebene der vier untersuchten Präparate her.
Gutachter des Journals of the American Medical Association konnten keine
Fehler in der Studie finden. Das Ergebnis wurde erst später, als die Geschichte publik wurde, veröffentlicht. Kosten für Versicherungen und Kranke: 365
Millionen Dollar.
(Quelle: SZ, 13.4.99, Wissenschaftler – die Hilfsarbeiter der Industrie)
Bemerkung
Für das Scheitern eines Projektes aus der Sicht des Auftraggebers ist nicht notwendigerweise der Projektleiter verantwortlich. Wenn dieser zu den gegebenen
Terminen und im Rahmen des vorgegebenen Budgets die geforderte Funktionalität liefert, das Ergebnis aber trotzdem für den Auftraggeber nutzlos ist, lag bereits
ein Planungsfehler vor (z. B. Brücke ohne Straße). Allerdings sollte der Projektleiter schon von Anfang an, d. h. auch während der Planungsphase, verantwortlich
am Projekt beteiligt sein. In diesem Fall wäre er auch mitverantwortlich für das
Scheitern des Projektes.
H.G. Gemünden („Erfolgsfaktoren des Projektmanagements“, 1990)
Trotz dieser schönen Definitionen ist Erfolg schwer zu messen, da es keine normierten Erfolgsmaße und keine einheitliche Sichtweise gibt und auch nicht geben
kann.
Gemünden schlägt eine systematische Differenzierung nach folgenden Gesichtspunkten vor:
Objekt:
Erfolgsbestimmung wird umso schwieriger, je komplexer, innovativer, dynamischer und konflikthaltiger ein Projekt ist.
Eigenschaft:
Man muss technische, wirtschaftliche, soziale Kriterien etc. berücksichtigen
(z. B. auch Auswirkungen auf Mitmenschen oder die Natur).
Maßstab:
Man benötigt konkrete Maßstäbe zum Messen dieser Kriterien.
Draft (29. Juni 2006)
20
Perspektive:
Der Standpunkt des Beurteilenden (Projektleiter, Auftraggeber, Benutzer,
Gutachter) kann ganz unterschiedliche Ergebnisse liefern.
Phase:
Zu unterschiedlichen Zeitpunkten (während Projektphase bzw. Nutzungsphase) kommen die Beurteilenden zu unterschiedlichen Ergebnissen.
zeitlicher Bezug:
kurzfristiger Misserfolg, aber langfristiger Erfolg oder kurzfristiger Erfolg,
aber langfristiger Flop.
Frage
Ist „Titanic“ für Digital Domain ein erfolgreiches Projekt (Prestigegewinn, Folgeaufträge) oder ein erfolgloses Projekt (4 Mio + 31 Mitarbeiter Verlust) gewesen?
Das wird sich erst im Laufe der Zeit herausstellen!
1.3.1 Wie vermeidet man einen Misserfolg?
Ein erfolgreiches Projekt zu leiten, sollte das Ziel eines jeden Projektleiters sein.
Erfolgreich heißt dabei: erfolgreich aus Sicht des Projektleiters, des Auftragnehmers, des Auftraggebers und des Benutzers und – sofern ein ethisches Verantwortungsbewustsein besteht – aus Sicht der Betroffenen.
Aber auch weniger erfolgreiche oder nur relativ kurzzeitig erfolgreiche Projekte
werden eventuell noch akzeptiert.
Darum: Wie vermeidet man Misserfolge (und erst recht) Katastrophen?
1. Regel
Es gibt kein Patentrezept!
(F. Brooks, 1986: „There is no Silver Bullet“)
2. Regel
Der Projektleiter muss „einfach“ für jedes (managebare) Risiko, das für sein Projekt zum Problem werden kann, rechtzeitig Strategien zur Minderung der Auswirkungen und/oder Strategien zur Reaktion, falls das Risiko zum echten Problem
wird, entwickeln. Falls ein Risiko zum echten Problem wird, muss er rechtzeitig
und richtig reagieren.
Numerobis: „In Ägypten haben wir gegen die Zeit, gegen den Personalmangel
und gegen die Römer zu kämpfen. Vor allem gegen den Architekten Pyradonis,
meinen Konkurrenten.“
Leider lassen sich nicht alle möglichen Probleme vorhersagen oder gar beseitigen.
Man sollte sich die tückischen Fallen aber von vorne herein klar machen, um
21
Draft (29. Juni 2006)
wenigstens möglichst viele dieser Risiken zu vermeiden oder zumindest deren
Auswirkungen abzumildern.
Für das Management heißt das im Wesentlichen einen fähigen Projektleiter –
wie Numerobis? – einzusetzen und glasklare Projektziele zu formulieren, die sich
nachträglich nur kontrolliert ändern.
Der Projektleiter sollte sich möglichst auf die Erfüllung der Projektziele konzentrieren (können), d. h., dem Begriff „erfolgreich“ sollte die neutrale Sicht zugrunde gelegt werden (auch wenn das nicht immer zu vertreten ist – siehe Oppenheimer).
Typische Risiken aus der Sicht des Projektleiters (Beispiele)
Im Folgenden werden Beispiele für Risiken angegeben, die ein Projekt scheitern
lassen können, wenn sie nicht rechtzeitig bedacht werden.
Abhilfe: frühzeitige und realistische Planungen, rechtzeitiges „Gegensteuern“
– falsche Funktionalität
• Benutzer akzeptieren System nicht
• überzogene Funktionalität
∗ Der Auftraggeber möchte eine „eierlegende Wollmilchsau“
∗ neue Techniken sollen eingesetzt werden, die noch gar nicht das
Stadium der Forschung hinter sich gelassen haben
• nicht-realisierbare Funktionalität
• Inflation der Anforderungen (= ausufernde Änderungswünsche während der Projektlaufzeit)
– Qualitätsprobleme
• überzogene Qualität
• nicht-realisierbare Qualität
z. B.: Ein System mit 100% Ausfallsicherheit soll erstellt werden.
Forderungen wie Ausfallzeit unter 30 Min/Jahr sind dagegen, bei entsprechenden Kosten, schon realisierbar:
99,99 % Ausfallsicherheit =
ˆ max. 53 Min Ausfall/Jahr
99,999 % Ausfallsicherheit =
ˆ max. 5 Min Ausfall/Jahr
• falsche oder fehlende Qualitätssicherung
– kritisches Zeitmanagement
• Mitarbeiter werden krank oder haben Urlaub.
• Mitarbeiter verlassen den Betrieb (Mitarbeiterfluktuation).
• Ein guter Mitarbeiter/Projektleiter arbeitet in normalen Zeiten höchstens 4 Tage a 6 Stunden (= 24 Stunden) pro Woche aktiv für das Projekt
(Asterix: Arbeiter arbeiten zu langsam).
Draft (29. Juni 2006)
22
• Für jede Aufgabe muss ein Puffer eingeplant werden (wegen Krankheit,
Lieferschwierigkeiten, Systemausfall etc.; Pyradonis behindert Steinnachschub).
• Pausen kosten Zeit (Microsoft-Lösung: Win95-Buttons für bevorzugte
Abfertigung in Kantine).
• Telekommunikation kostet Zeit: Jedes Telefonat, jede E-Mail reißt
einen Wissensarbeiter aus seiner „Denkarbeit“ – es dauert danach jeweils ca. 10 Minuten seine Gedanken danach wieder auf die eigentliche
Arbeit zu konzentrieren (sich zu „vertiefen“).
• Konkurrenz schneller (evtl. mit weniger Funktionalität oder Qualität).
• inhärent falscher Zeitplan („politischer Zeitplan“, „agressive Zeitplanung“)
– kritische Kostenplanung (bei Asterix nicht gegeben, Geld ist reichlich da)
• Spezialisten kosten Geld.
(Es kann billiger sein, einen Profi zu 1000 Euro/Tag zu holen, als einen
Amateur zu 100 Euro/Tag.)
• Geeign98–100etes Material kostet Geld.
• Lizenzen und andere Rechte kosten Geld.
• Repräsentatives Management und andere „produktspezifische“ Aufgaben kosten Geld (Bewirtung von Gästen, Präsentationen etc.).
• Puffer- und Ausfallzeiten kosten Geld.
• Konkurrenz billiger (evtl. mit weniger Funktionalität oder Qualität).
– falsches Ressourcenmanagement
• Unzufriedene Mitarbeiter können jedes Projekt zu Fall bringen
(Mobbing, zuviel Kontrolle, zu wenig Kontrolle etc.)
⇒ Menschenführung (ganz wesentlich)
(Asterix: Arbeiter wollen weniger Peitschenhiebe)
• Kommunikationsprobleme
• zu knappe Ressourcen
(Rechnerzeiten, Kopierkontingente, Raumnot etc., Asterix: zu wenig
Sklaven; Lösung: Zaubertrank)
• unwirtschaftlicher Einsatz von Ressourcen
(Mensch, Material, Infrastrukturen, Information)
• Verfügbarkeit von Ressourcen ist nicht sichergestellt
(Asterix: Steine fehlen ⇒ Problem trotz Zaubertank)
• falsche Ressourcen
(unfähige Mitarbeiter, die für das Tagesgeschäft nicht geeignet und daher verfügbar sind; nicht-erweiterbare Multimediarechner ohne Sound23
Draft (29. Juni 2006)
•
•
•
•
karten, unausgereifte Entwicklungswerkzeuge etc.)
geringe Produktivität der (falschen oder auch unmotivierten) Mitarbeiter
„Ressourcenklau“ zwischen rivalisierenden Projekten
Auftraggeber oder Lieferant liefert benötigte Ressourcen zu spät
Sabotage
– Spezifikationskollaps
• In der Spezifikation werden zu Projektbeginn, da sich die Beteiligten
Parteien nicht einigen können, keine konkreten Angaben zu Anforderungen gemacht (nur Luftblasen). Wolkige Spezifikation ist möglich,
wolkige Entwicklung nicht ⇒ irgendwann kommt es zum Crash.
– Probleme von außen (schwer abwendbar)
• höhere Gewalt (Konkurs des Auftraggebers, Streik, Umweltkatastrophen)
• Spionage
• Konkurrenz hat mehr „Marktmacht“
– Sonstiges
• Koordinationsprobleme
• Missverständnisse zwischen Auftragnehmer und Auftraggeber
• lückenhafte Verträge
Projekte scheitern meist an Menschen:
– Management
– Projektteam (Projektleiter und Projektmitarbeiter)
– Auftraggeber
– externe Partner
Typische zwischenmenschliche Probleme:
– Manager kümmern sich nicht um Projektinterna, treffen aber Entscheidungen.
– Angst vor Versagen ⇒ zuviel Kontrolle.
– Angst vor Sympathieverlust ⇒ zu wenig Kontrolle.
– nutzlose Meetings aufgrund von Profilierungssucht.
– irreale Kosten-/Zeitschätzungen, weil Auftragnehmer das Projekt unbedingt
oder überhaupt nicht haben will.
Draft (29. Juni 2006)
24
– Pläne werden über die Köpfe der Betroffenen hinweg erstellt.
– DV-Spezialisten ignorieren Belange von Normalbenutzern („Diese Idioten
verstehen sowieso nichts davon“).
– Mitarbeiter, Partner etc. verstehen sich nicht!
(wahllos zusammengewürfelte Teams)
– Neid („Eigentlich wäre ich an der Reihe gewesen, Projektleiter zu sein“ etc.)
– Mobbing
– Sabotage durch unzufriedene Mitarbeiter, Projektleiter, Konkurrenten (Pyradonis) oder Benutzer
– etc.
Projektrisiken gibt es viele. Am Besten ist es natürlich, alle managebare Risiken
auch zu managen. (Ein Risiko wie z. B. „Ein Asteroid vernichtet einen Großteil
der Menschheit“ ist nicht managebar und kann daher ignoriert werden.)
Es ist aber schon viel gewonnen, wenn wesentliche Kernrisiken berücksichtigt
werden. Kernrisiken zeichnen sich durch hohe Eintrittswahrscheinlichkeit und hohe Kosten aus, wenn sie wirklich eintreten.
Urs Gulba (1995) nennt folgende Top-Risiken in Softwareprojekten:
– Dynamische Anforderungen (= andauernde Veränderung der Anforderungen)
– schlechte Projektplanung und -schätzung
– mangelhafte Kommunikation
– fehlende oder unzureichende Qualitätssicherung
– unreife Softwaretechniken sowie unzulängliche Entwicklungsmethoden und
-werkzeuge
Tom DeMarco und Timothy Lister (DeMarco and Lister (2003)) geben folgende
fünf Kernrisiken an:
– inhärent fehlerhafter Zeitplan
– Inflation der Anforderungen (ausufernde Anforderungen)
– Mitarbeiterfluktuation
– Spezifikationskollaps
– geringe Produktivität
Es fällt auf, das in beiden Quellen jeweils nur ein Problem genannt wird, das die
Arbeitsleistung betrifft. Die anderen Risiken können Sie durch harte Arbeit Ihres
25
Draft (29. Juni 2006)
Teams und kompetente Erledigung Ihrer Projektleitertätigkeit nach Vertragsabschluss kaum mehr beeinflussen.
Wesentliche Kernprobleme bestehen schon frühzeitig. Das heißt, viele Kernrisiken müssen schon sehr früh berücksichtigt werden, da sie sonst schon früh zu
echten Problemen werden (auch wenn das häufig erst spät, viel zu spät erkannt
wird).
Ein klassisches Beispiel ist der erste Versuch des Toll-Collect-Projektes. Um den
Auftrag zu erhalten, hat das Konsortium eine Projektlaufzeit von weniger als einem Jahr veranschlagt. „Im Vorfeld nach anstehender Bundestagswahlen einigte
man sich auf elf Monate“ (Borchers (2004)). Dass diese Zeitspanne für ein derart
komplexes Projekt viel zu kurz war, dürfte selbst jedem Laien klar sein.
1.4 Vergleich von Projekten mittels Euro-Tagen
Ein billiges Projekt mit langer Laufzeit beindet eventuell mehr Kapital, als ein
teures Projekt mit kurzer Laufzeit. Um den Wert eines Projektes abschätzen zu
können, reicht es daher nicht, den später erwarteten Gewinn zu berücksichtigen.
Man sollte auch den Effekt auf den Cashflow betrachten. Goldratt schlägt vor,
dies mit Hilfe des künstlichen Maßes „Euro-Tage“ zu tun (Goldratt (2002), TOC
(2005)).
Wenn ein Projekt 1000 Euro einen Monat lang bindet, entspricht dies laut Goldratt einer Investition von 1000 Euro · 30 Tage = 30 000 Euro-Tage. Verschiedene
Euro-Tag-Investitionen werden einfach aufaddiert.
Nehmen wir an, unser Projekt hätte eine Laufzeit von 3 Monaten. Jeder Monat
koste uns 1000 Euro, anschließend verdienen wir monatlich 500 Euro mit dem
Projektergebnis. Das heißt, wir investieren 3000 Euro und müssen insgesamt 9
Monate (= 3 Monate Projektlaufzeit + 6 Monate Verdienst am Projektergebnis)
warten, bis wir die Investition wieder „herein“geholt haben. Nach 9 Monaten haben wir also genauso viel Geld zur Verfügung als davor. Erst jetzt verdienen wir
mit dem Projekt Geld.
Wir hatten allerdings neun Monate lang Geld gebunden (dem Cashflow entzogen),
welches wir anderweitig für evtl. bessere Investitionen hätten verwenden können.
Wie groß war nun die Auswirkung auf den Cashflow?
Unsere Investition betrug 3000 Euro, nach 9 Monaten hatten wir das Geld wieder.
Das entspricht einer Investition von 3000 Euro · 9 · 30 Tage = 810 000 Eurotage,
man spricht auch von Investitions-Euro-Tagen.
Diese Rechnung ist allerdings etwas grob, da wir die 3000 Euro ja nicht sofort am
Draft (29. Juni 2006)
26
ersten Tag investiert hatten und auch nicht 9 Monate lang auf jeden Cent verzichten mussten. Bei genauerer Rechnung ergibt sich folgende Investitionssumme:
1. Monat: 1000 Euro investiert
30 Tage · 1000 Euro = 30 000 Euro-Tage, Summe: 30 000 Euro-Tage
2. Monat: weitere 1000 Euro investiert
30 Tage · 2000 Euro = 60 000 Euro-Tage, Summe: 90 000 Euro-Tage
3. Monat: weitere 1000 Euro investiert
30 Tage · 3000 Euro = 90 000 Euro-Tage, Summe: 180 000 Euro-Tage
4. Monat: 500 Euro verdient ⇒ noch 2500 Euro investiert
30 Tage · 2500 Euro = 75 000 Euro-Tage, Summe: 255 000 Euro-Tage
5. Monat: 500 Euro verdient ⇒ noch 2000 Euro investiert
30 Tage · 2000 Euro = 60 000 Euro-Tage, Summe: 315 000 Euro-Tage
6. Monat: 500 Euro verdient ⇒ noch 1500 Euro investiert
30 Tage · 1500 Euro = 45 000 Euro-Tage, Summe: 360 000 Euro-Tage
7. Monat: 500 Euro verdient ⇒ noch 1000 Euro investiert
30 Tage · 1000 Euro = 30 000 Euro-Tage, Summe: 390 000 Euro-Tage
8. Monat: 500 Euro verdient ⇒ noch 500 Euro investiert
30 Tage · 500 Euro = 15 000 Euro-Tage, Summe: 405 000 Euro-Tage
9. Monat: 500 Euro verdient ⇒ noch 0 Euro investiert
30 Tage · 0 Euro = 0 Euro-Tage,
Summe: 405 000 Euro-Tage
10. Monat: 500 Euro verdient ⇒ 500 Euro Gewinn
Das heißt, wir verdienen erst nach 10 Monaten Geld, haben dafür aber 9 Monate lnag Investitionsmittel in Höhe von 405 000 Euro-Tagen verzichtet. Wenn wir
das Geld für diese Zeit anders (besser) angelegt hätten, hätten wir evtl. früher
mehr Geld verdient. Das heißt, wir können erst dann von einem echten Reingewinn sprechen, wenn wir mir dem Projekt nicht nur das Geld, sondern auch die
verlorenen Euro-Tage wieder verdient haben.
Die Rechnung der so genannten Durchsatz-Euro-Tage, d. h. der Euro-Tage, die
wir durch das Projekt gewinnen, beginnt ab dem Zeitpunkt, ab dem wir erstmals
einen echten Gewinn einfahren. Bei unserem Projekt ist das der 10. Monat. Die
Durchsatz-Euro-Tage werden geanuso wie die Investitions-Euro-Tage berechnet:
10. Monat: 500 Euro Gewinn
30 Tage · 500 Euro = 15 000 Euro-Tage,
11. Monat: weitere 500 Euro Gewinn
30 Tage · 1000 Euro = 30 000 Euro-Tage,
12. Monat: weitere 500 Euro Gewinn
30 Tage · 1500 Euro = 45 000 Euro-Tage,
13. Mona:t weitere 500 Euro Gewinn
30 Tage · 2000 Euro = 60 000 Euro-Tage,
27
Summe: 15 000 Euro-Tage
Summe: 45 000 Euro-Tage
Summe: 90 000 Euro-Tage
Summe: 150 000 Euro-Tage
Draft (29. Juni 2006)
14. Monat: weitere 500 Euro Gewinn
30 Tage · 2500 Euro = 75 000 Euro-Tage, Summe: 255 000 Euro-Tage
15. Monat: weitere 500 Euro Gewinn
30 Tage · 3000 Euro = 90 000 Euro-Tage, Summe: 315 000 Euro-Tage
16. Monat: weitere 500 Euro Gewinn
30 Tage · 3500 Euro = 105 000 Euro-Tage, Summe: 420 000 Euro-Tage
(26 Tage · 3500 Euro = 94 500 Euro-Tage, Summe: 409 000 Euro-Tage)
Das heißt, am Ende des 16. Monats (genauer: 4 Tage zuvor) haben wir so viele Durchsatz-Euro-Tage verdient, wie wir Investitions-Euro-Tage zuvor verloren hatten. Bis dahin haben wir außerdem 3500 Euro mit unserem Projekt verdient. Über den Zeitraum von 7 Monaten entspricht das einer Investitionskraft
von 420 000 Euro-Tagen. Diese Investitionskraft hätten wir auch gehabt, wenn wir
das Projekt gar nicht gestartet hätten und das auch noch früher. (Inflationsbereinigt hätten wir sogar noch ein paar Tage länger warten müssen, bis wir unsere
ursprüngliche Investitionskraft wieder hergestellt hätten).
Welche Bedeutung hat also der 17. Monat für unser Projekt? Das ist der Zeitpunkt,
ab dem wir wirklich neues Geld verdienen, das wir zusätzlich investieren oder
verleben können. Das Magazin TOC Times sagt: „. . . the project Flushes – we
really return the investment in both money and opportunity lost “ TOC (2005).
Allerdings nützen die ganzen schönen Prognosen nichts, wenn die Schätzungen
der Projektdauer, der Kostenverläufe und der erwarteten Gewinne schlecht oder
gar vollkommen unseriös sind.
Andererseits macht einem die Berücksichtigung der Euro-Tage erst klar, welche
Kosten eine große Zeitverzögerung wirklich verursacht. Es wird nicht nur der
Reingewinn geschmälert (wenn sich das neue Handy beispielsweise nur noch ein
halbes Jahr verkaufen lässt und nicht, wie geplant, ein ganzes Jahr, da es zu spät
auf den Markt gekommen ist). Es wird auch die Investitionskraft, d. h. der Cashflow, empfindlich geschmälert.
Fazit
Wenn man die Auswahl zwischen mehreren Projekten hat, sollte man bei der Entscheidung, welche davon realisiert werden sollten, nicht nur die Kosten und den
später erhofften Gewinn, sondern auch die Auswirkungen auf die Investitionskraft, d. h. die Investitions- und die Durchsatz-Euro-Tage berücksichtigen.
Draft (29. Juni 2006)
28
Kapitel 2
Projektverlauf
„Ein Fußmarsch von 1000 Meilen beginnt mit dem ersten Schritt.“
(chinesisches Sprichwort)
Jede menschliche Tätigkeit lässt sich in Phasen einteilen (aufstehen, waschen,
anziehen, frühstücken, zur Arbeit fahren etc.)
Ebenso lässt sich jedes Projekt in Phasen unterteilen (Spezifikationsphase, Designphase, Fertigungsphase, Einführungsphase)
Prinzipiell ist es möglich, zwei Phasen überlappen zu lassen (Nahrungsaufnahmephase + Informationsphase = frühstücken + Zeitung lesen)
Auch in Projekten könnte man mehrere Phasen einander überlappen lassen. Zum
Beispiel könnte man mit der Einführungsphase (Aufstellen von Hardware beim
Benutzer, Installation von Basissoftware etc.) begonnen werden, bevor die Fertigungsphase vollständig abgeschlossen ist. Im Falle von Terminproblemen wird
man manchmal auch so vorgehen.
Allerdings ist es sicherer, eine Phase vollständig abzuschließen und dann erst mit
der nächsten zu beginnen.
Ein sehr schönes Beispiel lieferte im Sommersemester 2005 der Bau des neuen Schülegebäudes. Die erste Planungsfirma hatte das Handtuch geworfen, eine
zweite Planungsfirma übernahm den Job. Während diese Firma die Anschlüsse
von Steckdosen, Netzwerk etc. plante, wurden bereits die zugehörigen Leerrohre
auf der Baustelle einbetoniert. Den Mitarbeitern des Fachbereichs Informatik, die
an der Planung beteiligt waren, standen veraltete Pläne zur Verfügung, in denen
sich z. B. Türen an anderen Stellen als aktuell geplant befanden. Aber das war
sowieso egal, da ja auf der Baustelle bereits Fakten geschaffen wurden.
Besser ist es i. Allg. jede Phase vollständig abzuschließen, bevor die nächste begonnen wird. Während einer Phase können allerdings verschiedene Aufgaben
(Vorgänge) parallel bearbeitet werden.
Das Ende einer Phase wird auch als Meilenstein bezeichnet. Dabei unterscheidet
man zwischen internen Meilensteinen, die nur innerhalb des Projektteams von Bedeutung sind, und den externen Meilensteinen, bei denen die Teilergebnisse dem
Auftraggeber präsentiert werden und mit ihm das weitere Vorgehen abgestimmt
wird.
29
Draft (29. Juni 2006)
Projektstart
Meilenstein 1
Meilenstein 2
Projektende
Prinzipielles Vorgehen
Phase n:
– Dauer n
– Budget n
– Funktionalität und Qualität n
– Pläne n
→ Produkt n (Meilenstein am Ende der Phase n)
Review n mit Entscheidung:
– weiter: Phase n + 1 wird gestartet (bzw. Projektende, wenn Phase n + 1
nicht existiert)
– zurück: Phase n (oder sogar frühere Phase) wird wiederholt
– Projektabbruch (da sinnvolle Ziele nicht mehr erreicht werden können)
Bei einem Review können auch Projektziele (Kosten, Zeit, Funktionalität, Qualität) geändert werden. Dies solte jedoch stets schriftlich mit Zustimmung aller
Beteiligten erfolgen (Änderungsmanagement).
Dieses Vorgehen garantiert, dass die Phase n zur Zufriedenheit aller (oder zumindest der Mehrheit) abgeschlossen wird oder dass das Projekt wegen unüberwindbaren Problemen, Unwirtschaftlichkeit oder Ähnlichem vollkommen gestoppt
wird.
Projektdauer = Σ(Dauer n + Dauer Review n)
Projektkosten = Σ(Kosten n + Kosten Review n)
Für die Planung hat die Einleitung in Phasen überdies den Vorteil, dass Dauer
und Kosten genauer abgeschätzt werden können:
geschätzte Projektdauermin =
P
(geschätzte Dauer n inkl. Review · rn,min)
P
′
geschätzte Projektkostenmin = (geschätzte Zeit n inkl. Review · rn,min
)
P
geschätzte Projektdauermax = (geschätzte Dauer n inkl. Review · rn,max )
P
′
geschätzte Projektkostenmax = (geschätzte Zeit n inkl. Review · rn,max
)
Draft (29. Juni 2006)
30
wobei r∗ und r∗′ Risikofaktoren sind. Aufgabe des Risikomanagements ist es, für
′
′
rn,min und rn,min
sinnvolle Werte kleiner 1 und für rn,max und rn,max
sinnvolle
Werte größer 1 zu schätzen.
Vorteile des Phasenmodells
– Das Projekt dümpelt nicht vor sich hin, da man immer erreichbare Ziele vor
Augen hat.
– Die Zeit, Budget- und Zielplanung kann schrittweise erfolgen. Man stattet
das Projekt zunächst nur mit einem Budget für die ersten ein, zwei Phasen
aus und entscheidet dann, ob man mit dem eigentlichen Projekt starten will.
– Zu jedem Meilenstein/Review-Zeitpunkt wissen alle Beteiligten, wo das
Projekt steht. Allerdings zaubern Projektleiter und -mitarbeiter bei Reviews
oft ganz schön.
– Bei jedem Review kann eine formale Änderung alter Projektziele erfolgen
(Change Management). Schlimmstenfalls kann entschieden werden, mehrere Phasen zu wiederholen (z. B. weil der Hardwarehersteller der Zielplattform Pleite gegangen ist – in derart krassen Fällen sollte allerdings nicht erst
eine Review-Phase abgewartet werden).
2.1 Verschiedene Phasenmodelle
Es gibt kein „einzig richtiges“ Phasenmodell!
Welche Phasen notwendig sind, welche Meilensteine gesetzt werden sollten,
hängt immer vom aktuellen Projekt ab.
Prinzipiell gibt es bei Softwareprojekten fünf große Abschnitte (aber keine normierten Begriffe dafür):
1. Spezifikationsphase (Projektziele: Was soll erreicht werden?)
2. Designphase (Wie werden die Projektziele erreicht?)
3. Fertigungsphase (Realisierung der Projektziele)
4. Einführungsphase (Übergabe der Projektergebnisse an den Auftraggeber/die
Benutzer)
5. Aufarbeitungsphase (+ Nutzungsphase)
Nach Abschluss der Einführungsphase ist das Projekt eigentlich abgeschlossen.
Allerdings sollte man die Erfahrungen, Erfolge und Fehler in einer abschließenden
Aufarbeitungsphase reflektieren, um daraus für ein nächstes Projekt zu lernen.
31
Draft (29. Juni 2006)
Die Nutzungsphase ist nicht mehr Bestandteil des Projektes. In dieser Phase anfallende Arbeiten, wie z. B. Wartungstätigkeiten, gehören zum Tagesgeschäft (obwohl viele Projektarbeiten leider oft in die Wartung verlegt werden, um den Termin formal einhalten zu können).
Ein erfolgreiches Projekt kann ein oder mehrere Folgeprojekte initiieren. Das
heißt, in die Nutzungsphase (eventuell sogar schon in frühere Projektphasen) können die Planungsphasen der Nachfolgeprojekte fallen.
Diese fünf Grobphasen können je nach Projekt unterschiedlich umfangreich und
in unterschiedliche Teilphasen gegliedert sein.
2.1.1 Die Spezifikationsphase: Was soll gemacht werden?
Ziel dieser Phase ist es festzulegen, was gemacht werden soll. Zunächst startet ein
Projekt meist ohne konkrete Vorstellungen, ohne Projektleiter und Projektmanagement.
Typische Phasen während der Spezifikationsphase:
Initialisierungsphase, Planungsphase, Bedarfsermittlung, Vorstudie
Zunächst muss die Projektidee geboren werden. Das kann ganz spontan im Schlaf
passieren, oder man sucht gezielt nach neuen Projektideen mit Hilfe einer Vorstudie oder Bedarfsermittlung (Brainstorming etc.).
Am Anfang ist die Idee!
Orientierung (Informationsphase)
– Welche Bedürfnisse bestehen (z. B. Benutzerbefragungen)?
– Welche Probleme oder Engpässe bestehen (Problemanalyse)?
– Wo ist eine Marktnische (Übersichtsanalyse)?
Untersuchung
→ Gibt es Lösungsmöglichkeiten für die erkannten Probleme?
– Ist zumindest eine Lösung realisierbar (Konzeptanalyse)?
– Nutzt die Lösung dem Auftraggeber (grobe Kosten-/Nutzenschätzung)?
– Ist eine Lösung der Probleme wirtschaftlich notwendig?
Eine Bedarfsermittlung wird normalerweise vom Auftraggeber alleine durchgeführt, eine Vorstudie wird dagegen oft als Auftragsarbeit an eine andere Firma
Draft (29. Juni 2006)
32
(z. B. Beraterfirma) vergeben. Es ist von Vorteil, wenn der zukünftige Projektleiter
in dieser Phase schon aktiv beteiligt ist.
Eventuell wird während einer Bedarfsermittlung auch schon ein Rahmenkonzept
erstellt (z. B. Orientierung an unternehmensweitem Datenmodell, Zusammenstellung potentieller Anwendungen). Es ist sogar möglich, schon Rahmenpläne zu
erstellen (Teilprojekte mit Zielen, einzusetzende Ressourcen etc.).
Vorstudien sind eigentlich selbst wieder Projekte mit dem Ziel, die Machbarkeit
eines größeren Projektes zu analysieren und ein Rahmenkonzept sowie
Rahmenpläne zu erstellen. Während der „Designphase“ kann eine so genannte
Systemanalyse durchgeführt werden, während der „Fertigungsphase“ werden ein
oder mehrere Konzepte erstellt, und während der „Einführungsphase“ wird ein
Konzept ausgewählt und eine Entscheidung für das eigentliche Projekt getroffen.
Review
Genehmigung einer Anforderungsliste, von Ausschreibungsunterlagen, eines Lastenheftes (= grobes Pflichtenheft), eines Rahmenkonzeptes und von Rahmenplänen oder Ähnlichen sowie Beschluss, die nächste Phase zu beginnen.
Akquisitionsphase
Diese Phase erfolgt, sobald sie wissen dass Sie ein Projekt durchführen wollen,
Ihnen aber die Mittel dafür fehlen (vor allem, wenn Sie nicht selbst der Auftraggeber sind). Die Phase kann sich direkt an die Informationsphase anschließen oder
auch erst nach Verabschiedung irgendeiner Grobspezifikation erfolgen.
Wenn Sie zuwenig Geld haben, müssen Sie Projektpartner und/oder Geldgeber
finden.
Typische Projektpartner: andere Abteilungen, externe Unternehmen anderer Branchen, europäische Unternehmen derselben Branche etc.
Typische Geldgeber: der Aufsichtsrat, der Abteilungsleiter, ein anderes Unternehmen (wenn Sie z. B. einer Technologietransferstelle angehören), der bayerische
Staat (Existenzgründerdarlehen etc.), die EU (Esprit etc.).
Probleme
Die Akquisitionsphase kann sehr lange dauern (manchmal ein Jahr und mehr,
Canfranc: 30 Jahre).
Die ursprünglichen Projektziele können dabei völlig über den Haufen geworfen
werden.
Die zugeteilten Geld- und Zeitmittel können oft rein politischer Natur sein („Hier
haben Sie eine Million, lösen Sie das Problem in 15 Monaten!“).
33
Draft (29. Juni 2006)
Als potentieller Projektleiter sollten Sie von Anfang an bei der Akquise beteiligt
sein. Es gibt nichts Schlimmeres, als zum Projektleiter eines undurchführbaren
Projektes ernannt zu werden (völlig überzogene Ziele bezüglich Funktionalität,
Qualität, Zeit und/oder Kosten).
Während der Akquisitionsphase werden oftmals mehr oder weniger detaillierte
Pläne ausgearbeitet (Phasenpläne mit Meilensteinen, Kostenpläne, Ressourcenpläne etc.). Doch Vorsicht! Die Pläne der Akquisitionsphase sind oft politischer
Natur. Es gibt Projekte, bei denen heißt es am Ende der Akquisitionsphase: „Jetzt
haben wir die Fördergelder. Was machen wir damit?“
Review
Genehmigung der Finanzierung. Jetzt kann oft schon mit gutem Gewissen ein
Projektvertrag zwischen Auftragsnehmer und -geber geschlossen werden (wenn
bereits „belastbare“ Rahmenkonzepte, ein Lastenheft o. Ä. vorliegen).
Definitionphase (Konzeptphase)
Spätestens in dieser Phase muss ein verantwortlicher Projektleiter bestimmt werden.
In den ersten Teilphasen der Spezifikationsphase werden normalerweise nur grobe
Zielvorstellungen formuliert (Lastenheft). Spätestens wenn klar ist, dass ein Projekt gestartet werden soll, müssen die Ziele genau definiert und verbindlich festgelegt werden. Ein Pflichtenheft oder eine Spezifikation muss geschrieben werden.
Diese muss genau spezifizieren, was zu tun ist, welche Normen einzuhalten sind,
wer für was verantwortlich ist (auch der Auftraggeber hat Pflichten!), wie Probleme kommuniziert werden etc.
Zunächst sollten Funktionalität und Qualität festgelegt werden. Dabei müssen
„messbare“ Erfolgskriterien festgelegt werden.
Beispiel „Aufsatzdienst Elektra“
Der Aufsatzdienst Elektra soll druckbare Aufsätze in einer Qualität besser als Fax
per Internet ausliefern.
Die Bearbeitung einer Bestellung durch eine Fachkraft dauert am Rechner nicht
mehr als 20 Sek/Seite.
Und so weiter.
Beispiel „Internetpräsentation für die FH Augsburg“
– läuft auf allen Browsern
– insbesondere kann jede Seite mit jedem HTML-2.0-konformen Browser betrachtet werden (auch Lynx, andere ASCII-Browser, Braille-Zeilen etc.)
Draft (29. Juni 2006)
34
– Barrierefreiheit
– läuft auch ohne JavaScript (wird wegen Sicherheitsproblemen oft sogar via
Proxy herausgefiltert)
– und so weiter
Auch strategische Ziele können formuliert werden. Die Erfüllung derartiger Ziele kann allerdings meist nicht nachgewiesen werden – dann muss man auf die
Aufnahme in das Pflichtenheft verzichten.
Anschließend sollten Kosten und Zeit geschätzt und die anderen Ziele eventuell
angepasst werden.
Bei größeren Projekten werden teilweise Kosten- und Zeitpläne nur für die nächsten Schritte genauer spezifiziert und für spätere Schritte dagegen zunächst nur
grob festgelegt (höhere Fehlertoleranz).
Achtung
Im Pflichtenheft sollte nicht stehen, wie etwas zu realisieren ist. (Grobe) Vorgaben bezüglich der Ressourcen können allerdings über die Ziele gemacht werden
(z. B.: Software muss mit vorhandener Software kompatibel sein – Das ist Bestandteil der Funktionalität. Das Projekt hat 3 Mitarbeiter – Das ist Bestandteil
der Kostenvorgabe: Es wird Geld für 3 Mitarbeiter und 2 Rechner zur Verfügung
gestellt. Das heißt aber nicht, dass nicht 6 Halbtagskräfte eingestellt werden dürften. Und so weiter.)
Der Auftragnehmer sollte über die Ressourcenplanung selbstständig entscheiden
können. Bei Inhouse-Ressourcen kommt es dabei allerdings häufig zu Problemen,
wenn die Ressourcen auch von anderen Projekten oder Gruppen benötigt werden
(z. B. Netzspezialisten, Hardware etc.).
Review
Genehmigung des Pflichtenheftes und Beschluss, die Designphase zu starten. Spätestens jetzt sollte ein Projektvertrag zwischen Auftraggeber und -nehmer geschlossen werden.
Die Spezifikationphase kann sich in mehrere Teilphasen untergliedern. Dabei
kann es, muss es aber nicht zu Zwischenreviews kommen.
Die Definitionsphase sollte allerdings immer mit einem Review beendet werden.
Dort werden sich Auftraggeber und Auftragnehmer spätestens einig, ob das Projekt gestartet wird und was dabei genau herauskommen soll.
Spätestens jetzt liegt ein offizieller Starttermin für das Projekt fest.
35
Draft (29. Juni 2006)
Vorbereitungsphase
Nun ist der Projektleiter spätestens gefordert, detaillierte Pläne zu erstellen sowie sich nach geeigneten Mitarbeitern und anderen Ressourcen umzuschauen: Er
weiß jetzt genau, was zu tun ist.
Im Allgemeinen sollten die Pläne – zumindest in groben Zügen – bereits vorliegen. Auch ist oft schon ein Teil der zukünftigen Mitarbeiter bekannt und ein Teil
der benötigten Ressourcen vorhanden.
An der Feinarbeit kommt der Projektleiter allerdings nicht vorbei. Und zwar schon
bevor die Designphase beginnt.
Bei der Erstellung von Plänen kann Ihnen ein PM-Tool von Nutzen sein.
Die Arbeit abnehmen kann Ihnen ein derartiges Werkzeug allerdings nicht,
denken müssen Sie!
Typische Pläne
– Terminpläne mit Meilensteinen
– Kostenpläne (Wann fallen welche Kosten an?)
– Ressourcenpläne (Wann werden welche Ressourcen benötigt?)
– Aufgabenpläne (Wer ist mit welchen Aufgaben betreut?)
– Qualitätssicherung (Qualitätsmanagement)
– Risikovorsorge (Risikomanagement)
– Verfahren bei nachträglichen Änderungen (Änderungsmanagement)
– Benutzerschulung
Man beachte, dass Planung (im obigen Sinne) eigentlich ständig stattfindet. Es
gibt es oft keine dedizierte Feinplanungsphase – daher spreche ich auch von Vorbereitungsphase. Die Grobplanung kann schon im Rahmen der früheren Teilphasen erfolgt und genehmigt worden sein. Oder die Feinplanung liegt vollkommen
in der Verantwortung des Projektleiters und bedarf deshalb überhaupt keines formalen Reviews, sondern nur eines internen Reviews durch den Projektleiter. Falls
er dabei jedoch gravierende Zielkonflikte entdeckt, muss er vor Beginn der Designphase den Auftraggeber informieren, um eventuell die Ziele neu zu definieren
oder das Projekt abzubrechen.
Review
Eine Vorbereitungsphase zwischen Zielformulierung und echtem Projektstart (Beginn der Designphase) gibt es dennoch fast immer. Diese Phase bedarf – da sie
sich meist nur mit Planung und Ressourcenbeschaffung befasst – nicht unbedingt
Draft (29. Juni 2006)
36
eines formalen Reviews, da es den Auftraggeber meist nicht interessiert, mit welche Ressourcen das Projekt durchgeführt wird. Auch hier gilt aber, dass zumindest der Projektleiter oder ein Projektverantwortlicher (der nicht notwendigerweise auch der Projektleiter sein muss, sondern auch eine ranghöhere Person des
Auftraggebers sein kann) am Ende der Vorbereitungsphase Bilanz ziehen muss:
Kann das Projekt starten oder nicht? Wenn nein, wird wiederum der Auftraggeber
informiert.
Fazit: Meist handelt es sich beim Vorbereitunsphasen-Review um ein projektinternes Review.
2.1.2 Designphase (Entwurfsphase)
Spätestens jetzt startet das Projekt offiziell. Es sollte einen griffigen Namen und
am besten ein griffiges Logo haben.
Die Designphase ist die wesentlichste Phase, da sie das Fundament für das spätere
Produkt legt. Gravierende Fehler aus der Designphase können später kaum noch
ausgebügelt werden, außer wenn das Projekt im Sinne des Spiralmodells (siehe
Abschnitt 2.2) realisiert wird.
Wesentlich Ziel der Designphase: Festzulegen wie das Pflichtenheft realisiert
wird? (Dort steht nur was realisiert werden soll.)
Typische Aufgaben in der Designphase
– Entwicklung von Datenmodellen, Schnittstellendefinitionen, Ablaufplänen
etc.
– Entwicklung von Storyboards
– (grobes) Mediendesign (Screendesign, Audiodesign etc. )
– Erstellung von Funktionsmodellen, Simulation etc.
– rapid Prototyping (evtl. schon in Vorstudie)
– Tests: Auswahl von geeigneter Zielhardware, -software, Programmiersprachen, Datenbanksysteme etc.
– Beginn der Dokumentation!!!!
(Das Pflichtenheft ist Bestandteil der Dokumentation)
– Verfahren für
• Wartung, Versionspflege
• Backup und Recovery
• Qualitätssicherung und Tests
37
Draft (29. Juni 2006)
Datenschutz, Datensicherheit
Urheberrechte, Lizenzvereinbarungen
Installation in Zielumgebung
Umstellung von bisherigem Verfahren auf neues
(Bayerische Vereinsbank: Multimediaschulung für Windows NT)
• Schulung
•
•
•
•
Der Projektleiter muss entscheiden, welche Designmethoden und Designwerkzeuge eingesetzt werden (z. B. objektorientierte Modellierung gemäß UML), wer
welche Designaufgaben übernimmt, bis wann das Design steht etc.
Außerdem muss er mit der Soll-Ist-Überwachung beginnen: Wie weit weicht das
Projekt vom Plan ab? Gegebenfalls muss er gegensteuern. Darüberhinaus muss er
die Schätzungen für die Folgephasen verfeinern.
Hausbau ohne zentimetergenaue Baupläne: undenkbar!
Softwareentwicklung ohne Datenmodell und Design: der Regelfall!
(siehe S. 98 Kellner (1994)).
Wunschziel: Das Design beschreibt das Produkt so konkret, dass es nur noch kodiert werden muss. (Alternative: Spiralmodell; siehe Abschnitt 2.2)
Probleme
– Man kann keine „Lines of Code“ vorweisen.
– Die Projektdauer wird in Augen des Auftraggebers „künstlich“ verlängert.
– Der Auftraggeber will Ergebnisse sehen.
– Es blinkt und blitzt nichts.
– „Denken ist keine Arbeit.“
– Der „Hacker“ unter den Entwicklern will endlich richtig programmieren. Er
weiß eh, wie’s geht.
– Schlechte Projektleitung.
– Mangelhafte Kompetenz/Kreativität der Beteiligten.
– Sich an ein Design zu halten.
– Zeit drängt ⇒ „lieber anfangen“
Bei vielen Firmen ist Hacking verboten (wird trotzdem gemacht).
Grund: Firmen machen sich sonst von Hackern abhängig.
Unwartbarer Code kann nur weggeworfen und neu geschrieben werden.
Design wir oft nicht ernst genommen. Es gehört halt zu einem Projekt dazu (Kellner: Höflichkeitsakt). Man hält sich aber nicht das Design, sondern fügt es der
Draft (29. Juni 2006)
38
Projektdokumentation bei. Kellner: „Da ist alles sauber abgeheftet und stört nicht
bei der Arbeit.“
Designfehler sind verdammt teuer.
Beispiel: Y2K-Problem (Year-2000 problem)
Zweistellige Darstellung: 99 + 1 = 00 ⇒ 1999 + 1 = 1900
Hauptproblem: Finden von Problemcode in vielen Millionen Zeilen von Code
(LOC).
Hilfsprogramme: 90 000 DM pro 100 000 LOC
Erfolgsgarantie < 100 %
⇒ oftmals werden mehrere verschiedene Tools parallel eingesetzt
⇒ Vervielfachung der Kosten
Dennoch kamen die Unternehmen nicht an der Handarbeit vorbei.
Bemerkung
Das Argument „Die Speicherplatzvorteile einer Zwei-Byte-Lösung waren vor 30
Jahren wesentlich, da Speicher knapp war. Deshalb war das Y2K-Problem unvermeidbar.“ zieht nicht. In zwei Byte passen mehr als 65000 Jahre. Selbst in einem
Byte bringt man 256 Jahre unter. Das heißt: Zwei Byte für 100 Jahre bedeutet
Speicherplatzverschnitt.
Fazit: Es handelt sich ausschließlich um ein schlechtes Design, weil diese Art der
Datumsdarstellung allgemein üblich war und ist.
Weitere Datums-Probleme:
Unix: 1. 1. 1970 + 231 sec = 18. 1. 2038
DOS: 1980 − 2108 (Garantie bis 2035 – Danach ist laut Redmont DOS tot)
Windows95 (ohne Patch): – 2000 (2003 = C3)
Windows95 (mit Patch): Garantie bis 2036
weitere 4-Byte-Speicherplatz-Datums-Normen: ISO, Europa etc.
Problemlösung: 8 Byte =
ˆ 1018 sec = 3 · 1011 Jahre
Wenn die Menschheit nicht länger als die Dinosaurier leben (200 Mio Jahre) reichen 7 Byte :-)
Anmerkung
Es gibt viele verwandte Probleme wie z. B. das 49,7-Tage-Problem (4-Byte-Zähler
für millisekundengenaue Timer beginnen nach 4 294 967 296 Millisekunden =
49,7 Tagen wieder bei Null), Dow-Jones-Index > 10 000, GPS-Datum zählt nur
1024 Tage, fängt dann wieder bei Null an etc.
39
Draft (29. Juni 2006)
Beispiel Kuka Roboter GmbH: Roboter fielen alle 49,7 Tage für mehrere Stunden
aus. Der Fehler wurde allerdings meist erst nach 99,4 Tagen entdeckt, da Roboter
normalerweise immer Samstags installiert werden, um den Arbeitsablauf nicht zu
behindern (⇒ 49,7 Tage später ist ein Sonntag).
Geschätzte Kosten der Designfehler für das Y2K-Problem
(Quelle: CACM, Vol. 41, March 1998)
USA: 8.465.060 Personenmonate, $70.753.562.795 Kosten für Y2K-spezifische
Softwareprobleme
Weitere $125 Milliarden um Datenbanken und Data Warehouses zu reparieren.
Weitere Schätzungen
(Quelle: Information Week, 3/97, Abenteuerlustig ins nächste Jahrtausend,
S.36–38)
Juli 1997, Anpassung von DV an Y2K-Problem in deutschen Unternehmen:
4 % Planungsphase
13 % mit Korrekturen begonnen
21 % sehen keine Probleme
28 % sind unentschlossen
34 % noch keine Aktion geplant
Viele Unternehmen und Behörden behandelten das Y2K-Problem lange Zeit als
Randproblem, das sich irgendwie von selbst lösen sollte. Eine Mehrheit der Unternehmen hatte kein Budget für die Umstellung eingeplant.
Rund 30% alle Computersysteme waren nicht Jahr-2000-kompatibel.
Giga Information Group: Viele Firmen werden das Jahr 2001 nicht mehr erleben.
(So schlimm ist es dann doch nicht gekommen).
Kosten
(Quelle: Information Week, 1-2/98)
Spezialisten 1000 DM/Tag (Großbritannien 3000 DM/Tag)
Umstellungsdauer je Programm: 20 % benötigen 35 h, 50 % benötigen 20h, 30 %
benötigen 10 h ⇒ 20 h/Programm
Personenjahr: 1600 h, 125 000 DM (zu billig)
Kosten: $1 pro Programmcodezeile (LOC), $600 Milliarden weltweit,
IT-Abteilungen werden ca. 15 % mehr Personal benötigen
Draft (29. Juni 2006)
40
Hohe Reenineering-Kosten ⇒ IT-Ersatzinvestitionen werden in den kommenden
Jahren reduziert.
Erfahrungsgemäß werden nur 14 % aller größeren Entwicklungsvorhaben fristgerecht fertiggestellt.
Beispiel ARAG
(Quelle: Information Week, 1–2/98, S.30–33)
1989 provisorische Umstellung (da 10-Jahres-Policen für 1990 nicht mehr erfasst
werden konnten).
Seit 1996 Analyse einer dauerhaften Umstellung.
Abschluss des Projektes: 2005 – bis dahin kann man mit den Provisorien von 1989
leben.
„Externer“ Betreuer der Umstellung: Alldata, IT-Tochter der ARAG
Lösung, um 3800 Datenbanken nicht auch noch neu aufbauen zu müssen:
– Vierstellige Jahreszahlen werden in zweistellige Felder gepackt.
– Saubere Lösungen werden später angestrebt.
Die Alldata benötigt etwa 20 PJ um 4,6 Millionen Zeilen Code zu prüfen. Kosten:
5,6 Millionen Mark =
ˆ 1,20 DM/LOC. Diese Umstellungskosten sind sehr günstig,
da neuere Schätzungen von $1,50/LOC = 2,70 DM/LOC ausgehen.
Grund: Nur 250 000 Zeilen „Problemcode“. Der Rest konnte automatisch umgestellt werden.
Projektleiter: „Je älter ein Programm, desto spannender wird’s.“
Die Alldata gibt keine vertragliche Garantie auf 100 % richtige Umstellung. Die
Tests geschehen nicht in Simulationen, sondern in der Praxis.
BHF-Bank
(Quelle: Information Week, 1-2/98 S. 30 – 31, 34 – 35)
Umstellung von 6000 individuell entwickelte Anwendungen
(obige Kostenschätzung: 6000 · 20 h = 80 PJ)
Umstellung durch verschiedene Dienstleiter + eigene Mannschaft
Probleme: Suche nach Datumsfeldern in 10 Millionen LOC
Abnahmetests bei Projektende
Filetransfer von und zu Partnerunternehmen (Schnittstellendefinitionen)
41
Draft (29. Juni 2006)
Kosten:
ca. 15 Millionen Mark (grobe Schätzung; exaktes Volumen ist unbekannt; die Bank muss auf jedem Fall zahlen)
Projektleiter Moses: „Wenn wir als Bank zwei Tage nicht am elektronischen Zahlungsverkehr hängen, dann sind wir aus dem Geschäft.“
Notfallpläne: zusätzliche Mitarbeiter werden von anderen Projekten abgezogen
Vorbeugung gegen Notfälle: Cleanmanagement
Das heißt, dass ein Programm, das den Jahr-2000-Abnahme-Test bestanden hat,
bis zum Ende des Tests nicht mehr verändert werden darf (Ausnahme: neue
Jahr-2000-Probleme).
⇒ In Einzelfällen können andere Bugs monatelang nicht behoben werden.
Phase I (1996):
Strategie und Bestandserfassung
Phase II (1996/97): Detail-Analyse und Planung
Phase III (1997/98): Implementierung
Phase IV (1998/99): Gesamtintegrationstests
Beispiel für Designentscheidungen
Sortierverfahren: Welches ist für mein Problem geeignet?
Bubblesort:
Führe Folgendes solange durch, bis alle Nachbarn in der richtigen Reihenfolge stehen:
Gehe die ganze Objektliste durch:
Wenn zwei Nachbarn in der falschen Reihenfolge stehen, vertausche sie.
Beobachtung
– Dieser Algorithmus hängt von keiner Computersprache ab.
⇒ Die zu verwendende Sprache kann (relativ) unabhängig von den zu verwendenden Algorithmen gewählt werden.
– Der Algorithmus legt sich noch nicht auf eine Datenstruktur fest (Array,
verkettete Liste, Director-Propertylist, sortierter Baum, SQL-Tabelle).
– Der Algorithmus legt sich noch nicht auf einen Elementtyp fest (Integer,
String, Record etc.).
– Der Algorithmus legt sich noch nicht auf einen Vergleichsoperator fest (Integervergleich, Stringvergleich etc.)
Draft (29. Juni 2006)
42
– Der Algorithmus hat eine mathematisch bestimmbare Komplexität, abhängig von der Anzahl n der zu sortierenden Elemente:
best case: n − 1 Vergleiche, Worst Case: n · (n − 1) Vergleiche,
im Mittel O(n2 ) Vergleiche.
Es gibt noch viele weitere Sortierverfahren:
Quicksort
Hauptspeicherverfahren, Mittel O(n · log n), worst case O(n2 ) (oft bei bereits
sortierten Mengen)
Mergesort
auch für Datenmengen, die nicht in den Hauptspeicher passen geeignet, Mittel + worst case O(n · log n)
parallele Sortierverfahren
noch Forschungsgegenstand theoretisches Optimum O(log n) – noch kein Algorithmus bekannt; O(log 2 n) theoretische machbar, aber nur bei aberwitzig
vielen Prozessoren; Algorithmus O(n) für n 5 ein paar Milliarden (= alle
praktischen Fälle) mit konstanter Anzahl Prozessoren ist bekannt.
Quicksort ist im Mittel um einen konstanten Faktor schneller als Mergesort, kann
diese Geschwindigkeit aber nicht garantieren. Bubblesort ist für sehr kleine Datenmengen (< 100 Elemente) das schnellste Verfahren. Quicksort und Bubblesort
sortieren „in place“, d. h. ohne Zusatzspeicher.
Im Laufe der Designphase muss eine Entscheidung getroffen werden, welches
Verfahren verwendet wird.
Einflussfaktoren: Anzahl der zu sortierenden Elemente, verfügbare Datenstrukturen, verfügbare Software (Wiederverwendung), garantierte Antwortzeiten etc.
Beispiel: 1 000 000 Elemente zu sortieren, 1 000 000 Vergleiche pro sec.
O(n2 ): 1012 Vergleiche ⇒ 106 Sekunden · const1 = 11, 6 Tage · const1
O(n · log n): 106 · 20 Vergleiche ⇒ 20 Sekunden · const2
O(n): 106 Vergleiche pro CPU ⇒ 1 Sekunde · const3
O(log2 n): 40 Vergleiche pro CPU ⇒ 40 Mikrosekunden · const4
Quicksort kann wegen Worst-case-Komplexität keine Antwortzeiten garantieren,
Mergesort schon!
Aufgrund solcher and ähnlicher Probleme müssen Entscheidungen vor dem Programmieren getroffen werden. Während der Entwicklung wird oft nur mit geringen Datenmengen gearbeitet – da funktioniert auch der Bubblesort – die böse
Überraschung kommt dann im Realbetrieb.
43
Draft (29. Juni 2006)
Rucksack-Programmierung
Ohne sauberes Design kommt es während der Entwicklung und noch mehr während des laufenden Betriebs im Rahmen der Wartung zur so genannten Rucksack-Programmierung: Wenn ein im Design übersehener Sonderfall zu Problemen führt, wird ein Rucksack zum Code hinzugefügt: if <Sonderfall> then
<Rucksack> else <alter Code>. Viele Rucksäcke machen ein Programm unwartbar.
Teilphasen
Auch die Designphase kann in mehrere Teilphasen (mit Reviews) unterteilt werden:
– Entwicklung von Basiskonzepten
– Auswahl geeigneter Hardware, Software-Tools, Algorithmen etc.
(Vergleich von 20 objektorientierten Datenbanksystemen,
Vergleich von verschiedenen Präsentationstools,
Leistungsmessungen verschiedener Kompressions-Algorithmen,
Bestimmung der Qualität verschiedener Druckformate
etc.)
– Implementierung eines Prototypen (rapid Prototyping)
– Erstellung des endgültigen Designs (Datenmodelle, Storyboards etc.)
– usw.
Review
Am Ende der Designphase muss ein Review erfolgen.
Die Ergebnisse des Designs müssen dem Auftraggeber vorgestellt werden, insbesondere, wenn diese ernsthafte Änderungen an einen oder mehreren Projektzielen
zur Folge haben.
Die Entscheidung, die dann getroffen wird lautet wie immer:
weiter (mit oder ohne Zieländerung (z. B. niedrigere Kosten)):
Das Projekt wird gemäß Design realisiert.
zurück (mit oder ohne Zieländerung (z. B. höhere Kosten)):
Das Design wird überarbeitet.
stop:
Das Projekt wird ergebnislos beendet.
Draft (29. Juni 2006)
44
Es muss allen Beteiligten klar sein, dass im nächsten Schritt Designänderungen
nur noch schwer durchzuführen sind – und sehr teuer werden können. Jetzt ist
jede Struktur, jede Oberfläche, jedes Modul, jeder Datentransfer definiert. Es darf
nicht sein, dass während der Fertigungsphase neue Module und Datenstrukturen
entstehen (Ausnahme: Changemanagement).
Beispiel Hausbau
Solange nur Architektenpläne gezeichnet werden, kann eine Wand ganz einfach
verschoben oder ein zusätzliches Leerrohr eingezogen werden.
Wenn die Wände aber mal stehen, sind Veränderungen nur mit zusätzlichen Kosten möglich.
2.1.3 Fertigungsphase (Entwicklung)
In dieser Phase wird das Produkt realisiert.
Funktionsbeschreibungen und Design liegen vor, „Kreativität“ ist nicht mehr gefragt, „gute Ideen“ schaden meist mehr, als dass sie nützen.
Es kommt allerdings immer wieder zu Überraschungen:
– Probleme treten auf, die im Design nicht berücksichtigt wurden.
– Der Auftraggeber hat neue Wünsche (hier sind Diplomatie und starke Nerven vom Projektleiter gefordert).
– Das Team folgt nicht dem Design (schlechtes Design?, schlechte Menschenführung?, Design nur Show für Management?).
Aktivitäten in der Entwicklungsphase
– Einrichten der Entwicklungsumgebung
– Entwicklung von Software
– Erstellung von MM-Objekten (Audio, Video, Bild, Text)
– Erstellung des Gesamtsystems
– Testen des Produktes (Funktionalität + Qualität)
– Realisierung von Datensicherheit, Datenschutz, Backup und Recovery etc.
– Schreiben des Benutzerhandbuches und anderer Dokumentationen wie
Schulungsunterlagen, Systemhandbuch, Installationsanleitung etc.
– Vorbereitung der Projektübergabe (Systemumstellung, Abnahme durch den
Auftraggeber etc.)
45
Draft (29. Juni 2006)
Auch hier kann es wieder viele Teilphasen geben:
– Erstellung von MM-Objekten und Systemkomponenten
– Integrations- und Dokumentationsphase
– Qualitätssicherung
– α-Testphase
– β-Testphase
– γ-Testphase
Reviews
Am Ende der gesamten Fertigungsphase liegt folgendes vor:
– Das fertige Produkt
– Die fertige Dokumentation (Benutzerhandbuch, Systemhandbuch etc.)
– Nachweise über Projekterfolg in Hinblick auf die Ziele Funktionalität, Qualität, Termine und Kosten
– Ausgebildete Betreuer und/oder Benutzer
– Anweisungen für:
• Installation
• Wartung + Versionspflege
• Datenschutz + Datensicherheit
• Backup + Recovery
• etc.
– Detailpläne für Einführung und Umstellung
Der Review dient dazu, aufgrund dieser Unterlagen zu entscheiden, ob das Produkt eingesetzt wird und ab wann.
2.1.4 Einführungsphase
Typische Aktivitäten (evtl. auch Teilphasen):
– Installation in der Zielumgebung
– Testen und Pilotläufe im realen Umfeld (Systemtests)
– Inbetriebnahme
– Tuningmaßnahmen
Draft (29. Juni 2006)
46
– Erstellung von Mängellisten (Mängel gibt es jetzt immer noch)
– Übergabe an die Benutzer, das Rechenzentrum, die Systembetreuer
– Umstellung (inklusive Unterstützung durch Projektteam bis zum erfolgreichen Abschluss der Umstellung)
– Analyse während des Realbetriebs (auch für CD-ROM-Produktionen)
• Wird das Produkt korrekt genutzt?
• Wird es akzeptiert?
• Wird der erwartete Nutzen (voraussichtlich) erreicht?
• Greifen die Maßnahmen zu
∗ Benutzerunterstützung (Online-Hilfe!!!)
∗ Datenschutz und Sicherheit
∗ Qualitätssicherung
∗ etc.
– Schulung
Daneben müssen Projektabschlussarbeiten durchgeführt werden:
– Abnahmeprotokoll
• Abschlussbericht + Erfahrungsbericht
• Testbericht
• Nachweis des Projekterfolges
• Nachkalkulation (abschließender Soll/Ist-Vergleich)
– Analyse von Planabweichungen (Ursachen?)
– Auflösung des Projektteams
2.1.5 Review
Im Review findet die Abnahme durch den Auftraggeber statt.
Achtung: Die Abnahmekriterien müssen bereits vorher schriftlich vereinbart worden sein. Insbesondere muss klar sein, welche Testergebnisse vorliegen müssen.
2.1.6 Die Nutzungs- und Aufarbeitungsphase
Während der Nutzungsphase müssen Wartungs- und/oder Pflegearbeiten durchgeführt werden.
Wartung: Beseitigung von Problemen
47
Draft (29. Juni 2006)
Pflege:
Weiterentwicklung
Grady (1992):
– Auf 10 Fehler, die vor der Produktfreigabe durch Testen gefunden wurden, kommt ein Fehler, der nach der Freigabe gefunden wird (z. B.: „Zeitsprung“-Fehler wie Y2K)
– Es dauert die 4- bis 10-fache Zeit, um in einem umfangreichen, im Einsatz
befindlichen Software-Produkt einen Fehler zu finden und zu beheben, als in
einem Produkt kurz vor oder kurz nach der Freigabe.
Schlechte Entwicklungsarbeit
⇒ Fehlerkorrekturen während der Wartung (korrigierende Aktivitäten)
Sehr schlechte Entwicklungsarbeit
⇒ Neu- oder Umentwicklungen während der Wartung (sehr schlecht, aber leider
weit verbreitet)
Software, die erstmals freigegeben wurde, arbeitet normalerweise ineffizient, da
sie noch nicht optimiert wurde.
⇒ Optimierung während der Wartung (perfektionierende Aktivitäten)
Änderungen in der technischen Umgebung (z. B. neue HW), der Funktionen (z. B.
durch Gesetzesänderungen), der Oberflächen etc.
⇒ Anpassung während der Pflege (anpassende Aktivitäten)
Achtung: Wartung und Pflege machen einen Großteil des Aufwands während
des Lebenszyklusses eines Produktes aus: 2/3 – 4/5 (67 %–80 %) des Gesamtaufwands. Quelle
Aufarbeitungsphase
Für den Projektleiter ist das Projekt beendet. Für Pflege und Wartung ist meist
jemand anders zuständig.
Allerdings sollten er oder besser noch das ehemalige Team das Projekt noch einmal aufarbeiten.
Es gibt drei wesentliche Fragen, die beantwortet werden sollten:
1. Was leistet das Produkt, und was sollte es leisten?
2. Wie wurde im Projekt geschätzt und geplant? Wie wurden Termine und Budget eingehalten?
3. Wie war und ist die Zufriedenheit von Benutzern, Auftraggeber, Management,
Team, Projektleiter und externen Partnern?
Achtung: Es geht nicht um Anschuldigungen und Rechtfertigungen.
Draft (29. Juni 2006)
48
Neubewertung
Nach längerer Zeit (sechs bis zwölf Monaten) kann das Projektergebnis noch einmal neu bewertet werden.
– Hat sich der erwartete Nutzen eingestellt?
– Wenn nein, warum nicht?
Allerdings wird dies meist nicht gemacht:
– Es seien keine Kapazitäten frei (Personal und Zeit).
– Es sei viel zukunftsorientierter nach vorne zu blicken.
– Ändern kann man es sowieso nichts mehr.
Ja! Aber – man kann viele Problemen in zukünftigen Projekten vermeiden.
In seinem Roman „Der Termin“ (DeMarco (1998) erfindet Tom De Marco den Job
„Manager der Software-Metrik-Gruppe“, einen „Software-Archäologen“. Dessen
Aufgabe ist es, alle möglichen Informationen über alte Projekte „auszugraben“,
um damit die Schätzungen für aktuelle und zukünftige Projekte deutlich zu verbessern.
Der Projektmanager Tompkins verliert dadurch seinen persönlichen Assistenten,
weil dieser die besten Beziehungen zu den meisten Mitarbeitern im Unternehmen
hat. Der Berater des Projektmanagers gibt einen triftigen Grund dafür an, diesen
Verlust zu akzeptieren:
„Wir verlieren ihn nicht, wir geben ihm nur einen Job, bei dem er alle seine Talente
einsetzen kann. Das ist unsere Aufgabe als Manager. Mitarbeiter dort einzusetzen,
wo sie ihre Fähigkeiten und Talente am wirkungsvollsten einbringen können. Das
ist es, was Management wirklich bedeutet.“
2.2 Wasserfall- und Spiralmodell
Das im letzten Abschnitt vorgestellte Modell wird in der FachliteraturWasserfallund Spiralmodell Wasserfallmodell genannt. Dieser Begriff geht auf W. W. Royce
(Royce (1970)) zurück (vgl. Wasserfall-Modell (2005)). Er verwendet zwar nicht
den Begriff „waterfall model“, die von ihm verwendete Grafik erinnert aber an
einen Wasserfall.
Royce definiert dabei die Phasen: System Requirements, Software Requirements,
Analysis, Program Design, Coding, Testing and Operations.
Das von mir im letzten Abschnitt vorgestellte Wasserfallmodell ist im Prinzip wie
folgt aufgebaut (graphisch angelehnt an Royce):
49
Draft (29. Juni 2006)
weiter
Phase 1
Review 1
weiter
Phase 2
zurück
Review 2
stop
weiter
Phase 3
zurück
Review 3
stop
weiter
Phase 4
zurück
Review 4
stop
zurück
stop
Das Wasserfallmodell hat einen prinzipiellen Nachteil. Wenn am Ende einer
großen und damit langen und teuren Phase im Review ein Problem entdeckt wird,
kosten ein oder gar mehrere Schritte zurück viel Zeit und Geld.
Schon Royce hatte gefordert, den Schritt von einer Phase zur nächsten (heute Review genannt) mindestens zweimal zu durchlaufen. Er schlug auch vor, einzelne
Phasen je nach Komplexität mehrfach zu durchlaufen.
Später hat Barry Boehm den Gedanken, einzelne Phasen mehrfach zu durchlaufen, weiterentwickelt (Boehm (1988)). Sein Modell wird durch eine Spirale visualisiert, in der bestimmte Phasen immer wieder durchlaufen werden und dabei auf
die Ergebnisse des letzten Zykluses zurückgreifen. Barry Boehm nennt das Modell daher auch „Spiralmodell“. Er schlägt folgende vier Phasen vor, die zyklisch
mehrmals durchlaufen werden:
1. Klärung der Ziele, Anforderungen und Randbedingungen
2. Risikoanalyse, Erstellung eines Prototypen
3. Implementierung und Test
4. Review (Auswertung des aktuellen Zykluses, Planung des nächsten Zykluses
oder Projektende/-abbruch)
Draft (29. Juni 2006)
50
Ph. 1d
Ph. 1c
Ph. 1b
Ph. Ph. Ph. Ph.
4d 4c 4b 4a
Ph. 1a
Ph. 3a
Ph. Ph. Ph. Ph.
2a 2b 2c 2d
Ph. 3b
Ph. 3c
Ph. 3d
Am Modell von Boehm fällt auf, dass er ein großer Verfechter von Risikomanagement und Prototyping ist. Prinzipiell lässt sich jedoch sein Vorschlag auf jedes
Wasserfallmodell anwenden. Die Vorteile liegen auf der Hand: Ein Rückschritt
um eine oder gar mehrere Phasen ist wesentlich billiger und weniger zeitintensiv
als beim Wasserfallmodell. Design-Entscheidungen werden schrittweise getroffen und anschließend gleich überprüft. Auftretende Probleme werden frühzeitig
erkannt.
Ich schlage daher folgendes Modell vor: Nach Abschluss der Spezifikationsphase
(d. h., wenn eine Spezifikation vorliegt), werden Design und Fertigungsphase im
Sinne des Spiralmodells zyklisch durchgeführt.
In jedem Zyklus werden folgende Schritte durchgeführt:
1. Design
2. Implementierung
3. Test
Nach jedem Schritt wird ein internes Review durchgeführt, nach jedem Zyklus
oder einer gewissen Anzahl von Zyklen wird jeweils ein großes Review mit dem
Auftraggeber durchgeführt (Meilenstein).
Heutzutage hat sich im Projekt-Management ein neues Modewort etabliert: agil.
Man spricht von agilem Projekt-Management, agilen Prozessen etc. Das Wort agil
steht dabei für leicht, flexibel.
Der erste Vertreter des agilen Software-Entwicklungsprozesses war das Extreme
Programming von Kent Beck (Beck (2000)). Weitere Modelle, wie z. B. der Rational Unified Process, folgten.
51
Draft (29. Juni 2006)
Allen gemeinsam ist es, kurze Iterationszyklen einzusetzen. Also kann mit Fug
und Recht behauptet werden, dass das Spiralmodell von Boehm eine der wesentlichen Grundlagen des agilen Projektmanagements eingeführt hat.
2.3 V-Modell XT
(geschützte Marke der Bundesrepublik Deutschland)
Dieses Kapitel basiert auf dem Aufsatz: Bundesrepublik Deutschland (2004).
Das V-Modell definiert einen Leitfaden zum Planen und Durchführen
von Entwicklungsprozessen unter Berücksichtigung des gesamten System-Lebenszykluses:
– Es definiert die zu erstellenden Projektergebnisse.
– Es legt Verantwortlichkeiten eines jeden Projektbeteligten fest (Auftragnehmer + Auftraggeber).
– Es regelt detailliert „Wer“ „Wann“ „Was“ in einem Projekt zu tun hat (auch
die Kooperation zwischen Auftraggebern und -nehmern).
– Andere Richtlinien (ISO-Standards, Verfahrensanweisung CPM der Bundeswehr, Vorgänger V-Modell 97) sind weniger konkret, aber noch im Gebrauch.
– Für Projekte in Unternehmen und Einrichtungen des öffentlichen und militärischen Bereichs gedacht, sowie für Behörden und Dienststellen des Bundes
und der Bundeswehr.
– Auch für kleine mittelständische Unternehmen geeignet.
– Vertragsgrundlage, Arbeitsanleitung, Kommunikationsbasis
– Anwendbar auf möglichst viele Projektkonstellationen (Anpassung an konkretes Projekt heißt Tailoring).
– Zweistufiges Verfahren für Pflege und Erweiterung des V-Modells selbst;
Innovationszyklen in vergleichsweise kurzen Abständen.
(Fast) jedes Projekt, das gemäß dem V-Modell durchgeführt wird, besteht aus zwei
Projekten: einem Projekt aus Sicht des Auftraggebers (AG) und einem Projekt aus
Sicht des Auftragnehmers (AN). Für Projektphasen, die von beiden gemeinsam
beendet werden, müssen jeweils bestimmte, während der Projektphase vom AN
oder AG erstellte Dokumente von beiden akzeptiert werden.
Draft (29. Juni 2006)
52
AG
AN
Projekt 2
definiert
AG
AN
Projekt 1
genehmigt
AG
Anforderungen 3
festgelegt
AG
Projekt
4
ausgeschrieben
AN
Angebot 5
abgegeben
AG
AN
Änderungsplan
festgelegt
14
AG
AN
Projekt 6
beauftragt
AG
AN
Abnahme
erfolgt 13
Verifizierung
Validierung
System
spezifiziert
AN
7
System
entworfen
AG
AN
Projekt
15
abgeschlossen
AN
Lieferung 12
durchgeführt
AN
8
System
integriert
AN
Feinentwurf 9
abgeschlossen
Spezifikation und Zerlegung
AN
11
AN
Systemelemente
realisiert
10
Realisierung und Integration
Zyklen möglich (über Änderungspläne)
Dieser allgemeine Phasenplan kann durch Tailoring für ein bestimmtes Projekt
konkretisiert werden. Zum Beispiel kann ein Projekt mit zwei Zyklen definiert
werden:
1. Zyklus: Entwicklung eines Prototyps
2. Zyklus: Entwicklung des eigentlichen Systems
Besonderheiten des V-Modell XT
– eine Systementwicklung = zwei V-Modell-Projekte
(Systementwicklungsprojekt eines Auftraggebers +
Systementwicklungsprojekt eines Auftragnehmers)
– Schnittstellen zwischen beiden Projekten sind genau beschrieben
– Ausschreibung enthält Lastenheft + Vorgaben für Projekthandbuch
53
Draft (29. Juni 2006)
Projekt 1
genehmigt
Projekt
definiert
Prototyp
Projekt 6
beauftragt
2
Anforderungen
3
festgelegt
4
Projekt
ausgeschrieben
Abnahme
erfolgt 13
Änderungsplan
14
festgelegt
System
Projekt 6
beauftragt
Abnahme
erfolgt 13
15
Projekt
abgeschlossen
Abbildung 2.1: Phasenplan eines Systementwicklungs-Projektes mit Prototyp-Entwicklung aus Sicht des Auftraggebers (Tailoring-Ergebnis)
– Angebot enhält vertragsrelevante Teile des Projekthandbuches + Qualitätssicherungshandbuch
– Angebotsannahme endet mit Vertrag
– Pflichtenheft = Gesamtsystem-Spezifikation
– Projektstatusberichte: Projektfortschritt, -planung, Steuerungsmaßnahmen,
Qualitätssicherung, Problem- /Änderungslisten
– Lenkungsausschuss + Änderungsgruppen: beide Parteien sind vertreten
– Zwischen- + Endprodukte werden durch Lieferung an den Auftraggeber
übermittelt
– Validierung (Eignung des Produktes bezogen auf Einsatzzweck, „Are we
building the right product?“)
Verifikation (Produkt stimmt mit Spezifikation überein, „Are we building the
product right?“)
– Abnahmeerklärung des Auftraggebers nach Lieferung
– Projektabschlussbericht des Auftragnehmers
Draft (29. Juni 2006)
54
– bei notwendigen Änderungen kann zu früheren Phasen zurückgesprungen
werden (AG: Projekt beauftragt, Anforderungen festgelegt etc., AN: System
spezifiziert etc.)
– Auftragnehmer kann als Auftraggeber für Unterauftragnehmer fungieren ⇒
zwei weitere Teilprojekte gemäß V-Modell
– große Projekte müssen in Teilprojekte unterteilt werden
– Tailoring: Anpassung des V-Modells an konkretes Projekt
– Entwicklung gemäß dem Spiralmodell ist möglich
(Zyklen über das „V“ einschließlich Änderungsmodul)
55
Draft (29. Juni 2006)
Draft (29. Juni 2006)
56
Kapitel 3
Schätzung
Schätzungen (Zeit, Kosten und auch Ressourcen) werden immer schon in den
ersten Projektphasen (spätestens in der Definitionsphase) erstellt und benötigt.
Diese primären Schätzungen werden allerdings laufend angepasst.
Hauptproblem: In den frühen Phasen eines Projektes kann der Aufwand
aufgrund sehr vieler unbekannter Größen meist nicht genau abgeschätzt werden.
Andererseits will der Auftraggeber wissen, was es kostet und wann es fertig ist.
1. Lösung: Man legt sich nicht fest
⇒ kein Projekt
2. Lösung: Man sagt irgendein Datum und irgendeinen Preis
⇒ politische Daten, die nichts mit dem Projekt zu tun haben
⇒ vermutlich große Abweichungen
3. Lösung: standardisierte oder individuelle Schätzmethoden
Hr. Abraham, Vorstand der deutschen Lufthansa: „Prognosen sind besonders dann
schwierig, wenn sie sich auf die Zukunft beziehen.“
1. Grundregel: Schätzungen sind keine Weissagungen, d. h. keine verbindlichen
Voraussagen.
2. Grundregel: Je ferner die Zukunft, desto schwieriger sind die Schätzungen
Die Schätzungen werden während des Projektes laufend überwacht und so früh
wie möglich korrigiert. Also nicht erst am Ende der Projektlaufzeit nachsehen,
was noch zu tun ist und dann eine Verlängerung um 12 Monate beantragen.
3.1 Die Schätzgrößen
Die Zielparameter Zeit, Kosten sowie Funktionalität und Qualität beeinflussen die
Schätzung.
57
Draft (29. Juni 2006)
Funktionalität
Qualität
+
+
-
-
+ +
-
Zeit (Dauer)
Kosten
Wenn an einem Parameter gedreht wird, hat das einen Einfluss auf einen oder
mehrere andere Parameter.
Im Teufelsquadrat von Sneed (1987) ist die Produktivität eines Entwicklungssystems als viereckige Fläche dargestellt. Der Flächeninhalt muss (in weiten Teilen) konstant bleiben, auch wenn die Ziele geändert werden, da die Produktivität
i. Allg. durch keine wie auch immer geartete Maßnahmen kurzfristig verbessert
werden kann (Produktivitätsverbesserungen sind nur mit langer Vorlaufzeit möglich (DeMarco (1998)). Das heißt, wenn zum Beispiel mehr Funktionalität in weniger Zeit erstellt werden soll, leidet darunter die Qualität und die Kosten steigen
(Überstunden, bessere Werkzeuge, externe Profis etc.).
Noch eine Warnung: Es ist insbesondere nicht möglich, die Produktivität eines
Teams durch Vergrößerung beliebig zu steigern, da der Kommunikationsaufwand
wächst. Es gibt nicht nur bei Parallelrechnern keinen optimalen Speedup, sondern auch bei parallel arbeitenden Menschen. Eine Vergrößerung eines Teams hat
zudem zunächst einen negativen Effekt: Neue Mitglieder müssen eingearbeitet
werden, alte Mitglieder werden dadurch von ihrer eigentlichen Arbeit abgehalten. Außerdem gilt grundsätzlich: Ein überbesetztes Team leistet stets weniger als
ein richtig besetztes. Das heißt aber nicht, dass die optimale Teamgröße sich im
Verlauf des Projektes nicht ändern kann. Im Allgemeinen ist es gut, ein Projekt
mit einem kleinen Team zu beginnen und dann, wenn alles spezifiziert ist und
es nur noch um Routine-Arbeiten geht, zu vergrößern. An einem Neubau arbeiten zunächst auch nur ein paar Architekten und Bauingenieure, bevor eine große
Anzahl von Bauarbeitern loslegt.
Draft (29. Juni 2006)
58
Für die Schätzungen hat das folgende Auswirkungen: Bei mindestens einem
Parameter sollte man einen Fehlerpuffer einplanen („on time“ oder „on budget“
– evtl. auch „on time and on budget“ mit optionalen Anteilen bei Funktionalität
und/oder Qualität).
3.1.1 Divide et Impera
Der Pötzseil-Case
(siehe Kupper (1993))
„Pötzseil“ ist im Kölner Sprachgut das Seil, an dem der Eimer in einem Brunnen
herabgelassen wird. Der Test verläuft wie folgt: Ein längeres Seil wird in zwei
gleichlange Teile zerschnitten. Die eine Hälfte wird in 5-8 unterschiedlich lange
Teile zerschnitten.
1. Test:
Länge des halben Seils schätzen.
2. Test:
Länge der Einzelstücke schätzen und Summe bilden.
3. Test:
Länge der Einzelstücke nacheinander schätzen, nach jeder Schätzung
wird die richtige Länge verraten. Anschließend wird wieder die Summe
gebildet.
Ergebnis: „Divide et impera“ (teile und herrsche) führt zum Ziel; Erfahrung verbessert das Ergebnis deutlich. (Studentenresultate einfügen)
Gewicht des Eifelturms
π·Daumen-Schätzungen von Studenten, die die PM-Vorlesung von W. Kowarschick besuchen, streuen sehr weit (100 t bis 100.000.000 t).
(gute) Schätzung
Zusammengedrückt nimmt der Eifelturm eine Fläche von ca. 2m · 2m ein, Höhe
ca. 300m, Stahl: 7,874 t/m3
⇒ Gewichtsschätzung: 300m · 2m · 2m · 7, 874 t/m3 = 9448, 8 t
Realität (Eiffelturm (2006))
Original-Gewicht: 7300 t (=4
ˆ kg/cm2 =
ˆ Erwachsener auf Sitzfläche eines Stuhls)
heutiges Gewicht: 10.000 t (wg. Beton statt Stahl ⇒ Rückbau geplant)
Original-Höhe:
312,27 m (mit Flagge)
heutige Höhe:
324,00 m (mit Antenne)
59
Draft (29. Juni 2006)
3.1.2 Akzeptierbare Abweichungen
Man sollte seine Schätzungen gleich von Anfang an mit einem
Unsicherheitsfaktor versehen. Wie sagt Goldratt in jedem seiner Bücher?
„Murphy lebt!“
Außerdem sollte (muss) die Planung möglichst feingranular, d. h. phasen-weise
bzw. vorgangsweise erfolgen. Feingranulare Schätzungen sind viel genauer als
grobe Gesamtschätzungen (vgl. Pötzsei-Case).
Die Schätzungen für spätere Phasen werden i. Allg. einen größeren Unsicherheitsfaktor enthalten. Diese dürfen allerdings nicht als Freibrief verstanden werden.
Schätzungen müssen von Anfang an sorgfältig durchgeführt werden.
Am Anfang von Kapitel 2 hatten wir folgende Schätzformeln eingeführt:
P
geschätzte Projektdauermin = (geschätzte Dauer n inkl. Review · rn,min)
P
′
geschätzte Projektkostenmin = (geschätzte Zeit n inkl. Review · rn,min
)
P
geschätzte Projektdauermax = (geschätzte Dauer n inkl. Review · rn,max )
P
′
geschätzte Projektkostenmax = (geschätzte Zeit n inkl. Review · rn,max
)
Beispiel
′
′
= 1,05)
= 0,95, r1,max
Phase 1: +/- 5 % Kostenabweichung (r1,min
′
′
= 1,07)
= 0,93, r2,max
Phase 2: +/- 7 % Kostenabweichung (r2,min
′
′
= 1,10)
= 0,90, r3,max
Phase 3: +/- 10 % Kostenabweichung (r3,min
..
.
Phase 10:
′
′
= 0,80, r10,max
+/- 20 % Kostenabweichung (r10,min
= 1,20)
Das heißt, bei gegebenen Gesamtprojektkosten von beispielsweise 100 000 Euro
liegt für jede Phase eine Kostenmarge fest:
Phase 1: 5000 Euro +/- 250 Euro
Phase 2: 30 000 Euro +/- 2 100 Eur
Phase 3: . . .
Außerdem sollte der prozentuale Anteil des Aufwands der einzelnen Phasen vom
Gesamtaufwand geschätzt werden.
Phase 1: 5 % des Gesamtaufwands
Phase 2: 30 % des Gesamtaufwands
Phase 2.1: 10 % des Gesamtaufwands
Draft (29. Juni 2006)
60
Phase 2.2: 20 % des Gesamtaufwands
Phase 3: . . .
Damit können Abweichungen, die sich in einer Projektphase ergeben, auf das
Gesamtprojekt fortgeschrieben werden.
Beispiele (Quelle: vermutlich Information Weeks)
Bertelsmann:
Definition: 30 %
Design:
30 %
Codierung: 15–20 %
Test:
20–25 %
Hewlett-Packard:
Definition: 18 %
Design:
19 %
Codierung: 34 %
Test:
29 %
Solange der Projektleiter im Rahmen der vorgegebenen Zeit- und Kostenmargen
bleibt, gibt es wenig Grund gegenzusteuern. Bei günstigerem Abschneiden kann
er sogar einen Überschuss in die nächste Phase mitnehmen. Bei Annäherung an
die Obergrenze muss er allerdings Maßnahmen ergreifen, damit er diese Grenze
nicht überschreitet. Eine sich abzeichnende Grenzüberschreitung muss sofort zu
einem außerordentlichen Zwischenreview führen.
Bei jedem Review sollten neue Schätzungen für die Restphasen auf Basis der
bisherigen Erfahrungen stattfinden. Sind beispielsweise die Kosten bisher um 3 %
überschritten worden und wird der geschätzte prozentuale Zusammenhang zwischen den einzelnen Phasen nicht geändert, so heißt das, dass die Schätzkosten
für die Folgephasen ebenfalls um je 3 % erhöht werden müssen (sonst müssen
evtl. nur die geschätzten Gesamtkosten korrigiert werden).
Andererseits können nach einem Review die Unsicherheitsintervalle i. Allg. nach
unten korrigiert und die Schätzungen des prozentualen Anteils der Einzelphasen am Gesamtaufwand verbessert werden. Daraus ergeben sich neue (minimale,
zu erwartende und maximale) Gesamtkosten, die vom Geldgeber (Auftraggeber
oder Management des Auftragnehmers) akzeptiert oder abgelehnt (d. h. Projektabbruch) werden müssen.
Beachten Sie, dass für alle Schätzungen sowohl eine Abweichung nach oben, als
auch nach unten eingeplant wurde. Viele Projektleiter interpretieren Schätzungen
allerdings anders. Alles kostet mindestens soviel und dauert mindestens so lange
wie geschätzt. Das heißt, es kostet nie weniger und dauert nie kürzer als geschätzt.
Höhere Kosten und längere Laufzeiten kommen dagegen sehr oft vor.
Die Gründe für dieses Schieflage sind meist gar nicht unseriöse Schätzungen, sondern die Angst, beim nächsten Projekt weniger Geld bzw. Zeit zu bekommen,
wenn man zugibt, dass die Schätzungen (augenscheinlich) zu „großzügig“ waren. Wenn die Unternehmer nichts gegen dieses Angst unternehmen, dann kostet
61
Draft (29. Juni 2006)
sie das viel Geld. Ein gesundes Unternehmen weiß, dass die Realität in beiden
Richtungen von einer Schätzung abweichen kann, nach oben und nach unten!
Ein typisches Negativbeispiel dafür, dass diese Erkenntnis nicht immer vorhanden ist, ist das berüchtigte Dezemberfieber z. B. in Einrichtungen des öffentlichen Dienstes: Wenn zugewiesene Gelder in einem Jahr nicht vollständig aufgebraucht werden, geht der Geldgeber davon aus, dass der Bedarf prinzipiell zu hoch
geschätzt wurde – und kürzt die Mittelzuweisungen in den Folgejahren entsprechend. Aus diesem Grund werden spätestens im Dezember alle noch vorhandenen
Geldmittel für irgendetwas ausgegeben, nur damit die Zuweisungen im nächsten
Jahr nicht gekürzt werden.
Aufgrund der Tatsache, dass es bei der hier vorgestellten Art der Schätzung verschiedene Schätzwerte gibt (Minimum, Erwartungswert, Maximum), sollten auch
die Schätzungen dreifach durchgeführt werden.
Projektkosten/dauer unter optimalen Bedingungen
Projektkosten/dauer unter normalen Bedingungen
Projektkosten/dauer unter schwierigen Bedingungen (worst case ohne Katastrophen)
3.2 Dreipunkt-Schätzung
Mit Ausnahme von PERT (Quelle?) basieren die etablierten Projektmanagement-Methoden auf der so genannten Ein-Punkt-Schätzung: Für jede zu schätzende Dauer und jeden zu schätzenden Kostenfaktor wird ein Wert geschätzt –
und dann für bare Münze genommen.
Das wirkliche Leben ist jedoch anders. Murphy lebt! Wenn man mich fragt, wie
lange ich von zu Hause zu meinem Arbeitsplatz braucht, antworte ich 20 Minuten.
Nur – eigentlich sind es nie genau 20 Minuten. Mal schaffe ich es in 15 Minuten
(alle Ampeln grün, kein Laster hält mich auf), das andere Mal stehe ich im Stau
auf der B17 und komme erst nach einer Stunde an.
Welche Schätzung soll ich also verwenden?
– 15 Minuten?
(Das schaffe ich höchstens zweimal im Jahr.)
– 20 Minuten?
(Das schaffe ich oft, manchmal geht es schneller, meist dauert es ein paar
Minuten länger)
Draft (29. Juni 2006)
62
– 60 Minuten?
(Das schaffe ich so gut wie immer, meist bin ich aber viel schneller)
Wenn man einen Mitarbeiter fragt, wie lange er für einen Vorgang braucht, hängt
die Antwort von seiner Erfahrung ab. Ein Anfänger würde im obigen Fall mit 15
Minuten rechnen. Er sieht die möglichen Probleme, die ihn behindern, noch nicht
und fällt mit dieser Schätzung erst einmal auf die Nase. Ein Profi antwortet „30
Minuten“, wenn es sich um einen nicht so wichtigen Vorgang handelt. Bei einem
wichtigen Vorgang antwortet er „60 Minuten“, weil er sich sicher ist, dass er ihn
in dieser Zeit auch erledigen kann.
Und sein Chef und dessen Chef schlagen vorsichtshalber jeder nochmal 30 Minuten drauf, für den Fall, dass der Big-Boss das Ganze um 20 % kürzt. Uns so
kommt zum Schluss eine Schätzung von 96 Minuten zu Stande.
Das Problem ist, das der Profi die von ihm oder seines Chefs genannte Zeit, d. h.
die gesamten 96 Minuten, auch nutzen wird, da ansonsten die Schätzungen für
unglaubwürdig gehalten würden (vgl. Dezemberfieber).
Erschwerend kommt hinzu, dass er für die Ereldigung mehr Zeit als notwendig hat
und deshalb leicht dem Studentensyndrom erliegt (Abbildung 3.1, vgl. Goldratt
(2002))
Wenn im letzten Drittel etwas schief geht, dauert die Realisierung noch länger als
geschätzt, obwohl bereits sehr viel Puffer in der Schätzung enthalten war.
Aus langjähriger Erfahrung kann ich Goldratts Beobachtungen bestätigen: Eine
Diplomarbeit wird normalerweise erst am Stichtag, häufig sogar erst 5 Minuten
vor der angegebenen Uhrzeit abgegeben – oder es wird eine Verlängerung beantragt. Es kommt schon mal vor, dass eine Arbeit einige Tage „zu früh“ abgegeben
wird. Aber es passiert nur äußderst selten, dass sie einen Monat vor dem Stichtag
fertig ist. Und das ist auch nur dann der Fall, wenn ein anderer triftiger Grund für
diese Eile vorliegt (Student hat Zusage für Arbeitsplatz o.Ä.).
Wie löst man nun dieses Problem?
Tom de Marco (DeMarco and Lister (2003)) und Eliyahan Goldratt (Goldratt
(2002) schlagen vor, Unsicherheiten explizit zu managen.
An Stelle eines einzigen Wertes werden für jeweils drei Schätzwerte ermittelt.
– bester Fall (best case)
– normaler Fall (normal case)
– schlechtester Fall (worst case)
Mit diesen Werten kann die Dichtefunktion einer Wahrscheinlichkeitsverteilung
festgelegt werden. Goldratt und de Marco verwenden Dichtefunktionen, die gut
durch die Beta-Verteilung beschrieben werden können. Aber auch die einfachere
Dreiecksverteilung leistet gute Dienste (vgl. Gartner (1999)).
63
Draft (29. Juni 2006)
Arbeitseifer
Oh, jetzt wird’s
aber knapp
anfängliche
Begeisterung
Ist ja noch Zeit!
Ende
Start
2/3 Zeit
1/3 Arbeit
Zeit
1/3 Zeit
2/3 Arbeit
Abbildung 3.1: Studentensyndrom
Dichte der Dreiecksverteilung
(vergleiche Dreiecksverteilung (2006))
Es seien a, b, c ∈ R mit a < b und c ∈]a, b[. Dann ist die Dichte der Dreiecksverteilung folgendermaßen definiert (vgl. Abbildung 3.2):

2(x−a)


 (b−a)(c−a) für a ≤ x ≤ c
2(b−x)
f(x) :=
für c < x ≤ b
(b−a)(b−c)



0
sonst
Dichte der Beta-Verteilung
(vergleiche Beta-Verteilung (2006))
Es seien a, b, α, β ∈ R mit a < b und α, β ≥ 1. Dann ist die Dichte der Beta-Verteilung folgendermaßen definiert (vgl. Abbildung 3.2):
Draft (29. Juni 2006)
64
Abbildung 3.2: Beta-Verteilung und Dreiecksverteilung
f(x) :=

 (x−a)α−1 ·(b−x)β−1
B(α−β)(b−a)α+β−1
0
für a ≤ x ≤ b
sonst
Dabei ist die Beta-Funktion folgendermaßen definiert:
B(α, β) :=
Z1
0
tα−1(1 − t)β−1 dt =
Γ(α) · Γ(β)
Γ(α + β)
Die Beta-Funktion kann also durch die Gammafunktion, das ist die Verallgemeinerung der Fakultätsfunktion n!, ausgedrückt werden (Bronstein and Semendjajew (1980)).
Unabhängig davon, welche Wahrscheinlichkeitsverteilung man verwendet, sagt
diese aus, dass Wolfgang spätestens nach 60 Minuten mit Sicherheit in der FH
ist. Dies ebtspricht allerdings nicht der Realität. Wolfgang kann auch einen Unfall ahben und erst Tage oder Wochen später oder auch gar nicht mehr kommen.
Während man extrem lange Verzögerungen theoretisch auch mit extrem langgezogenen Beta-Verteilungen modellieren kann wird der Fall, dass ein Vorgang und
damit evtl. das ganze Objekt beendet wird von den vorgestellten Vereiltungsfunktionen nicht erfasst.
65
Draft (29. Juni 2006)
Tom de Marco DeMarco and Lister (2003) schlägt vor, den vollständigen Projektabbruch als ein explizites Risiko zu modellieren.
Im Folgenden gehen wir jedoch davon aus, dass die Dauer eines Vorgangs mit
einer Dreipunktschätzung (d. h. mit einer Dreiecks oder Beta-Verteiltung) hinreichend genau beschrieben werden kann.
Welche Informationen hält diese Beschreibung für uns bereit? Um diese Frage
zu beantworten, muss man sich ein wenig genauer mit den Eigenschaften von
Wahrscheinlichkeits-Verteilung befassen.
Zu jeder stetigen Dichte f(x) gibt es die Wahrscheinlichkeitsverteilungs-Funktion
F (x):
Rx
P (X ≤ x) := F (x) :=
f(t) dt
−∞
Für die Dreiecksverteilung gilt (Dreiecksverteilung (2006)):


0
für x < 0



2

(x−a)
0 +
für a ≤ x ≤ c
(b−a)(c−a)
F (x) :=
2
(b−x)


1 + (b−a)(b−c) für c < x ≤ b




1
für b < x
Damit kann man nun berechnen, wie wahrscheinlich es ist, dass Wolfgang spätestens nach 20 Minuten in der FH ist (a = 15, b = 60, c = 20)
F (20) = 0 +
(20 − 15)2
25
1
=
= =
ˆ 11, 1 %
(60 − 15)(20 − 15)
45 · 5
9
Es ist schon erstaunlich, dass ich es im Schnitt nur jede zweite Woche wirklich in
20 Minuten oder weniger schaffe (wenn man diese Verteilung zu Grunde legt).
Man kann die Frage auch umkehren. Wie viel Fahrtzeit muss ich einplanen, damit
ich in 50 % oder gar 95 % der Fälle rechtzeitig ankomme?
Dies kann mit Hilfe der Umkehrfunktion F −1 für die Verteilungsfunktion F berechnet werden:
(
√
für p ≤ m
a + (b − a) mp
−1
p
F (p) :=
b − (b − a) (1 − m)(1 − p) für p > m
c−a
wobei m := b−a
F −1(p) wird p-Quartil genannt.
Das 50 %-Quartil und das 90, %-Quartil berechnen sich für unser Beispiel wie
folgt:
Draft (29. Juni 2006)
66
5
1
m = 20−15
60−15 = 45 = 9
r
1
F −1(0, 5) = 60 − (60 − 15) (1 − )(1 − 0, 5)
9
r
8 1
= 60 − 45
·
9 2
= 30
r
1
−1
F (0, 95) = 60 − (60 − 15) (1 − )(1 − 0, 95)
9
r
8
· 0, 05
= 60 − 45
9
= 50
Um also in 50 % der Fälle rechtzeitig in die FH zu kommen, müsste ich 30 Minuten Fahrtzeit einplanen. Und 50 Minuten Fahrzeit ergeben sich, wenn ich bei 95 %
aller Fahrten rechtzeitig in die FH zu kommen wollte.
Die Realität sieht allerdings anders aus. Staus passieren in der Früh nur sehr selten.
Die folgende Beta-Verteilung beschreibt die Situation daher besser:
Abbildung 3.3: Beta-Verteilung
Leider lassen sich die Verteilungsfunktion und die zugehörige Umkehrfunktion
der Beta-Verteilung nicht mit geschlossenen mathematischen Formeln beschreiben, sondern müssen algorithmisch (z. B. mit Fixpunktiteration) ermittelt werden.
67
Draft (29. Juni 2006)
Tools wie Mathcad stellen allerdings geeignete Funktionen zur Verfügung (Statistik (2006))
Für die obige Beta-Verteilung ergeben sich folgende Werte:
F (20)
= 0, 284
−1
F (0, 5) = 23
F −1(0, 95) = 35
(50 %-Quartil)
(95 %-Quartil)
Das heißt, in knapp 30 % der Fälle schaffe ich es wirklich in 20 Minuten oder
weniger. Wenn ich 23 Minuten einplane, bin ich in 50 % aller Fälle pünktlich.
Gehe ich sagar 35 Minuten vor einem geplanten Termin aus dem Haus, komme
ich nur noch in 5 % der Fälle zu spät. Diese Zeiten treffen die Realität ganz gut.
3.2.1 Erwartungeswert und Standardabweichung
Das 50 %-Quartil kann relativ gut mit dem Erwartungswert abgeschätzt werden.
50 %-Quartil und Erwartungswert unterscheiden sich allerdings je unsymetrischer
die Verteilung ist.
Erwartungswert einer Dreiecksverteilung:
a+b+c
3
Erwartungswert einer Beta-Verteilung:
µ(xD ) =
µ(xB ) =
αb + βa
α+β
Für unser Beispiel ergibt sich:
15 + 60 + 20
= 31, 7 ≈ 30
3
1, 74 · 60 + 6, 91 · 15
µ(xB ) =
= 24, 1 ≈ 23
1, 74 + 6, 91
µ(xD ) =
(50 %-Quartil)
(50 %-Quartil)
Die Streuung um diesen Erwartungswert wird mit Hilfe der Standardabweichung
berechnet:
q
b−a
c−a
σ(xD ) =
2(1 − m + m2 ), wobei m =
6
b−a
s
αβ
b−a
σ(xB ) =
α+β α+β+1
Für unser Beispiel ergibt sich:
Draft (29. Juni 2006)
68
σ(xD ) =
60 − 15
6
s
2(1 −
60 − 15
σ(xB ) =
1, 74 + 6, 91
r
12
1
+ ( )) = 10, 1
9
9
1, 74 · 6, 91
= 5, 8
1, 74 + 6, 91 + 1
3.3 Zentraler Grenzwertsatz der Statistik
Zur Abschätzung der Gesamtdauer einer Folge von Vorgängen, bei denen die jeweilige Einzeldauer mit Hilfe irgendwelchen Verteilungen (Dreieecksverteilung,
Beta-Verteilung etc.) geschätzt wird, kann mit dem zentralen Grenzwertsatz der
Statistik (Bronstein and Semendjajew (1980)) erfolgen.
Dieser besagt, dass unter bestimmten Voraussetzungen, die Summe einer Menge
von Zufallsgrößen X1 , . . . , Xn angenähert normalverteilt sind. Der Erwartungswert, die Varainz und die Standardabweichung dieser Normalverteilung können
dabei wie folgt abgeschätzt werden:
!
n
n
X
X
µ(Xi )
=
µ
i=1 ! i=1
n
n
X
X
=
V ar(Xi )
V ar
i=1
i=1
und, da die Standardabweichung die Wurzel aus der Varianz ist:
! v
u n
n
X
uX
σ
= t (σ(Xi ))2
i=1
2·σ
3·σ
etc.
n
X
!
i=1
!
n
X
i=1
i=1
v
u n
uX
= t (2 · σ(Xi ))2
v i=1
u n
uX
= t (3 · σ(Xi ))2
i=1
Der Erwartungswert der Summe ist gleich der Summe der Erwartungswerte und
die Varianz der Summe ist die Summe der Varianzen. Besonders interessant ist,
dass die Standardabweichung der Summe die Wurzel aus der Summe der Quadrate
der einzelnen Standardabweichungen
ist. Dieser Wert ist i. Allg. deutlich kleiner
P
als die Summe σ(Xi ) der einzelnen Standardabweichungen.
69
Draft (29. Juni 2006)
Man kann davon ausgehen, dass jedes „normale“ Projekt die Voraussetzungen
(Bronstein and Semendjajew (1980)) des Zentralsatzes erfüllt: Die Unsicherheiten
der Dauer der einzelnen Vorgänge sind voneinander unabhängig, die Vorgangsdauern sind gleichmäßig (d. h. es gibt keine Vorgänge, die einen Großteil des Gesamtprojektes ausmachen), es gibt „zahlreiche“ Vorgänge etc.
Standardabweichung
Mit Hilfe der Standardabweichung kann die Unsicherheit einer Abschätzung
quantifiziert werden. Für eine Normalverteilung gilt dabei die 67/95/99,7-Regel: Mit einer Wahrscheinlichkeit von 67 % liegt der Schätzwert (d. h. in unserem Fall die Gesamtdauer) im Intervall ±1σ um den Erwartungswert herum. Mit
95 % liegt er im Bereich [µ − 2σ, µ + 2σ] und mit 99,7 % liegt er im Bereich
[µ − 3σ, µ + 3σ]. Das heißt, in 0,15 % aller Fälle dauert ein Projekt länger als
µ + 3σ.
Um für eine Folge Vi von (kritischen) Vorgängen abzuschätzen, bis zu welchem
Zeitpunkt alle Vorgänge mit 99,85 % Wahrscheinlichkeit beendet sind, geht man
daher folgendermaßen vor:
1. Man ermittelt für alle Vorgnänge Vi den jeweiligen Erwartungswert µi und
die Standardabweichung σi ;
2. Man berechnet den Erwartungswert und
die Stadnardabweichung der SumqP
Pn
n
2
mer der Vorgänge: µ = i=1 µi , σ =
i=1 σi ;
3. Man berechnet den Wert µ + 3σ.
3.4 Schätzverfahren
Schätzungen können umso genauer ausfallen, je mehr vergleichbare Projekte oder
Situationen bekannt sind.
Hausbau: Kosten für ein Einfamilienhaus können mit einer Genauigkeit von weniger 1000 Euro (=
ˆ ca. 1 %) angegeben werden.
Umzug nach Berlin:
Abweichungen um mehrere 10 % sind möglich.
1. Flug zum Mond/Mars:
Gesamtkosten können erst spät abgeschätzt werden.
Es gibt Methoden zum Schätzen von Aufwand (Kosten, Zeit und Ressourcen), die
auf den Daten von vergleichbaren, bereits abgeschlossenen Projekten relativ gute
Schätzungen für neue Projekte ermöglichen.
Draft (29. Juni 2006)
70
3.4.1 Die Function-Point-Methode
Diese Methode wurde von Alan Albrecht bei IBM in den späten 70er Jahren entwickelt. Sie basiert auf Analogieschluss und Gewichtung. (Quellen)
Grundidee: Ein SW-Vorhaben wird in verschiedene Grundfunktionen zerlegt:
– externe Eingaben
– externe Ausgaben
– externe Abfragen
– externe Schnittstelle
– logische Datenbestände
Dann wird für jede Grundfunktion Art (siehe oben), Umfang (z. B. LOC) und
Komplexität (leicht, mittel, schwer) festgelegt. Abhängig von einer firmenspezifischen Function-Point-Funktion f(Art, Umfang, Komplexität) werden jeder
Grundfunktion so genannte Function-Points zugeordnet.
Aus der Summe der Functionpoints kann der Gesamtaufwand abgeschätzt werden.
Function Points
bereits abgeschlossene
Projekte
statistischer Mittelwert
Max
6000
5000
Mittel
4000
Min
3000
2000
1000
100 200
300 400
500 600
Personenmonate
Vorteile:
– Die Kurve wird mit jedem abgeschlossenen Projekt genauer.
– Man hat ein robustes Schätzwerkzeug zur Verfügung.
– Man kann auch 3-Punkt-Schätzungen (Min, Mittel, Max) vornehmen.
Nachteile:
– Die Daten vieler vergleichbarer Projekte (ähnliche Aufgaben,
ähnliche Anzahl Mitarbeiter) müssen zur Verfügung stehen.
71
Draft (29. Juni 2006)
– Die Aufwandsschätzung (z. B. LOC) je Grundfunktion ist zu Anfang des Projektes oft problematisch.
– Die Anzahl der Personenmonate ist ein problematisches Maß (genaue Begründung folgt noch).
– Trotz aller mathematischer Korrektheit sind statistische Methoden auch nur Schätzmethoden. Und Schätzungen können falsch
sein
3.4.2 COCOMO
COCOMO: Constructive Cost Model
COCOMO wurde in den späten Siebzigern von Barry Boehm entwickelt (Boehm
(1981)) und hat sich seitdem zu einem der wichtigsten Schätzmethoden gemausert. In den Neunzigern wurde eine gründlich überarbeitete Version II vorgestellt
(Boehm et al. (2000)).
COCOMO wurde für das Wasserfallmodell konzipiert.
COCOMO II kommt auch mit iterativen Modellen, wie dem Spiralmodell, dem
Rational Unified Process (?) etc. zurecht.
Bei COCOMO werden drei Arten von Projekten unterschieden:
organic:
kleines Projekt (< 50 KSLOC), kleines Team, erfahrende Programmierer, stabile Entwicklungsumgebung
semi-detached: größeres Projekt (50 – 300 KSLOC), Programmierer mit unterschiedlichen Erfahrungsleveln; Mittelding zwischen organic und
embedded
embedded:
relativ groß (> 300 KSLOC), schwierige Nebenbedingungen,
größere Unsicherheit, höherer Innovationsgrad
Alle Schätzungen von COCOMO basieren auf den so genannten Kilo Source Lines of Code (KSLOC). Man findet auch die Bezeichnung Kilo Delivered Source
Instructions (KDSI). Das sind die Anzahl der ausgelieferten Befehle (Schleifen,
Zuweisungen, Vergleiche), nicht einfach die Anzahl der Befehlszeilen (Lines of
Code = LOC). In COCOMO II können auch Function Points, Use Cases etc. zur
Schätzung herangezogen werden. Diese werden durch das so genannte Backfiring
in KSLOC umgerechnet. Allerdings sind diese Werte häufig nicht sonderlich stark
korreliert (Seibert (2005)).
Für jede Projektart können die Anzahl der benötigten Personenmonate, die Entwicklungszeit und die Teamgröße mittels einfacher Formeln aus den geschätzten
KSLOC ebenfalls abgeschätzt werden.
Draft (29. Juni 2006)
72
Für die Schätzmethode werden in Basic COCOMO folgende Zahlen verwendet:
organic
semi-detached
embedded
PM
Dauer
2, 4 · KSLOC1,05
2, 5 · PM0,38
PM/Dauer t 0, 7 · KSLOC0,651
3, 6 · KSLOC1,20
2, 5 · PM0,32
PM/Dauer t 0, 96 · KSLOC0,816
3, 0 · KSLOC1,12
2, 5 · PM0,35
Anzahl Mitarb.
PM/Dauer t 0, 8 · KSLOC0,728
Bei der Schätzung gemäß Intermediate COCOMO werden neben der Anzahl der
ausgelieferten Codezeilen weitere Kostentreiber berücksichtigt.
Die Projektdauer wird mit folgenden Formeln ermittelt:
PM | Dauer
organic
semi-detached
embedded
3, 2 · KSLOC1,05 · f
2, 5 · PM0,38
2, 8 · KSLOC1,20 · f
2, 5 · PM0,32
3, 0 · KSLOC1,12 · f
2, 5 · PM0,35
Der Effort Adjustment Factor f wird dabei durch Multiplikation von „Gewichten“
für weitere Kostentreiber ermittelt. Für jeden von fünfzehn Kostentreiber wird der
Aufwand geschätzt und gemäß der nachfolgenden Tabelle gewichtet (deutsche
Übersetzung von W. Kowarschick):
73
Draft (29. Juni 2006)
Kostentreiber
Produktmerkmale
Erforderliche
System-Zuverlässigkeit
Datenbankgröße
Komplexität des Produktes
Plattformmerkmale
Anforderungen an Laufzeitperformanz
Hauptspeicherbedarf
Änderungshäufigkeit der Systemumgebung
Anforderungen an Antwortzeiten
Personalmerkmale
Analysefähigkeiten
Softwareentwicklungsfähigkeiten
Erfahrungen im
Anwendungsgebiet
Erfahrungen mit der
Systemumgebung
Erfahrungen mit der
Programmiersprache
Projektmerkmale
Verwendung von SoftwareEntwicklungstools
Einsatz von SoftwareEngineering-Methoden
Anforderungen an Entwicklungsdauer
sehr
gering
gering
normal
hoch
sehr
hoch
extrem
hoch
0,75
0,88
1,00
1,15
1,40
0,70
0,94
0,85
1,00
1,00
1,08
1,15
1,16
1,30
1,65
1,00
1,11
1,30
1,66
1,06
1,15
1,21
1,30
1,56
0,87
1,00
1,00
0,87
1,00
1,07
1,15
1,46
1,29
1,19
1,13
1,00
1,00
0,86
0,91
0,71
0,82
1,42
1,17
1,00
0,86
0,70
1,21
1,10
1,00
0,90
1,14
1,07
1,00
0,95
1,24
1,10
1,00
0,91
0,82
1,24
1,10
1,00
0,91
0,83
1,23
1,08
1,00
1,04
1,10
Die genauesten Schätzergebnisse lassen sich mit Detailed COCOMO ermitteln.
Dabei werden die Gewichte der Kostentreiber für jede Projektphase separat gemäß
obiger Tabelle ermittelt. Barry Boehm teil dabei ein Projekt in sechs Phasen ein:
– Analyse (Requirements)
– Grobentwurf (Product Design)
– Feinentwurf (Detailed Design)
Draft (29. Juni 2006)
74
– Implementierung und Modul-Test (Code and Unit Test)
– Integration und Test (Itegration and Test)
– Wartung (Maintenance)
COCOMO II unterscheidet sich in einige wesentlichen Punkten von COCOMO:
Function Points, UML Use Cases etc. können ebenfalls zu Schätzung herangezogen werden. Die zugehörigen Schätzwerte werden durch das so genannte Backfiring in KSLOCs umgerechnet. Allerdings sind die Umrechnungstabbelen noch
nicht sehr ausgereift.
Bei der Entwicklung von Software kann die Wiederverwendung von Code berücksichtigt werden.
Es werden drei Modelle unterschieden:
Application Composition Model:
für frühe Projektphasen
Early Design Model:
ebenfalls für frühe Projektphase, aber vorrangig für Evaluation von Architekturen und Entwicklungsstrategien, wenn viele Details des zu schätzenden
Projektes noch unbekannt sind
Post-Architecture Model:
für detaillierte Schätzungen nach der Entwurfsphase
Zur Abschätzung der Projektaufwandes in Personenmonaten (PM) und der Projektdauer in Monaten (M) werden in COCOMO II ähnliche Funktionen wie in
COCOMO verwendet, allerdings mit anderen Parametern (Formeln wurden vereinfacht – ohne Wiederverwendung von Code und Entwicklungszeitverkürzung):
PM = A · KSLOCE · f
M = C · PMF
(Projektaufwand)
(Projektdauer)
wobei
A = 2, 94
B = 0, 91
C = 3, 67
D = 0, 28
E = B + 0, 01 ·
5
X
Fj
j=1
F = D + 0, 2 · (E − B)
gesetzt wird. Die fünf Faktoren Fj werden projektabhängig aus den folgenden
Organisationsfaktoren enrmittelt:q
75
Draft (29. Juni 2006)
Organisationsfaktoren
– Erfahrungen im Produktbereich
– Entwicklungsfelxiblität
– Ausgereiftheit des Entwurfs
– Stakeholder-Zusammenhalt
– Software-Prozessreife
Der Effort Adjustment Factor f wird wieder durch Multiplikation von „Gewichten“ für weitere Kostentreiber ermittelt. Dabei wurden in COCOMO II einige Kostentreiber leicht modifiziert und deren Anzahl etwas erhöht (deutsche Übersetzung
gemäß Seibert (2005)). Die Gewichte wurden gegenüber COCOMO neu justiert.
Produktfaktoren
– Erforderliche Zuverlässigkeit
– Datenbankgröße
– Produkt-/Modulkomplexität
– Wiederverwendbarkeit
– Dokumentationsumfang
Plattformfaktoren
– Rel. Rechnerzeitnutzung
– Rel. Hauptspeichernutzung
– Plattform-Änderungsdynamik
Personalfaktoren
– Systemanalysefähigkeit
– Programmierfähigkeit
– Anwendungserfahrung
– Plattformerfahrung
– Sprach- und Tool-Erfahrung
– Personelle Kontinuität
Projektfaktoren
– Nutzung von SW-Tools
Draft (29. Juni 2006)
76
– Standortübergreifende Teamarbeit
– Verfügbar Projektdauer
Für das Post-Architecture Model kommen alle siebzehn Kostentreiber zum Einsatz, für die Schätzungen der ersten Projektphasen werden nur sieben und teilweise andere Kostentreiber berücksichtigt.
Die ursprünglichen Formeln von COCOMO II wurden auf Basis von 160 Projekten ermittelt. Diese Basis ist im Laufe der Zeit auf 250 Projekte angewachsen.
Für COCOMO-Varianten ist die Zahl der zugrundeliegenden Projekte dagegen
teilweise noch recht gering. (Seibert (2005))
Beispiel: COCOTS zur Schätzung der Kosten für Evaluation, betriebsspezifischen
Anpassung und Integration von Standardsoftware basierte im Jahr 2005 auf lediglich 20 Projekten.
COCOMO II wird laut Aussage von Barry Boehm laufend weiter entwickelt. Die
Umrechnungstabellen von Function Points in KSLOC sind noch großen Änderungen unterworfen. Auf die Frage, ob Backfiring bereits praktisch eingesetzt werden
kann, antwortete Barry Boehm im Jahr 2005: „Wir arbeiten daruf hin, haben aber
ähnliche Hürden zu überwinden, wie sie die Funktionspunktleute früher hatten.“
(Seibert (2005))
3.4.3 Die Güte von Schätzverfahren
Leider gibt es kein allgemeingültiges Verfahren, um präzise und verlässliche Vorhersagen zu machen Elzer (1994).
Faustregel: π · Daumen
„Schätze die Größe des Codes (LOC) und teile sie durch die vom Teamleiter
geschätzte Produktivität des Teams (LOC/PM)“
Diese Regel ist nicht schlechter, als viele kompliziertere Regeln (obwohl sie
nur einen Parameter berücksichtigt und nur einen linearen Zusammenhang beschreibt).
S.N. Mohanty hat 1981 Mohanty (1993) ein 36k-LOC-Projekt benutzt, um die
Vorhersagequalität von verschiedenen Kostenmodellen zu untersuchen. Die Ergebnisse sind erschütternd (und werden im Wesentlichen von Folgeuntersuchungen bestätigt):
77
Draft (29. Juni 2006)
Verfahren
1
2
3
Farr und Zagorski
Naval Air Dev. Center
Wolverton
Anzahl
Einflussgrößen
13
13
16
4
5
6
7
8
9
10
11
12
13
Simplified Wolverton
Kustanowitz
Aerospace
GRC
SDC
Price S
Walston and Felix
Aron
Schneider
Doty
15
5
4
4
12
10
2
4
keine Ang.
9
Kosten
(irgendwelche Einheiten)
370
2.000
900
1.200
1.360
900 – 1.350
1.600 – 2.700
1.350
1.240
1.200
1.330
580
550
870
650
Fazit
Der höchste Schätzwert ist 7,3 mal so hoch wie der niedrigste. Das sind eigentlich
keine brauchbaren Ergebnisse!
Prinzipiell sollte die Schätzung phasenweise erfolgen (siehe Pötzseil-Case) und
möglichst bekannte Werte aus vergleichbaren Projekten berücksichtigen (Analogieverfahren + Gewichtung, wie z. B. eine moderne Function-Point-Methode).
Außerdem sollten Schätzungen nicht vom Projektleiter allein, sondern von mehreren Experten vorgenommen werden (Expertenschätzung). Deren Schätzungen
sollten nicht zu weite auseinander liegen, da sonst vermutlich noch nicht alle Fakten bekannt sind und damit berücksichtigt werden (vgl. „Die fünf Weisen“).
Achtung: Die Chance, dass eine Schätzung mit einer Genauigkeit von +/- 10 %
stimmt, liegt in der Spezifikationsphase bei lediglich 2/3 (Ende der Orientierungsphase) bis 4/5 (Ende der Definitionsphase). Nach dem Ende
der Designphase liegt sie kontinuierlich bei ca. 9/10.
Schätzmethoden, wie die Function-Point-Methode, COCOMO etc., sind wesentlich genauer, wenn sie kalibriert werden, d. h., wenn die Schätzparameter der jeweiligen Methode durch mathematisch-statistische Analyse historischer Projektdaten an die Verhältnisse des jeweiligen Entwicklungsbereiches angepasst werden
(= Kalibrierung). Beispiel (Burghardt (1995)):
Analyse von 60 Projekten der Firma Siemens:
– COCOMO ohne Kalibrierung: ±20% in 45% der Fälle
Draft (29. Juni 2006)
78
– COCOMO mit Kalibrierung: ±20% in 95% der Fälle
3.5 Was ist ein Personenmonat?
Viele Zeit-Schätzverfahren liefern als Ergebnis eine Anzahl von Personenmonaten
(PM).
Allerdings ist der Wert nicht unproblematisch:
1. Problem
– Ein PJ (Personenjahr) hat nur (9–)10 PM
– Ein PM hat höchstens 16 PT (Personentage) und nicht etwa 20
– Ein PT hat höchstens 6 Ph (Personenstunden) und nicht etwa 8
– Ein PJ besteht aus 1000 Ph effektiver Projektarbeit und nicht etwa aus
1600 = 200 · 8
Das heißt, man muss sich zunächst einmal darauf verständigen, was die Begriffe
PJ, PM, PW, PT und Ph eigentlich bedeuten.
Balzert (1998) berechnet die Bruttoarbeitszeit wie folgt:
– 37-Stundenwoche
– 5-Tagewoche
– 20,8 Arbeitstage/Monat
– 10 Monate/Jahr (wg. Urlaub und Krankheit)
⇒
–
–
–
–
1 PTbrutto = 37/5 h = 7, 4 h
1 PWbrutto = 37 h
1 PMbrutto = 7, 4 h · 20, 8 = 154 h (153, 92 h)
1 PJ = 10 · 153, 9 h = 1539 h
Die Nettoarbeitszeiten berechnet er einfach, indem er die 1539 h auf 12 Monate
verteilt:
– 1 PMnetto = 1539 h/12 = 128 h (128, 25 h)
– 1 PTnetto = 128, 25 h/20, 8 = 6, 2 h
– 1 PWnetto = 6, 2 h · 5 = 31 h
Dabei bleiben allerdings die Ausfallzeiten im Projekt wegen anderer Aufgaben
unberücksichtigt.
79
Draft (29. Juni 2006)
Ich führe daher zusätzlich den Begriff der Projektarbeitszeit ein:
– 1 PTPA = 6 h
– 1 PWPA = 4 · 6 h = 24 h
– 1 PMPA = 17 · 6 h = 102 h (oder 16 · 6 h = 96 h)
– 1 PJPA = 10 · 102 h = 1020 h
Wenn man einen Mitarbeiter von allen anderen Arbeiten entlastet, sind auch folgende Arbeitszeiten möglich:
– 1 PTPAe = 8 h
– 1 PWPAe = 5 · 8 h = 40 h
– 1 PMPAe = 20, 8 · 8 h = 166 h
– 1 PJPAe = 10 · 160 h = 1887 h
Dies stimmt im Prinzip mit den von Balzert eingeführten Bruttoarbeitszeiten überein. Allerdings werden i. Allg. nur wenige Mitarbeiter von anderen Aufgaben entlastet. Vor allem im Critical-Chain-Projekt-Management. (siehe ??) ist es üblich,
Mitarbeiter, die an der so genannten kritischen Kette arbeiten, vollkommen von
anderen Aufgaben zu entlasten.
Mit welchen Begriffen man arbeitet ist letztlich egal, wenn sich alle Projektbeteiligten einig sind, was unter PJ, PM und PT zu verstehen ist. Auf eine stundengenaue Schätzung sollte man allerdings verzichten. Ein Mitarbeiter leistet an einem
12h-Tag i. Allg. weniger als an einem 8h-Tag (DeMarco (1998)).
Die Produktivität eines Programmierers wird heute meist in LOC/PM (LOC =
Lines of Code) oder NCSS/PM (NCSS = Non Commented Source Statements –
HP – schlecht, da Kommentare nichts zählen, aber wichtig sind) gemessen.1
Solange nicht bekannt ist, was PJ, PM, PW und PT genau bedeutet, kann die
Monatsproduktivität allerdings nicht in Jahres- oder Tagesproduktivitäten umgerechnet werden.
Die Produktivität wiederum ist wichtig, um z. B. den Bedarf an Mitarbeitern für
bestimmte Aufgaben zu ermitteln.
Beispiel
Aufgabe:
200 LOC-Programm erstellen
Produktivität: 25 LOC/(PT · MA)
1
(MA = Mitarbeiter)
Es gibt noch viele weitere Maße, wie ToolBook-Seiten/PT, AVI-Sec/PW etc.
Draft (29. Juni 2006)
80
Dauer:
5 PT
Bedarf MA =
=
=
=
Aufwand/Dauer
(200 LOC/25( LOC/(PT · MA)))/5 PT
8 PT · MA/5 PT
1, 6 MA
Man beachte, dass die Produktivität für jede mögliche Definition von Personenmonat andere Werte hat. Wenn man davon ausgeht, dass eine Person in einem
Jahr eine gewisse Leistung (z. B. 1000 LOC) erbringen kann, ergibt sich folgendes Bild:
1000 LOC/PJ
= 100 LOC/PMbrutto =
24 LOC/PWbrutto = 4, 8 LOC/PTbrutto = 0, 65 LOC/Phbrutto
1000 LOC/PJ
= 83, 3̄ LOC/PMnetto =
20 LOC/PWnetto = 4 LOC/PTnetto = 0, 54 LOC/Phnetto
1000 LOC/PJPA = 100 LOC/PMPA =
23, 5 LOC/PWPA = 5, 9 LOC/PTPA = 0, 98 LOC/PhPA
1000 LOC/PJPAe = 100 LOC/PMPAe =
24 LOC/PWPAe = 4, 8 LOC/PTPAe = 0, 60 LOC/PhPAe
Ich mag die Messung in Bruttozeiten (= 1 Jahr hat 10 Monate) lieber, da dann die
Zuordnung reale Zeit ↔ Projektzeit einfacher ist. August, Osterwoche, Pfingstwoche, 2 Wochen Weihnachten entfallen ⇒ Das reale Jahr hat auch 10 Monate,
in denen (voll) gearbeitet wird.
Außerdem ist mir die Messung in Projektarbeitszeiten (6 h/Tag, 16–17 Tage/Monat) lieber, als die übliche Vollarbeitszeiten, da auch diese Werte leichter
mit der Realität in Einklang zu bringen sind.
Wenn ich drei Aufgaben à 6 PTPA bearbeiten lasse und erhalte nach einem realen Monat das gewünschte Ergebnis, habe ich rein rechnerisch sogar etwas Zeit
gewonnen (da 18PTPA = 1, 125PMPA ).
Ein Mitarbeiter muss im Durchschnitt etwas mehr leisten als geplant, da Krankheit
und Dienstreisen den Durchschnitt drücken. Wenn man die üblichen Ferienmonate, wie oben angedeutet, intern als Nullarbeitszeiten rechnet, dann ist jede Arbeit,
die die Mitarbeiter in dieser Zeit leisten, eine „Mehrarbeit“, die mit anderen außerplanmäßigen Fehlzeiten gegengerechnet werden kann.
Alle anderen Definitionen von Personenmonaten etc. sind im laufenden Projekt
schwieriger mit der Realität abzugleichen, da die vom Mitarbeiter zu leistende
„Mehrarbeit“ (gegenüber den errechneten Werten) höher ist.
81
Draft (29. Juni 2006)
(größeres) 2. Problem
Wenn eine Person in einem Monat 1 PM Arbeit leistet, heißt das nicht, dass 2
Personen in einem halben Monat auch 1 PM Arbeit leisten.
Grund: Kommunikations-Overhead
Wenn n Personen gleichzeitig an einem Problem arbeiten, ergeben sich
n · (n − 1)/2 2-Personenkommunikationskanäle, außerdem gibt es 3-Personenkommunikation, 4-Personenkommunikation . . . und Teamkommunikation (Lagebesprechung etc.). Das heißt, der Kommunikationsoverhead wächst mit mindestens O(n2 ) mit der Anzahl der an einer Aufgabe beteiligten Personen.
Wenn beispielweise der Kommunikationsaufwand zwischen zwei Teammitgliedern bei durchschnittlich 10 %, d. h. 4 h/Woche liegt (da komplexe Teilaufgabe),
so ergibt sich folgendes Bild:
1 Person braucht 1, 0 Zeiteinheiten
2 Personen brauchen 0, 5̄ (= 1/(2 · 0, 9)) Zeiteinheiten
3 Personen brauchen 0, 41 (= 1/(3 · 0, 8)) Zeiteinheiten
4 Personen brauchen 0, 35 (= 1/(4 · 0, 7)) Zeiteinheiten
5 Personen brauchen 0, 33 (= 1/(5 · 0, 6)) Zeiteinheiten
6 Personen brauchen 0, 33 (= 1/(6 · 0, 5)) Zeiteinheiten
7 Personen brauchen 0, 35 (= 1/(7 · 0, 4)) Zeiteinheiten
8 Personen brauchen 0, 41 (= 1/(8 · 0, 3)) Zeiteinheiten
9 Personen brauchen 0, 5̄ (= 1/(9 · 0, 2)) Zeiteinheiten
10 Personen brauchen 1, 0 (= 1/(10 · 0, 1)) Zeiteinheiten
11 Personen werden gar nicht fertig :-)
Oder kurz: Viele Köche verderben den Brei!
Achtung: Diese Beobachtung besagt nicht, dass nicht mehrere unabhängige Teilaufgaben parallel ausgeführt werden können, um die Projektdauer
zu beschleunigen (z. B. Tests auf verschiedenen Zielplattformen oder
gleichzeitige Entwicklung von zwei unabhängigen Modulen wie Automotor und Fahrersitz).
Weitere Probleme bei der Bewertung, wieviele Arbeit von einer Person in einem
PM geleistet werden kann, sind:
1. Verschiedene Personen leisten in derselben Zeit verschieden viel.
2. Mitarbeiter bringen nicht jeden Tag volle Leistung (Schnupfen, private Probleme, Spannungen im Team, eine versaute Präsentation etc.).
3. Neulinge, die erst später in ein Projekt integriert werden, leisten weniger, da
sie sich erst einarbeiten müssen.
Draft (29. Juni 2006)
82
Zeit (in Tagen)
kommunikative
Arbeitsleistung je
Mitarbeiter
(innerhalb von 10 Tagen)
10
9
8
7
6
5
reale Arbeitszeit
theoretisches Optimum
4
produktive
Arbeitsleistung je
Mitarbeiter
(innerhalb von 10 Tagen)
3
2
1
0
4 5 6 7 8 9 10 11 Anzahl Mitarbeiter
1 MA: kostenoptimal
2 MA: bester Kompromiss aus Kosten und Zeit (evtl. 3 MA)
5 MA: zeitoptimal
1 2 3
4. Neulinge blockieren andere Mitarbeiter, d. h., auch erfahrene Projektmitarbeiter leisten weniger, wenn sie zusätzlich einen Neuling einarbeiten müssen.
5. Hilfskräfte können Projektmitglieder von Routineaufgaben, wie Kopieren,
E-Mail-Vorsortierung, Telefondienst etc. entlasten, ohne den Kommunikationsoverhead drastisch zu erhöhen.
83
Draft (29. Juni 2006)
Draft (29. Juni 2006)
84
Kapitel 4
Planung
Planung ist eine der Hauptaufgaben des Projektleiters.
Planung wird oft nicht sonderlich geliebt:
– Einfach mal loslegen ist einfacher, als vorher zu planen
(siehe Ampelaufgabe im Praktikum Multimedia-Programmierung).
– Planen lohne sich eh nicht, da ja doch alles anders komme.
– Planen behindere die Kreativität.
Nein: Planung ist kreativ, planloses Herumstochern im Nebel dagegen nicht.
Es gibt drei Möglichkeiten mit Planung umzugehen:
Erst handeln, dann denken
Es gibt viele (schlechte) Projektleiter, die Planung hassen und nur als Show für
das Management veranstalten, sich im Projektverlauf aber wenig darum scheren.
„Fangt schon mal an, den Papierkram machen wir später.“
Wenn man jedoch versucht Zeit zu sparen, indem man handelt bevor man denkt,
verbraucht man in der Summe viel mehr Zeit (spätere Fehlerbereinigung).
Denken statt Handeln
Es gibt aber auch (schlechte ) Projektleiter, die Planung zelebrieren: Alles wird
geplant und analysiert (PC-Tools); Alternative über Alternative wird untersucht,
nur getan wird nichts.
Erst denken, dann handeln: Storming, Norming, Performing
Saubere Planung besteht aus zwei Phasen, dann wird gehandelt:
Storming:
Ideensammlung; noch unstrukturiert (z. B. Brainstorming).
Norming:
Nun werden die Ideen sortiert und es wird geplant.
Performing: Schließlich werden die Pläne auch durchgeführt.
Brainstorming bedeutet, dass möglichst viele Ideen gesammelt werden, die nicht
bewertet werden (gut/schlecht etc.).
85
Draft (29. Juni 2006)
Die Stromingphase sollte lange genug dauern.
Die Planung von Projekten erfolgt normalerweise in drei Schritten:
grobe Projektplanung
z.B. Work Breakdown Structure
feinere Projektplanung
z.B. Netzpläne
Detailplanung
z.B. Balkendiagramme
Bei kleinen, übersichtlichen Projekten werden oft keine Netzpläne, sondern nur
eine einfache Grobplanung und Balkendiagramme erstellt.
4.1 Projektpläne
Alles muss geplant werden ⇒ viele Pläne. Diese sollten immer aktuell gehalten
werden – sonst sind sie nur Show und sind den Aufwand nicht wert, den man in
sie investiert hat.
Beispiele für Pläne
– Organisationsplan
Verantwortlichkeiten, Kompetenzen
– Kommunikationsplan, Berichts- und Informationswesen
Wer informiert wen wann worüber in welcher Form?
– Budget
Wieviel, wann, von wem, wofür?
– Arbeitspläne
Aufgaben (bzw. Vorgänge): Was, wann, wer?
– Personalpläne
Wer, was, wann, wann nicht (Urlaub etc.)?
– Schulungspläne
Projektteam, Anwender, Systembetreuer
– Ausstattungspläne
Draft (29. Juni 2006)
86
– Beschaffungspläne
– Testpläne
– Wartungspläne
– Kontrollpläne
Soll/Ist-Vergleiche, Review etc.
Ergebnis: stop/zurück/weiter
– Änderungspläne
– Abbruchplan
– etc.
4.2 Grobplanung
Bevor man Detailpläne erstellen kann, müssen erst einmal grobe Beschreibungen
der Aufgaben vorliegen. Man beachte, dass die Grobplanung eine gute Basis für
frühe Schätzungen darstellt.
4.2.1 Tätigkeitensammlung
Bei kleineren Vorhaben sollte man zunächst eine Tätigkeitensammlung erstellen.
Beispiel
Internetpräsentationen für die Firma Metzger Meier
– Festlegen der WWW-Seitenstruktur
(Welche Seiten, welche Beziehungen dazwischen etc.)
– Entwicklung eines Layouts
– Erstellen von Graphiken
– Anfertigen oder Beschaffen von Material
– Programmierung der Startseite
– Programmierung der Online-Bestellkomponenten
– etc.
Die Tätigkeitensammlung enthält noch keine Beziehungen zwischen der einzelnen Tätigkeiten. Es können allerdings schon Dauer, Kosten, verantwortliche Mitarbeiter etc. festgelegt werden.
87
Draft (29. Juni 2006)
4.2.2 Work-Breakdown-Structure
Größere Projekte sollten zunächst hierarchisch strukturiert werden.
Das kann sowohl nach Komponenten als auch nach Aktivitäten erfolgen.
Komponenten-Work-Breakdown-Structure
Internet−Präsentation
Metzgerei Meier
Startseite
Katalog
Bestellung
Fleisch Wurst Käse Sonstiges
Aktivitäten-Work-Breakdown-Structure
Internet−Präsentation
MM erstellen
WWW−Struktur
festlegen
Layout
festlegen
Material
beschaffen
WWW−Seiten
erstellen
Fotos
Videos Graphiken
Graphiken
erstellen
Startseite
erstellen
Katalog
erstellen
Bestell−
komponente
erstellen
Bei einer Planung können ruhig beide Hierarchien erstellt werden und die Schätzungen anhand beider Modelle erfolgen. Dabei sollten sich natürlich keine großen
Unterschiede ergeben, sonst war die Planung fehlerhaft. Im Allgemeinen sollte
Draft (29. Juni 2006)
88
erst der Komponenten-Breakdown und dann der (feinere) Aktivitäten-Breakdown
erfolgen.
4.3 Feinplanung
In der Aktivitäten-Work-Breakdown-Structure enthalten die Blätter die so genannten Vorgänge:
Ein Vorgang ist eine in sich abgeschlossene genau spezifizierte Aktivität, die innerhalb einer angemessenen Zeitdauer durchgeführt werden kann.
Für jeden Vorgang wird Folgendes festgelegt:
– Name des Vorgangs
– Zeitdauer
– Kosten
– Personal und weitere benötigte Ressourcen
Ergebnis, Kosten und Zeitdauer des Vorgangs müssen natürlich mit der Gesamtplanung und den Gesamtzielen vereinbar sein. Das heißt, die Summe der Vorgangskosten einer Projektphase sollten in etwa gleich den geschätzten Kosten für
diese Phase sein. Und die Gesamtdauer aller Vorgänge sollte der geschätzten Dauer entsprechen, wobei Vorgänge durchaus parallel ablaufen können.
Eine Projektphase besteht aus mehreren Vorgängen. Dabei kann und sollten die
Projektphasen ruhig in viele kleine Teilphasen untergliedert werden. Jede dieser
Teilphasen endet wie üblich mit einem Meilenstein und einem projektinternen
Review (nächste Teilphase ja/nein).
Da zu Meilensteinen immer ein definierter Zustand vorliegen muss, sollten sich
Teilphasen im Gegensatz zu Vorgängen nicht überlappen.
Meilensteine geben dem Projektleiter klare Anhaltspunkte für die Bewertung des
Projektfortschritts. Sie motivieren darüber hinaus das Projektteam („Das haben
wir schon geschafft!“).
⇒
1. Meilensteine müssen überprüfbar sein (Gegenbeispiel: „ Das Programm X ist
zu 50 % fertig“ ist nicht überprüfbar und damit kein geeigneter Meilenstein)
2. Meilensteine müssen kurzfristig sein (z. B. jeden Monat einer), sonst dümpelt
das Projekt evtl. lange vor sich hin ⇒ viele Meilensteine
3. Meilensteine sollten gleichverteilt sein (nicht 6 Meilensteine im ersten Jahr
und 18 im zweiten, besser 12 in jedem Jahr).
89
Draft (29. Juni 2006)
4.3.1 Netzpläne
Netzpläne dienen dazu, feinere Projektpläne auf der Basis von Vorgängen zu erstellen.
Es gibt mehrere Arten von Netzplänen. In der Praxis haben sich drei Basismethoden zur Erstellung von Netzplänen etabliert.
Vorgangspfeilnetzpläne (VPN; Vorgänge werden als Beziehungen modelliert)
Vorgang
Ereignisknotennetzpläne (EKN; Beziehungen zwischen Ereignissen = Ergebnissen von Vorgängen werden modelliert, z. B. Vorgang „Startseite erstellen“ =
ˆ Ereignis „Startseite wurde erstellt“).
Ereignis
Ereignis
Vorgangsknotennetzpläne (VKN; Beziehungen zwischen Vorgängen werden modelliert; ähnlich EKN).
Vorgang
Vorgang
Vorgangspfeil-Netzpläne (VPN) werden als historisch erste Darstellungsform der
Netzplantechnik angesehen. Diese Art der Darstellung wurde 1956 für die Critical-Path-Method entwickelt. Vorgangsknoten-Netzpläne (VKN) wurden 1957 im
Zusammenhang mit der Metra Potential Method (MPM) eingeführt. Im Jahr darauf wurden im Rahmen der Programm Evaluation und Review Technique (PERT)
die Ereignisknoten-Netzpläne (EKN) erstmals vorgestellt. Heute sind VPN und
EKN nur noch von geschichtlichem Interesse. Die Vorgangsknoten-Netzpläne
werden allgemein verwendet. Häufig spricht man auch (eigentlich fälschlicherweise) von PERT-Diagrammen oder PERT-Netzplänen, meint damit heute aber
stets VPNs und nicht die veralteten EKNs.
VPN: ursprünglich Critical Path Method (CPM)
EKN: ursprünglich Program Evaluation and Review Technique (PERT)
VKN: ursprünglich Metra Potential Method (MPM), heute Standard für alle Methoden
Draft (29. Juni 2006)
90
Anmerkung
– CPM arbeitet mit Einzeitschätzung
– PERT arbeitet mit Dreizeitschätzung (optimistisch, pessimistisch, wahrscheinlich)
Netzpläne enthalten neben den Vorgangs- und Ereignisbezeichnungen noch weitere Informationen:
Vorgangs- oder Ereignisnummer, frühster/spätester Starttermin/Endtermin,
Dauer etc.
Bei VPNs wird die Dauer direkt beim Vorgang notiert. Die Knoten enthalten eine
laufende Nummer sowie den frühesten und den spätesten Starttermin.
Bei EKNs wird die Dauer ebenfalls an den Beziehungspfeilen angebracht. Laufende Nummer, frühster und spätester Termin werden in den Knoten notiert.
In VKNs wird die gesamte Information (laufende Nummer, Bezeichnung, frühster und spätester Starttermin, Dauer und freie Pufferzeit, frühster und spätester Endtermin) in den Vorgangsknoten notiert. An den Pfeilen wird lediglich
die Art der Beziehung notiert, zumindest, wenn es sich nicht um eine Standard-Ende-Anfang-Beziehung handelt (siehe weiter unten).
Die frühesten Start- und Endtermine der Vorgänge werden zunächst ausgehend
vom ersten hin zu späteren Vorgängen mit Hilfe der Dauer und der Abhängigkeiten ermittelt. Dieser Vorgang wird Vorwärtsrechnung genannt. Dann können die
spätesten Start- und Endtermine ausgehend vom letzten Vorgang ermittelt werden.
Dieser Vorgang heißt Rückwärtsrechnung.
Ein kritischer Knoten ist ein Knoten, dessen frühster Starttermin gleich dessen
spätestem Starttermin ist. Jede Verzögerung, an der dieser Knoten beteiligt ist, hat
eine Verzögerung der gesamten Phase und damit des Gesamtprojektes zur Folge,
wenn man die verlorene Zeit nicht anderweitig wieder hereinarbeiten kann. In
einem VKN spricht man auch von kritischen Vorgängen.
Ein kritischer Pfad ist eine Liste oder gar ein ganzes Netz zusammenhängender
kritischer Knoten.
Pufferzeiten
Die Differenz zwischen frühestem und spätestem Starttermin (oder Endtermin)
eines Vorgangs heißt gesamte Pufferzeit (des aktuellen Vorgangs). Um diese Zeitspanne kann ein Vorgang verzögert werden, ohne das Gesamtprojekt zu verzögern.
Dabei kann es allerdings passieren, dass die Pufferzeiten nachfolgender Vorgänge
verringert werden.
91
Draft (29. Juni 2006)
Draft (29. Juni 2006)
VPN
MMDB−Testlizenzen
anschaffen (2)
6
2
6 6
3
MMDBs
installieren (3)
2
Testdaten
einspielen (5)
1
8 10
Phasenstart
(1)
5
11 11
4
Testszenario
entwickeln (4)
7
MMDB
testen und
auswählen (7)
2
6
13 13
Testszenario
implementieren (6)
3
8 8
92
EKN
2
Testlizenzen
angeschafft
6
6 6
2
3
MMDBs
installiert
8
8
5
Testdaten
eingespielt
1
9 11
1
2
7
MMDB
getestet und
ausgewählt
1
Phasenstart
0
3
0
7
4
Testszenario
entwickelt
7 8
3
13 13
6
Testszenario
implementiert
11 11
2
VKN
2
MMDBs
anschaffen
0
0
5
Testdaten
einspielen
0
6
6
6
2
8
8
0
0
6
6
0
8
10
1
2
9
11
1
Phasenstart
0
0
3
MMDBs
installieren
MMDB teste
und ausgewäh
0
0
11
11
93
4
Testszenario
entwickeln
0
1
7
1
8
8
nicht−kritisch
Draft (29. Juni 2006)
kritisch
<Nummer>
Vorgangsname
Meilenstein
fS
sS
D
gP
fE
sE
=
=
=
=
=
=
1
1
6
Testszenario
implementieren
7
8
fS
D
fE
sS
gP
sE
2
0
frühester Starttermin
Dauer
frühester Endtermin
spätester Starttermin
gesamte Pufferzeit
spätester Endtermin
3
0
11
11
Phasenende
13
0
1
13
0
1
Daneben kann man für die einzelnen Vorgänge auch noch die freie Pufferzeit berechnen. Das ist diejenige Zeit, um die der Start verzögert werden kann, ohne dass
die Pufferzeit eines Nachfolgevorgangs verringert wird. Die freie Pufferzeit eines
Vorgangs ist stets kleiner oder gleich als dessen gesamte Pufferzeit.
Für Vorgänge kann auch ein fixer Start- oder Endtermin vorgegeben werden. In
diesem Fall liefert die Vorwärts- und Rückwärtsrechnung eventuell negative Pufferzeiten. In diesem Fall spricht man von einem zeitinkonsistenten Netzplan.
Vorgangsknoten-Netzpläne
Die am meisten verbreitete Netzplanart stellen die Vorgangsknoten-Netzpläne dar.
Es werden vier Vorgangsbeziehungen unterschieden.
Normalfolge: Ende-Anfang (EA)
Anfangsfolge: Anfang-Anfang (AA)
Endfolge:
Ende-Ende (EE)
Sprungfolge: Anfang-Ende (AE)
Die Normalfolge EA sagt aus, dass der nächste Vorgang erst begonnen werden
darf, wenn der vorherige beendet wurde.
Beispiel
Design
EA
Implementierung
Mit der Implementierung kann evtl. auch schon etwas früher begonnen werden,
z. B. 5 Tage vor Ende des Designs.
Design
EA − 5T
Implementierung
Es ist auch möglich einen etwas späteren Start als das Ende des Design festzulegen.
Design
EA + 3T
Implementierung
Die Anfangsfolge sagt aus, dass ein zweiter Vorgang gleichzeitig mit dem ersten
anfangen muss.
Beispiel
Implementierung
auf der
Zielplattenform
Draft (29. Juni 2006)
AA
regelm. Backup
der
Zielplattform
94
oder die regelmäßigen Backups starten schon einen Tag vorher
Implementierung
auf der
Zielplattenform
AA−1T
regelm. Backup
der
Zielplattform
An Balkendiagrammen sieht man diese Beziehung deutlicher:
Implementierung auf Zielplattform
AA
Backups auf Zielplattform
...
Implementierung auf Zielplattform
AA−1T
Backups auf Zielplattform
...
Beachten Sie, dass der Anfang der relgelmäßigen Backups vom Anfang der Implementierung auf der Zielplattform abhängt und nicht umgekehrt. Mit Hilfe eines
Balkendiagramms (Gantt-Diagramm Abschnitt 4.3.2) kann man diesen Zusammenhang besser visualisieren. Die linke Seite des Balkens wird am Start-Datum
in einen Kalender eingetragen und die rechte Seite am Ende-Datum.
Die Endfolge EE sagt aus, dass ein zweiter Vorgang zusammen mit dem ersten
beendet wird.
95
Draft (29. Juni 2006)
Beispiel
Netzpläne
Übergabe
an
Kunden
EE
regelm. Backup
auf der
Zielplattform
Übergabe
an
Kunden
EE+1T
regelm. Backup
auf der
Zielplattform
Balkendiagramme
Übergabe an Kunden
EE
... Backups auf Zielplattform
Übergabe an Kunden
EE+1T
... Backups auf Zielplattform
Die Sprungfolge AE sagt aus, dass der zweite Vorgang erst beendet werden darf,
wenn der erste begonnen wurde.
Draft (29. Juni 2006)
96
Beispiel
Netzpläne
neue Anwendung
in
Betrieb
neue Anwendung
in
Betrieb
AE
AE+5T
alte Anwendung
in
Betrieb
alte Anwendung
in
Betrieb
Balkendiagramme
neue Anwendung In Betrieb ...
AE
... alte Anwendung in Betrieb
neue Anwendung In Betrieb ...
AE+5T
... alte Anwendung in Betrieb
Die alte Anwendung darf erst beendet werden, wenn die neue in den Einsatz
kommt.
Oftmals fallen Anfang und Ende von zwei Vorgängen nicht genau zusammen,
sondern unterscheiden sich um einige Tage. Wie in den Beispielen gesehen, notiert
dies wie folgt:
EA + 5 T: Vorgang 2 startet frühestens 5 Tage nach Ende von Vorgang 1
EA − 3 T: Vorgang 2 startet frühestens 3 Tage vor Ende von Vorgang 1
AA + 2 T: Vorgang 2 startet frühestens 2 Tage nach Start von Vorgang 1
97
Draft (29. Juni 2006)
AA − 1 T: Vorgang 2 startet frühestens 1 Tag vor Start von Vorgang 1
EE + 4 T: Vorgang 2 endet frühestens 4 Tage nach Ende von Vorgang 1
EE − 4 T: Vorgang 2 endet frühestens 4 Tage vor Ende von Vorgang 1
AE + 6 T: Vorgang 2 endet frühestens 6 Tage nach Start von Vorgang 1
AE − 2 T: Vorgang 2 endet frühestens 2 Tage vor Start von Vorgang 1
Man beachte, dass mit Hilfe von Addition und Subtraktion von Zeitabständen jede
Abhängigkeit zwischen zwei (endlichen) Vorgängen als Normalfolge, Anfangsfolge, Endfolge oder Sprungfolge notiert werden kann. Bei der Auswahl einer
geeigneten Folge kommt es also nicht auf formale, sondern nur auf praktische
Überlegungen an.
Anmerkung
Obwohl Netzdiagramme den zeitlichen Aspekt stark betonen, eignen sie sich auch
zur Kosten- und Ressourcenschätzung und -planung.
4.3.2 Balkendiagramme
Aus Netzplänen können verschiedene
(Gantt-Diagramme) abgeleitet werden.
so
genannte
Balkendiagramme
– Vorgangsbezogene Balkendiagramme:
In der Vertikalen werden die einzelnen Vorgänge angezeigt, auf den Balken
Zusatzinformationen wie ausführende Personen, Stellen etc.
– Personalbezogene Balkendiagramme:
In der Vertikalen werden alle Mitarbeiter gezeigt. Man sieht, wann ein Mitarbeiter welche Aufgaben durchführt.
– Ressourcenbezogene Balkendiagramme
– etc.
Balkendiagramme betonen den Zeitaspekt mehr als Netzdiagramme, da die Balkenlänge abhängig von der Dauer des zugehörigen Vorgangs gewählt wird. Die
für Netzpläne eingeführten Beziehungen (EA, AA, EE, AE) gibt es gleichermaßen für Balkendiagramme. (Die Beispiele des letzten Abschnittes waren eher auch
schon in Form von Balkendiagrammen angegeben.)
Draft (29. Juni 2006)
98
Nr.
Vorgangsname
Dauer
Anfang
Ende
S
1
Phasenstart
0 Tage
Mo 22.05.06
Mo 22.05.06
2
MMDBs anschaffen
6 Tage
Mo 22.05.06
Di 30.05.06
3
MMDBs installieren
2 Tage
Mi 31.05.06
Do 01.06.06
4
Testszenario entwicklen
7 Tage
Mo 22.05.06
Mi 31.05.06
5
Testdaten einspielen
1 Tag
Fr 02.06.06
Fr 02.06.06
6
Testszenario implementieren
3 Tage
Fr 02.06.06
Di 06.06.06
7
MMDBS testen und auswählen
2 Tage
Mi 07.06.06
Do 08.06.06
8
Phasenende
0 Tage
Do 08.06.06
Do 08.06.06
22. Mai '06
M
D
M
22.05.
D
F
S
S
29. Mai '06
M
D
M
D
F
S
05. Jun '06
M
D
M
D
F
S
Kowa
Kowa
Klever
Klever
Kowa, Klever
Kowa
08.06.
99
Draft (29. Juni 2006)
Projekt: MMDB2
Datum: Mi 28.06.06
S
Vorgang
Rollup: Vorgang
Externe Vorgänge
Kritischer Vorgang
Rollup: Kritischer Vorgang
Projektsammelvorgang
In Arbeit
Rollup: Meilenstein
Gruppenkopf
Meilenstein
Rollup: In Arbeit
Stichtag
Sammelvorgang
Unterbrechung
Seite 1
Abbildung 4.1: Gantt-Diagramm mit MS-Project erstellt
Inhalte der Knoten
Draft (29. Juni 2006)
Name
frühester Start, frühestes Ende, Dauer
spätester Start, spätestes Ende, gesamter Puffer
laufende Nummer,
freier Puffer
MMDBs anschaffen
30.05.06
6 Tage
22.05.06
30.05.06
Nr.: 2
Testszenario implementieren
MMDBs installieren
22.05.06
EA
31.05.06
01.06.06
2 Tage
0 Tage
31.05.06
01.06.06
0 Tage
0 Tage
Nr.: 3
EA
02.06.06
06.06.06
02.06.06
06.06.06
3 Tage
0 Tage
Nr.: 6
0 Tage
0 Tage
EA
EA
MMDBS testen und auswählen
Phasenstart
EA
Meilenstein: Mo 22.05.06
EA
Nr.: 1
07.06.06
08.06.06
07.06.06
08.06.06
Nr.: 7
EA
2 Tage
0 Tage
0 Tage
EA
Testszenario entwicklen
Testdaten einspielen
22.05.06
31.05.06
7 Tage
23.05.06
01.06.06
100
Nr.: 4
02.06.06
02.06.06
1 Tag
06.06.06
06.06.06
1 Tag
Nr.: 5
EA
1 Tag
2 Tage
EA
2 Tage
Phasenende
Meilenstein: Do 08.06.06
Nr.: 8
Projekt: MMDB
Datum: Mi 28.06.06
Kritisch
Sammelvorgang
Kritisch und extern
Nicht kritisch
Kritisch und eingefügt
Extern
Kritischer Meilenstein
Eingefügt
Projektsammelvorgang
Meilenstein
Kritisch und markiert
Kritisch und hervorgehoben
Kritischer Sammelvorgang
Markiert
Nicht kritisch und hervorgehoben
Seite 1
Abbildung 4.2: Netzplan mit MS-Project erstellt
0
1
3
1
V3
3
4
4
4
0
0
0
3
0
V5
EE+1T
7
7
6
8
2
2
0
0
0
3
3
4
3
6
6
2
3
Ende
0
0
10
10
V6
5
8
6
6
4
0
10
10
<Nummer>
Vorgangsname
fS
sS
Starttermin ist kritisch
Dauer ist unkritisch
Meilenstein
6
V4
3
kritisch
10
10
EA−1T
2
0
8
10
theoretisch
auch 5
EA−1T
V2
nicht−kritisch
7
AA+4T
Start
0
0
5
3
1
V1
D
gP
fE
sE
fS
D
fE
sS
gP
sE
=
=
=
=
=
=
frühester Starttermin
Dauer
frühester Endtermin
spätester Starttermin
gesamte Pufferzeit
spätester Endtermin
101
Nr. Name
Dauer
Anfang
Ende
Vorgänger
Draft (29. Juni 2006)
0 Phasenstart
0T
Mo 2.5.
1 Vorgang 1
3T
Mo 2.5.
Di 4.5. 0EA
2 Vorgang 2
3T
Mo 2.5.
Di 4.5. 0EA
3 Vorgang 3
3T
Mo 9.5.
Mi 11.5. 1EA, 2AA+4T
4 Vorgang 4
2T
Fr 6.5.
Mo 9.5. 1EA−1T, 2EA
5 Vorgang 5
2T
Mi 11.5.
Do 12.5. 3EE+1T, 4EA
6 Vorgang 6
4T
Mi 11.5.
Di 17.5. 3EA−1T
7 Phasenende
0T
Di 17.5.
Di 17.5. 5EA, 6EA
9. Mai 2005
2. Mai 2005
16. Mai 2005
S S MDMD F S S MDMD F S S MDMD F S S
Mo 2.5.
Abbildung 4.3: Beispiel für Netzplan- und Balkendiagramm aus einer alten Klausur
kritischer Vorgang
Vorgang
Puffer
Meilenstein
4.4 Ressourcen-Management
Bislang haben wir uns im Rahmen der Planung im wesentlichen mit den Beziehungen zwischen Vorgängen befasst. Implizit lag dabei die Annahme zu Grunde,
dass jederzeit unbegrenzte Ressourcen zur Verfügung stehen. Allerdings ist dem
im Allgemeinen leider nicht so. Aufgabe des Ressourcen-Management ist es, den
Bedarf an Ressourcen (Einsatzmittel) vorherzusagen und eine Einsatzoptimierung
zu erreichen, d. h. Engpässe und Leerläufe nach Möglichkeit zu vermeiden.
Ressourcen (auch Einsatzmittel genannt) sind:
– Personal
– Betriebsmittel (Hardware, Software etc.)
Man unterscheidet:
– termintreue Ressourcenplanung
„Wie viele Ressourcen brauche ich, um diese und jene Vorgänge bis zu diesen und jenen Terminen abzuschließen?“
– kapazitätstreue Ressourcenplanung
„Wann kann ich frühestens diese und jene Vorgänge bei gegebenen Ressourcen abschließen?“
4.4.1 Personalplanung
Folgende Gesichtspunkte müssen beachtet werden:
– verfügbare Personalkapazität
– Qualifikation
– zeitliche und örtliche Verfügbarkeit
– organisatorische Zugehörigkeit
– psychologische Aspekte („Never Change a Winning Team“; eine behinderte
Person in einem neuen Team erhöht die Erfolgschancen DeMarco and Lister
(1991) etc.)
Ziel der Personalplanung: optimaler Personaleinsatz über die gesamte Projektlaufzeit.
Beispiel „Spiel Aquaris“
Anhand des verfügbaren/eingeplanten Personals muss die Dauer von Vorgängen
(in Personentagen etc.) ermittelt werden. Der (zeitlich variable) Bedarf an MitDraft (29. Juni 2006)
102
Personal
3
Qualifika−
tion Informatiker
Vorgänge
Spiellogik
Grafiken
Animation
Spielsteuerung
4
Designer
1
Mechatronik eingeplantes
Personal
3
3
3
2
3
3
2
1
1
1
arbeitern kann nach qualifikationsorientierten sowie organisationsorientierten Gesichtspunkten ermittelt werden. Wenn Mitarbeiter gleichzeitig in mehr als einem
Projekt arbeiten, kann die Bedarfsplanung auch projektorientiert erfolgen.
Mitarbeiter
Problem 5 Designer
Spielsteuerung
Informatiker
Mechatroniker
Designer
Informatiker
Spiellogik
Designer
Animation
Informatiker Animation
Projektleiter
Spielsteuerung
Informatiker
Mechatroniker
Zeit
Abbildung 4.4: Qualifikationsorientierte Bedarfsplanung
Bei der qualifikationsorientierten Bedarfsplanung werden zu jedem Zeitpunkt die
Anzahl der benötigten MA mit bestimmter Qualifikation in ein Diagramm eingetragen (siehe Abbildung).
Bei der organisationsorientierten Bedarfsplanung werden die Mitarbeiter nicht
nach ihrer Qualifikation, sondern nach ihrer organisatorischen Zugehörigkeit
(Abt. 1, Abt. 2, Partner A, Partner B etc.) in ein Bedarfsdiagramm eingetragen.
Bei der projektorientierten Planung wird die Anzahl der Mitarbeiter eines jeden
Projektes in ein Bedarfsdiagramm eingetragen.
In allen Fällen kann man an derartigen Diagrammen Engpässe und Leerläufe ablesen (siehe Abbildung 4.5).
Im obigen Beispiel „Spiel Aquaris“ ergibt sich das Problem, dass keine 5 Designer
zur Verfügung stehen (siehe Abbildung 4.6).
103
Draft (29. Juni 2006)
Mitarbeiter
Engpass
Engpass
Leerlauf
Leerlauf
Leerlauf
Anzahl
Mitarbeiter
Zeit
Abbildung 4.5: Leerlauf und Engpässe
Designer
Anzahl
Designer
Zeit
Abbildung 4.6: Leerlauf und Engpässe am Beispiel des Projektes „Auqaris“
Man beachte, dass die Anzahl vorhandener Mitarbeiter (oder Spezialisten) über
die Zeit nicht notwendigerweise konstant ist.
Die eigentliche Aufgabe des Ressourcen-Management ist es, die zeitliche Abfolge von Vorgängen so abzuändern, dass Engpässe (d. h. Überstunden oder Einstellungen von weiterem Personal, Zukauf weiterer Ressourcen etc.) nach Möglichkeit vermieden werden. Im Wesentlichen werden dabei vorhandene Leerlaufzeiten
abgebaut. Primär sind dazu nicht-kritische Vorgänge geeignet, deren Erledigung
nach hinten – d. h. in die Leerlaufphasen – verschoben werden kann.
4.4.2 Bedarfsplanung der Betriebsmittel
Abhängig von der „Beständigkeit“ der Betriebsmittel unterscheidet man:
Draft (29. Juni 2006)
104
Termin
MA
V4
Anzahl
MA
V4
V2
V1
V3
V5
Zeit
Abbildung 4.7: Resultat der Vorgangsplanung
Termin
MA
Überstunden
Anzahl
MA
V4
V2
V1
V4
V3
V5
Zeit
Abbildung 4.8: Termintreue Personalplanung (Überstunden + zusätzliche Experten für V4)
105
Draft (29. Juni 2006)
Termin
MA
Anzahl
MA
V2
V1
V4
V3
V4
V5
Zeit
Abbildung 4.9: Kapazitätstreue Planung (keine Überstunden oder zusätzliche Experten für V4)
– verzehrbare Betriebsmittel (Büromaterial, Toner etc.)
– nicht-verzehrbare Betriebsmittel (Räume, Rechner, Software etc.)
Eine Betriebsmittelplanung ist nur dann notwendig, wenn Engpässe sehr wahrscheinlich sind. Ansonsten rentiert sich der zusätzliche Arbeitsaufwand nicht.
Für verzehrbare Betriebsmittel sollten genügend Finanzreserven vorgesehen werden, so dass fehlendes Material rechtzeitig nachbestellt werden kann. Nicht verzehrbare Betriebsmittel sollten in genügender Zahl bereitgestellt werden.
Wenn eine Betriebsmittelplanung notwendig sein sollte, so läuft diese im wesentlichen wie die Personalplanung ab. Man unterscheidet dabei zwischen:
– vorratseingeschränkter Einsatzplanung
Ein nicht-vergrößerbarer Vorrat eines (meist nicht-verzehrbaren) Betriebsmittel muss möglichst fair auf mehrere Nutzer aufgeteilt werden ⇒ Belegungspläne o. Ä.
– bedarfsbezogener Einsatzplanung
Zunächst wird von einem unbegrenzten Vorrat eines Betriebsmittels ausgegangen. Dann wird der eigentliche Bedarf zu den verschiedenen Zeiten ermittelt. Eventuell kann der Bedarf durch termintreue oder kapazitätstreue Auslastungsoptimierung verringert werden. Schließlich können die
Betriebsmittel gemäß dem errechneten Bedarf angeschafft werden.
– freier Einsatzplanung
Wenn keine Gefahr von Engpässen besteht, kann die Planung auf die SammDraft (29. Juni 2006)
106
lung von Benutzerbedürfnissen (oder -wünschen) beschränkt werden.
4.4.3 Kostenplanung
Die Kostenplanung erfolgt in Abhängigkeit von allen anderen Planungsaktivitäten.
Das Ziel ist immer auch eine projektumfassende Vollkostenrechnung, angefangen bei der Vorplanung, endend beim Abschlussbericht. Zu den ressourcenspezifischen Kosten (Ressourcenkosten) addieren sich noch die Gemeinkosten (wie
Büromiete, Löhne und Gehälter von Verwaltung und Management etc.), die sich
nicht spezifischen Projekten zuordnen lassen.
Für Personal muss zwischen normalen Stundensätzen und Überstundensätzen unterschieden werden. Diese können Gemeinkosten enthalten (Personalvollkosten)
oder nicht. Bei manchen Unternehmen (wie z. B. dem Staat) werden die Kosten für
alle Mitarbeiter derselben Qualifikation gemittelt (Personaldurchschnittskosten).
Das heißt, unterschiedliche Gehälter aufgrund von Leistungs- oder Familienzulagen o. Ä. werden projektunabhängig verrechnet.
Bei Betriebsmitteln entstehen Gemeinkosten (z. B. Büros), Festkosten (z. B. Neuanschaffung nicht-verzehrbarer Betriebsmittel) und laufende Kosten (z. B. Nachkauf aufgebrauchter verzehrbarer Betriebsmittel, Zeitschriften, Wartungsverträge
etc.)
Anmerkung
Auch Erlöse sind Kosten, und zwar negative Kosten.
4.4.4 Kalender
Wesentlich für alle Planungen sind die Kalender. Der wichtigste Kalender ist der
Projektkalender, in dem alle freien Tage (Samstage, Sonntage, Feiertage, Betriebsferien) eingetragen werden.
Daneben kann es beliebig viele Ressourcenkalender geben, in denen die Verfügbarkeit der einzelnen Ressourcen (Personal und Betriebsmittel) eingetragen wird.
Normalerweise enthalten die Ressourcenkalender lediglich mehr freie Tage als
der Projektkalender (Urlaub, Rechner auf CeBIT etc.). Allerdings gibt es auch
Ressourcen, die an ansonsten arbeitsfreien Tagen sinnvolle Arbeiten durchführen
können (Zement kann auch am Wochenende trocknen, 3D-Animationen können
auch über Weihnachten ohne Aufsicht gerendert werden etc.).
107
Draft (29. Juni 2006)
Manchmal sind auch spezielle Vorgangskalender wichtig, wenn z. B. bestimmte Vorgänge im Ausland stattfinden und der betriebsspezifische Projektkalender
daher keine Anwendung finden kann (sehr zum Leidwesen einiger Dienstreisender). Sollte ein PM-Tool keine Ressourcenkalender mit beliebig veränderbaren
Arbeitszeiten unterstützen, so können Wochenend- und Feiertagsarbeit auch mit
Vorgangskalendern modelliert werden.
4.5 Projektkontrolle (Controlling)
Projektkontrolle bedeutet, regelmäßig den aktuellen Stand des Projektes mit dem
geplanten Stand zu vergleichen (Soll-Ist-Vergleich) und bei wesentlichen Abweichungen frühzeitig gegenzusteuern.
Kontrolle ist ein wesentlicher Bestandteil der fortwährenden Planung (der selbst
auch geplant werden muss).
Insbesondere folgende Pläne sollten überwacht werden:
– Terminplan
– Kostenplan
– Qualitätskontrollplan
Bei der Kontrolle müssen dieselben Werkzeuge (SW-Tools etc.) zum Einsatz kommen, wie bei der Planung, um vergleichbare Werte zu erhalten.
Anforderungen an Pläne aus Sicht der Projektkontrolle:
– Jeder Vorgang endet mit einem „Produkt“, d. h., es it entscheidbar, ob der
Vorgang beendet wurde oder nicht.
– Vorgänge sind kurz (wenn möglich ein oder wenige Wochen).
– Ergebnisse sind in irgendeiner From messbar und damit vergleichbar.
Dringlichkeitslisten
Ein wichtiges Mittel zur Steuerung und Kontrolle von Projekten, sind die so genannten Dringlichkeitslisten (HotLists). In diese Listen werden dringende Tätigkeiten (mit Terminen) eingetragen, die sich nicht exakt in ein Balkendiagramm
bringen lassen oder die aus einem anderen Grund besonders beachtet werden müssen.
Die Dringlichkeitsliste sollte immer aktuell gehalten werden.
Draft (29. Juni 2006)
108
Tätigkeitsberichte
Um ein Projekt zu überwachen, kann man die so genannten Tätigkeitsberichte
einführen.
In einem (wöchentlichen) Tätigkeitsbericht trägt jeder Mitarbeiter ein, wie lange
er an welchem Vorgang gearbeitet hat.
Achtung: Tätigkeitsberichte sind unbeliebt und tragen manchmal zu einem
schlechteren Betriebsklima bei. Um wirklich Tätigkeitsberichte und keine Lügenberichte zu erhalten, sollten Sie folgendes beachten.:
– Entweder alle oder keiner (und nicht etwa nur die schlechteren Mitarbeiter).
– Keine minutengenaue Zeiterfassung. Eine Genauigkeit von 1 h oder höchstens 0,5 h reicht vollkommen.
– Machen Sie ihren Mitarbeitern klar, dass Sie wissen, dass die Mitarbeiter
höchstens 6 h an 4 Tagen pro Woche produktiv für das Projekt arbeiten können.
– Machen Sie ihren Mitarbeitern außerdem klar, dass die Erfassung von Überstunden für sie nur von Vorteil ist.
Tätigkeitsberichte haben mehrere Vorteile:
– Ihnen stehen aktuelle Zahlen (einschließlich aktualisierter Schätzungen) für
die weitere Planung zur Verfügung.
– Sie haben konkrete Zahlen für realistische Schätzungen von Folgeprojekten.
– Sie haben Daten, mit denen Sie gegenüber Betriebsrat („Warum soviele
Überstunden?’") und dem Management („Warum so wenig Projektarbeit?“)
argumentieren können.
Zeitdiagramme
Die Schätzungen, wie viele Tage ein Vorgang noch benötigt, können in ein so
genanntes Zeitdiagramm eintragen werden.
Der Schätzer von A hat für die berühmten letzten 10 % länger gebraucht, als für
den Rest. B war ein optimaler Schätzer (ein Pedant?). C wurde unterwegs optimistisch, erreichte dann jedoch das Ziel „nur“ zur anfangs geplanten Zeit. Und
D hatte zum Schluss eine Woche Verzögerung, nachdem er zwischenzeitig pessimistischer geschätzt hatte.
Earned-Value-Analyse
Gewöhnliche Kostenüberwachung vergleicht zu jedem Zeitpunkt die geplanten
(SOLL-Kosten) mit den angefallenen Kosten (IST-Kosten). Diese Zahlen spiegeln aber ein falsches Bild wieder. Wenn zum Zeitpunkt x beispielsweise die
109
Draft (29. Juni 2006)
Draft (29. Juni 2006)
Tätigkeitsbericht
Name: H. Meier
Projekt
Amun
Tätigkeit
Codierung
Design
Mo
Di
2
Fr
4
2
2
3
Interview Hr M.
2
Wartung
2
6
110
2
8
3
2
8
31
2
2
Allg. Meetings
Ausbildung
Literaturstudium
Sonst. (z.B. Verwaltung)
Summe
Überstunden
Do
4
4
Dienstgang
Ausfallzeiten
Krankheit, Arzt
Urlaub
sonst. Abwesenheit
Mi
Datum (Montag): 22. Juni 1998
Summe noch Tage Bemerkungen
2
12
20
unerwart. Probleme
6
9
1
8
6
-2
1
3
3
3
8
39
-1
Tabelle 4.1: Beispiel eines Tätigkeitsberichtes
ungeplant
A
B
C
D
8.
15.
22.
29.
6.
13.
20.
27.
3.
10.
17. 24.
1. Juni
geplante
Zeit
8.
15.
22.
29.
6. Juli
13.
20.
27.
3. Aug.
10.
17.
24.
tatsächliche Zeit
SOLL-Kosten gleich den IST-Kosten sind, aber erst 67 % der bis dahin geplanten Arbeit geleistet wurde, so liegt man nicht im Kostenrahmen, sondern hat ihn
um 50 % überzogen (3/3 der Kosten bei 2/3 der Arbeit).
Um derartige Probleme frühzeitig zu entdecken, wurde die so genannte Earned-Value-Analyse (Arbeitswert-Analyse) eingeführt.
Der Earned-Value (Arbeitswert) gibt den Wert der Arbeit an, die bis zum Stichtag
geleistet wurde. Dieser Wert entspricht den Kosten, die tatsächlich hätten entstehen dürfen. Im obigen Fall entspricht der Earned-Value lediglich 67 % der
SOLL-Kosten. Verglichen mit dem Earned-Value sind die IST-Kosten um den
Faktor 1,5 zu hoch.
Kennzahlen einer Earned-Value-Analyse
1. Budgetkosten der geplanten Arbeit (BCWS = Budgeted Cost of Work Scheduled)
BCWS bezeichnen die Kosten, die für die bis zum Zeitpunkt x geplante Arbeit
eingeplant waren: Sollkosten für geplante Arbeit.
2. Earned Value (BCWP = Budgeted Cost of Work Performed)
BCWP werden oft als Budgetkosten der geleisteten Arbeit bezeichnet. Sie
bezeichnen die Kosten, die für die bis zum Zeitpunkt x tatsächlich geleistete
Arbeit eingeplant waren: Sollkosten für geleistete Arbeit.
BCWP/BCWS entspricht dem Prozentsatz der geleisteten Arbeit (in unserem Beispiel z. B. 40 000/60 000 = 0, 67). Man kann auch die Differenz
111
Draft (29. Juni 2006)
von geleisteter und geplanter Arbeit bilden: BCWP − BCWS (in unserem
Fall 40 000 − 60 000 = −20 000). Dieser Wert heißt Leistungsabweichung
oder Planabweichung (SV). Negative Planabweichungen sagen – genauso wie
BCWP/BCWS-Werte < 1 – aus, dass man entweder dem Plan hinterherhinkt
oder dass man das vorgesehene Budget überschreitet.
3. Ist-Kosten der geleisteten Arbeit (ACWP = Actual Cost of Work Performed)
ACWP gibt an, wieviel Geld bislang wirklich ausgegeben wurde. Die Differenz BCWP−ACWP heißt Kostenabweichung (CV). Der Faktor (cost variance) ACWP/BCWP (= 1,5 in unserem Beispiel, da in unserem Beispiel ACWP
= BCWS angenommen wurde) kann verwendet werden, um eine neue Schätzung für die Projektgesamtkosten zu erstellen. Der Kehrwert BCWP/ACWP
(= 0,67 in unserem Beispiel) heißt Kostenentwicklungsindex (CPI). Ein Wert
>1 bedeutet eine gute Kostenentwicklung, ein Wert <1 zeigt Probleme an.
4. Abweichung bei Fertigstellung (VAC = variance at completion)
Die Abweichung bei Fertigstellung ist die Differenz aus den (geschätzten)
Gesamtkosten (EAC = estimated cost at completion) und dem Gesamtbudget
(BAC = budget at completion): VAC = EAC − BAC. Es gilt dabei dabei:
EAC = BAC · ACWP / BCWP
5. Geschätzte Restkosten bis zur Fertigstellung (ETC)
Die geschätzten Gesamtkosten (EAC) minus den bisherigen Kosten (ACWP)
sind die geschätzten Restkosten bis zur Fertigstellung (ETC = estimated cost
to completion).
An Tag X hätte die erst am Stichtag geleistete Arbeit bereits geleistet sein sollen.
Draft (29. Juni 2006)
112
Kosten
EAC
Restkosten
(ETC)
Istkosten
Kostenabweichung
zur Fertigstellung
(VAC)
Soll/Ist−Abweichung
(keine Aussagekraft)
ACWP
BAC
Kosten−
abweichung (CV)
Sollkosten
BCWS
Leistungs−
abweichung (SV)
Plankosten
BCWP
Zeit
X
Stichtag
Abbildung 4.10: Übersicht über die wesentlichen Earned-Value-Größen
113
Draft (29. Juni 2006)
Draft (29. Juni 2006)
114
Literatur
A SYMETRIX [1994]
ToolBook – OpenScript-Referenz, Springer-Verlag
BALZERT, H. [1996]
Lehrbuch der Software-Technik – Software-Entwicklung, Band 1, Spektrum
Akademischer Verlag GmbH, Heidelberg - Berlin
BALZERT, H. [1998]
Lehrbuch der Software-Technik – Software-Management, Software-Qualitätssicherung, Unternehmensmodellierung, Band
2, Spektrum
Akademischer Verlag GmbH, Heidelberg - Berlin
B ECK , K. [2000]
Extreme Programming - Das Manifest, Band 2, Addison-Wesley
Beta-Verteilung [2006]
Beta-Verteilung,
Beta-Verteilung
http://glossar.fh-augsburg.de/
B OEHM , B. [1981]
Software Engineering Economics, Prentice Hall
B OEHM , B. [1988]
A Spiral Model of Software Development and Enhancement, In: IEEE Computer, 21(5), Seiten 61–72
B OEHM , B., A BTS , C., B ROWN , A. W., ET. AL . [2000]
Software Cost Estimation with COCOMO II, Prentice Hall
B ORCHERS , D. [2004]
Verursacherbedingt verspätet, In: c’t magazin für computertechnik, 2004(22),
Seiten 92–97
Bundesrepublik Deutschland [2004]
V-Modellr XT, Teil 1: Grundlagen des V-Modells, http://www.kbst.
bund.de/V-Modell/-,293/V-Modell-XT.htm
Brockhaus [1991]
Brockhaus-Enzyklopädie, Band 17, F.A. Brockhaus GmbH, Mannheim
B RONSTEIN , I., S EMENDJAJEW, K. [1980]
Taschenbuch der Mathematik, F.A. Brockhaus GmbH, Leipzig
115
Draft (29. Juni 2006)
B URGARTZ , D. [1995]
QM-Handbuch der Softwareentwicklung, Friedr. Vieweg & Sohn Verlagsgesellschagt mbH
B URGHARDT, M. [1995]
Projektmanagement – Leitfaden für die Planung, Überwachung und Steuerung von Entwicklungsvorhaben, Publicidis MCD, München/Erlangen, 3 edition
C USUMANO , M., S ELBY, R. [1997]
How Microsoft Builds Software, In: Communications of the ACM, 40(6), Seiten 53–61
D E M ARCO [1998]
Der Termin, Carl Hanser Verlag, München
D E M ARCO , T., L ISTER , T. [2003]
Bärentango, Carl Hanser Verlag, München
D E M ARCO , T., L ISTER , T. [1991]
Wien wartet auf Dich! Der Faktor Mensch im DV-Management, Carl Hanser
Verlag, München
Dreiecksverteilung [2006]
Dreiecksverteilung,
Dreiecksverteilung
http://glossar.fh-augsburg.de/
Fremdwörterduden [2001]
Duden – Das Fremdwörterbuch, Band 5, Dudenverlag, Mannheim, Leipzig,
Wien, Zürich, 7 edition
Eiffelturm [2006]
The official site of the Eiffel Tower, http://www.tour-eiffel.fr/
teiffel/uk/documentation/stucture/page/chiffr%es.
html
E LZER , P. F. [1994]
Management von Softwareprojekten, Friedr. Vieweg & Sohn Verlagsgesellschagt mbH
G ARTNER , P. [1999]
Die Drei-Punkt-Schätzmethode zur Kalkulation des Projektaufwands, In: Projektmanagement, (4), Seiten 33–37
G OLDRATT, E. M. [2002]
Die Kritische Kette. Das neue Konzept im Projektmanagement, Campus Verlag, Frankfurt, New York
Draft (29. Juni 2006)
116
G OLDRATT, E. M. [2003]
Das Ziel. Teil II., Campus Verlag, Frankfurt, New York
G OSCINNY, U DERZO [1968]
Asterix und Kleopatra, Delta Verlag GmbH, Stuttgart
G RADY, R. [1992]
Practical Software Metrics for Project Management and Process Improvement, Prentice-Hall International Inc., Englewood Cliffs, New Jersey
G UIMARES , T. [1983]
Managing Application Progam Maintanance Expenditures, In: Communications of the ACM, 26(10), Seiten 739–746
G ULBA , U. [1995]
Unternehmensberatung, Kosten sparen mit Projektmanagementsoftware, In:
c’t magazin für computertechnik, 1995(10), Seiten 234–236
H EUER , G. C. G. [1979]
Projektmanagement, Vogel-Verlag, Würzburg
H UMPHREY, W. [1989]
Managing the Software Process, Addison-Wesley Publishing Company,
Massachusetts
J ESPEN , T. [1983]
Documentation – that most Onerous of Chores., In: Computer Design, Seiten
113 –
J UNGBLUTH , V. [1995]
Teamarbeit, Projektmanagement-Systeme im Vergleich, In: CT, 1995(10), Seiten 238–252
J UNGBLUTH , V. [1997a]
Teamwork, Einführung in die EDV-gestützte Projektplanung, In: CT, 1997(7),
Seiten 172–177
J UNGBLUTH , V. [1997b]
Alles im Griff, Projektmanagementsysteme im Vergleich, In: c’t magazin für
computertechnik, 1997(7), Seiten 178–189
J UNGBLUTH , V. [1998a]
Optimallösung: Krisenmanagement mit Projektplaungssystemen, In: c’t magazin für computertechnik, 1998(4), Seiten 140–143
J UNGBLUTH , V. [1998b]
Perfekt geplant, Projektmanagementsysteme im Vergleich, In: c’t magazin für
117
Draft (29. Juni 2006)
computertechnik, 1998(4), Seiten 144–158
K ELLNER , H. [1994]
Die Kunst, DV-Projekte zum Erfolg zu führen, Carl Hanser Verlag
K UPPER , H. [1993]
Zur Kunst der Projektsteuerung, R. Oldenbourg Verlag
L EWIN , K., L IPPITT, R., W HITE , R. [1993]
Patterns of Aggressive Behavior in Experimentally Created, In: Journal of
Social Psychology
M OHANTY, S. [1993]
Software Cost Estimation: Present and Future, In: Software Practice and Experience, 11, Seiten 103–121
M ÜLLER , S., S ONTOW, K. [1995]
Unternehmensberatung, Kosten sparen mit Projektmanagementsoftware, In:
c’t magazin für computertechnik, 1995(10), Seiten 234–236
OYEN , VOLKER UND S CHLEGEL , H. B. [1986]
Projektmanagement heute, Gabal, Gesellschaft zur Förderung Anwendungsorientierter Betriebswirtschaft und Aktiver Lernmethoden in Fachhochschule
und Praxis e.V.
P ITCHER , P. [1997]
Das Führungsdrama; Künstler, Handwerker und Technokraten im Management, Klett-Cotta, Stuttgart
WASSERFALL -M ODELL [2005]
Projektmagazin,
http://www.projektmagazin.de/glossar/
gl-0825.html
ROSENSTIEL , L UTZ [1974]
Motivation im Betrieb, Goldman, München
VON
ROYCE , W. W. [1970]
Managing the Development of Large Software Systems, In: Proceedings of
IEEE Wescon
RUMBAUGH , J., B LAHA , M., P REMERLANI , W., E DDY, F., L ORENSEN , W.
[1991]
Object-Oriented Modeling and Design, Prentice-Hall
RUMBAUGH , J., B LAHA , M., P REMERLANI , W., E DDY, F., L ORENSEN , W.
[1993]
Objektorientiertes Modellieren und Entwerfen, Hanser Verlag, Prentice-Hall
Draft (29. Juni 2006)
118
S CHEYTT, S. [1998]
Endstation Grössenwahn, In: ZUG – Für Menschen unterwegs (Deutsche
Bahn), Seiten 42–46
S EIBERT, S. [2005]
„Wir wollten ein Schätztool, das die Kunden-Lieferanten-Zusammenarbeit
unterstützt“ – Interview mit Barry Boehm, In: Projekt Management aktuell,
2005(1), Seiten 9–13
S NEED , H. [1987]
Software-Management, Müller GmbH, Köln
Statistik [2006]
Statistik, http://pm.fh-augsburg.de/statistik
[2005]
The TOC Times, http://www.goldratt.com/toctquarterly/
april2005.htm#dollardays
Z IELASEK , G OTTHOLD , D. [1995]
Projektmanagement, Springer-Verlag
119
Draft (29. Juni 2006)