3 Aufwandsschätzung (Allgemein und Function-Point) Flashcards
- Was ist Schätzen?
- Was lässt sich schätzen?
Schätzen heißt, Wahrscheinlichkeiten für das Eintreten von Ereignissen anzugeben.
- Produktumfang - Wie viel?
Produktlaufzeit -> Wie lange?
Alle anderen Fragen sind Gegenstand der detaillierten Projektplanung!
Was ist (k)ein Schätzwert?
“In 15 Monaten fertisch!” -> kein Schätzwert, da fix.
Schätzen ist Ungenau!
- Wir sind wahrscheinlich in 15 Monaten fertig!
- Mit Verteilungen rechnen!
- Beispiel: Normalverteilung
Die Schätzgenauigkeit
- Je mehr man weiß, desto besser die Schätzung!
- Teilaufträge einholen!
Wir sind gerade bei der Projektplanung bei Zeit- und Ressourcenplanung:
Lastenheft -> Schauen ob nach Budget machbar ist -> Schätzung
Welche Probleme gibt es beim
Schätzen in der Praxis?
– Keine Sachkenntnis zum Schätzen
– Keine Idee, wie sich Schätzungen zusammensetzen
– Der Vorgesetzte hat immer Recht …
– Erfahrungen aus der Vergangenheit werden nicht berücksichtigt
Nenne drei Ansätze zur Aufwandsschätzung
Expertenschätzungen
Analogieschätzungen und Prozentsatzmethode
Modellbasierte Schätzungen
- Beschreibe die Expertenschätzungen (Einzelschätzung).
- Nenne die Vor- und Nachteile dieser Schätzung
- Ein Experte (oft der Projektleiter oder erfahrener Entwickler) schätzt Aufwand auf Basis der Aufgabenbeschreibung und seiner Erfahrung.
2.
Vorteile
+ Einfachstes Verfahren
+ Schnell, kein Rechenaufwand, keine Parameterschätzungen
Nachteile
– Hohe Subjektivität
– Große Schätz-Unsicherheit
– Keine Transparenz des Schätzprozesses
- Warum sollte die Expertenschätzung durch andere Verfahren untermauert werden?
- Durch welche Verfahren könnte sie untermauert werden?
- Mehrfachbefragung:
Es werden mehrere Schätzer, möglichst aus unterschiedlichen organisatorischen Bereichen, befragt und ein Mittelwert gebildet oder (bei größeren Unstimmigkeiten) diskutiert und ein Konsens gesucht.
- Delphi-Schätztechnik:
Formalisierte, schriftliche Befragung mehrerer Experten. Zwei oder mehr Befragungsrunden mit Sitzungen zur Diskussion der Zwischenergebnisse der vorausgegangenen Schätzrunde.
- Schätz-Sitzung:
Übertragung des Delphi-Prinzips auf eine einzige Gruppensitzung.
Expertenschätzungen – Schätz-Sitzung (1)
- Nenne die Teilnehmer
- Welche Unterlagen werden benötigt?
#s3gt_translate_tooltip_mini { display: none !important; }
Teilnehmer: Projektleiter, Moderator, Protokollführer & mehrere Kostenschätzer (davon ca. 50 % Projektfremde)
Unterlagen:
– Projektzieldefinition, Lasten-/Pflichtenheft
– Produkt-/Projektstrukturplan und Arbeitspaketbeschreibungen
– Projektrandbedingungen (Arbeitsmittel, Mitarbeiterqualifikation etc.)
Expertenschätzungen – Schätz-Sitzung (2)
Wie lautet der Ablauf?
Ablauf
- Auswahl eines oder mehrerer Referenzkomplexe zur Detailschätzung
- Schätzer schreiben Schätzungen für erstes Arbeitspaket anonym auf Karten
- Durchsicht der Karten, Ausscheiden von Extremschätzungen, Ermittlung von Mittelwert oder Median
- Bei weit auseinanderliegenden Einzelschätzungen:
Schätzer mit pos./neg. Extremwerten erläutern Gründe (Rede/Gegenrede)
Ggf. weitere Detaillierung in kleinere Arbeitseinheiten und Neuschätzung
- Beurteilung des Unsicherheitsgrades der Schätzung durch das Team
- Schätzung des nächsten Arbeitspakets im Referenzkomplex (Schritt 2) usw.
- Analogieschluss vom Referenzkomplex auf das Projektkomplexe
- Sofortprotokoll (Standardformulare) am Sitzungsende
Analogieschätzung
Des zu schätzende Projekt wird mit mind. einem abgeschlossene, ähnliche Projekte verglichen:
Ähnlichkeit nach Anwendungsgebiet/Aufgabenstellung, Produktgröße, Randbedingungen (z. B. Projektteam, SEU u. ä.)
Unterschiede in Aufgabenstellung und Realisierungsbedingungen werden vom Schätzer aufgrund seiner Erfahrung intuitiv angepasst.
Vorteile
+ Schätzungen bereits in sehr frühen Projektstadien möglich
+ Aufwand aus tatsächlichen Projekt-Istwerten abgeleitet
+ Schätzungen sowohl auf Gesamtprojekt- als auch auf Subsystemebene
Nachteile
– Schwierige Beurteilung der Repräsentativität der Analogieprojekte
– Hohe Subjektivität der vorgenommenen Zu- und Abschläge
#s3gt_translate_tooltip_mini { display: none !important; }
Prozentsatzmethode (1)
Beschreibe diese Methode (ohne Vor- und Nachteile)
#s3gt_translate_tooltip_mini { display: none !important; }
Aus früheren Projekten wird ermittelt, wie sich Aufwand und Projektzeit prozentual auf die einzelnen Projektphasen verteilen.
Voraussetzung: Einheitliches Vorgehensmodell
Bei Folgeprojekten: Top-Down-Schätzung des Aufwands in den Phasen
Es gibt 2 Varianten für Bottom-Up-Schätzungen:
– Mind. eine Projektphase vollständig abschließen und Ist-Aufwand prozentual als Soll für restliche Phasen hochrechnen
– Für eine Phase/Aktivität (z.B. Programmierung) eine detaillierte Mikroschätzung durchführen und daraus Gesamtprojekt schließen
Zu Projektbeginn eher für Gegen-Checks sinnvoll, da hohes Fehlerrisiko bei Hochrechnung aus niedrigen Anfangswerten
Prozentsatzmethode Beispiel: Aufwand der Realisierung
- Geschätzter Projektumfang: 50 KDSI
- Tatsächlicher Aufwand der Analyse = 8,75 PM
- Gesamtaufwand zurückgerechnet aus Aufwand der „Anforderungsanalyse“:
6% = 8,75 PM ⇒ 100% = 8,75 PM * (100/6) = 145,9 PM
- Geschätzter Aufwand der Realisierung: 62% von 145,9 PM = 90,2 PM
- . . .
KDSI = Kilo Delivered Source Instructions (~KLOC=Kilo Lines Of Code)
Prozentsatzmethode (2)
Nenne die Vor- und Nachteile
Vorteile
+ Einfach, feicht anpassbar und früh einsetzbar
Nachteile
– Sehr grob
– Projektspezifische Einflussfaktoren werden nicht berücksichtigt
– Konkrete Projektaufgabe geht nicht in die Schätzung ein
– Oft „self fulfilling prophecies“ (Verzögerungen in den ersten Phasen werden auf die weiteren Phasen fortgeschrieben und dort auch „verbraten“)
– Schwierig bei explorativen und leichtgewichtigen Vorgehensweisen
Was ist die Arbeitsschrittschätzung anhand WBS?
Welche Vor- und Nachteile hat sie?
Work Breakdown Structure (WBS) ist eine Arbeitsschrittschätzung, bei der das Projekt anhand des Vorgehensmodells auf elementare Arbeitsschritte heruntergebrochen wird und der Aufwand der einzelnen Schritte geschätzt wird.
Vorteile
+ Einfach anzuwenden
+ Fördert die Strukturierung des Projektes
+ Macht Abhängigkeiten deutlich
+ Gut mit Prozentsatzmethode kombinierbar
Nachteile
– Berücksichtigt die Komplexität der zu erstellenden Software nur indirekt
– Zu Beginn nur grobe Schätzung möglich
– Problem „self fulfilling prophecy“
Modellbasierte Schätzungen
- Womit lässt sich der Produktumfang schätzen?
- Womit lässt sich die Entwicklungszeit schätzen?
Modellbasierte Schätzungen
- Schätzung des Produktumfangs: Function-Point-Analyse
- Schätzung der Entwicklungszeit: COCOMO
Was ist die Function Point Analyse?
Was ist die Basis einer FPA-Anwendung?
Ist eine Schätzung anhand von Kenngrößen der zu liefernden Funktionalität, durch die sich der Produktumfang schätzen lässt.
- Strukturierte Analyse
– Ereignisse, die vom System verarbeitet werden müssen
– Grobes Datenmodell mit Entitäten und Beziehungen
– Matrix „Ereignisbearbeitung benötigt Entität“
– Kontextdiagramm als Datenflussdiagramm
- Objektorientierte Analyse: Akteure, Anwendungsfälle, Domänen-Klassenmodell, CRUD-Matrix (Anwendungsfall benötigt Instanz(en) von Domänenklasse)
Wie geht man bei der
Function-Point-Analyse vor?
-
RFP ermitteln:
- Funktionskategorien der Komponenten identifizieren und Komplexitätsklassen zuordnen (einfach/mittel/komplex)
- RFP summieren - SI bewerten
- Gewichtung der FP mit SI-Bewertung FP = SummeRFP*(0,65+(0,01*SummeSI))
- Umsetzung von FP in Aufwand in PM PM = 0,0136*(FP)1,308
*zwar nicht so genau wie CoCoMo aber liefert ersten Anhaltspunkt über Personenmonate
RFP = Roh-Function-Points SI = System-Infrastruktur
RFP-Funktionskategorien:
- Eingaben (external inputs, EI),
- Ausgaben (external outputs, EO)
- Anwendungsdaten (internal logical files, ILF)
- Schnittstellen (external interface files, EIF)
- Externe Abfragen (external queries, EQ)
SI-Bewertung:
Netzwerk / Kommunikation,
Hostleistung / Hostbelastung, Verarbeitungslogik, Organisation, …
Function-Point-Analyse
Bewertung der SI
(zur Kenntnis nehmen)
COM Anwendungssystem nutzt Kommunikationseinrichtungen
DIS Verteilte Daten- oder Verarbeitungsfunktionen
RES Antwortzeitverhalten
STR Last- und Stressverhalten
TRA Hohe Transaktionsrate
ONL Online-Dateneingaben und Kontrollfunktionen
EFF Online-Funktionen sollen betont unter Endbenutzer-Effizienzaspekten entworfen werden
UPD Online-Update der internen logischen Datenbestände
KMP Das Anwendungssystem wird durch komplexe Verarbeitungsprozeduren gekennzeichnet
REU Wiederverwendbarkeit
POR Portierbarkeit und Installierbarkeit
USA Benutzungsfreundlichkeit
MAN Mandantenfähigkeit
MAI Änderbarkeit und Wartbarkeit
Skala von 0 (kein Einfluss) bis 5 (starker Einfluss)