Die Borland Software Corporation verfgt mglicherweise ber Patente und/oder anhngige Patentanmeldungen, die den Inhalt dieser Dokumentation betreffen. Eine Liste vorhandener Patente finden Sie auf der Produkt-CD im Dialogfeld Info. Durch die Bereitstellung dieses Dokuments erhalten Sie keine Lizenz fr diese Patente. Copyright 19972006 Borland Software Corporation und/oder ihre Niederlassungen. Alle Marken- und Produktnamen von Borland sind Marken oder eingetragene Marken der Borland Software Corporation in den USA und anderen Lndern. Alle anderen Marken sind Eigentum der jeweiligen Inhaber. CMR06-EPUG Oktober 2006
Inhalt
ESTIMATE Professional fr die Projektplanung verwenden ............... 4 Von der Planung zur Schtzung ................................................................. 6 Flussdiagramm zur Schtzung ......................................................................... 7 Ermitteln des Projektumfangs.......................................................................... 9 Modelle und Simulationen............................................................................... 9 Tipps zur Schtzung ...................................................................................... 10 Weitere Informationen................................................................................... 10 Erstellen einer Projektschtzung unter Verwendung des arbeitsaufwandsbasierten Scoping ......................................................... 11 Der Estimate-Experte..................................................................................... 11 Eingabe eines auf dem Arbeitsaufwand basierenden Beispielprojekts.......... 12 Verbessern der Schtzung - Hinzufgen der Kosten ..................................... 14 Standardansicht.............................................................................................. 15 Zusammenfassung der Schtzung.................................................................. 16 Simulations-Punktwolke................................................................................ 18 Planungsoptionen - Diagramm ...................................................................... 19 Geschtzte Tasks im Vergleich zu reservierten Tasks................................... 20 Auflsen der Diskrepanz zwischen Unternehmenszielen und technischen Schtzungen .......................................................................... 22 Den Task-Umfang detaillierter angeben oder reduzieren .............................. 22 Tasks hinzufgen und ausschlieen............................................................... 25 Berichte (Ausgaben) .................................................................................... 26 Kalibrierung - Modelle zur Projektschtzung optimieren................... 27 Kalibrierungsanstze in CaliberRM ESTIMATE Professional ..................... 27 Die Modelle basierend auf Projekttypdaten optimieren ................................ 28 Die Modelle basierend auf den Produktivittsfaktoren optimieren ............... 29 Die Modelle basierend auf Daten abgeschlossener Projekte optimieren ....... 29 Den Projektumfang mithilfe der Scoping-Methode schtzen............ 31 Die Schtzung verbessern - Projektumfang................................................... 33 Abschlieende Tipps ................................................................................... 35 Anhang A: Putnam-Methode, COCOMO-II und Monte-CarloSimulation ....................................................................................................... 36
Dieses Dokument enthlt einen berblick ber die Planung von SoftwareProjekten und zu CaliberRM ESTIMATE Professional. Es bietet zudem Hilfestellung bei der Verwendung des Tools. Weitere Informationen finden Sie in der Hilfe zu CaliberRM ESTIMATE Professional. Das Hauptziel des Planungsprozesses ist das Identifizieren und Auswhlen der besten Lsung fr die Bereitstellung der Anwendung unter Bercksichtigung der Unternehmensziele der Organisation. Die meisten Organisationen verwenden in ihren Projektplanungsprozessen irgendeine Form von Ziel- oder Schtzungsansatz, ohne den genauen Unterschied zu kennen. Bei der Projektplanung handelt es sich um einen Prozess, in dem eine Organisation entscheidet, ob und zu welchem Zweck ein Projekt ausgefhrt wird. Abhngig von der Organisation sind bestimmte Attribute des Projekts von grerer Bedeutung, primr deswegen, weil sie den Schwerpunkt des Unternehmens darstellen. Diese Schwerpunkte fhren dazu, dass das Senior Management Ziele festlegt, die im Projektplanungsprozess bercksichtigt werden mssen. Fr folgende Bereiche gelten folgende Schlsselattribute: Corporate MIS: Die Kapazitt, Projekte zuverlssig mit allen verfgbaren Ressourcen innerhalb des MIS-Gesamtbudgets termingerecht bereitzustellen. ISV-Produktentwicklung: Das Time-to-Market ist von grter Bedeutung. Um das Marktpotenzial maximieren zu knnen, ist es wichtig, dass das Projekt termin- und budgetgerecht zum Einsatz bereitgestellt wird. Projekte der ffentlichen Hand: Den Zuschlag fr Ausschreibungen in einer extrem kompetitiven Umgebung zu erhalten ist von uerster Wichtigkeit und ebenso wichtig ist es, das Projekt nach Erhalt des Zuschlags budget- und termingerecht zu liefern.
Es kommt hufig vor, dass der Projektplanungsprozess nicht problemlos verluft, zu unternehmensinternen Konflikten und letztendlich zu Schwierigkeiten bei der termingerechten Lieferung fhrt. Diese Situation entsteht aufgrund des Unterschieds (oder der Diskrepanz) zwischen dem vom Management gesetzten Ziel und der vom Projektplanteam erstellten Schtzung. Das Ziel (quantifiziert als monetre Kosten, Arbeitsaufwand oder Kalenderdauer) ist in der Regel niedriger als die Schtzung. Konflikte entstehen (Grad und Intensitt variieren je nach Organisation), weil die Organisationen den Unterschied so handhaben, dass sie nur eines von beiden in ihrer Planung bercksichtigen. Im Gesamtprozess letztendlich steht das Projektplanteam dem Managementteam gegenber. Nicht selten versucht das Management die Situation zu lsen, indem es den Projektplaner das Ziel vorgibt. Auerdem muss bercksichtigt werden, dass es bereits viele Software-Projekte gab, die entweder die Zielsetzung nicht erfllen konnten oder abgebrochen wurden. Grnde dafr knnen Versptungen, berschrittene Budgets, nicht akzeptierbare schlechte Qualitt oder eine Kombination dieser Probleme sein. Trotz dieser Vorgeschichte ist der Druck bei den Ausschreibungsprozessen, niedrige Kostenvoranschlge abzugeben, um sich neue Projekte zu sichern, extrem hoch. Dies gleicht hufig einem Teufelskreis.
Schritt 1 - Dokumentieren des Projektumfangs. Ohne auf die Wichtigkeit von definierten Projektanforderungen eingehen zu mssen, kann gesagt werden, dass Sie nicht erwarten knnen, ein Lieferdatum erfolgreich vorhersagen zu knnen, wenn der Projektinhalt nicht klar ist. Schtzungen, die auf einem Strategiepapier basieren, das gerade mal ein Seite umfasst, die das Lieferdatum bis auf einen Tag genau angeben, mssen zum Scheitern verurteilt sein. Sagen Sie feste Termine nur bei genauen Angaben zum Produkt zu. Schritt 2A - Erstellen einer Schtzung anhand eines Statistikmodells. Die meisten Organisationen erstellen einen Zeitplan ausschlielich unter Verwendung von Microsoft Project oder irgendeines anderen Critical-Path-Method-Tools. Dies ist absolut erforderlich, aber es ist noch wichtiger, diese zeitplanbasierte Schtzung anhand anderer Anstze zu validieren. An dieser Stelle knnen Tools wie CaliberRM ESTIMATE Professional Ihrer Organisation helfen. Schritt 2B - Erstellen einer zeitplanbasierten Schtzung. Ein immer wieder auftretendes Problem mit den meisten Schtzungen ist, dass viele Aktivitten vergessen und daher nicht bercksichtigt werden. Durch die Verwendung einer standardmigen Work Breakdown Structure (WBS), einer Pseudo-Checkliste, wird sichergestellt, dass alle Aspekte eines Projekts bercksichtigt werden. Schritt 3 - Auswerten der Verteilung des Arbeitsaufwands. Eine Mglichkeit, eine Schtzung zu validieren, besteht darin, sich die Verteilung des Arbeitsaufwands auf die unterschiedlichen Gruppen in Ihrem Entwicklungsteam anzusehen. Stellen Sie zu diesem Zweck fest, wie viel des gesamten Projektaufwands auf das Konfigurations- und Build-Management, die Integrationstests, das Projektmanagement, das Erstellen der Dokumentation usw. verwendet wird. Sie knnen sich auf Ungereimtheiten in der Schtzung konzentrieren, indem Sie die Aufwandsverteilung fr diese Organisationsbereiche prfen und die Schtzungen mit frheren Projektverteilungen vergleichen. Einige Organisationen verwenden als Faustregel fr weitere Untersuchungen eine Varianz von 25 - 30 %. Schritt 4 - Auswerten aller Schtzungen und Suche nach Konvergenzen. Ein wichtiger Schritt beim Erstellen einer erfolgreichen Schtzung besteht darin, die anhand des zeitplanbasierten Modells erstellte Schtzung mit der anhand des Statistikmodells erstellten Schtzung zu vergleichen. Konzentrieren Sie sich auch hier auf Divergenzen zwischen beiden Schtzungen und stellen Sie sicher, dass Sie die Grnde fr die Abweichungen verstehen. Fahren Sie mit dem Prozess erst fort, wenn der Grad an Unsicherheit und Risiko tolerierbar ist. Schritt 5 - Einbeziehen von Unternehmenszielen und -beschrnkungen. Wie bereits erwhnt, ist das Erstellen einer technischen Schtzung nur die halbe Miete eines Softwareentwicklungsunternehmens. Unternehmen haben naturgem Ziele (Zeitplan und Budget) und Beschrnkungen (Personal, Qualitt usw.). Dieser sehr wichtige Schritt stellt sicher, dass die Organisation das ihren Zielen innewohnende Ma an Risiko bereitwillig akzeptiert. Ist dies nicht der Fall, kann dieses Risiko mithilfe einer angepassten technischen Schtzung reduziert werden. Schritt 6 - Anpassen der Schtzung. Das Aufschlsseln der Task- oder Systemkomponenten in kleine Segmente und deren Priorisierung ermglicht den Organisationen, gemeinsam an der Anpassung des Inputs des Schtzungsprozesses zu arbeiten, NICHT aber am Output. Dies kann gelegentlich bedeuten, dass Ihre Organisation sich an den Kunden oder an die Marketingorganisation wenden muss, um die Genehmigung fr eine Reduzierung des Projektumfangs oder eine Erhhung des Zeit- oder Budgetumfangs einzuholen.
Schritt 7 - Ausfhrung des Projektplans. Sobald die unternehmerischen und technischen Risiken bekannt sind und ein Baseline-Plan genehmigt wurde, muss der Projektplan nur noch ausgefhrt werden. Wenn dies jedoch nur so einfach wre! Nichtsdestotrotz ist die gesamte Organisation um in einer viel besseren Position als zu Beginn des Prozesses.
Die traditionelle Bewertungseinheit fr den Umfang eines Projekts ist LOC (Lines of Code), aber andere Faktoren, z. B. Function Points, GUI-Komponenten oder Subsysteme werden zunehmend hufiger verwendet. CaliberRM ESTIMATE Professional stellt zur Angabe des Projektumfangs alle oben genannten Optionen zur Verfgung. Borland empfiehlt Ihnen, sich mit den eher funktionellen Methoden zur Ermittlung des Projektumfangs (Scoping), z. B. Function Points und GUIKomponenten, zu befassen. Obwohl das umfangsbasierte Scoping der traditionellere Ansatz ist, wird heutzutage ein allgemeinerer Schtzungsansatz bevorzugt. Bei diesem Ansatz wird die antizipierte Funktionalitt auf die verfgbaren Ressourcen aufgeteilt. Jede Ressource muss ihrerseits eine Schtzung des fr die Entwicklung der jeweiligen Funktionalitt erforderlichen Arbeitsaufwands abgeben. Der Arbeitsaufwand fr die einzelnen Funktionalitten wird mit den geschtzten Overheads, z. B. Konfigurationsmanagement, Projektmanagement und Systemtests, kombiniert, sodass der Gesamtarbeitsaufwand fr das zu entwickelnde System oder Produkt ermittelt werden kann. Diese Methode zum Ermitteln des Arbeitsaufwands fr ein Projekt wird auch von CaliberRM ESTIMATE untersttzt. Wenn Sie fr Schtzungen, die auf dem Projektumfang basieren, eine standardmige Architectural Breakdown Structure und fr Schtzungen, die auf dem Projektumfang basieren, eine standardmige Work Breakdown Structure verwenden, erhhen Sie die Wahrscheinlichkeit, dass alle Elemente in der Gesamtschtzung bercksichtigt werden.
Was wre, wenn Sie eine Schtzung vorliegen htten, die aus den Ist-Zahlen der letzten abgeschlossenen Projekte abgeleitet wurde. Wie sicher wrden Sie sich fhlen, wenn Sie wten, dass Sie ein Modell verwenden knnten, das aus ber 3500 Projekten abgeleitet wurde - das Putnam-Modell. Dies ist das dem Statistikmodell zu Grunde liegende Konzept fr den Schtzungsprozess. Eine Schtzung trifft mit einer bestimmten Wahrscheinlichkeit zu. Der Wahrscheinlichkeitswert reflektiert den Grad an Unsicherheit in der Schtzung. Dieser wird durch alle beim Erstellen der Schtzung angestellten Vermutungen und allen mit dem Projekt verbundenen Risiken beeinflusst. CaliberRM ESTIMATE Professional verwendet die Monte-Carlo-Simulation, um Schtzungen mit unterschiedlichen Wahrscheinlichkeiten fr ein Projekt zu generieren. Aus diesen knnen Sie diejenige auswhlen, die fr Ihre Situation oder das Ma an Risiko, das Ihre Organisation bereit ist einzugehen, am besten geeignet ist.
Weitere Informationen
Weitere Informationen finden Sie in der Hilfe zu CaliberRM ESTIMATE Professional. Sie enthlt ein Kapitel zu Schtzungen aus Steve McConnells Buch Rapid Development - Taming Wild Software Schedules (Microsoft Press, 1996). Weitere Informationen erhalten Sie unter support@borland.com .
10
Der Estimate-Experte
CaliberRM ESTIMATE Professional enthlt einen Experten, der Ihnen hilft, eine erste Schtzung unter Verwendung branchenblicher Projektdurchschnittswerte fr viele Parameter zu erstellen, die Sie zu einem spteren Zeitpunkt an Ihre Anforderungen anpassen knnen. Das Ergebnis hat standardmig eine Wahrscheinlichkeit von 50 - 50 (d. h. eine Wahrscheinlichkeit von 50 %, dass die Schtzung berschritten und eine Wahrscheinlichkeit von 50 %, dass die Schtzung unterschritten wird). Sie knnen die gewnschte Wahrscheinlichkeit zu einem spteren Zeitpunkt an einen fr Ihre Organisation angemessenen Wert anpassen. Eine gute Faustregel beim Erstellen von Schtzungen ist beispielsweise sicherzustellen, dass die Ergebnisse zu 75 % der Zeit innerhalb von 25 bis 30 % liegen. Weitere Informationen zu Wahrscheinlichkeiten und Schtzungen finden Sie in der Hilfe zu CaliberRM ESTIMATE Professional.
11
Beim Starten von CaliberRM ESTIMATE Professional werden Sie gefragt, ob Sie die neue Schtzung mit oder ohne den Experten erstellen mchten. Wenn Sie den Experten verwenden mchten, werden Sie aufgefordert, alle erforderlichen Projektinformationen einzugeben. Wenn Sie zum Erstellen der neuen Schtzung den Experten nicht verwenden mchten, fordert CaliberRM ESTIMATE Professional Sie nur zur Eingabe der Projektkalibrierungsdaten auf (z. B. Kalibrierungsmethode, Projekttyp, Projektuntertyp). Zur Eingabe der verbleibenden Projektinformationen mssen Sie anschlieend die entsprechenden Meneintrge manuell whlen.
12
Die folgende Tabelle enthlt die Beispielwerte, die Sie nach Aufforderung in den Experten eingeben knnen. Sie sollten den Text in den einzelnen Expertenbildschirmen sorgfltig lesen, da er ausfhrlich beschreibt, welche Daten wann und warum bentigt werden.
Attribut Projektname Projekttyp Projekt-Subtyp Aktuelle Projektphase Startdatum Begrenzungen und Prioritten Schtzungstyp Maeinheit Erwarteter Aufwand SmartApp Shrinkwrap Business-Systeme
Beispielwert
Spez. der Detailanforderungen abgeschlossen (PDR) 2. April 2001 Constraints (Beschrnkungen) und Priorities (Prioritten) werden weiter hinten behandelt, Sie knnen diese hier daher ignorieren. Aufwandsbasiert Mannmonate 30 (Beachten Sie, was passiert, wenn Sie diese 30 Mannmonate spter in diesem Beispiel in 70 ndern.) Hinweis: Dieses Beispielprojekt setzt voraus, dass Sie den anfnglichen Umfang nach Analogie angeben (d. h. Sie haben eine Vorstellung vom Gesamtarbeitsaufwand, weil Sie dieses Projekt mit bereits abgeschlossenen Projekten verglichen haben).
Bevor im Folgenden der Hauptbildschirm beschrieben wird, sollten Sie noch die Arbeitskosten eingeben, sodass Sie sich die Kosten des Projekts anzeigen lassen knnen.
13
Die Stze knnen in Ihrer lokalen Whrung eingegeben werden. Whlen Sie im Beispielprojekt den entsprechenden Meneintrag, geben Sie einen allgemeinen Stundensatz von 100 ein und klicken Sie auf OK. Beachten Sie, dass der Wert fr die Projektkosten nun im Zusammenfassungsfenster angezeigt wird.
14
Standardansicht
Sobald Sie die Eingabe der anfnglichen Projektdaten abgeschlossen haben, zeigt CaliberRM ESTIMATE Professional die Standardansicht an.
Abbildung 3 - Standardansicht
Auf der linken Seite der Standardansicht befindet sich der Projekt-Browser. In diesem Bereich wird eine detaillierte Aufschlsselung der Projektaufgaben angezeigt, wenn Sie eine auf dem Arbeitsaufwand basierte Schtzung angeben, oder die Komponenten einer auf dem Projektumfang basierenden Schtzung. Beachten Sie, dass in sehr seltenen Fllen nur einen Task eingeben, wie es in diesem Beispiel der Fall ist, wo das gesamte Projekt geschtzt wird. In der Regel wrden Sie die Arbeitsaufschlsselung gem eines Unternehmens- oder Teamstandards eingeben. Im mittleren Teil der Standardansicht befindet sich der Datenbereich, wo die Zusammenfassung der Schtzung, Diagramme und Berichte angezeigt werden.
15
Oben rechts in der Standardansicht befindet sich der Bereich fr die Berichtsauswahl. Wenn Sie in dieser Liste einen oder mehrere Berichte auswhlen, werden diese im mittleren Datenbereich angezeigt. Weitere Informationen hierzu finden Sie im Abschnitt Berichte (Ausgaben) weiter hinten. Unten rechts in der Standardansicht befindet sich der Bereich fr die Diagrammauswahl. Zwei der Diagramme sind standardmig ausgewhlt: Simulations-Punktwolke und Planungsoptionen. Sie knnen die anderen Diagramme auswhlen, indem Sie links neben dem Diagrammnamen das Auswahlfeld aktivieren. Sie knnen die Standardansicht an Ihre Anforderungen anpassen, indem Sie die Gre der einzelnen Anzeigebereiche ndern und beliebige, alle oder keine der aufgefhrten Berichte oder Diagramme auswhlen. CaliberRM ESTIMATE Professional speichert die Konfiguration der letzten Anzeige und stellt diese beim Neustart des Tools wieder her.
16
17
Simulations-Punktwolke
Die Simulations-Punktwolke enthlt die simulierten Ergebnisse fr Ihr Projekt unter Bercksichtigung der Unsicherheiten, die damit verbunden sind. Dies bedeutet, dass fr jeden der Punkte im Streudiagramm die Wahrscheinlichkeit besteht, dass er wahr ist. Die Simulation erfolgt unter Verwendung der Monte-Carlo-Methode. Bei diesem Ansatz werden die Eingabewerte gem des zu Grunde liegenden Schtzungsmodells innerhalb definierter Bereiche variiert, die entweder von Ihnen oder vom System festgelegt werden. Folgende Unsicherheiten sind dabei zu beachten: der Bereich der Eingabewerte fr die einzelnen Komponenten oder Tasks, die aktuelle Lebenszyklusphase des Projekts, die Variabilitt der Industrie oder Ihrer eigenen historischen Daten, die Sie zum Optimieren des Modells verwendet haben. Die Anzahl der simulierten Projekte kann im Men Tools | Optionen festgelegt werden. Standardmig werden 500 Simulationen durchgefhrt. In den Berichten Zeitplan und Wahrscheinlichkeit (siehe Abschnitt Berichte weiter unten) wird dieses Diagramm in tabellarischer Form zusammengefasst.
Abbildung 5 - Simulations-Punktwolke
Die durchgezogenen Linien des Diagramms zeigen die Mittelwerte fr den Zeitplan und den Arbeitsaufwand an. Die gestrichelten Linien zeigen den 25-%- und den 75-%-Bereich der Ergebnisse fr den Zeitplan und den Arbeitsaufwand an. Man knnte sagen, dass es eine 75-prozentige Wahrscheinlichkeit gibt, dass das Projekt in weniger oder der gleichen Zeit an dem Punkt abgeschlossen wird, der auf der 75-%-Linie liegt. Dies bedeutet also, dass es nur eine 25-prozentige Wahrscheinlichkeit gibt, dass das Projekt lnger dauert, als der Wert an dem Punkt, der auf der 75%Linie liegt. Weitere Informationen hierzu sowie eine ausfhrliche Beschreibung des Diagramminhalts finden Sie in der Hilfe zu CaliberRM ESTIMATE Professional.
18
Planungsoptionen - Diagramm
Das Diagramm Planungsoptionen zeigt die Planungsoptionen an, die der Person zur Verfgung stehen, die die Schtzung ausfhrt. Die Anzahl der Planungsoptionen kann ber den Meneintrag Tools | Optionen festgelegt werden. Standardmig werden 25 Optionen angezeigt.
19
20
Im Bereich Reservierte Tasks knnen Sie Aktivitten des ProjektOverheads, z. B. Projektmanagement, Konfigurationsmanagement (CM) und Qualittssicherung (QA) als Prozentsatz des unter Geschtzte Tasks angegebenen Gesamtarbeitsaufwands festlegen. Mit Schtzungen knnen Sie sicherzustellen, dass Sie Tasks wie die soeben erwhnten auch tatschlich bercksichtigen. Sie wissen beispielsweise, dass 5 % des Gesamtarbeitsaufwands des Projekts auf QA-Aktivitten verwendet wird, sodass Sie der QA unter Reservierte Tasks einen Task zuordnen und dafr einen erwarteten Wert von 5 % angeben. Als Vorgabe wurden Werte und Bereiche fr das Konfigurationsmanagement und die Qualittssicherung, die Dokumentation, das Projektmanagement, den ProjektOverhead und Tests zur Verfgung gestellt. Sie knnen Ihre eigenen reserviertenTasks hinzufgen, lschen oder diejenigen ausschlieen, die fr Ihren Ansatz nicht geeignet sind.
21
22
Remote-Download
Mannmonate
Remote-Upload
Mannmonate
Mannmonate
Mannmonate
Mannmonate
Benutzeroberflche
Mannmonate
Wert des Arbeitsaufwands Niedrig: 4 Erwartet: 6 Hoch: 8 Niedrig: 1 Erwartet: 2 Hoch: 3 Niedrig: 1 Erwartet: 2 Hoch: 3 Niedrig: 1 Erwartet: 2 Hoch: 3 Niedrig: 3 Erwartet: 5 Hoch: 8 Niedrig: 3 Erwartet: 5 Hoch: 8 Niedrig: 4 Erwartet: 5 Hoch: 7
23
Wie Sie in der Zusammenfassung sehen knnen, hat CaliberRM ESTIMATE Professional ein nominales Ergebnis fr den Arbeitsaufwand von ungefhr 70 Mannmonaten, ca. 10 Zeitplanmonate und maximal 9 Mitarbeiter berechnet. Wenn Sie eine Beschrnkung von 10 Zeitplanmonaten gewhlt und festgelegt haben, dass der krzeste Zeitplan die hchste Prioritt hat, zeigt der Optimalplan einen Arbeitsaufwand von ungefhr 166 Mannmonaten, einen Zeitplan von unter 9 Monaten und eine maximale Mitarbeiterzahl von ca. 27. Es ist immer interessant, die Kosten zu beobachten, die durch Hinzufgen weiterer Personen zu einem Projekt entstehen. In diesem besonderen Fall wird der Arbeitsaufwand durch Komprimieren des Zeitplans um 2 Monate oder 20 % mehr als verdoppelt.
Abbildung 10 - Task-Aufschlsselung
Beachten Sie, dass fr aufwandsbasierte Schtzungen die Option Programmiersprache, sofern sie fr einen Task festgelegt wird, nur zur Information dient. Es wird vorausgesetzt, dass dies whrend des Schtzungsprozesses bercksichtigt wurde.
24
Whlen Sie hierzu im Projekt-Browser das Register Geschtzte Tasks, sofern es nicht bereits ausgewhlt ist. Um einen Task aus einer Projektschtzung auszuschlieen, klicken Sie mit der rechten Maustaste auf den Task-Namen und whlen Sie den Meneintrag Von Schtzung ausschlieen. Sie knnen einen ausgeschlossenen Task wieder hinzufgen, indem Sie mit der rechten Maustaste auf sie klicken und den Meneintrag In Schtzung bercksichtigen whlen. Sie werden bei der anfnglichen Projektplanung feststellen, wie leistungsstark und ntzlich diese Funktion ist. Wenn diese Funktion in Verbindung mit umfangreichen Berichten genutzt wird, erhalten Sie ein vollstndiges Audit-Protokoll sowie Informationen darber, wie die Schtzung erstellt wurde.
25
Berichte (Ausgaben)
Oben rechts in der Standardansicht wird eine Liste aller Berichte angezeigt, die von CaliberRM ESTIMATE Professional generiert werden knnen. Sie knnen einen Bericht generieren, indem Sie im Berichtsfenster auf das Auswahlfeld neben dem Namen des gewnschten Berichts klicken. Der Inhalt des Berichts wird im mittleren Datenbereich des Bildschirms angezeigt. Wenn Sie mit der rechten Maustaste auf einen Bericht klicken, wird ein Men angezeigt, ber das Sie den Bericht vergrern, verkleinern, kopieren oder drucken knnen. Sie knnen den Bericht auch mithilfe der Tasten + oder - auf der Tastatur vergrern oder verkleinern. Whlen Sie jetzt den Bericht Projektumfang. Dieser Bericht kann mehrere Seiten enthalten. Wenn dies der Fall ist, beachten Sie, dass Sie mithilfe der Vorwrts- und Rckwrtsschalter, die sich unten im Berichtsfenster befinden, blttern knnen. Wenn der Bericht nur eine Seite enthlt, werden diese Schalter grau dargestellt. Sie knnen auch die Tastaturtasten Bild ab, Bild auf, Pos1 und Ende verwenden, um die unterschiedlichen Seiten eines mehrseitigen Berichts anzuzeigen. Einige der Berichte verwenden Projektinformationen (z. B. eine Projektbeschreibung, den Namen des Kunden, den Namen der Person, die die Schtzung erstellt hat, usw.). Sie knnen diese Informationen ber den Meneintrag Datei | Projekteigenschaften eingeben. In den Beispielprojekten knnen Sie mindestens die folgenden Berichte anzeigen und/oder drucken: Planungsoptionen - bersicht Bericht zu den Planungsoptionen Projektzeitplan - Wahrscheinlichkeiten
Diese drei Berichte spielen eine Schlsselrolle, wenn Sie Ihre Schtzung prsentieren, da sie Sie in die Lage versetzen, hufig gestellte Fragen beantworten und auf Kommentare reagieren zu knnen. Beispiel: Die ewig unausweichliche Frage: Wie gro ist die Wahrscheinlichkeit, dass wir diesen Termin einhalten knnen? Mithilfe des Berichts Projektzeitplan - Wahrscheinlichkeiten knnen Sie die Wahrscheinlichkeit angeben, mit der vor oder zum vereinbarten Termin geliefert werden knnte. Bei der Prsentation von Schtzungen kommt es hufig vor, dass beliebige Personen nderungswnsche haben, z. B. Wir mssen den Zeitplan verkrzen oder Wir mssen die Anzahl der Mitarbeiter reduzieren. Mithilfe der von CaliberRM ESTIMATE Professional generierten Berichte haben Sie zahlreiche alternative Schtzungen parat, sodass Sie sofort auf die nderungswnsche eingehen knnen.
26
27
Zur Optimierung des Schtzungsmodells sind vier Optionen verfgbar: Projekttyp Produktivittsfaktoren Historische Projektdaten Erweitert
Projekttyp - diese Kalibrierung stellt Ihnen 12 unterschiedliche Softwareentwicklungsprofile von Avionics bis hin zu MIS Business Systems zur Verfgung. Diese Daten sind fr die ersten Schritte hilfreich, aber der Umgang mit Ihren eigenen Daten ist wahrscheinlich einfacher. Sie knnen auch die Option Personalzusammensetzung verwenden, um zu sehen, wie sich Ihre Teams anzahlmig zusammensetzen. Das Profil Langsam legt fest, dass Sie bei Projektbeginn weniger, in der Mitte des Projekts die meisten und am Ende des Projekts wieder weniger Mitarbeiter beschftigen. Die Option Extrem schnell gibt an, dass sehr viele Mitarbeiter von Beginn bis zum Ende des Projekts beteiligt sind. Produktivittsfaktoren - diese Kalibrierung stellt Ihnen 21 unterschiedliche Faktoren fr die Bereiche Produkt-, Prozess- und Teamoptimierung zur Verfgung. Dies ist eine sehr subjektive Aufgabe und kann zu einigen Spekulationen fhren. Historische Projektdaten - diese Kalibrierung ermglicht die Eingabe der Zielvorstellungen. Bei der Eingabe bereits abgeschlossener Projekte knnen Sie diejenigen Projekte auswhlen, die Ihrem neuen Projekt in den Bereichen Prozess, Produkttyp und Team-Zusammensetzung am ehesten entsprechen. Diese Kalibrierungsmethode bringt das Putnam-Modell voll zur Geltung, da es alle Subjektivitt aus dem Schtzungsprozess entfernt und den Beurteilungsprozess vereinfacht. Erweitert - diese Option ermglicht Ihnen, die Produktivittsparameter bzw. das Entwicklungsprofil, den Manpower Buildup Parameter bzw. das Personalprofil zu optimieren. Dies wird jedoch in dieser bung nicht beschrieben. Weitere Informationen hierzu finden Sie in der Hilfedatei.
28
29
30
Johann ist Projektmanager bei der ABC Software Corp. Die ABC-Marketinggruppe mchte unbedingt die Marktlcke nutzen und ein innovatives neues Produkt namens SmartApp 2.0 innerhalb von 9 Monaten auf den Markt bringen. SmartApp 2.0 ist ein Upgrade seiner Vorgngerimplementierung, das u. a. eine vollstndig neue Benutzeroberflche aufweist. Johann wurde gebeten, die Umsetzbarkeit der Lieferung des Produkts innerhalb des 9-monatigen Zeitrahmens zu ermitteln. In einem ersten Schritt generiert er eine erste Schtzung, die auf allgemeinen Industriedaten basiert. Johann schtzt, dass der Projektumfang von SmartApp 2.0 bei ca. 65.000 SLOC liegt, da das Projekt um ein Drittel grer sein wird als SmartApp 1.0 mit 43.500 SLOC. Er verwendet den CaliberRM ESTIMATE Professional-Experten, um diese erste Schtzung zu generieren.
Mithilfe des Experten fr neue Projekte gibt Johann die folgenden Daten ein:
Beispielwert
31
Aktuelle Projektphase Startdatum Begrenzungen und Prioritten Schtzungstyp Maeinheit Erwartete Gre
Spez. der Detailanforderungen abgeschlossen (PDR) 2. April 2 2001 Constraints (Beschrnkungen) und Priorities (Prioritten) werden weiter hinten behandelt, Sie knnen diese hier daher ignorieren. Grenbasiert Codezeilen 65.000 Hinweis: Dieses Beispielprojekt setzt voraus, dass Sie den anfnglichen Umfang nach Analogie angeben (d. h. Sie haben eine Vorstellung vom Projektumfang, weil Sie dieses Projekt mit bereits abgeschlossenen Projekten verglichen haben).
Programmiersprache
C++
Das Ergebnis dieser auf Projektumfang basierenden Schtzung ist ein hnlicher Bildschirm wie der in Abbildung .
32
Johann prft seine erste Schtzung. Aus dem generierten Nominalzeitplan geht hervor, dass SmartApp 2.0 in 12 Monaten entwickelt werden kann. Da diese Schtzung auf allgemeinen Industriedaten basiert und gleiche Prioritten fr Teamgre, Zeitplan und Kosten voraussetzt, ist Johann zuversichtlich. Er wei, dass er ein starkes Entwicklungsteam hat und dass das Management mglicherweise bereit ist, ihm weitere Ressourcen zur Verfgung zu stellen, damit der Zeitplan von 9 Monaten eingehalten werden kann. Bevor er aber mit dem Management Rcksprache hlt, muss er seine Schtzung noch besser auf das SmartApp 2.0-Projekt und die ABC Software-Umgebung abstimmen.
Wenn Sie das System beispielsweise in mehrere Komponenten aufschlsseln knnen, knnen Sie jede Komponente separat schtzen und dafr die fr die Komponente am besten geeignete Methode zur Schtzung des Projektumfangs verwenden. Szenario: Den Projektumfang genauer ermitteln
Da das SmartApp 2.0-Projektteam vor Kurzem die Anforderungsspezifikation, einschlielich eines ausfhrlichen UIStoryboards, abgeschlossen hat, entscheidet Johann, dass der nchste Schritt eine genauere Schtzung des Projektumfangs ist. SmartApp 2.0 soll eine klassische 2-Tier-Client-ServerAnwendung werden. Johann verwendet die Komponentenmethode von CaliberRM ESTIMATE Professional, um die Anwendung in zwei Komponenten aufzuteilen. Da die BackendDatenbank bekannt ist, berechnet Johann diesen Teil auf Basis der Codezeilen (LOC). Fr das Frontend verwendet Johann GUI-Komponenten als Maeinheit basierend auf der Anforderungsspezifikation. Das Ergebnis ist ein niedrigerer LOC-Wert, der den Projektumfang genauer wiedergibt.
33
Klicken Sie im Projekt-Browser des Beispielprojekts auf SmartAppSize und whlen Sie den Meneintrag Umfang | Untergeordnetes Element hinzufgen. Komponente. Geben Sie den Namen der ersten Komponente (siehe folgende Tabelle) ein und klicken Sie auf OK. Der Komponentenname wird als untergeordnetes Element des Projekts im Projekt-Browser der Standardansicht angezeigt. Um die ausfhrlichen Informationen zum Projektumfang fr die Komponente anzugeben, doppelklicken Sie im Projekt-Browser auf den Komponentennamen. Geben Sie die Informationen gem der folgenden Tabelle ein. Definieren Sie die folgenden beiden Komponenten:
Komponentenname DB-Komponente
Werte fr Projektumfang Programmiersprache: C++ LOC - Niedrig: 30.000 LOC - Erwartet: 35.000 LOC - Hoch: 40.000 Programmiersprache: C++ Dialogfelder: 3, 7, 4, 1 Fenster: 10, 6, 10 Berichte/Ausgaben: 2, 1, 1 Datendateien: 4, 6 Externe Schnittstellen: 2, 1, 1
UI-Komponente
Wenn Sie in das Zusammenfassungsfenster zurckkehren, sehen Sie, dass die LOC-Schtzung des Projektumfangs nun niedriger (und damit eine genauere Widerspiegelung des Projektumfangs) und die Standardabweichung (mit der die Variabilitt oder Przision gemessen wird) kleiner als vorher ist - 18 % vorher im Vergleich zu 8 % jetzt. Wie zuvor erwhnt, ist es diese Variabilitt, die die Varianz mglicher Ergebnisse fr den Zeitplan und den Arbeitsaufwand bestimmt, die im Streudiagramm dargestellt sind. Anschlieend knnen Sie diese Segmente weiter aufschlsseln, um weitere Spielrume zu schaffen. Eine gute Faustregel ist, die Arbeit in Blcke aufzuteilen, die nicht mehr als 5 % der fr einen Meilenstein fertig zu stellenden Arbeit darstellen und nicht grer sind als der Umfang einer bestimmten Architekturkomponente. Das Ziel hierbei ist, Ihnen eine bessere Kontrolle des Projekts zu ermglichen und mehr Spielraum bzw. ein greres Ma an Flexibilitt zu haben. Probieren Sie nun die Funktion fr Beschrnkungen und Prioritten aus, versuchen Sie Tasks hinzuzufgen und zu entfernen, schauen Sie sich den Wahrscheinlichkeitsbericht an und beschftigen Sie sich eingehend mit den Mglichkeiten der Projektplanung und -schtzung.
34
Abschlieende Tipps
Lesen Sie die Hilfedatei in CaliberRM ESTIMATE Professional
und im Besonderen das darin enthaltende Kapitel zur Schtzung von Softwareprojekten aus Steve McConnells hervorragendem Buch Rapid Development: Taming Wild Software Schedules, Microsoft Press, 1996. Nehmen Sie sich Zeit, dieses Kapitel zu lesen, bevor Sie sich intensiver mit CaliberRM ESTIMATE Professional beschftigen. Verwenden Sie bei Ihren Schtzungen zustzlich zu anderen Methoden immer statistische Modell-Tools wie CaliberRM ESTIMATE Professional. Der Rest des Packages enthlt ZeitplanTools wie Microsoft Project, Scitor Project Scheduler 7, Primavera, Artemus, Timeline und weitere Tools. Holen Sie so viele Perspektiven wie mglich zu dem Projekt ein, das Sie zu schtzen versuchen. Besorgen Sie sich eine schriftliche Projektspezifikation. Erstellen Sie Ihre Schtzung so detailliert wie mglich. Nutzen Sie den Input aus Ihrer Entwicklungsorganisation - jeder sollte wissen, wie die Schtzung abgeleitet wurde, und die Risiken kennen, die sich aus den ausgewhlten Zielen ergeben. Beginnen Sie mit der Erfassung der Daten abgeschlossener Projekte: Zeitplan, Arbeitsaufwand in Personen-Monaten, Fehler und Projektumfang (Codezeilen/Function Points/Klassen) Dokumentieren Sie Ihre Projektschtzungen. Speichern Sie die Projektschtzungen in Ihren KonfigurationsmanagementSystemen. Setzen Sie sich mit uns in Verbindung und diskutieren Sie Risiken, Erfolge und Fehlschlge - wir glauben nicht, dass CaliberRM ESTIMATE Professional die Wunderwaffe ist, aber wir sind davon berzeugt, dass es fr Sie ein extrem wertvolles Werkzeug sein kann. Senden Sie uns Ihr Feedback per E-Mail an support@borland.com.
35
Putnam-Methode
Die Putnam-Methode wurde in den frhen 70er Jahren von Lawrence H. Putnam entwickelt und 1978 das erste Mal als kommerzielles Produkt angeboten. Die Methode wurde seither kontinuierlich verbessert und wird in dem Buch Measures for Excellence (Yourdon Press, 1992), das Putnam zusammen mit Ware Myers verffentlicht hat, ausfhrlich beschrieben. Die Putnam-Methode basiert auf der Einsicht, dass effizient durchgefhrte Software-Projekte sorgfltig definierten Mustern folgen, die mit Exponentialgleichungen modelliert werden knnen. Diese Gleichungen bilden das Rckgrat fr den Ansatz von CaliberRM ESTIMATE Professional zum Erstellen von Kosten-, Zeitplan-, Personal- und Fehlerschtzungen.
COCOMO II
COCOMO II ist eine Fortsetzung der Arbeit, die von Barry W. Boehm in den 70er Jahren begonnen wurde und in seinem Buch Software Engineering Economics (Prentice-Hall, 1981) beschrieben ist. Das COCOMO-Modell wurde seit 1981 weiterentwickelt und kann nun auch fr andere als fr Projekte des U.S. Department of Defense verwendet werden, fr das es ursprnglich entwickelt wurde. Derzeit liegt das Modell in einer erweiterten Version vor (COCOMO-II), die es ermglicht, dass mittels Angabe von Kostenfaktoren Schtzungen fr praktisch alle Projekttypen erstellt werden knnen. CaliberRM ESTIMATE Professional verwendet das COCOMO-II-Modell als Ergnzung zur Putnam-Methode, wenn Schtzungen unter Verwendung produktivittsfrdernder Faktoren kalibriert werden mssen. Mithilfe der Projekttypeinstellungen wird eine Produktivitts-Baseline erstellt. Anschlieend wird der Produktivittsfaktor unter Verwendung der berechneten COCOMO-II-Produktivitt angepasst. Weitere Informationen zu COCOMO-II finden Sie unter http://sunset.usc.edu/COCOMOII/Cocomo.html
36
Monte-Carlo-Simulation
CaliberRM ESTIMATE Professional verwendet Monte-Carlo-Simulationen, um komplexe Interaktionen angesichts unsicherer Schtzungsannahmen zu modellieren. CaliberRM ESTIMATE Professional kann Hunderte oder Tausende mglicher Ergebnisse des zu schtzenden Projekts basierend auf Projektumfang, Produktivitt, aktueller Projektphase und weiteren Parametern simulieren, die vom Benutzer eingegeben werden. Anschlieend wird die Wahrscheinlichkeit unterschiedlicher Projektergebnisse geschtzt und unterschiedlichen Planoptionen werden Risikostufen zugewiesen. In komplexen Situationen, die ein groes Ma an Unsicherheit aufweisen, ermglicht diese Methode, dass CaliberRM ESTIMATE Professional sinnvolle Schtzungen erstellen kann, die anderenfalls nicht modellierbar wren.
37