SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Aufwandsschätzungen
Kalkulation und Planung von Software-Entwicklungsprojekten


Frank Egger
Deutsche Post Com GmbH
Überblick

    Einführung
    Einführung

    Das Spannungsfeld bei Aufwandsschätzungen
    Genauigkeit von Aufwandsschätzungen
    Generelle Vorgehensweisen bei Schätzungen

    Traditionelle Schätzverfahren vs. Agile Aufwandsschätzung und Projektplanung
    Traditionelle Schätzverfahren vs. Agile Aufwandsschätzung und Projektplanung

    UseCase-Methode als Beispiel für „klassische“ Aufwandsschätzungen
    Klassifikation traditioneller Aufwandsschätzungen
    Feature-Points im Planungsspiel für mehr Agilität
    „velocity“ als Produktivitätsmaß
    Kontinuierliche Verbesserung der Aufwandsschätzung und Planung in Iterationen

    Diskussion von Aufwandsschätzungen
    Diskussion von Aufwandsschätzungen


    Resumee // Checkliste für gute Aufwandsschätzungen
    Resumee Checkliste für gute Aufwandsschätzungen


                       Bonner Runde · Aufwandsschätzungen · 20. November 2006       Seite 2
Teil 1




                                          Einführung

         "There’s no sense being exact about
         something if you don’t even know what
         you’re talking about."

         John von Neumann




                     Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 3
Was ist eine Schätzung?

    Was man denkt…
    Was man denkt…
                                                                               Ungenauigkeit?!
    eine provisorische Berechnung, eine sehr grobe Kalkulation

    eine vorläufige Kalkulation von Kosten und Zeit

    eine Annahme oder Vermutung                                                      Unsicherheit!?
    etwas mit einer gewissen Wahrscheinlichkeit bestimmen

                                                          Restriktionen?!
    Womit man rechnen muß…
    Womit man rechnen muß…

                                                                                      Sicherheit?!
    „Version 2.0 muß bis zur Messe fertig sein.“

    „Die Anwendung muß noch in diesem Jahr online gehen.“

    „Wir haben nicht mehr wie 200.000 Euro Budget für das Projekt.“
                                                                                     Genauigkeit?!
    „Der Kunde erwartet die neue Version in der nächsten Woche.“




                      Bonner Runde · Aufwandsschätzungen · 20. November 2006                          Seite 4
Abgrenzung: Ziele, Pläne und Commitments

    Ein Geschäftsziel…
    Ein Geschäftsziel…

    …wird aufgrund wichtiger wirtschaftlicher Interessen festgelegt
    …ist zunächst unabhängig von jeder Schätzung
    …kann wünschenswert oder verpflichtend sein, aber nicht automatisch auch erreichbar

    Ein Plan…
    Ein Plan…

   …ist eine Vorstellung vom Erreichen eines Ziels unter Einsatz gewisser Mittel
   …ist im Gegensatz zu einer Schätzung immer ziel- oder ergebnisorientiert

    Ein Commitment…
    Ein Commitment…

   …ist ein Versprechen zur Lieferung eines bestimmten Ergebnisses
    zu einem bestimmten Zeitpunkt (dem Ziel)
   …sollte im Gegensatz zu einer Schätzung „verhandelbar“ sein
   …kann der Schätzung entsprechen, oder aggressiver, oder konservativer sein


                      Bonner Runde · Aufwandsschätzungen · 20. November 2006              Seite 5
Das Spannungsfeld bei Aufwandsschätzungen

    Gründe für Aufwandsschätzungen // deren Anspruch
    Gründe für Aufwandsschätzungen deren Anspruch

    Entscheidungen unterstützen (Kosten/Nutzen, Make/Buy, ROI)
    Maßnahmen planen, Ziele festlegen
    Risiken frühzeitig erkennen (und minimieren)
    Ausgangsinformationen zusammentragen


    Gefahren bei Schätzungen
    Gefahren bei Schätzungen

    Erfahrung und Vergleichbarkeit fehlt
    Fehleinschätzung oder fehlende Berücksichtigung von Einflussfaktoren und Risiken
    Extrapolation ohne Berücksichtigung des nichtlinearen Problemcharakters
    Hohe Variabilität des Aufwandes
    Erwartungskonformität der Schätzung (Größe, Genauigkeit)
    „Captain Kirk“-Syndrom



                      Bonner Runde · Aufwandsschätzungen · 20. November 2006           Seite 6
Das „Captain Kirk“-Syndrom

    …oder: der Aufwand muß gering sein.
    …oder: der Aufwand muß gering sein.


                                Captain, der Warpantrieb
                               funktioniert nicht mehr, die
                            Siliziumchristalle sind im Arsch.
                             Captain, die Reparatur dauert
                                 mindestens drei Tage!



                              Scotty, ich geb Dir
                               drei Stunden.


                                                           Okay, Captain, ich
                                                            mach‘s in zwei!




                    Bonner Runde · Aufwandsschätzungen · 20. November 2006      Seite 7
Schätzgenauigkeit / Planungsunsicherheit

    Barry Boehm‘s Studien im Rahmen der Definition zu COCOMO II (2000)
    Barry Boehm‘s Studien im Rahmen der Definition zu COCOMO II (2000)




                                   The Cone of Uncertainty



                    Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 8
Schätzgenauigkeit / Planungsunsicherheit

    Auswirkungen der hohen Variabilität
    Auswirkungen der hohen Variabilität

    (Häufig größere) Projekte überschreiten laut Literatur den Aufwand oder die Termine um
    200 bis 900%

        Z.B. Hubble-Weltraumteleskop: Plankosten 300 Mio. US-$, Istkosten 2,6 Mrd. US-$

    ¼ aller Projekte werden nur mit 25 bis 49% der zuvor geplanten Features abgeschlossen

    Am häufigsten genannte Ursachen für Überschreitung der Schätzung:

        Fehlerhafte, ungenaue, fehlende oder sich ständig ändernde Definitionen von
        Anforderungen

        Fehlende oder zu geringe Beteiligung der End-User

        Ressourcen stehen nicht in ausreichendem Maß oder erwarteter Qualität bereit

        Unrealistische Erwartungen




                      Bonner Runde · Aufwandsschätzungen · 20. November 2006                 Seite 9
Genauigkeit von Aufwandsschätzungen

     Berücksichtigung der Schätz- und Planungsunsicherheit
     Berücksichtigung der Schätz- und Planungsunsicherheit

     Ungünstig: Eine Single-Point-Schätzung ist in aller Regel ein verstecktes Ziel
     Formulierung der Unsicherheit mit Hilfe einer Wahrscheinlichkeitsverteilung
     Aber: Keine symmetrische Verteilung!



                               Einzig mögliches Ergebnis
                                 (100% wahrscheinlich)
                                                                                               Nominales Ergebnis
                100%


                                                          g
                                                       sti                                              h
                                                     n
                                                                                                    lsc
                                             ü
                                          ng                       Wahrscheinlichkeit
  Wahrscheinlichkeit
                                                                                                 fa
                                         u


                                                                                                 Projektdauer
                                        Projektdauer
                                                                                          (oder Kosten oder Aufwand)
                                 (oder Kosten oder Aufwand)

   Quelle: Steve McConnell (Microsoft Press, 2006)



                                      Bonner Runde · Aufwandsschätzungen · 20. November 2006                           Seite 10
Genauigkeit von Aufwandsschätzungen

     Berücksichtigung der Schätz- und Planungsunsicherheit
     Berücksichtigung der Schätz- und Planungsunsicherheit

     Ungünstig: Eine Single-Point-Schätzung ist in aller Regel ein verstecktes Ziel
     Formulierung der Unsicherheit mit Hilfe einer Wahrscheinlichkeitsverteilung
     Aber: Keine symmetrische Verteilung!
     Wie schlecht ein Projekt ausgeht ist nicht limitiert, wie gut schon

                                                         Nominales Ergebnis
                                                          (50/50 Schätzung)
                                         100%



                         Wahrscheinlichkeit




                                                            Projektdauer
                                                     (oder Kosten oder Aufwand)

   Quelle: Steve McConnell (Microsoft Press, 2006)



                                      Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 11
„Gute Aufwandsschätzungen“

       Für gewöhnlich: On-time and in-budget (zumindest halbwegs)
       Für gewöhnlich: On-time and in-budget (zumindest halbwegs)

      Caspar Jones: Abweichungen von 10% sind ein Hinweis für sehr gute Schätzungen
      Conte, Dunsmore, Shen: Zeit und Ergebnis darf zum Plan um 25% abweichen

       Was ist eine „gute Aufwandsschätzung“ ohne ein „gutes Projektmanagement“?
       Was ist eine „gute Aufwandsschätzung“ ohne ein „gutes Projektmanagement“?


                                                            Mitarbeiter durch             Instabile
      Mitarbeiter noch               Anforderungen
                                                          andere geschäftliche          Funktionalität
     nicht einsatzbereit                entfernt
                                                          Tätigkeiten abgelenkt            entfernt



                                                                                                         Ergebnis =
„Schätzung“ =
                                                            Das Projekt                                  20 PM
        20 PM


                                                                                  Anforderungen auf
                                                                                     Basis neuer
                                                         Mitarbeitern
                Anforderungen
                                                                                    Erkenntnisse
                                                        fehlt wichtiges
                 hinzugefügt
                                                                                       ergänzt
                                                          Know How

    Quelle: Steve McConnell (Microsoft Press, 2006)



                                       Bonner Runde · Aufwandsschätzungen · 20. November 2006                 Seite 12
Vorgehensweisen (1): Die Produktivität

    Zählen und Berechnen
    Zählen und Berechnen

    Kennzahlen / Produktivitätseinheiten ermitteln
    (LoC, Feature-Points, Usecase-Points, Change-Requests, Dialoge…)

    Aufstellen der Schätzung mit Hilfe eines Schätzalgorithmus und gesammelter
    historischer Produktivitätsdaten (quantifizierte Erfahrungswerte)

    Wenn keine Erfahrungswerte vorliegen können Expertenschätzungen helfen

    Aufwand (Personen Monate) und Zeit (Kalender Monate) für Produktivitätswerte
    festhalten (überführen in historische Daten)

    Berücksichtigung historischer Daten
    Berücksichtigung historischer Daten

    Erfahrungswerte für ähnliche Projekte aus der Software-Industrie verwenden

    Gesammelte Kennzahlen-Daten des eigenen Unternehmens heranziehen

    Historische Daten des gleichen Projekts zur Verfeinerung der Schätzung nutzen
    (Iterationsplan für Schätzungen)


                      Bonner Runde · Aufwandsschätzungen · 20. November 2006        Seite 13
Das Teufelsquadrat (1987)

                        Qualität                                                                Quantität
                                     +                                                      +
  Nichtfunktionale Anforderungen                                                                    Funktionale Anforderungen

                                                   Produktivität




                                     -                                                      -
                 Projektdauer                                                                   Aufwand
                                         Quelle: Software-Projektkalkulation, Sneed, 2005




    Berücksichtigung von Projekteinflüssen um Produktivitätsdaten für Schätzungen nutzen zu
    können
    Schätzalgorithmen berücksichtigen häufig diese Einflüsse


                             Bonner Runde · Aufwandsschätzungen · 20. November 2006                                             Seite 14
Einflussfaktoren auf die Produktivität

    Produkt- und Prozesseinflüsse („harte Faktoren“)
    Produkt- und Prozesseinflüsse („harte Faktoren“)

    Komplexität, Größe und Qualität des Produktes
    Neue oder sich ändernde Anforderungen während der Entwicklung
    Durchgängigkeit der Toolunterstützung
    Wiederverwendbarkeit von Software und Entwicklungsmethodiken
    Zeitrestriktionen und Projektdauer
    Performance und Verfügbarkeit der eingesetzten Entwicklungsumgebung

     Mitarbeiter- und Umgebungseinflüsse („weiche Faktoren“)
     Mitarbeiter- und Umgebungseinflüsse („weiche Faktoren“)

    Wissen und Erfahrung der Mitarbeiter
    Arbeitsplatzgestaltung
    Firmenkultur
    Teamgröße und -zusammensetzung


                      Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 15
Vorgehensweisen (2) : Subjektive Beurteilungen

    Empirische Verfahren
    Empirische Verfahren

    Expertenschätzung
        Einbeziehung von Personen der Realisierung (Realisierungsexperten)
        Dekomposition / Rekomposition (Schätzung von Teilaufgaben/-schritten einfacher
        und weniger fehleranfällig)
        Analogie-Methode (möglichst ähnliche Projekte/Aufgaben werden verglichen)
        Best-Case und Worst-Case schätzen
    Experten-Gruppe / Delphi-Methode
        Schätzung durch mehrere unabhängige Experten
        Mehrere Schätzrunden
        Konvergiert (hoffentlich ☺)
        Eliminiert Ausreißer
    Empirische Verfahren sollten nur das letzte Mittel sein!
        Subjektivität verfälscht Schätzungen


                       Bonner Runde · Aufwandsschätzungen · 20. November 2006            Seite 16
Verfeinerung einer Schätzung




                                                       -25/+20%
                                                                                                -10/+10%
                                                                                    -15/+15%
                                                                       -15/+15%
  Aufwand
                                                                                                            Release
                                                                                                Zwischen-
                                        -50/+100%                                   Zwischen-
                                                                                                release 3
                                                                                    release 2
                                                      Architektur-     Zwischen-
                                                       grundlage       release 1
                  -75/+300%
                                                      geschaffen

                                      Anforderungen
                                         erhoben                     Budgetierung


                   Projektstart

                                                                      Zeit



   Quelle: Steve McConnell (Microsoft Press, 2006)



                                      Bonner Runde · Aufwandsschätzungen · 20. November 2006                          Seite 17
Teil 2




                          Traditionelle Schätzverfahren


         “The process is called estimation,
         not exactimation.”

         Phillip Armour




                  Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 18
Beispiele für algorithmische Schätzungen


    Baukosten für Einfamilienhäuser (1985)
    Baukosten für Einfamilienhäuser (1985)

    Kosten in DM = 352 * m3 umbauter Raum oder
    Kosten in DM = 1840 * m2 Wohnfläche


    Entwicklungskosten eines Nachrichtensatelliten der NASA (1979)
    Entwicklungskosten eines Nachrichtensatelliten der NASA (1979)

    Kosten in US-$ = 468,67 * Gewicht (lbs)0,57



    Produktionskosten für Flugzeugrümpfe (1975)
    Produktionskosten für Flugzeugrümpfe (1975)

    Kosten für n Einheiten in 1000 US-$ = 2,06 * Gewicht (lbs)0,766 * n-0,218




                       Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 19
Usecase-Point-Methode von Gustav Karner (1993)


    Idee und Ziel
    Idee und Ziel

    Sehr einfache Berechnungsformel
    Kein großes Wissen über die Architektur erforderlich
    Zu einem frühen Projektzeitpunkt durchführbar
    Auf Basis moderner Analysemethoden



    Vorgehensweise bei der Schätzung
    Vorgehensweise bei der Schätzung

    Klassifizierung der Anwendungsfälle hinsichtlich der Akteure
    Gewichtung der Anwendungsfälle in Bezug auf ihre Komplexität
    Justierung der Schätzgröße durch produkt- bzw. projektbezogene Einflussfaktoren




                      Bonner Runde · Aufwandsschätzungen · 20. November 2006          Seite 20
Usecase-Point-Methode von Gustav Karner (1993)


   UAW : Unadjusted Actor Weight

   Type       Description                         Factor

   Simple     Program interface                   1

   Avarage    Interactive, or protocol-driven,    2
              interface
                                                                 UAW
   Complex    Graphical interface                 3



   UUCW: Unadjusted Usecase Weight

   Type       Description                         Factor

   Simple     3 or fewer transactions             1

   Avarage    4 to 7 transactions                 2
                                                                 UUCW
   Complex    More than 7 transactions            3




                         Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 21
Usecase-Point-Methode von Gustav Karner (1993)

    Der Algorithmus
    Der Algorithmus


                     UCP =(UAW ⋅ UUCW ) ⋅ TCF ⋅ ECF
  UCP    = Usecase Points
  UAW    = Unadjusted Actor Weight
  UUCW   = Unadjusted Usecase Weight
  TCF    = Technical Complexity Factor (produktbezogen, harte Faktoren)
  ECF    = Environment Complexity Factor (projektbezogen, weiche Faktoren)

    Produktbezogene Einflussfaktoren:
         Verteiltes System, Einfache Installation, Einfache Bedienbarkeit, Portabilität,
         Einfache Änderbarkeit, Nebenläufige Verarbeitung, hohe Sicherheitsanforderungen…
    Projektbezogene Einflussfakoren:
         Vertraut mit RUP, Facherfahrung, Erfahrung mit Objekt-Orientierung, Motivation,
         Stabile Anforderungen…




                      Bonner Runde · Aufwandsschätzungen · 20. November 2006               Seite 22
Klassifikation von Schätzmethoden

                                                  Funktions-/Anweisungsorientiert (80er Jahre)
                                                  Datenorientiert (Anfang 90er Jahre)
                                                  Objektorientiert (Mitte bis Ende 90er Jahre)
     Abstrakt


                                                             Usecase-
                                                              Points
                                        COCOMO II


                                       Function
                                        Points
                                                  COSMIC
                              Data
                              Points
                       Object                      Mark II
                       Points

                                                                        COCOMO
      konkret

                Komplex /                                                      Einfach /
                Viel Information                                      Wenig Information


                     Bonner Runde · Aufwandsschätzungen · 20. November 2006                      Seite 23
Teil 3




         Agile Aufwandsschätzung und Projektplanung


           “It is a bad plan that admits of no
           modification.”

           P. Syrus




                Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 24
Was macht Schätzen und Planen agil?



 Fokus liegt mehr auf dem Schätzen / Planen
     als auf der Schätzung / dem Plan




                    Änderungen sind willkommen




                                        (Projekt)-Pläne werden
                                           leichter änderbar



                                                    Höhere Flexibilität und Reaktionsfähigkeit
                                                     wirkt sich auf das gesamte Projekt aus




                      Bonner Runde · Aufwandsschätzungen · 20. November 2006                     Seite 25
Vorgehen bei der Schätzung und Planung

    Schätzen der Größe // Aufstellen der Planung
    Schätzen der Größe Aufstellen der Planung

    Definition aller bekannten „Features“ / „Stories“ einer Anwendung
    Schätzen der Komplexität in „Story- od. Feature-Points“
    Aufteilung von Features in Iterationen fester Länge

    Berechnung der Produktivität
    Berechnung der Produktivität

    Nach jeder Iteration werden Feature-Points aller umgesetzten Features summiert
    Nach der 2. oder 3. Iteration kann eine Prognose für zukünftige Iterationen erfolgen
    Zukünftige Iterationen enthalten nur so viele Feature-Points wie zuvor prognostiziert

    Ableiten der Dauer
    Ableiten der Dauer

    Durch Aufteilen von Features in Iterationen kann die maximale Anzahl benötigter
    Iterationen bestimmt werden
    Durch Bildung des Produkts aus fester Iterationsdauer * Iterationsanzahl kann die
    maximale Dauer ermittelt werden


                       Bonner Runde · Aufwandsschätzungen · 20. November 2006               Seite 26
Spielend (leicht) schätzen mit Planning Poker


     Ablauf
     Ablauf

    Jeder Schätzer bekommt ein Kartenspiel mit 20 Karten, jede Karte hat einen Schätzwert,
    je Höher der Wert, desto komplexer die Realisiernug

    Projektleiter liest eine Feature-Definition (mit allen aus seiner Sicht notwendigen
    Hintergrundinformationen) vor

    Jeder Schätzer wählt eine Karte, deren Komplexitätswert zum Feature passt und legt sie
    verdeckt vor sich hin
                                                                                                            20
                                                                                                       13
    Nachdem alle gelegt haben wird aufgedeckt                                                      8
                                                                                               5
                                                                                           3
                                                                                     2
    Die Unterschiede werden diskutiert
    (speziell größter und kleinster Wert)



                                                                             1
    Es findet eine neue Schätzrunde statt bis
    alle sich auf einen Wert geeinigt haben



   Quelle: Agile Estimating and Planning, Mike Cohn, 2005



                                      Bonner Runde · Aufwandsschätzungen · 20. November 2006                     Seite 27
Aufteilung in Iterationen



     Jede Iteration hat die gleiche
     zeitliche Länge
                                                                               5               2       2
     Jede Iteration enthält die gleiche
                                                                  4
     Anzahl Feature-Points
                                                                                                               5
     Es werden so viele Iterationen
                                                                                                   4
     gebildet wie Feature-Points
     vorhanden sind                                                                 3
                                                                           4
     Die Größe der Box richtet sich                                                                    1
     nach der gemessenen
                                                                  2
     Produktivität
                                                                                               3
                                                                                                           5
                                                                                    2
                                                                       2



   Quelle: Agile Estimating and Planning, Mike Cohn, 2005



                                      Bonner Runde · Aufwandsschätzungen · 20. November 2006                       Seite 28
Messung der Produktivität




                 Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 29
Der Release- / Iterationsplan

                                         Der Plan wird bestimmt durch

                                               die Größe der Features

                                               Die zuvor gemessene Produktivität / Velocity

                                         Es wird definiert woran in den einzelnen Iterationen
                                         gearbeitet wird



                             Iteration 1              Iteration 2          Iteration 3-4




  Features


                  Bonner Runde · Aufwandsschätzungen · 20. November 2006                      Seite 30
Änderung des Release-/Iterationsplans

Plan/Soll:                                               Ist:
             Feature A            5                                    Feature A   5
3 Iter.
             Feature B            3                                    Feature B   3

             Feature C            5                                    Feature C   5
                                                         Prod. = 13

             Feature D            3                                    Feature D   3
                                        Prod. = 16

             Feature E            5                                    Feature E   5

             Feature F            5                                    Feature F   5

             Feature G            3                                    Feature G   3

             Feature H            3                                    Feature H   3

             Feature I            5                                    Feature I   5

             Feature J            2                                    Feature J   2
                                                        4 Iter.
             Feature K            5                                    Feature K   5
                                                        oder
                                                        3 Iter.?
             Feature L            3                                    Feature L   3



                         Bonner Runde · Aufwandsschätzungen · 20. November 2006        Seite 31
Teil 4




               Diskussion von Aufwandsschätzungen


         “Precise language is not the problem.
         Clear language is the problem.”

         R. Feynman




                   Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 32
Diskussion von Aufwandsschätzungen

      Fokus auf Problemlösung nicht auf Verhandlung
      Fokus auf Problemlösung nicht auf Verhandlung


      Trennung der Probleme von den Personen
      Trennung der Probleme von den Personen

      Unterschiedliche Persönlichkeiten und Standpunkte berücksichtigen

      Empathisches hinterfragen sachlicher Probleme

      Persönliche Sichtweisen aktiv diskutieren

      Konzentration auf Interessen, nicht auf Positionen
      Konzentration auf Interessen, nicht auf Positionen

      Offen über Wünsche und Bedürfnisse diskutieren

      Aktives Fragen nach einem gewünschten Ergebnis

      Nicht gegenseitig Standpunkte durch Argumentieren belegen oder deren Unterschiede
      verdeutlichen

   Quelle: method of principled negotiation, Fisher & Ury, 1991



                                       Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 33
Diskussion von Aufwandsschätzungen

      Erarbeitung einer Vielzahl von Lösungsalternativen vor der Entscheidung
      Erarbeitung einer Vielzahl von Lösungsalternativen vor der Entscheidung

      Planungsalternativen sind häufig wichtiger als die Schätzung selbst, Beispiele:
      Spätere Versionen planen, Aufteilung von Features zu Iterationen ändern
      Weniger wichtige und sehr aufwändige Features streichen, nur teilweise implementieren
      Mehr Entwickler od. Architekten ins Team, besseres Verhältnis Architekt-zu-Entwickler
      Endbenutzer od. Entscheidungsträger stärker einbeziehen
      Commitments auf die nächste Iteration verschieben (weniger Unsicherheit)
      Zwei kurze Iterationen durchführen um die Produktivität zu messen


      Aufbau des Ergebnisses auf objektive Kriterien
      Aufbau des Ergebnisses auf objektive Kriterien

      Einsatz von externen Gutachtern zur Bestätigung der Schätzung
      Standard-Methode(n) des Unternehmens verwenden, die allgemein anerkannt ist/sind

   Quelle: method of principled negotiation, Fisher & Ury, 1991



                                       Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 34
Teil 5




         Resumee / Checkliste für gute Aufwandsschätzungen


          “By three methods we may learn wisdom:
          first, by reflection which is noblest;
          second, by imitation, which is the easiest;
          and third, by experience, which is the bitterest.“

          Confucius




                        Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 35
Tipps für gute Aufwandsschätzungen


    Es werden standardisierte Vorgehensweisen bei der Erstellung der
    Schätzung verwendet

    Die Schätzung wird nicht unter Druck angefertigt, der das Ergebnis
    verfälschen könnte

    Die Schätzung ist nicht ad hoc oder spontan entstanden

    Bei Diskussionen zur Schätzung werden nur die Rahmenbedingungen und
    nicht die Ergebnisse diskutiert

    Die Schätzung wird mit einer bestimmten Genauigkeit (Best-Case, Worst-
    Case) kommuniziert, die zum Kenntnisstand bzw. dem Projektzeitpunkt passt

    Die Schätzung wird mit Hilfe mehrerer Methoden, die zu gleichen
    Ergebnissen führen, erstellt




                      Bonner Runde · Aufwandsschätzungen · 20. November 2006    Seite 36
Tipps für gute Aufwandsschätzungen


    Die angenommene Produktivität passt zu den Rahmenbedingungen des Projekts

    Die Personen, die das Projekt durchführen, sind auch an der Schätzung beteiligt

    Die Schätzung wird von (einem) unabhängigen Externen bewertet/bestätigt

    Es wird eine Risikoanalyse erstellt und verdeutlicht, dass beim Eintritt von Risiken
    Auswirkungen auf die Projektlaufzeit und die –kosten entstehen

    Die Schätzung ist Teil von weiteren Schätzungen, die im Verlauf des Projekts ein
    immer genaueres Endergebnis vermitteln können

    Sämtliche Projektaspekte werden bei der Schätzung berücksichtigt (Setup,
    Migration, Testdatenerstellung, Urlaub, Krankheit, Einarbeitung in
    Technologien/Tools, Installationen, technische Reviews, Bugfixing,
    Performance-Tuning, Koordination mit QA, Änderung von Anforderungen…)

    Die Schätzung und deren Rahmenbedingungen wurden dokumentiert bzw.
    mit früheren Dokumentationen verglichen, Änderungen werden festgehalten




                       Bonner Runde · Aufwandsschätzungen · 20. November 2006              Seite 37
…und zum Schluss



    „If you want a guarantee, buy a toaster“
               (Clint Eastwood)




                                   Danke für die
                                  Aufmerksamkeit

                 Bonner Runde · Aufwandsschätzungen · 20. November 2006   Seite 38

Weitere ähnliche Inhalte

Andere mochten auch

Qualitätsbeauftragter (QMB)
Qualitätsbeauftragter (QMB)Qualitätsbeauftragter (QMB)
Qualitätsbeauftragter (QMB)
Norbert Helmke
 
Lehrerweiterbildung.Key
Lehrerweiterbildung.KeyLehrerweiterbildung.Key
Lehrerweiterbildung.Key
Mandy Rohs
 
Vorstellung cocktailberater.de
Vorstellung cocktailberater.deVorstellung cocktailberater.de
Vorstellung cocktailberater.de
Thomas Bachmann
 

Andere mochten auch (14)

Individualisiertes Lernen im Rahmen von Schulentwicklung - Mehrwert durch dig...
Individualisiertes Lernen im Rahmen von Schulentwicklung - Mehrwert durch dig...Individualisiertes Lernen im Rahmen von Schulentwicklung - Mehrwert durch dig...
Individualisiertes Lernen im Rahmen von Schulentwicklung - Mehrwert durch dig...
 
SAP BASIS
SAP BASISSAP BASIS
SAP BASIS
 
MOOCs: Wie Unternehmen von offenen Online-Kursen profitieren können
MOOCs: Wie Unternehmen von offenen Online-Kursen profitieren könnenMOOCs: Wie Unternehmen von offenen Online-Kursen profitieren können
MOOCs: Wie Unternehmen von offenen Online-Kursen profitieren können
 
Qualitätsbeauftragter (QMB)
Qualitätsbeauftragter (QMB)Qualitätsbeauftragter (QMB)
Qualitätsbeauftragter (QMB)
 
Lehrerweiterbildung.Key
Lehrerweiterbildung.KeyLehrerweiterbildung.Key
Lehrerweiterbildung.Key
 
Vorstellung cocktailberater.de
Vorstellung cocktailberater.deVorstellung cocktailberater.de
Vorstellung cocktailberater.de
 
Innsbruck_Medienbildung in der Schule – pädagogischer Anspruch oder Utopie?
Innsbruck_Medienbildung in der Schule – pädagogischer Anspruch oder Utopie?Innsbruck_Medienbildung in der Schule – pädagogischer Anspruch oder Utopie?
Innsbruck_Medienbildung in der Schule – pädagogischer Anspruch oder Utopie?
 
SharePoint im WCMS-Einsatz - Möglichkeiten und Grenzen
SharePoint im WCMS-Einsatz - Möglichkeiten und GrenzenSharePoint im WCMS-Einsatz - Möglichkeiten und Grenzen
SharePoint im WCMS-Einsatz - Möglichkeiten und Grenzen
 
Informationsweiterverwendungsgesetz - Usage of Public Sector Information
Informationsweiterverwendungsgesetz - Usage of Public Sector Information Informationsweiterverwendungsgesetz - Usage of Public Sector Information
Informationsweiterverwendungsgesetz - Usage of Public Sector Information
 
Kompetenzmanagement in der Pflege
Kompetenzmanagement in der PflegeKompetenzmanagement in der Pflege
Kompetenzmanagement in der Pflege
 
Auf dem Weg zur digitalen Universität - Community Building 2.0
Auf dem Weg zur digitalen Universität - Community Building 2.0Auf dem Weg zur digitalen Universität - Community Building 2.0
Auf dem Weg zur digitalen Universität - Community Building 2.0
 
Dino
DinoDino
Dino
 
Westerwald
WesterwaldWesterwald
Westerwald
 
Social Web und Schule
Social Web und SchuleSocial Web und Schule
Social Web und Schule
 

aufwandsschaetzungen bonner runde

  • 1. Aufwandsschätzungen Kalkulation und Planung von Software-Entwicklungsprojekten Frank Egger Deutsche Post Com GmbH
  • 2. Überblick Einführung Einführung Das Spannungsfeld bei Aufwandsschätzungen Genauigkeit von Aufwandsschätzungen Generelle Vorgehensweisen bei Schätzungen Traditionelle Schätzverfahren vs. Agile Aufwandsschätzung und Projektplanung Traditionelle Schätzverfahren vs. Agile Aufwandsschätzung und Projektplanung UseCase-Methode als Beispiel für „klassische“ Aufwandsschätzungen Klassifikation traditioneller Aufwandsschätzungen Feature-Points im Planungsspiel für mehr Agilität „velocity“ als Produktivitätsmaß Kontinuierliche Verbesserung der Aufwandsschätzung und Planung in Iterationen Diskussion von Aufwandsschätzungen Diskussion von Aufwandsschätzungen Resumee // Checkliste für gute Aufwandsschätzungen Resumee Checkliste für gute Aufwandsschätzungen Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 2
  • 3. Teil 1 Einführung "There’s no sense being exact about something if you don’t even know what you’re talking about." John von Neumann Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 3
  • 4. Was ist eine Schätzung? Was man denkt… Was man denkt… Ungenauigkeit?! eine provisorische Berechnung, eine sehr grobe Kalkulation eine vorläufige Kalkulation von Kosten und Zeit eine Annahme oder Vermutung Unsicherheit!? etwas mit einer gewissen Wahrscheinlichkeit bestimmen Restriktionen?! Womit man rechnen muß… Womit man rechnen muß… Sicherheit?! „Version 2.0 muß bis zur Messe fertig sein.“ „Die Anwendung muß noch in diesem Jahr online gehen.“ „Wir haben nicht mehr wie 200.000 Euro Budget für das Projekt.“ Genauigkeit?! „Der Kunde erwartet die neue Version in der nächsten Woche.“ Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 4
  • 5. Abgrenzung: Ziele, Pläne und Commitments Ein Geschäftsziel… Ein Geschäftsziel… …wird aufgrund wichtiger wirtschaftlicher Interessen festgelegt …ist zunächst unabhängig von jeder Schätzung …kann wünschenswert oder verpflichtend sein, aber nicht automatisch auch erreichbar Ein Plan… Ein Plan… …ist eine Vorstellung vom Erreichen eines Ziels unter Einsatz gewisser Mittel …ist im Gegensatz zu einer Schätzung immer ziel- oder ergebnisorientiert Ein Commitment… Ein Commitment… …ist ein Versprechen zur Lieferung eines bestimmten Ergebnisses zu einem bestimmten Zeitpunkt (dem Ziel) …sollte im Gegensatz zu einer Schätzung „verhandelbar“ sein …kann der Schätzung entsprechen, oder aggressiver, oder konservativer sein Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 5
  • 6. Das Spannungsfeld bei Aufwandsschätzungen Gründe für Aufwandsschätzungen // deren Anspruch Gründe für Aufwandsschätzungen deren Anspruch Entscheidungen unterstützen (Kosten/Nutzen, Make/Buy, ROI) Maßnahmen planen, Ziele festlegen Risiken frühzeitig erkennen (und minimieren) Ausgangsinformationen zusammentragen Gefahren bei Schätzungen Gefahren bei Schätzungen Erfahrung und Vergleichbarkeit fehlt Fehleinschätzung oder fehlende Berücksichtigung von Einflussfaktoren und Risiken Extrapolation ohne Berücksichtigung des nichtlinearen Problemcharakters Hohe Variabilität des Aufwandes Erwartungskonformität der Schätzung (Größe, Genauigkeit) „Captain Kirk“-Syndrom Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 6
  • 7. Das „Captain Kirk“-Syndrom …oder: der Aufwand muß gering sein. …oder: der Aufwand muß gering sein. Captain, der Warpantrieb funktioniert nicht mehr, die Siliziumchristalle sind im Arsch. Captain, die Reparatur dauert mindestens drei Tage! Scotty, ich geb Dir drei Stunden. Okay, Captain, ich mach‘s in zwei! Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 7
  • 8. Schätzgenauigkeit / Planungsunsicherheit Barry Boehm‘s Studien im Rahmen der Definition zu COCOMO II (2000) Barry Boehm‘s Studien im Rahmen der Definition zu COCOMO II (2000) The Cone of Uncertainty Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 8
  • 9. Schätzgenauigkeit / Planungsunsicherheit Auswirkungen der hohen Variabilität Auswirkungen der hohen Variabilität (Häufig größere) Projekte überschreiten laut Literatur den Aufwand oder die Termine um 200 bis 900% Z.B. Hubble-Weltraumteleskop: Plankosten 300 Mio. US-$, Istkosten 2,6 Mrd. US-$ ¼ aller Projekte werden nur mit 25 bis 49% der zuvor geplanten Features abgeschlossen Am häufigsten genannte Ursachen für Überschreitung der Schätzung: Fehlerhafte, ungenaue, fehlende oder sich ständig ändernde Definitionen von Anforderungen Fehlende oder zu geringe Beteiligung der End-User Ressourcen stehen nicht in ausreichendem Maß oder erwarteter Qualität bereit Unrealistische Erwartungen Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 9
  • 10. Genauigkeit von Aufwandsschätzungen Berücksichtigung der Schätz- und Planungsunsicherheit Berücksichtigung der Schätz- und Planungsunsicherheit Ungünstig: Eine Single-Point-Schätzung ist in aller Regel ein verstecktes Ziel Formulierung der Unsicherheit mit Hilfe einer Wahrscheinlichkeitsverteilung Aber: Keine symmetrische Verteilung! Einzig mögliches Ergebnis (100% wahrscheinlich) Nominales Ergebnis 100% g sti h n lsc ü ng Wahrscheinlichkeit Wahrscheinlichkeit fa u Projektdauer Projektdauer (oder Kosten oder Aufwand) (oder Kosten oder Aufwand) Quelle: Steve McConnell (Microsoft Press, 2006) Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 10
  • 11. Genauigkeit von Aufwandsschätzungen Berücksichtigung der Schätz- und Planungsunsicherheit Berücksichtigung der Schätz- und Planungsunsicherheit Ungünstig: Eine Single-Point-Schätzung ist in aller Regel ein verstecktes Ziel Formulierung der Unsicherheit mit Hilfe einer Wahrscheinlichkeitsverteilung Aber: Keine symmetrische Verteilung! Wie schlecht ein Projekt ausgeht ist nicht limitiert, wie gut schon Nominales Ergebnis (50/50 Schätzung) 100% Wahrscheinlichkeit Projektdauer (oder Kosten oder Aufwand) Quelle: Steve McConnell (Microsoft Press, 2006) Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 11
  • 12. „Gute Aufwandsschätzungen“ Für gewöhnlich: On-time and in-budget (zumindest halbwegs) Für gewöhnlich: On-time and in-budget (zumindest halbwegs) Caspar Jones: Abweichungen von 10% sind ein Hinweis für sehr gute Schätzungen Conte, Dunsmore, Shen: Zeit und Ergebnis darf zum Plan um 25% abweichen Was ist eine „gute Aufwandsschätzung“ ohne ein „gutes Projektmanagement“? Was ist eine „gute Aufwandsschätzung“ ohne ein „gutes Projektmanagement“? Mitarbeiter durch Instabile Mitarbeiter noch Anforderungen andere geschäftliche Funktionalität nicht einsatzbereit entfernt Tätigkeiten abgelenkt entfernt Ergebnis = „Schätzung“ = Das Projekt 20 PM 20 PM Anforderungen auf Basis neuer Mitarbeitern Anforderungen Erkenntnisse fehlt wichtiges hinzugefügt ergänzt Know How Quelle: Steve McConnell (Microsoft Press, 2006) Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 12
  • 13. Vorgehensweisen (1): Die Produktivität Zählen und Berechnen Zählen und Berechnen Kennzahlen / Produktivitätseinheiten ermitteln (LoC, Feature-Points, Usecase-Points, Change-Requests, Dialoge…) Aufstellen der Schätzung mit Hilfe eines Schätzalgorithmus und gesammelter historischer Produktivitätsdaten (quantifizierte Erfahrungswerte) Wenn keine Erfahrungswerte vorliegen können Expertenschätzungen helfen Aufwand (Personen Monate) und Zeit (Kalender Monate) für Produktivitätswerte festhalten (überführen in historische Daten) Berücksichtigung historischer Daten Berücksichtigung historischer Daten Erfahrungswerte für ähnliche Projekte aus der Software-Industrie verwenden Gesammelte Kennzahlen-Daten des eigenen Unternehmens heranziehen Historische Daten des gleichen Projekts zur Verfeinerung der Schätzung nutzen (Iterationsplan für Schätzungen) Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 13
  • 14. Das Teufelsquadrat (1987) Qualität Quantität + + Nichtfunktionale Anforderungen Funktionale Anforderungen Produktivität - - Projektdauer Aufwand Quelle: Software-Projektkalkulation, Sneed, 2005 Berücksichtigung von Projekteinflüssen um Produktivitätsdaten für Schätzungen nutzen zu können Schätzalgorithmen berücksichtigen häufig diese Einflüsse Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 14
  • 15. Einflussfaktoren auf die Produktivität Produkt- und Prozesseinflüsse („harte Faktoren“) Produkt- und Prozesseinflüsse („harte Faktoren“) Komplexität, Größe und Qualität des Produktes Neue oder sich ändernde Anforderungen während der Entwicklung Durchgängigkeit der Toolunterstützung Wiederverwendbarkeit von Software und Entwicklungsmethodiken Zeitrestriktionen und Projektdauer Performance und Verfügbarkeit der eingesetzten Entwicklungsumgebung Mitarbeiter- und Umgebungseinflüsse („weiche Faktoren“) Mitarbeiter- und Umgebungseinflüsse („weiche Faktoren“) Wissen und Erfahrung der Mitarbeiter Arbeitsplatzgestaltung Firmenkultur Teamgröße und -zusammensetzung Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 15
  • 16. Vorgehensweisen (2) : Subjektive Beurteilungen Empirische Verfahren Empirische Verfahren Expertenschätzung Einbeziehung von Personen der Realisierung (Realisierungsexperten) Dekomposition / Rekomposition (Schätzung von Teilaufgaben/-schritten einfacher und weniger fehleranfällig) Analogie-Methode (möglichst ähnliche Projekte/Aufgaben werden verglichen) Best-Case und Worst-Case schätzen Experten-Gruppe / Delphi-Methode Schätzung durch mehrere unabhängige Experten Mehrere Schätzrunden Konvergiert (hoffentlich ☺) Eliminiert Ausreißer Empirische Verfahren sollten nur das letzte Mittel sein! Subjektivität verfälscht Schätzungen Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 16
  • 17. Verfeinerung einer Schätzung -25/+20% -10/+10% -15/+15% -15/+15% Aufwand Release Zwischen- -50/+100% Zwischen- release 3 release 2 Architektur- Zwischen- grundlage release 1 -75/+300% geschaffen Anforderungen erhoben Budgetierung Projektstart Zeit Quelle: Steve McConnell (Microsoft Press, 2006) Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 17
  • 18. Teil 2 Traditionelle Schätzverfahren “The process is called estimation, not exactimation.” Phillip Armour Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 18
  • 19. Beispiele für algorithmische Schätzungen Baukosten für Einfamilienhäuser (1985) Baukosten für Einfamilienhäuser (1985) Kosten in DM = 352 * m3 umbauter Raum oder Kosten in DM = 1840 * m2 Wohnfläche Entwicklungskosten eines Nachrichtensatelliten der NASA (1979) Entwicklungskosten eines Nachrichtensatelliten der NASA (1979) Kosten in US-$ = 468,67 * Gewicht (lbs)0,57 Produktionskosten für Flugzeugrümpfe (1975) Produktionskosten für Flugzeugrümpfe (1975) Kosten für n Einheiten in 1000 US-$ = 2,06 * Gewicht (lbs)0,766 * n-0,218 Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 19
  • 20. Usecase-Point-Methode von Gustav Karner (1993) Idee und Ziel Idee und Ziel Sehr einfache Berechnungsformel Kein großes Wissen über die Architektur erforderlich Zu einem frühen Projektzeitpunkt durchführbar Auf Basis moderner Analysemethoden Vorgehensweise bei der Schätzung Vorgehensweise bei der Schätzung Klassifizierung der Anwendungsfälle hinsichtlich der Akteure Gewichtung der Anwendungsfälle in Bezug auf ihre Komplexität Justierung der Schätzgröße durch produkt- bzw. projektbezogene Einflussfaktoren Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 20
  • 21. Usecase-Point-Methode von Gustav Karner (1993) UAW : Unadjusted Actor Weight Type Description Factor Simple Program interface 1 Avarage Interactive, or protocol-driven, 2 interface UAW Complex Graphical interface 3 UUCW: Unadjusted Usecase Weight Type Description Factor Simple 3 or fewer transactions 1 Avarage 4 to 7 transactions 2 UUCW Complex More than 7 transactions 3 Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 21
  • 22. Usecase-Point-Methode von Gustav Karner (1993) Der Algorithmus Der Algorithmus UCP =(UAW ⋅ UUCW ) ⋅ TCF ⋅ ECF UCP = Usecase Points UAW = Unadjusted Actor Weight UUCW = Unadjusted Usecase Weight TCF = Technical Complexity Factor (produktbezogen, harte Faktoren) ECF = Environment Complexity Factor (projektbezogen, weiche Faktoren) Produktbezogene Einflussfaktoren: Verteiltes System, Einfache Installation, Einfache Bedienbarkeit, Portabilität, Einfache Änderbarkeit, Nebenläufige Verarbeitung, hohe Sicherheitsanforderungen… Projektbezogene Einflussfakoren: Vertraut mit RUP, Facherfahrung, Erfahrung mit Objekt-Orientierung, Motivation, Stabile Anforderungen… Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 22
  • 23. Klassifikation von Schätzmethoden Funktions-/Anweisungsorientiert (80er Jahre) Datenorientiert (Anfang 90er Jahre) Objektorientiert (Mitte bis Ende 90er Jahre) Abstrakt Usecase- Points COCOMO II Function Points COSMIC Data Points Object Mark II Points COCOMO konkret Komplex / Einfach / Viel Information Wenig Information Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 23
  • 24. Teil 3 Agile Aufwandsschätzung und Projektplanung “It is a bad plan that admits of no modification.” P. Syrus Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 24
  • 25. Was macht Schätzen und Planen agil? Fokus liegt mehr auf dem Schätzen / Planen als auf der Schätzung / dem Plan Änderungen sind willkommen (Projekt)-Pläne werden leichter änderbar Höhere Flexibilität und Reaktionsfähigkeit wirkt sich auf das gesamte Projekt aus Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 25
  • 26. Vorgehen bei der Schätzung und Planung Schätzen der Größe // Aufstellen der Planung Schätzen der Größe Aufstellen der Planung Definition aller bekannten „Features“ / „Stories“ einer Anwendung Schätzen der Komplexität in „Story- od. Feature-Points“ Aufteilung von Features in Iterationen fester Länge Berechnung der Produktivität Berechnung der Produktivität Nach jeder Iteration werden Feature-Points aller umgesetzten Features summiert Nach der 2. oder 3. Iteration kann eine Prognose für zukünftige Iterationen erfolgen Zukünftige Iterationen enthalten nur so viele Feature-Points wie zuvor prognostiziert Ableiten der Dauer Ableiten der Dauer Durch Aufteilen von Features in Iterationen kann die maximale Anzahl benötigter Iterationen bestimmt werden Durch Bildung des Produkts aus fester Iterationsdauer * Iterationsanzahl kann die maximale Dauer ermittelt werden Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 26
  • 27. Spielend (leicht) schätzen mit Planning Poker Ablauf Ablauf Jeder Schätzer bekommt ein Kartenspiel mit 20 Karten, jede Karte hat einen Schätzwert, je Höher der Wert, desto komplexer die Realisiernug Projektleiter liest eine Feature-Definition (mit allen aus seiner Sicht notwendigen Hintergrundinformationen) vor Jeder Schätzer wählt eine Karte, deren Komplexitätswert zum Feature passt und legt sie verdeckt vor sich hin 20 13 Nachdem alle gelegt haben wird aufgedeckt 8 5 3 2 Die Unterschiede werden diskutiert (speziell größter und kleinster Wert) 1 Es findet eine neue Schätzrunde statt bis alle sich auf einen Wert geeinigt haben Quelle: Agile Estimating and Planning, Mike Cohn, 2005 Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 27
  • 28. Aufteilung in Iterationen Jede Iteration hat die gleiche zeitliche Länge 5 2 2 Jede Iteration enthält die gleiche 4 Anzahl Feature-Points 5 Es werden so viele Iterationen 4 gebildet wie Feature-Points vorhanden sind 3 4 Die Größe der Box richtet sich 1 nach der gemessenen 2 Produktivität 3 5 2 2 Quelle: Agile Estimating and Planning, Mike Cohn, 2005 Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 28
  • 29. Messung der Produktivität Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 29
  • 30. Der Release- / Iterationsplan Der Plan wird bestimmt durch die Größe der Features Die zuvor gemessene Produktivität / Velocity Es wird definiert woran in den einzelnen Iterationen gearbeitet wird Iteration 1 Iteration 2 Iteration 3-4 Features Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 30
  • 31. Änderung des Release-/Iterationsplans Plan/Soll: Ist: Feature A 5 Feature A 5 3 Iter. Feature B 3 Feature B 3 Feature C 5 Feature C 5 Prod. = 13 Feature D 3 Feature D 3 Prod. = 16 Feature E 5 Feature E 5 Feature F 5 Feature F 5 Feature G 3 Feature G 3 Feature H 3 Feature H 3 Feature I 5 Feature I 5 Feature J 2 Feature J 2 4 Iter. Feature K 5 Feature K 5 oder 3 Iter.? Feature L 3 Feature L 3 Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 31
  • 32. Teil 4 Diskussion von Aufwandsschätzungen “Precise language is not the problem. Clear language is the problem.” R. Feynman Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 32
  • 33. Diskussion von Aufwandsschätzungen Fokus auf Problemlösung nicht auf Verhandlung Fokus auf Problemlösung nicht auf Verhandlung Trennung der Probleme von den Personen Trennung der Probleme von den Personen Unterschiedliche Persönlichkeiten und Standpunkte berücksichtigen Empathisches hinterfragen sachlicher Probleme Persönliche Sichtweisen aktiv diskutieren Konzentration auf Interessen, nicht auf Positionen Konzentration auf Interessen, nicht auf Positionen Offen über Wünsche und Bedürfnisse diskutieren Aktives Fragen nach einem gewünschten Ergebnis Nicht gegenseitig Standpunkte durch Argumentieren belegen oder deren Unterschiede verdeutlichen Quelle: method of principled negotiation, Fisher & Ury, 1991 Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 33
  • 34. Diskussion von Aufwandsschätzungen Erarbeitung einer Vielzahl von Lösungsalternativen vor der Entscheidung Erarbeitung einer Vielzahl von Lösungsalternativen vor der Entscheidung Planungsalternativen sind häufig wichtiger als die Schätzung selbst, Beispiele: Spätere Versionen planen, Aufteilung von Features zu Iterationen ändern Weniger wichtige und sehr aufwändige Features streichen, nur teilweise implementieren Mehr Entwickler od. Architekten ins Team, besseres Verhältnis Architekt-zu-Entwickler Endbenutzer od. Entscheidungsträger stärker einbeziehen Commitments auf die nächste Iteration verschieben (weniger Unsicherheit) Zwei kurze Iterationen durchführen um die Produktivität zu messen Aufbau des Ergebnisses auf objektive Kriterien Aufbau des Ergebnisses auf objektive Kriterien Einsatz von externen Gutachtern zur Bestätigung der Schätzung Standard-Methode(n) des Unternehmens verwenden, die allgemein anerkannt ist/sind Quelle: method of principled negotiation, Fisher & Ury, 1991 Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 34
  • 35. Teil 5 Resumee / Checkliste für gute Aufwandsschätzungen “By three methods we may learn wisdom: first, by reflection which is noblest; second, by imitation, which is the easiest; and third, by experience, which is the bitterest.“ Confucius Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 35
  • 36. Tipps für gute Aufwandsschätzungen Es werden standardisierte Vorgehensweisen bei der Erstellung der Schätzung verwendet Die Schätzung wird nicht unter Druck angefertigt, der das Ergebnis verfälschen könnte Die Schätzung ist nicht ad hoc oder spontan entstanden Bei Diskussionen zur Schätzung werden nur die Rahmenbedingungen und nicht die Ergebnisse diskutiert Die Schätzung wird mit einer bestimmten Genauigkeit (Best-Case, Worst- Case) kommuniziert, die zum Kenntnisstand bzw. dem Projektzeitpunkt passt Die Schätzung wird mit Hilfe mehrerer Methoden, die zu gleichen Ergebnissen führen, erstellt Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 36
  • 37. Tipps für gute Aufwandsschätzungen Die angenommene Produktivität passt zu den Rahmenbedingungen des Projekts Die Personen, die das Projekt durchführen, sind auch an der Schätzung beteiligt Die Schätzung wird von (einem) unabhängigen Externen bewertet/bestätigt Es wird eine Risikoanalyse erstellt und verdeutlicht, dass beim Eintritt von Risiken Auswirkungen auf die Projektlaufzeit und die –kosten entstehen Die Schätzung ist Teil von weiteren Schätzungen, die im Verlauf des Projekts ein immer genaueres Endergebnis vermitteln können Sämtliche Projektaspekte werden bei der Schätzung berücksichtigt (Setup, Migration, Testdatenerstellung, Urlaub, Krankheit, Einarbeitung in Technologien/Tools, Installationen, technische Reviews, Bugfixing, Performance-Tuning, Koordination mit QA, Änderung von Anforderungen…) Die Schätzung und deren Rahmenbedingungen wurden dokumentiert bzw. mit früheren Dokumentationen verglichen, Änderungen werden festgehalten Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 37
  • 38. …und zum Schluss „If you want a guarantee, buy a toaster“ (Clint Eastwood) Danke für die Aufmerksamkeit Bonner Runde · Aufwandsschätzungen · 20. November 2006 Seite 38