Professional Documents
Culture Documents
Les applications mentionnes dans ce manuel sont brevetes par Borland Software Corporation ou en attente de brevet. Reportez-vous au CD du produit ou la bote de dialogue A propos pour avoir la liste des brevets. Ce document ne donne aucun droit sur ces brevets. Copyright 19972008 Borland Software Corporation et/ou ses filiales. Tous les noms de marques et de produits Borland sont des marques de fabrique ou des marques dposes de Borland Software Corporation aux Etats-Unis et dans d'autres pays. Toutes les autres marques appartiennent leurs propritaires respectifs. CMR06-EPUG Fvrier 2008
Sommaire
La planification de projets et son contexte .............................................. 4 De la planification l'estimation ................................................................. 6 Le flux d'estimation.......................................................................................... 7 Dfinition du primtre.................................................................................... 9 Modles et simulations..................................................................................... 9 Astuces pour effectuer une estimation ........................................................... 10 Informations complmentaires....................................................................... 10 Cration d'une estimation base sur l'effort .......................................... 11 Expert Estimation........................................................................................... 11 Saisie d'un exemple de projet bas sur l'effort ............................................... 12 Amlioration de votre estimation : ajout des cots ........................................ 13 Affichage par dfaut....................................................................................... 14 Rsum de l'estimation................................................................................... 15 Diagramme de dispersion............................................................................... 17 Graphique Options de planification ............................................................... 18 Tches estimes et Tches alloues ............................................................... 19 Rsolution des carts entre cibles commerciales et estimations techniques ...................................................................................................... 21 Rglage ou rduction du primtre ou de l'intervalle des tches.................... 21 Exclusion et inclusion de tches .................................................................... 24 Rapports (Sorties)......................................................................................... 25 Calibrage Rglage des modles d'estimation .................................... 26 Approches de calibrage de CaliberRM ESTIMATE Professional................. 26 Rglage des modles bass sur les donnes Type de projet........................... 27 Rglage des modles bass sur les Facteurs de productivit.......................... 28 Rglage des modles bass sur vos donnes historiques................................ 28 Estimation base sur la taille ..................................................................... 30 Amlioration de votre estimation : primtre du projet ................................. 32 Rsum - Astuces ......................................................................................... 35 Annexe A : Mthodologie Putnam, COCOMO II et simulation Monte Carlo ................................................................................................................. 36
Il arrive frquemment que le processus de planification d'un projet ne se droule pas correctement, ce qui donne lieu des conflits au sein de l'organisation et des difficults livrer le projet dans les temps. Cette situation est due une diffrence (ou "cart") entre la "cible" dfinie par la direction et "l'estimation" cre par l'quipe de planification du projet. La cible (quantifie en termes de cots, de main-d'uvre ou de dure) est gnralement infrieure l'estimation. Les conflits (dont le degr et l'intensit varient selon les organisations) sont gnralement dus au fait que les organisations grent la diffrence en choisissant l'un ou l'autre comme plan. L'ensemble du processus oppose l'quipe de planification des projets la direction. Les responsables cherchent souvent rsoudre la situation en imposant la cible. Il faut galement reconnatre que les projets logiciels se soldent souvent, depuis longtemps et de faon significative, par un chec ou une annulation pure et simple. Parmi les raisons de ce problme, citons retards, dpassements de budget, qualit inacceptable ou une combinaison de ces raisons. Malgr cette situation, il existe toujours une norme pression visant tablir les "estimations" les plus basses possibles afin de remporter de nouveaux marchs. Cela ressemble souvent un cercle vicieux.
De la planification l'estimation
Cette section contient une vue d'ensemble de l'estimation des projets logiciels et fournit des astuces permettant de mener cette tche bien. L'estimation d'un projet logiciel est l'analyse d'une proposition de projet ou d'un projet actif, visant tablir une projection de la main-d'oeuvre ncessaire (en mois-homme), de l'chancier ou planning (en mois civils), des exigences en matire de main-d'uvre et des cots. La prcision de l'estimation est essentielle la russite d'un projet de dveloppement logiciel. La plupart des processus d'estimation employs sont trs rudimentaires et produisent des rsultats non dfendables. Cela est souvent d au manque de base analytique solide (les informations entres, le processus et les rsultats font ainsi sans cesse l'objet de discussions). Le processus comprend frquemment des estimations informelles bases sur des experiences passes ou des estimations approximatives. Insuffisantes, puisque l'objectif recherch est "une estimation qui reprsente la prvision la plus optimiste ayant des chances de se raliser". L'acceptation de cette dfinition [d'une estimation] conduit irrvocablement une mthode appele estimation de -quelle-date-vous-ne pouvez-plus-prouverque-vous-n'aurez-pas-termin. Tom DeMarco (1982) Les avantages d'un processus correct d'estimation ont fait l'objet de nombreuses discussions dans l'industrie. Une bonne estimation contient une description du primtre du projet, de la technique d'estimation utilise et de la prcision de l'estimation. La prcision est un lment important de la planification, car elle permet l'quipe de planification de rgler le plus rapidement possible (et moindre cot) les problmes inhrents. "[Une estimation est] une valuation du rsultat quantitatif probable. Une indication de la prcision (+- x %) est gnralement applique aux cots et dures du projet." A Guide to the Project Management Body of Knowledge (PMBOK), Project Management Institute
Le flux d'estimation
La Figure 1 montre un exemple de flux d'estimation. La section suivante en prsente chaque tape.
Etape 1 Documentation du primtre du projet. Pour expliquer rapidement l'importance de la dfinition des exigences d'un projet, disons que vous ne pouvez pas prvoir une date de livraison sans savoir clairement ce que vous construisez. Les estimations bases sur un document d'une page fournissant des dates de livraison un jour prs sont voues l'chec. Exigez une spcification pour votre produit ou n'acceptez pas un planning fixe. Etape 2A Production d'une estimation partir d'un modle statistique. La plupart des organisations crent un planning l'aide uniquement de Microsoft Project ou d'un outil utilisant la mthode du chemin critique. Mme si cette tche est absolument ncessaire, il est encore plus important de valider cette estimation "base sur le planning" avec d'autres approches. C'est l qu'interviennent des outils comme CaliberRM ESTIMATE Professional. Etape 2B Production d'une estimation base sur le planning. Dans la plupart des estimations, de nombreuses activits sont omises et ne sont pas prises en compte. L'utilisation d'un organigramme technique (WBS, Work Breakdown Structure) standard, c'est--dire d'une sorte de checklist, permet de s'assurer que tous les aspects d'un projet sont pris en compte. Etape 3 Evaluation de la rpartition des efforts dans l'organisation. Une mthode de validation d'une estimation consiste tudier la rpartition des efforts dans les diffrents groupes de l'quipe de dveloppement, c'est--dire vrifier les ressources affectes la gestion des configurations et des constructions, au test des intgrations, la gestion du projet, la rdaction de la documentation, etc. Vous pouvez vous concentrer sur les anomalies de l'estimation en vrifiant la contribution de ces activits et en comparant les estimations des projets prcdents. Certaines organisations considrent une variation de 25-30 % comme indication de la ncessit d'une analyse plus pousse. Etape 4 Evaluation de toutes les estimations et recherche de convergence. Une tape cl dans la cration d'une estimation russie rside dans l'examen des estimations bases sur le planning par rapport celles du modle statistique. A nouveau, il convient de dtecter les divergences importantes entre les deux et d'en comprendre les raisons. Ne passez l'tape suivante que si vous avez des doutes quant au niveau d'incertitude et de risque. Etape 5 Prise en compte des cibles et contraintes commerciales. Comme nous l'avons dj dit, la production d'une estimation technique ne reprsente que la moiti de l'activit du dveloppement de logiciels. De par leur nature, les entreprises ont des cibles (dlai et budget) et des contraintes (main-d'uvre, qualit, etc.). Cette tape trs critique permet de s'assurer que l'organisation accepte le niveau de risque inhrent sa cible. Sinon, l'estimation technique peut tre ajuste pour rduire ce risque. Etape 6 Ajustement de l'estimation. La division des tches ou des composants systme en parties plus petites et l'tablissement de priorits entre ces tches ou ces composants permettent l'organisation de travailler l'ajustement des donnes entres dans le processus d'estimation et PAS des rsultats. Par consquent, votre organisation devra parfois s'adresser nouveau au client ou au service marketing pour demander la rduction du primtre ou l'augmentation du dlai ou du budget. Etape 7 Excution du plan projet. Une fois les risques commerciaux et techniques identifis et un plan de base approuv, il ne reste plus qu' excuter le plan. Si seulement c'tait aussi facile ! Nanmoins, l'ensemble de l'organisation est en bien meilleure position au lancement du projet.
Dfinition du primtre
Comme le montre la Figure 1, l'amlioration de votre processus d'estimation passe par diffrentes approches d'tablissement du primtre de votre projet. Cet exemple de processus et CaliberRM ESTIMATE Professional prennent tous deux en charge les estimations qui sont : Bases sur la taille (2A), ou Bases sur l'effort (2B).
L'unit de mesure traditionnelle de la taille d'un projet a longtemps t base sur le nombre de lignes de code (LOC), mais d'autres mesures gagnent en popularit, comme les points de fonction, les composants GUI, les soussystmes, etc. CaliberRM ESTIMATE Professional prend en charge toutes ces options de spcification de la taille d'un projet. Nous vous recommandons vivement d'tudier des techniques plus fonctionnelles comme les points de fonction et les composants GUI. Mme si l'estimation base sur la taille demeure l'approche la plus traditionnelle, une approche plus courante consiste diviser la fonctionnalit globale anticipe entre les ressources disponibles et demander chacune d'entre elles d'estimer l'effort ncessaire au dveloppement de son jeu de fonctionnalits. L'effort attribu chaque fonctionnalit est associ aux cots indirects (gestion des configurations, gestion du projet, test du systme, etc.) estims afin de parvenir un effort total pour le systme ou pour le produit dvelopper. CaliberRM ESTIMATE Professional prend galement en charge cette mthode de spcification de l'effort d'un projet. Utilisez un organigramme technique ABS (Architectural Breakdown Structure) standard pour les estimations bases sur la taille et un organigramme technique WBS (Work Breakdown Structure) standard pour les estimations bases sur l'effort ; vous augmenterez ainsi la probabilit d'avoir tous les lments dans l'estimation.
Modles et simulations
A partir de l'estimation initiale de la taille ou de l'effort total du projet, l'chancier (dure), l'effectif et le cot du projet peuvent tre estims l'aide de divers modles d'estimation. CaliberRM ESTIMATE Professional utilise deux de ces modles : la mthodologie de Larry Putnam et la nouvelle version du modle de Barry Boehm (Constructive Cost Model, COCOMO II.2000). Pour de plus amples informations sur ces modles, reportez-vous l'annexe A. Essayez d'imaginer le niveau de confiance confr par une estimation ralise partir des donnes relles de projets prcdents termins. Et maintenant, que diriez-vous de pouvoir utiliser un modle tabli partir de plus de 3 500 projets : le modle Putnam, concept tayant l'utilisation de la modlisation statistique en vue de faciliter votre processus d'estimation.
Une estimation a une certaine probabilit de se raliser. La valeur de cette probabilit reflte le niveau d'incertitude de l'estimation. Cette valeur est influence par toutes les hypothses faites lors de la gnration de l'estimation et tous les risques associs au projet. CaliberRM ESTIMATE Professional utilise la simulation Monte Carlo pour gnrer une gamme d'estimations avec diffrentes probabilits pour un projet. A partir de ces estimations, vous pouvez slectionner celle qui est la plus approprie votre situation ou le niveau de risque que votre organisation est prte prendre.
Informations complmentaires
Consultez l'aide de CaliberRM ESTIMATE Professional. Elle contient un chapitre complet sur les estimations tir de l'ouvrage de Steve McConnell intitul "Rapid Development - Taming Wild Software Schedules" (Microsoft Press, 1996). Contactez-nous l'adresse support@borland.com, pour de plus amples informations.
10
Expert Estimation
L'expert Estimation de CaliberRM ESTIMATE Professional vous permet de crer une estimation initiale partir de valeurs moyennes issues des paramtres de l'industrie ; vous pourrez ultrieurement affiner cette estimation. Par dfaut, le rsultat a une probabilit de 50-50 (c'est--dire 50 % de chances de dpasser l'estimation et 50 % de chances de rester en-dessous). Plus tard, vous pourrez affiner la probabilit souhaite et atteindre un niveau plus acceptable. Par exemple, le paramtre 25-30 % est gnralement (dans 75 % des cas) appropri. Pour de plus amples informations sur les probabilits et les estimations, consultez l'aide de CaliberRM ESTIMATE Professional. Au dmarrage de CaliberRM ESTIMATE Professional, le systme vous demande si vous souhaitez crer une nouvelle estimation avec ou sans l'expert Estimation. Si vous choisissez d'utiliser l'expert, vous devrez fournir toutes les informations ncessaires au projet. Si vous choisissez de ne pas utiliser l'expert Estimation pour crer une nouvelle estimation, CaliberRM ESTIMATE Professional ne vous demandera que les informations de calibrage du projet (par exemple, mthode de calibrage, type du projet, sous-type du projet, etc.). Vous devez ensuite slectionner manuellement les lments dans le menu pour saisir le reste des informations sur le projet.
11
Le tableau suivant contient des exemples de donnes saisir au fur et mesure que l'expert vous les demande. Lisez attentivement le texte de chaque cran de l'expert, car il vous explique en dtails les donnes ncessaires et leur utilisation.
Attribut Nom du projet Type de projet Sous-type de projet Phase en cours du projet Date de dbut de la phase Contraintes et priorits Type d'estimation Mesure Effort attendu SmartApp
Exemple de valeur
Systmes packags et dploys Systmes de gestion Fin Spcification dtaille des exigences (PDR) 02.04.01 Nous utiliserons les contraintes et priorits plus tard ; laissez ces champs tels quels pour le moment. Par l'effort Mois-homme 30 (observez ce qui se passe si vous remplacez 30 mois-homme par 70) Remarque : Cet exemple de projet suppose que vous spcifiez votre primtre initial "par analogie" (c'est-dire que vous avez une ide gnrale de l'effort total en comparant ce projet des projets prcdents).
12
Avant de poursuivre et de dcrire l'cran principal, entrons un salaire afin de pouvoir connatre les cots du projet.
Vous pouvez exprimer ces taux dans la devise de votre pays. Comme dans notre exemple, slectionnez les lments de menu cidessus, entrez un taux horaire gnral de 100, puis cliquez sur OK. Notez que les valeurs de cot du projet apparaissent maintenant dans la fentre Rsum.
13
14
La zone de slection des graphiques se trouve dans la partie infrieure droite de l'affichage par dfaut. Deux graphiques sont slectionns par dfaut : Diagramme de dispersion et Options de planification. Pour en slectionner d'autres, placez une coche gauche du nom du graphique dans la zone de slection. Vous pouvez personnaliser l'affichage par dfaut en redimensionnant ses zones et en slectionnant les rapports ou les graphiques afficher. CaliberRM ESTIMATE Professional affiche vos dernires slections chaque redmarrage de l'outil.
Rsum de l'estimation
La zone centrale de l'affichage par dfaut comporte les options suivantes : Primtre du projet, Plan hors contraintes calcul et Plan contraint calcul (voir Figure 4). Dans notre exemple, le Plan hors contraintes (le point slectionn dans la simulation qui reflte au mieux le niveau souhait de risque ou de confiance) et le Plan contraint sont identiques car aucune contrainte ni priorit n'a encore t spcifie. Comme nous en avons dj discut, le plan contraint peut galement tre considr comme le "plan cible".
15
16
Diagramme de dispersion
Le diagramme de dispersion contient une simulation des rsultats potentiels du projet respectant l'incertitude inhrente celui-ci. Ainsi, chaque point reprsente une certaine probabilit de s'avrer vrai. La simulation est ralise l'aide de la technique Monte Carlo. Cette approche applique les valeurs entres au modle du moteur d'estimation sous-jacent dans les intervalles dfinis (par vous ou par le systme). Les paramtres affectant l'incertidude sont : l'intervalle des valeurs d'entre de chaque composant ou tche, la phase du cycle de vie, la variabilit de l'industrie ou les donnes historiques que vous avez utilises pour affiner le modle. Dfinissez le nombre de projets simuls dans le menu Outils | Options. Par dfaut, 500 simulations sont effectues. Les rapports Probabilit de l'chancier et Probabilit de l'effort (voir plus bas) rsument ce graphique, mais sous forme de tableau.
17
L'option de planification nominale (hors contraintes), matrialise par un carr plein, est le rsultat des simulations Echancier et Effort. Elle reprsente la combinaison cot/chancier ayant une probabilit de 50 % (50 % reprsentant la valeur nominale par dfaut, que vous pouvez modifier en fonction du risque souhait dans le menu Ajustements | Hypothses de planification). Les options prsentes sur la gauche et la droite de l'option nominale reprsentent les compromis possibles entre le cot et l'chancier. Le plan projet contraint (matrialis par un point rouge encercl ; identique au plan hors contraintes si aucune contrainte ni priorit n'est entre) est slectionn partir de ces donnes. Cliquez avec le bouton droit en haut de chaque marqueur du graphique pour obtenir les valeurs d'effort et d'chancier pour cette option. Le rapport Options de planification montre les valeurs relles de chaque point du graphique. Pour une explication plus dtaille du contenu du graphique, consultez l'aide de CaliberRM ESTIMATE Professional.
18
Quand la simulation est associe aux capacits de CaliberRM ESTIMATE Professional de calculer des compromis et de reprsenter le rsultat de scnarios de simulation, vous comprenez clairement l'avantage de cet outil par rapport une feuille de calcul.
19
Remarquez en outre que la valeur d'effort affiche dans la fentre Rsum peut diffrer lgrement de l'effort total que vous avez entr, en raison de l'application par CaliberRM ESTIMATE Professional du modle d'estimation et de la simulation Monte Carlo. La zone Tches estimes vous permet de diviser votre projet en plusieurs tches, chacune ayant sa propre estimation de l'effort. Vous pouvez utiliser un nombre de niveaux de tches (la granularit) illimit. La zone Tches alloues vous permet de spcifier les "cots indirects" du projet, par exemple ceux associs la gestion du projet, la gestion de la configuration (CM) et au contrle qualit (QA), sous forme de pourcentage de l'effort total spcifi dans l'onglet Tches estimes. L'estimation doit tenir compte de toutes les tches, ce qui reprsente un dfi permanent. Par exemple, si vous savez que 5 % de l'effort total sont consacrs aux activits de QA, indiquez cette valeur dans le champ Tches alloues pour le QA. Par dfaut, nous avons fourni des valeurs et des intervalles pour les activits de gestion des configurations/contrle qualit (CM/QA ou Configuration Management/Quality Assurance), de documentation, de gestion du projet, d'encadrement du projet et de test. Vous pouvez ajouter ou supprimer des tches alloues selon votre approche.
20
21
Nom de la tche estime Base de donnes Tlchargement descendant Tlechargement ascendant Cration de rapports Exportation Importation Enregistrement en ligne
Valeurs d'effort Faible : 4 Attendu : 6 Elev : 8 Faible : 1 Attendu : 2 Elev : 3 Faible : 1 Attendu : 2 Elev : 3 Faible : 1 Attendu : 2 Elev : 3 Faible : 3 Attendu : 5 Elev : 8 Faible : 3 Attendu : 5 Elev : 8 Faible : 4 Attendu : 5 Elev : 7
Mois-homme
Mois-homme
Mois-homme
Mois-homme
Mois-homme
Interface utilisateur
Mois-homme
22
Comme vous pouvez le voir dans la fentre Rsum, CaliberRM ESTIMATE Professional gnre les rsultats suivants : environ 70 moishomme comme effort nominal, un chancier de 10 mois et un effectif maximal de 9 personnes. Si vous avez dfini une contrainte de 10 mois d'chancier et demand que l'chancier le plus court ait la priorit la plus leve, le plan contraint suggr indique un effort d'environ 166 moishomme, un chancier de moins de 9 mois et un effectif maximal d'environ 27 personnes. Il est toujours intressant de connatre le "cot" associ l'ajout de personnel un projet. Dans cet exemple, la rduction de l'chancier de 2 mois ou de 20 % fait plus que doubler l'effort.
23
Pour ce faire, slectionnez l'onglet "Tches estimes" dans le Navigateur de projet (s'il n'est pas dj slectionn). Pour exclure une tche d'une estimation, cliquez avec le bouton droit sur le nom de cette tche, puis slectionnez l'lment de menu Exclure de l'estimation. Pour inclure une tche exclue, cliquez avec le bouton droit sur le nom de cette tche, puis slectionnez l'lment de menu Inclure dans l'estimation. Vous comprenez aisment l'intrt de cette fonctionnalit pendant le processus initial de planification. Si vous l'associez aux rapports dtaills, vous obtenez un audit complet et une explication de la faon dont l'estimation a t gnre.
24
Rapports (Sorties)
La liste de tous les rapports pouvant tre gnrs par CaliberRM ESTIMATE Professional apparat en haut gauche de la vue par dfaut. Pour afficher un rapport, cochez la case en regard de son nom dans la fentre Rapports. Le contenu du rapport slectionn s'affiche dans la partie centrale de l'cran. Si vous cliquez avec le bouton droit sur le rapport affich, un menu apparat avec des fonctions de zoom avant, de zoom arrire, de copie ou d'impression du rapport affich. Vous pouvez galement effectuer un zoom avant ou arrire sur un rapport en utilisant respectivement la touche "+" ou "-". Slectionnez maintenant le rapport "Primtre du projet". Ce rapport peut comporter plusieurs pages. Dans ce cas, chaque page peut tre affiche l'aide des boutons Prcdent et Suivant situs en bas de la fentre du rapport. Ces boutons sont griss pour les rapports composs d'une seule page. Vous pouvez aussi utiliser les touches Pg Suiv, Pg Prc, Orig et Fin pour voir les diffrentes pages d'un rapport. Certains rapports utilisent les informations du projet (description du projet, nom du client, nom de l'auteur de l'estimation, etc.). Vous spcifiez ces informations dans le menu Fichier | Proprits du projet. En utilisant nos exemples de projet, affichez et/ou imprimez au moins les rapports suivants : Prsentation des options de planification Rapport Options de planification Probabilits de l'chancier du projet
Ces trois rapports sont essentiels la prsentation de votre estimation d'autres personnes. Ils vous permettront de rpondre aux questions et commentaires, par exemple : La question invitable : "Quelle est la probabilit de respecter ce dlai ?" A l'aide du rapport Probabilits de l'chancier du projet, vous pouvez indiquer la probabilit de livrer le projet la date prvue ou avant. Lors de la prsentation des estimations, il arrive frquemment qu'une personne souhaite apporter des modifications, par exemple "Nous devons raccourcir l'chancier" ou "Nous devons rduire le nombre de personnes". Grce aux rapports gnrs par CaliberRM ESTIMATE Professional, vous disposez de diffrentes estimations qui vous permettent de connatre immdiatement les implications des modifications demandes.
25
26
Vous disposez des quatre mthodes suivantes pour affiner le modle d'estimation : Type de projet Facteurs de productivit Donnes historiques Avance
Le calibrage Type de projet fournit 12 profils diffrents de dveloppement de logiciels (allant de l'avionique aux systmes de gestion MIS). Ces donnes vous aident commencer, mais vous ne pouvez pas leur accorder le mme niveau de confiance qu' vos propres donnes. Vous pouvez aussi ajuster le paramtre Monte en charge de l'quipe pour montrer comment vous rpartissez le personnel dans les quipes. Le profil "Lent" indique que vous prvoyez le nombre minimum de salaris au dbut du projet, le nombre maximum au milieu du projet et nouveau le nombre minimum la fin. D'autre part, "Extrmement rapide" indique que vous prvoyez d'utiliser la majeure partie de votre quipe du dbut jusqu' la fin du projet. Le calibrage Facteurs de productivit fournit 21 facteurs d'affinage diffrents dans des domaines comme le produit, le processus et l'quipe. Ce paramtre trs subjectif peut exposer votre estimation une part importante de spculation. Le calibrage Donnes historiques reprsente la cible souhaite. En entrant des projets prcdents, vous pouvez slectionner ceux qui refltent le mieux votre nouveau projet en termes de processus, de type de produit et de composition de l'quipe. Cette technique met en avant l'intrt du modle Putnam car elle supprime toute subjectivit du processus d'estimation et facilite le processus de justification. Avance vous permet d'affiner le paramtre de productivit ou le profil de dveloppement et le paramtre Manpower Buildup Parameter ou le profil de l'effectif. Nous n'en discuterons pas dans ce tutoriel. Consultez le fichier d'aide pour de plus amples informations.
27
28
29
Joe est chef de projet dans l'entreprise ABC Software Corp. Le groupe Marketing d'ABC tient profiter d'une brche dans le march en commercialisant une nouvelle version de son produit SmartApp 2.0 dans 9 mois. SmartApp 2.0 sera une mise niveau majeure de son prdcesseur avec, entre autres, une nouvelle interface utilisateur. Joe a t charg de dterminer la faisabilit du projet dans le temps imparti (9 mois). Sa premire tche consiste tablir une estimation initiale base sur des donnes gnriques de l'industrie. Joe estime que la taille de SmartApp 2.0 sera d'environ 65 000 LOC (lignes de code), car le projet sera approximativement un tiers plus grand que SmartApp 1.0 qui avait 43 500 LOC. Il utilise l'expert Estimation de CaliberRM ESTIMATE Professional pour gnrer cette estimation initiale.
30
Attribut Nom du projet Type de projet Sous-type de projet Phase en cours du projet Date de dbut de la phase Contraintes et priorits Type d'estimation Mesure de la taille Taille attendue SmartAppSize
Exemple de valeur
Systmes packags et dploys Systmes de gestion Fin Spcification dtaille des exigences (PDR) 02.04.01 Nous utiliserons les contraintes et priorits plus tard ; laissez ces champs tels quels pour le moment. Par la taille Lignes de code 65 000 Remarque : Cet exemple de projet suppose que vous spcifiez votre primtre initial "par analogie" (c'est--dire que vous avez une ide gnrale de la taille en comparant ce projet des projets prcdents).
Langage de programmation
C++
Si vous utilisez l'expert pour effectuer cette estimation base sur la taille, vous devez obtenir un cran similaire la Figure 13.
31
Joe rvise son estimation initiale. L'chancier nominal gnr suggre que SmartApp 2.0 peut tre dvelopp en 12 mois. Comme cette estimation est base sur des donnes gnriques de l'industrie et suppose des priorits gales pour la taille de l'quipe, l'chancier et le cot, Joe est encourag. Il sait qu'il dispose d'une quipe de dveloppement chevronne et que la direction est prte fournir des ressources supplmentaires pour respecter le planning de 9 mois. Mais avant de s'adresser la direction, il doit affiner cette estimation pour qu'elle corresponde mieux au projet SmartApp 2.0 et l'environnement d'ABC Software.
32
Par exemple, si vous pouvez diviser votre systme en plusieurs composants, estimez chaque composant sparment en utilisant la mthode d'estimation de la taille la mieux adapte chaque composant. Scnario : Rglage du primtre du projet
Comme l'quipe du projet a rcemment termin la spcification des exigences, y compris un storyboard dtaill de l'IU, Joe dcide que sa prochaine mission consiste faire une estimation plus prcise de la taille. SmartApp 2.0 sera une application client-serveur classique 2 niveaux. Joe utilise la mthode de dimensionnement par composant de CaliberRM ESTIMATE Professional, en sparant l'application en deux composants. Comme la base de donnes back-end est bien connue, Joe peut baser cette partie de l'estimation sur les lignes de code (LOC). Pour le front-end, Joe utilise les composants GUI comme mesure de la taille base sur la spcification des exigences. Le rsultat est une valeur LOC infrieure qui reflte avec plus de prcision la taille du projet.
Dans notre exemple de projet, slectionnez "SmartAppSize" dans le Navigateur de projet, puis slectionnez Primtre | Ajouter un enfant (Composant). Composant. Entrez le nom du premier composant (voir tableau cidessous), puis cliquez sur "OK". Le nom du composant est affich en tant qu'"enfant" du projet dans la zone Navigateur de projet de la vue par dfaut. Pour spcifier les donnes dtailles de primtre pour le composant, double-cliquez sur le nom du composant dans le Navigateur de projet. Entrez les informations conformment au tableau ci-dessous. Dfinissez les deux composants suivants :
Valeurs de taille Langage de programmation : C++ LOC min : 30,000 LOC attendues : 35,000 LOC lev : 40 000 40,000 Langage de programmation : C++ Botes de dialogue : 3, 7, 4, 1 Fentres : 10, 6, 10 Rapports/Sorties : 2, 1, 1 Fichiers de donnes : 4, 6 Interfaces externes : 2, 1, 1
Composant UI
Composants GUI
33
Quand vous revenez la fentre Rsum, vous voyez que l'estimation du Primtre (Lignes de code) est infrieure (ce qui doit tre une reprsentation plus prcise de la taille du projet) et que l'cart type (mesure de la variabilit ou de la prcision de l'estimation) est pass de 18 8 %. Comme nous l'avons dj dit, c'est cette variabilit qui dtermine la variance des rsultats possibles du diagramme de dispersion pour l'chancier et l'effort. Vous pourrez par la suite dtailler ces parties pour effectuer des compromis. En gnral, une bonne mthode consiste diviser votre travail en parties qui reprsentent au maximum 5 % du travail total ncessaire pour raliser une tape donne ou n'excdant pas la taille d'un composant architectural spcifique. L'objectif consiste vous confrer un meilleur contrle sur votre projet et vous donner des options de compromis ou degrs de libert. Revenez la bote de dialogue Contraintes et priorits, modifiez les donnes, essayez d'inclure et d'exclure des tches, observez les rapports de probabilits, en bref plongez dans l'univers incertain de la planification et de l'estimation des projets.
34
Rsum - Astuces
Consultez le fichier d'aide de CaliberRM ESTIMATE Professional
et, en particulier, le chapitre sur l'estimation des logiciels tir de l'ouvrage de Steve McConnell intitul "Rapid Development: Taming Wild Software Schedules", Microsoft Press, 1996. Prenez le temps de lire ce chapitre avant d'utiliser l'outil CaliberRM ESTIMATE Professional. Utilisez toujours des outils de modlisation statistique comme CaliberRM ESTIMATE Professional pour raliser vos estimations. Utilisez aussi des outils de planification tels que Microsoft Project, Scitor Project Scheduler 7, Primavera, Artemus, Timeline, etc. Obtenez autant de perspectives que possible du projet que vous essayez de planifier. Demandez une spcification crite. Ralisez une estimation aussi fine que possible. Demandez toutes les donnes ncessaires l'quipe de dveloppement ; tout le monde saura ainsi comment l'estimation a t ralise et sera l'aise avec le risque inhrent aux cibles slectionnes. Commencez collecter des donnes sur des projets prcdents : dure, mois-homme d'effort, dfauts et taille (lignes de code/points de fonctions/classes). Documentez votre processus d'estimation et vos estimations de projet. Enregistrez vos estimations dans vos systmes de gestion de la configuration sous forme de produits de travail. N'hsitez pas nous appeler pour nous faire part de vos dfis, succs et checs. Nous ne considrons pas CaliberRM ESTIMATE Professional comme une mthode infaillible mais comme un outil trs utile. Envoyez-nous vos commentaires l'adresse support@borland.com.
35
Mthodologie Putnam
Cette mthodologie, dveloppe par Lawrence H. Putnam au dbut des annes 1970, a t introduite dans le commerce en 1978. Continuellement affine depuis sa cration, elle est dcrite dans un ouvrage que son crateur a co-crit avec Ware Myers, "Measures for Excellence" (Yourdon Press, 1992). La mthodologie Putnam stipule que les projets logiciels efficaces suivent des modles bien dfinis qui peuvent tre modliss avec un ensemble d'quations exponentielles. Ces quations forment l'architecture de l'approche de CaliberRM ESTIMATE Professional pour la cration des estimations de cot, d'chancier, d'effectif maximal et de nombre de dfauts.
COCOMO II
COCOMO II est la continuation du travail commenc par Barry W. Boehm au dbut des annes 1970 et dcrit dans son ouvrage "Software Engineering Economics" (Prentice-Hall, 1981). Depuis 1981, le modle COCOMO a t perfectionn et adapt d'autres projets que ceux du ministre amricain de la dfense pour lequel il a t conu. Le modle COCOMO II actuel permet la cration d'estimations pour presque tous les types de projets en spcifiant un ensemble de facteurs de cot. CaliberRM ESTIMATE Professional utilise le modle COCOMO II en complment de la mthodologie Putnam quand les estimations sont calibres l'aide de facteurs de productivit. Une baseline de productivit est tablie en utilisant la valeur du type du projet ; le facteur de productivit est ensuite ajust d'aprs la productivit calcule par COCOMO II. Pour de plus amples informations sur COCOMO II, voir http://sunset.usc.edu/COCOMOII/Cocomo.html
36
37