270 likes | 584 Views
Aufwandschätzverfahren Mi, 30. November 2005. VU Projektmanagement- Grundlagen und Techniken Renate Motschnig, Kathrin Figl, Jürgen Mangler. Mi, 30. November 2005 - Zeitplan. 11.00- 12.30 Gast – Vortrag IBM 12.30- 12.40 Pause 12.40- 13.00 Vortrag Aufwandschätzverfahren 1
E N D
Aufwandschätzverfahren Mi, 30. November 2005 VU Projektmanagement- Grundlagen und Techniken Renate Motschnig, Kathrin Figl, Jürgen Mangler
Mi, 30. November 2005 - Zeitplan • 11.00- 12.30 Gast – Vortrag IBM • 12.30- 12.40 Pause • 12.40- 13.00 Vortrag Aufwandschätzverfahren 1 • 13.00- 13.30 Praktische Übung FP • 13.30- 14.00 Abgabe MS-Projekt Bsps
Schätzverfahren • Ziel der Aufwandschätzverfahren: möglichst gute und frühe Abschätzung des Aufwandes für ein Projekt • zu beachtende Problematik: • Aufwand hängt von sehr vielen (laut Lit. ca. 100!) Einflußgrößen ab und kann daher schwer bestimmt werden • Beispiele für Einflußgrößen neben Systemfunktionalität:Art der Anwendung, befolgtes Lebenszyklusmodell,nicht-funktionale Anforderungen, künftige Benutzer, organisatorische Randbedingungen bei Auftraggeber sowie Auftragnehmer, Software- und Hardwareumgebung, Stabilität der Umwelt, Qualifikation der Mitarbeiter, Führungsstile, ..., ...
Ziele • Ziele dieses Abschnittes: • Diskussion der grundlegenden Problematik der Aufwandschätzung • Aufzeigen verschiedener Schätzstrategien und Hinweise auf günstige Anwendungsmöglichkeiten • Aufzeigen, daß kein Verfahren für sich das Beste ist • Motivation der Vorarbeiten für den erfolgreichen Einsatzn von Schätzverfahren • Vermittlung des Verständnisses für den Einsatz der algorithmischen Verfahren Function-Point und COCOMO • Aufzeigen der Anwendung algorithmischer Verfahren für die Projektplanung.
Problematik • Schätzungen sind ungenau: illustratives Experiment: Mohanty (1981) hat anhand eines hypothetischen Systems (Umfang 36.000 exekutierbare Maschinenbefehle) 13 Verfahren getestet: Bedingungen:- konsistente Angabe verlangter Einflußgrößen - Annahme: 1 Personenjahr kostet $50.000Ergebnisse: min. Aufwand: $362.500, max. Aufwand: $2.766.667 • je früher eine Schätzung gemacht wird, umso ungenauer ist das Ergebnis; dennoch: frühe Schätzung ist für das Projektmanagement erforderlich!daher: Wiederholung(en) der Schätzung im Projektverlauf notwendig für Präzisierung und Kontrolle, ob der Budget-rahmen eingehalten wird.
Problematik Genauigkeit der Schätzung im Projektverlauf: (Jenny, Abb. 4.15, S. 352)
Problematik • Faktoren, welche die Schätzgenauigkeit beeinflussen: • Projektkomplexität • Dokumentation • Methoden- und Werkzeugeinsatz • Organisationsform, • quantifizierte Qualitätsmerkmale • Güte der Daten in der Cost-Datenbank • genaue Definition zu schätzender Parameter wie LOC (Lines of Code) oder Personenmonate (wieviele Stunden?!) ... • Schätzergebnisse sind kaum überprüfbar: gutes/schlechtes Projektmanagement kann jede noch so gute Schätzung ad absurdum führen • dennoch: Schätzen des Aufwandes ist unerläßlich und muß so gewissenhaft wie nur möglich durchgeführt werden.
Schätzvorgang ungenaueAnforderungen Sinnlos schätzen Soll-Werte strukturierteAufgabe Aufgabestrukturieren schätzen Aufgabe noch fehleranfällig! Fehlerhafte Schätzungen der Vergangenheitfließen ein, daher werden ggf. Fehler wiederholt.
Schätzvorgang (Böhm Abb. 10.2, S. 298)
Klassen von Schätzverfahren Klassen von Verfahren: • Algorithmische Methoden:Grundlage: Formeln, deren Strukturen und Konstanten empirisch sind und mit Hilfe mathematischer Modelle bestimmt werden • Vergleichsmethoden:Grundlage: Vergleich früherer Entwicklungen mit dem aktuellen Projekt;Einsatz: speziell in sehr frühen Projektphasen • Kennzahlenmethoden:Grundlage: Ableitung von Kennzahlen aus früheren Entwicklungen zwecks Bewertung von Schätzgrößen für das geplante Projekt
Strategien weitere Strategien zur Aufwandschätzung: • Parkinson’sches Gesetz:besagt, daß sich die Arbeit soweit ausdehnt, daß die verfügbare Zeit verbraucht wird; d.h.: Projektkosten richten sich nach verfügbaren Ressourcen.Beispiel: Wenn die SW in 12 Monaten geliefert werden muß und 5 Mitarbeiter verfügbar sind, wird der Aufwand auf 60 Personenmonate geschätzt. • “Pricing to win”:Die Kosten werden nach dem zur Verfügung stehenden Budget des Kunden geschätzt und die Anforderungen werden dem Budget angepaßt.
Strategien • Top-down Schätzung:Die Schätzung erfolgt aufgrund der allgemeinen Funktionalität und deren Aufteilung auf Teilfunktionen.Basis: logische Funktionen statt Komponenten, welche die Funktionalität implementieren. • Bottom-up Schätzung:Zunächst wird der Aufwand für jede einzelne Komponente bestimmt. Der Gesamtaufwand resultiert aus der Summe aller Teilaufwände.
Fazit • Bewertung: keine Technik ist besser als eine andere! • Anmerkung: große Projekte bedürfen mehrerer unabhängiger Schätzungen. Sollten diese stark divergieren, mangelt es an notwendigen Informationen, die zunächst eingeholt werden müssen (z.B. Anforderungen genauer formulieren, Prototyping, ...). • zugrundeliegende Annahme aller Verfahren und Strategien:die Schätzung beruht auf einer fixen Anforderungsdefinition;Problem der Praxis: oft ist eine Schätzung vor der detaillierten Erhebung der Anforderungen notwendig, da letztere bereits hohe Kosten verursacht. • Praxis: oft sind die Kosten statt der Anforderungen fix
HÜ bis nächste Woche, 5.MS • Ablaufplan und Vorarbeiten • Einbeziehung von Reviews • Zuordnung von Personen zu Aufgabenbereichen. • Erstellen der Tätigkeitsliste als Verfeinerung der AP des ersten Projektstrukturplans (bitte schon am Die abend abgeben!!) • Ablaufplan (resultierend aus Verknüpfung der Tätigkeiten) mit MS-Project Gantt-Diagramm und Netzplan • MC-Aufgaben auf der LV-Plattform!
Function-Point-Method (Funktionsverfahren) • Function-Point-Method (FPM)Klasse: algorithmische Schätzverfahren • Charakteristika: Klassifikation aller Anforderungen und Einteilung der Klassen in Komplexitätsstufen zwecks Zuordnung von Funktionspunkten;Klassifikation und Bewertung von Einflußfaktoren • Ziele: • Aufwandsschätzung für kommerzielle Anwendungen • Bestimmung der Effektivität der laufenden Projektarbeit durch iterative Anwendung des Verfahrens.
Function-Point-Method (Funktionsverfahren) • Merkmale • frühzeitig, genauer: nach Anforderungsanalyse einsetzbar • später iterativ anwendbar • Ergebnis ist erklärbar und nachvollziehbar • für die Bewertung wird die Gesamtheit der Anforderungen herangezogen, eine Gliederung ist nicht erforderlich • Vorgehen 1) jede Anforderung wird einer der folgenden fünf Komponenten zugeordnet:
Function-Point-Method (Funktionsverfahren) • Eingabedaten, z. B.: Bildschirmeingaben, Eingaben über Diskette, Interfacedaten anderer Anwendungen,... • Ausgabedaten, z. B.:Bildschirmausgaben, Listen, Formulare,Interfacedaten für andere Anwendungen • Abfragen gezählt wird jeweils eine Einheit von unterschiedlich formatierten Online-Eingaben zur Suche von Information • Anwenderdateien gezählt wird jede logische Datei , die im Rahmen des Anwendungs- systems gepflegt wird • Referenzdateien alle Dateien und Tabellen, die von der Anwendung nur gelesen werden
Function-Point-Method (Funktionsverfahren) 2) Einteilung jeder Komponente in die Komplexitätsstufen: einfach, mittel, komplex Zuordnung von Funktionspunkten zwischen 3 und 15 je nach Komponente und Komplexitätsstufe, siehe Tabelle: (Jenny, S. 363)
Function-Point-Method (Funktionsverfahren) • Beispiel zu Komplexitätsstufen und FP-Zuordnung für die Komponente Ausgabedaten: (Böhm, S. 317)
Function-Point-Method (Funktionsverfahren) 3) Festlegen der Einflußfaktoren der gesamten Anwendung;Bewertung der Faktoren mit 0 bis 5 Punkten (je Faktor) (0 .. kein Einfluß, 5 .. starker Einfluß) Einflußfaktoren: • Verflechtung mit anderen Systemen • Dezentrale Verarbeitung und Datenhaltung • Transaktionsrate und Antwortzeitverhalten • Verarbeitungskomplexität; Bewertungsspanne: 0-30 ergibt sich aus der Summe der Einzelbewertungen (angepaßt durch IBM-Deutschland, 1985) für:
Function-Point-Method (Funktionsverfahren) • Schwierigkeit und Komplexität der Rechenoperationen (0-10) • Umfang der Kontrollverfahren für die Datensicherstellung (0-5) • Anzahl der Ausnahmeregelungen (0-10) • Schwierigkeit und Komplexität der Logik (0-5) • Wiederverwendbarkeit in anderen Anwendungen: z.B.: prozentualer Anteil der Wiederverwendung: bis 10% .. 0 FP, über 50% .. 5 FP • Datenbestand-Konvertierungen • Benutzer- und Änderungsfreundlichkeit
Function-Point-Method (Funktionsverfahren) Addition der Einflußfaktor-Bewertungspunkte: = S2 max(S2) = 60 Berechnung des Faktors der Einflußbewertung: S3 = 0,7 + (0,01 * S2) der Einfluß der Faktoren kann (bei kommerz. Anwendungen) maximal 30% des errechneten Wertes betragen; Anmerkung: für wissenschaftliche und technische Projekte gilt ein anderes Einflußfaktoren-Modell 4) Berechnung der “Total Function Points” TFP TFP = S1 * S3
Function-Point-Method (Funktionsverfahren) 5) Ableitung des Aufwands in Personenmonaten aus den TFP- Werten nach einer Wertetabelle bzw. Erfahrungskurve: Anmerkung: die Tabelle entsteht durch Nachkalkulation von verschiedenen abgeschlossenen Projekten. Sie unterscheidet sich i.a. zwischen verschiedenen Entwicklungsabteilungen. (Jenny, S. 364)
Function-Point-Method (Funktionsverfahren) • Berechnungsbeispiel: (Jenny, S. 365)
Function-Point-Method (Funktionsverfahren) (Jenny, S. 365)