Projektmanagement: Eine Einführung

Werbung
Projektmanagement:
Eine Einführung
3. Februar 2015
Überblick
 Welche wesentlichen Projektaufgaben gibt es?
 Wie sollte eine ideale Projektführung aussehen?
 Wie plant man ein Projekt?
 Meilensteine
 Arbeitspakete
 Wie sollte ein Projekt überwacht werden?
 Wie können die Kosten eines neuen Softwareprojekts
abgeschätzt werden?
 Einführung in die Use Case Point Analyse
Taentzer
Einführung in die Softwaretechnik
415
Projektbeteiligte
 Projektmanager ist verantwortlich für die Initialisierung,
Vertretung (nach außen), Koordination und wirtschaftliche
Abwicklung von (i.a. mehreren) Projekten
 Projektleiter ist verantwortlich für den technischen und
ökonomischen Erfolg eines Projektes
 Projekt-Team umfasst alle Personen, die zu einem
gegebenen Zeitpunkt unter Aufsicht der Projektleitung an
Aufgaben arbeiten, die der Erreichung der Projektziele
dienen.
Taentzer
Einführung in die Softwaretechnik
416
Aufgaben der Projektführung
gegenüber (externen) Auftraggeber(n):
- Projekt vertreten, finanziell absichern, Interessen des Teams wahren
- Wünsche, Rückmeldungen des Auftraggebers / der Benutzer erkennen und aufnehmen
- Mögliche Schwierigkeiten rechtzeitig erkennen und beseitigen bzw. neutralisieren
- Projekt abschließen, über das Projekt berichten
gegenüber (interner) Umgebung:
- Ressourcen und geeignete Arbeitsbedingungen bereitstellen
- Projekt vor Störungen schützen, Ressourcen sichern
gegenüber dem Projektteam:
- Projekt planen, steuern, koordinieren
- für gute Qualität der Produkte und Herstellungsprozesse sorgen
- informiert sein und informieren, für Kommunikation sorgen
- Mitarbeiter motivieren, für gutes Arbeitsklima sorgen
Taentzer
417
Anforderungen an die Projektführung
 Projekte zu führen, stellt hohe persönliche, technische und soziale
Anforderungen an die damit betrauten Personen.
 Grundsätzliche Anforderungen ergeben sich aus den allgemeinen
Zielsetzungen für die Projektführung:







Taentzer
Technische Kompetenz
Qualitätsbewusstsein
Kostenbewusstsein
Zuverlässigkeit
Organisationstalent
Verhandlungsgeschick
...
Einführung in die Softwaretechnik
418
Empfohlene Arbeitsweise von
Projektleitern







Moderieren statt herrschen
Vernetzt denken und handeln statt singulär
ganzheitliche Sichtweise, nicht gruppenorientiert
innovativ arbeiten, nicht konventionell
Generalist statt Spezialist
ziel- nicht karriereorientiert
kommunikativ
aus „Grundzüge des Projektmanagement: zingel.de“
Taentzer
Einführung in die Softwaretechnik
419
Formen der Projektorganisation
 Stabs-Projektorganisation
 hierarchisch, in Abteilungen
gegliedert
 starre Organisationsstruktur im
Unternehmen
 Matrix-Projektorganisation
 Abteilungs- und Projektleitung
werden formal voneinander
getrennt.
 flexibel bzgl. der Projektstruktur
 Reine Projektorganisation
 nur Projekte und eine Zentralabteilung
aus „Grundzüge des Projektmanagement: zingel.de“
Taentzer
Einführung in die Softwaretechnik
420
Projektorganisation
Zur Projektorganisation gehören u.a. die folgenden Aufgaben:








Auswahl und Zuschnitt eines Vorgehensmodells
Iterationsplanung
Planung einzelner Phasen und Tätigkeiten
Bildung von Arbeitspaketen
Zuordnung von Mitarbeitern zu den Arbeitspaketen
Termin- und Aufwandsplanung
Planung von Meilensteinen
Einrichten der Werkzeugumgebung
Taentzer
Einführung in die Softwaretechnik
421
Arbeitspakete
Ein Arbeitspaket ist die Gesamtheit der Tätigkeiten, die erforderlich sind, um ein
bestimmtes definiertes Ergebnis zu erstellen.
Arbeitspakete:
.. sind charakterisiert durch
• einen Arbeitsgegenstand (z.B. ein Klassenmodell oder eine Systemkomponente)
• eine Aktivität oder eine Reihe von Aktivitäten, die an einem Gegenstand durchzuführen
sind, z.B. "Modul spezifizieren" , " Klasse in Code umsetzen" oder "Subsystem testen"
.. sind so zu bilden, dass
• sie von einzelnen Mitarbeitern oder von einem kleinen Team selbständig in
überschaubarer Zeit bewältigt werden können,
• sie in ihrer Gesamtheit die vorgegebene Aufgabenstellung vollständig abdecken und
• keine Redundanzen entstehen, d.h. keine Arbeitsschritte mehrfach vorkommen.
Taentzer
Einführung in die Softwaretechnik
422
Bildung von Arbeitspaketen: anwendungsfall- oder
tätigkeitsorientiert?
Anwendungsfälle
Anforderungen
festlegen
Spezifizieren
Entwerfen
Programmieren
Testen
...
System
Komponente A
Anwendungsfall AA
Anwendungsfall AB
.
.
.
Komponente B
Taentzer
Einführung in die Softwaretechnik
423
Mögliche Risiken









Personalveränderungen
Veränderungen im Management
Hardware-Engpässe
Anforderungsänderungen
Spezifikationsverzögerungen
Unterschätzung des Aufwands
unzureichende Entwicklungswerkzeuge
Technologieänderungen
Produktkonkurrenz
Taentzer
Einführung in die Softwaretechnik
424
Termin- und Aufwandsplanung
Einflussfaktoren für die Termin- und Aufwandsplanung:
 Externe Abhängigkeiten (z.B. Zulieferungen, Entscheidungen,
Bestätigungen)
 Logische Abhängigkeiten (der Tätigkeiten untereinander)
 Abhängigkeiten von (internen) Ressourcen und Dienstleistungen
 Arbeitsaufwand für die einzelnen Arbeitspakete und Tätigkeiten
Aufwandsschätzung
 Aufwand für die einzelnen Arbeitspakete, Phasen und das
Gesamtprojekt schätzen
Planungsaufgaben
 Für die Arbeitspakete Start-, Endtermine und Aufwände planen
 Meilensteine (=definierte Prüf- und Entscheidungspunkte im
Projektverlauf) planen
 Den Arbeitspaketen Mitarbeiter(-gruppen) zuordnen
Taentzer
Einführung in die Softwaretechnik
425
Methoden zur Aufwandsschätzung
Analogiemethode: Schätzung analog zu früheren, abgeschlossenen Projekten
Multiplikatormethode: Zerlegung des Systems in n Teilprodukte
Relationsmethode: wie Analogiemethode, aber mit festen Richtlinien und
Bewertungsfaktoren
Gewichtungsmethode: Weiterentwicklung der Multiplikatormethode
Prozentsatzmethode: Hochrechnung des Aufwands für eine bereits
abgeschlossene Phase auf die restlichen Phasen
Netzplanmethode: Darstellung des Projektverlaufs als Netzplan
Spezielle Verfahren zur Aufwandsschätzung von SW-Projekten:
• Function Point (IBM, 1979)
• COCOMO (Boehm 1981 / 1995)
• Object Point (Sneed 1994)
• Use Case Point (Rational 1999)
Taentzer
Einführung in die Softwaretechnik
426
Beispiel für einen Netzplan
aus „lehrerfortbildung-bw.de“
Taentzer
Einführung in die Softwaretechnik
427
Projektplanung
 Ausarbeitung eines Netzplans:
 Identifikation der Aufgaben (Arbeitspakete)
 Abschätzung der Dauer jeder einzelnen Aufgabe
 Festlegung der frühesten Anfangs- und Endzeitpunkte für eine Aufgabe
(FAZ und FEZ)
 Festlegung der spätesten Anfangs- und Endzeitpunkte für eine Aufgabe
(SAZ und SEZ)
 Ermittlung einer möglichen Verzögerungszeit für eine Aufgabe (Puffer)
 Gesamtpuffer (GP): Zeit, um die eine Aktivität geschoben werden
kann, ohne dass die späten Termine der Nachfolger betroffen sind
 Freier Puffer (FP): Zeit, um die eine Aktivität geschoben werden
kann, ohne die frühesten Termine der Nachfolger zu beeinflussen
 Kritischer Pfad: Pfad durch das Netz ohne Pufferzeiten
Taentzer
Einführung in die Softwaretechnik
428
Projektdokumentation
 Zwecke eines Projektberichts:





Übersicht der durchgeführten Projektarbeiten
wichtiges Instrument des innerbetrieblichen Informationsflusses
Ressourcen- und Zeitkontrolle
Grundlage der Projektsteuerung
Grundlage zur Planung weiterer Projekte
 Internes und externes Berichtwesen:
 Extern: Grundlage für die Rechnungslegung
 Intern: Protokollierung der gelebten Projektdurchführung
Taentzer
Einführung in die Softwaretechnik
429
Zu guter Letzt:
Murphy‘s Law in der Projektarbeit
aus „www.vera-naumann.de“
1. Nichts ist so einfach, wie es aussieht.
2. Alles braucht länger als Sie erwarten.
3. Wenn etwas immer wieder wunderbar funktioniert, solange keine
hierarchisch hochgestellte Person anwesend ist, dann wird es in dem
Moment schiefgehen, wo der oder die Auftraggeber/in anwesend ist.
In Anwesenheit der höchstgestellten Person der gesamten
Organisation wird es völlig aussetzen.
4. Wenn man die Dinge sich selbst überlässt, werden sie immer
schlechter.
5. Wenn alles gutgeht, haben Sie offensichtlich etwas übersehen.
6. Wenn Sie vier Möglichkeiten gefunden haben, um ein mögliches
Problem zu vermeiden, dann wird wahrscheinlich ein fünfter Weg
erscheinen, auf dem es doch schiefgehen kann.
Taentzer
Einführung in die Softwaretechnik
430
Zu guter Letzt:
Murphy‘s Law in der Projektarbeit - 2
aus „www.vera-naumann.de“
7. Die Natur ist immer auf der Seite der versteckten Schäden.
8. Es ist unmöglich, etwas narrensicher zu machen, weil Narren so
erfinderisch sind.
9. Wenn viel Zeit damit verbracht wurde, eine Antwort auf eine offenbar
unlösbare Frage zu finden, dann wird die Lösung von der ersten
unqualifizierten Person kommen, die sich das Problem anschaut.
10. Unter Druck werden die Dinge noch schlimmer.
11. Wenn etwas irgendwo schiefgeht, ist es wahrscheinlich, dass es
überall schiefgeht.
12. Wann immer Sie etwas tun wollen, gibt es etwas, das Sie vorher tun
müssen (und davor noch etwas).
Taentzer
Einführung in die Softwaretechnik
431
Zusammenfassung
 Der Projektmanager vertritt ein Projekt nach Außen. Der
Projektleiter ist verantwortlich für den Erfolg eines
Projektes (nach Innen). Die Aufgaben eines Projektleiters
unterscheiden sich essentiell von den eines Entwicklers.
 Wesentliche Aufgaben der Projektleitung: Projektplanung,
inkl. Bereitstellung der Ressourcen, Risiko- und Kostenabschätzung, Projektdurchführung und –dokumentation
 Basismethode zur Zeitabschätzung: Netzplanmethode
 Spezielle Methoden zur Aufwandsschätzung von SoftwareProjekten: Function Point, Use Case Point, etc.
Taentzer
Einführung in die Softwaretechnik
432
Literatur
 Eclipse Development Process, www.eclipse.org/projects/dev_process/
 T DeMarco, T. Lister , P. Hruschka: Wien wartet auf Dich!, Hanser
Verlag, 2014
 S. Frohnhoff, V. Jung, G. Engels: Use Case Points in der industriellen
Praxis, www.cs.uni-paderborn.de/uploads/tx_sibibtex
/Engels_Use_Case_Points_in_der_industriellen_Praxis.pdf
 S. Frohnhoff: Use Case Points 3.0: Implementierung einer Use Case
bezogenen Schätzmethode für das Software-Engineering betrieblicher
Informationssysteme, Dissertation, Universität Paderborn, 2009,
digital.ub.uni-paderborn.de/hs/content/titleinfo/5490
 H. Zingel, Grundzüge des Projektmanagement, www.zingel.de
 V. Naumann: Kommunikation & Organisation,
www.vera-naumann.de/selbstorganisation-projekte3.htm
Taentzer
Einführung in die Softwaretechnik
433
Herunterladen