Cours gestion de projet partie 5 Évaluation des charges Alain Lopes IUT ORSAY année 2005-2006
Evaluation des charges Consiste à préciser à priori le temps nécessaire à la réalisation d’un projet. Sous cet angle, un projet est vu comme en ensemble de tâches devant être réalisées Evaluer les charges d’un projet consiste donc à préciser le temps nécessaire à la réalisation de chacune des tâches qui le compose L’étape préalable à cette évaluation consiste à identifier chacune des tâches qui composent le projet. gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Evaluation des charges L’évaluation des charges d’un projet est un art périlleux. Il est irréaliste de penser pouvoir estimer très en avance la charge exacte que représente un projet : Ceci n’enlève rien au fait qu’il faille estimer les charges ne serait-ce que pour : se fixer des limites : « les programmes sont comme les gaz parfaits, ils prennent la place qu’on leur donne » - Parkinson. prévoir les moyens nécessaires le plus tôt possible, organiser le projet. gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Evaluation des charges La précision des estimations s’améliore avec le temps : plus on avance dans la réalisation du projet et plus il est facile de connaître le temps nécessaire à sa réalisation : le réalisme de l’estimation est proportionnel à la précision des fonctions à développer Une estimation est d’autant plus réaliste qu’elle peut être faite : En disposant d’une définition précise des tâches à réaliser En disposant d’éléments significatifs pour lesquels on dispose de standards (modèles de données, modèles de traitements, écrans, états,…) En connaissant les contraintes (niveau des intervenants, exigences des utilisateurs, environnement matériel,…) En appliquant une méthode (démarche) d’estimation. gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Evaluation des charges L’estimation initiale est donc prévisionnelle même si le planning qui en découle peut être «contractuel ». Ce constat fait toute la difficulté d’un projet réaliser au forfait : Exemple : engagement de réaliser le projet dans les délais (et donc pour les coûts) estimés en amont de sa réalisation. gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Evaluation des charges : Les pièges Causes fréquentes se sous-estimation : Désir de plaire : ne pas savoir dire non Besoin de gagner Optimisme Expérience limitée des évaluateurs Oubli d’estimer : les utilitaires, la documentation, l’accompagnement au changement… Mésestimation des efforts de mise au point, de coordination, de communication Absence de méthode de développement et de démarche de projet gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Evaluation des charges : Les pièges Autres causes : erreur dans les délais Déséquilibre des ressources affectées sur chaque charge Certains temps nécessaires sont incompressibles La communication et la coordination prennent du temps. gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Evaluation des charges : Les pièges Se méfier de la notion de « mois/homme » : une charge de 100 jours réalisable en 10 jours par 10 personnes ne sera pas réalisable en 1 jours avec 100 personnes ni en 100 mois avec 1 personne. Selon Brooks : « L’homme-mois comme unité pour mesurer la taille d’un travail est un mythe dangereux et trompeur. Il implique que les hommes et les mois sont interchangeables. Les hommes et les mois sont des biens interchangeables seulement lorsqu’une tâche peut être partitionnée entre plusieurs employés sans qu’il faille une communication entre eux ». Une erreur très répandue consiste lorsque le projet dérape, à renforcer massivement l’équipe. Ces renforts peuvent perturber encore un peu plus le projet : Le planning doit être « retaillé » Une partie du travail est refaite Le temps de coordination, de communication et de formation augmente gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Estimation des coûts du logiciel Condition nécessaire à l’aboutissement d’un projet : Prévoir les ressources requises durant le processus de développement Il faut Etablir le budget l'un projet Fournir un moyen de contrôle des coûts de projets Suivre l'évolution par rapport au budget en comparant les coûts planifiés et les coûts estimés Etablir une base de données de coûts de projets pour les estimations futures gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Composants du coût d’un logiciel Coût du matériel Coût des logiciels de base Coût de la formation et des voyages Coût de l'effort Salaires des ingénieurs impliqués dans le projet Coût des bâtiments, chauffage, éclairage Coût des communications et des réseaux Coût des facilités partagées Coût des pensions, assurances maladies, … gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Coût et prix Objectif de l'estimation du coût l'un logiciel : découvrir combien va coûter le développement de ce logiciel Il n'y a pas de relation simple entre le coût du logiciel et le prix facturé au client qui achète ce logiciel Facteurs affectant le prix Opportunité du marché Estimation incertaine du coût Termes du contrat Changement rapide des besoins Situation financière du fournisseur gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Productivité des développeurs Définition : Mesure de la vitesse à laquelle les développeurs produisent des programmes et la documentation associée Objectif : Mesurer le nombre de fonctionnalités utiles produites par unité de temps gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Métriques de la productivité Métriques associées à la taille du produit : Nombre de lignes de code Nombre l'instructions … Métriques associées à la fonctionnalité du logiciel : Points de fonctions gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Lignes de code Qu'est-ce qu'une ligne de code? Quels programmes doivent être considérés comme faisant partie du système? L'hypothèse selon laquelle il existe une relation linéaire entre le volume de la documentation et la taille du système Plus le langage est de bas niveau, plus le programmeur utilisant ce langage est productif Plus le style est verbeux, plus la productivité est élevée gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Les points de fonction Mesure basée sur une combinaison des caractéristiques du logiciel Les entrées/sorties externes Les interactions utilisateurs les interfaces externes Les fichiers utilisés par le logiciel Une pondération est associée à chacun de ces éléments gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Métrique des points de fonction (1) Le nombre de points de fonctions (FP) peut être utilisé pour estimer le nombre de lignes de code (LOC) en se basant sur le nombre moyen de lignes de code par Point de Fonction (FP) associé à un langage donné La métrique des points de fonction est très subjective et dépend des pondérations qui ne peuvent pas être calculées automatiquement gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Métrique des points de fonction (2) On compte les objets de chacune des catégories La métrique des points de fonctions est obtenue en faisant la somme de chacun des nombres d'objets (de chaque catégorie) multiplié par la pondération associée à la catégorie correspondante Possibilité de prendre en compte la complexité du logiciel dans le calcul du nombre de points de fonctions (FP) gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Facteurs affectant la productivité Expérience dans le domaine Qualité du processus Taille du projet Assistance technique Environnement de travail gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Qualité et productivité Les métriques basées sur le volume par unité de temps (Nombre de lignes de code, par exemple) sont imparfaites puisqu'elles ne prennent pas en compte la qualité En général, la productivité peut être améliorée au détriment de la qualité Les liens entre les métriques de productivité et les métriques de qualité ne sont pas faciles à déterminer gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Techniques d’estimation Jugement d'experts Loi de Parkinson Estimation par analogie Affectation de prix pour gagner Estimation descendante Estimation ascendante Méthode des « 3 points » Méthode proportionnelle dynamique Modélisation algorithmique du coût gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Jugement d'experts Principe : un ou plusieurs experts à la fois dans le domaine l'application et en processus de développement utilisent leur expertise pour faire des prévisions de coût. Le processus est répété jusqu'à ce qu'un consensus soit atteint Avantages : méthode relativement bon marché estimations précises si les experts ont de l'expérience dans des logiciels similaires Inconvénients : estimations non précises s 'il y a assez peu l'expertise gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Loi de Parkinson Principe : le projet utilise toutes les ressources disponibles Avantages : pas l'excès dans les dépenses Inconvénients : projets souvent non achevés Et parfois cela fonctionne !!! gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Estimation par analogie Principe : Le coût du projet est calculé en le comparant à d'autres projets similaires dans le même domaine d'application Avantages : Estimation précises si des données concernant des projets similaires sont disponibles Inconvénients : Impossible si des projets similaires n'étaient pas réalisés Nécessite la la maintenance systématique l'une base de données de coût de projets gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Estimation par analogie Capitalisation : données sur l’activité Archives des bilans des projets précédents Aide à l’estimation par analogie gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Affectation de prix pour gagner Principe : Le projet coûte ce que le client est prêt à payer Avantages : Le contrat sera gagné Inconvénients : La probabilité que le client obtienne le logiciel qu 'il désire est très faible. Les coûts ne reflètent pas le travail requis. gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Estimation ascendante Principe : commencer au niveau le plus bas du logiciel estimer le coût de chaque composant individuellement ces coûts sont additionnés pour obtenir une estimation du coût global du logiciel Avantages : méthode précise si la conception a été effectuée avec suffisamment de détails Inconvénients : possibilité de sous-estimer les coûts des activités au niveau global du logiciel : intégration, documentation, ... gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Estimation descendante Principe : partir du niveau global du logiciel jusqu'au niveau fonctionnel Avantages prendre en compte des coûts globaux comme celui de l'intégration, de la gestion de configuration, de la documentation Inconvénients : possibilité de sous-estimer le coût l'apporter des solutions à des problèmes techniques de bas niveau gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Méthode dite « des 3 points » pour estimation ascendante et descendantes Principe On ne peut pas connaître la durée mais les durées minimum et maximum probables. On applique la formule : TO + 4 TM + TP Temps estimé = 6 TO = temps optimiste (réalisation dans conditions idéales, sans obstacles) TM = temps moyen estimé (travail dans conditions normales) TP = temps pessimiste (réalisation dans les pires conditions) Avantages Précise la durée de chaque tâche Inconvénients : Rallonge le temps d’estimation gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Méthode proportionnelle dynamique Principe : On est en cours de déroulement du projet On a observé le temps consommé aux étapes en amont On veut estimer la charge des autres étapes Avantages : méthode rapide et facile à mettre en œuvre Permet de réévaluer rapidement la charge d’un projet Inconvénients : On ne peut pas l’employer comme première méthode Imprécise si les étapes ne sont pas proportionnelles gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Méthode proportionnelle dynamique gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Modélisation algorithmique du coût Le coût est estimé comme une fonction mathématique des attributs du logiciel, du projet et du processus de développement. Les valeurs de ces attributs sont estimées par des gérants des projets La fonction est déterminée par une étude empirique de données concernant le coût du logiciel Attributs : L'attribut le plus communément utilisé dans l'estimation du coût du logiciel est la taille du produit exprimée en nombre de lignes de code La plupart des modèles sont similaires mais basés sur différents types l'attributs : taille, effort, temps de développement... gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Structure des modèles algorithmiques Modèles dérivés sur la base l'analyse économétrique de données collectées sur des projets logiciels passés Forme générale : E=A+B (EV)C avec : E : effort en hommes-mois EV : variable l'estimation (nombre de milliers de lignes de code ou KLOC, nombre de points de fonctions ou FP,...) A, B, C : constantes estimées empiriquement gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Exemple de modèles algorithmiques E=5.2 (KLOC)0.91 (Walston-Felix) E=5.5+0.73 (KLOC)1.16 (Bailey-Basili) E=2.4 (KLOC)1.05 (Boehm COCOMO simple) E=5.288 (KLOC)1.047 (Doty si KLOC >9) E= -13.39+0.0545 FP (Albrecht-Gaffney) E=60.62x7.728x10-8xFP3 (Kemerer) E=585.7+15.12 FP (Matson-Barnett-Mellichamp) gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Le modèle COCOMO (Construtive COst MOdel) Modèle d’estimation des coûts Développé à la firme TRW (organisme du DoD, USA) par B.W. Boehm et son équipe (Boehm B.W., « Software Engineering Economics », Prentice-Hall, Englewood-Cliffs, 1981) Basé sur une base de données de plus de 60 projets différents gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Le modèle COCOMO Bonne gestion du projet logiciel Stabilité des besoins issus de la phase de définition des besoins Un homme-mois (HM) =152 heures de travail par mois Les estimations ne tiennent pas compte de certains efforts comme la formation des utilisateurs, l'installation du logiciel et la conversion gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Le modèle COCOMO de base Bien adapté pour des estimations rapides du coût dès les premières phases du cycle de vie du logiciel Applicable aux projets logiciels de petite ou moyenne taille développés en interne au sein des organisations, l'aide l'environnements de développement « familier » N'inclut pas les facteurs liés aux contraintes matérielles, aux attributs du personnel, à l'utilisation l'outils et techniques modernes de génie logiciel gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Trois modes COCOMO Organique (petit projet < 50 000 lignes de code) Petites équipes Applications maîtrisées et problèmes bien compris Pas de besoins non fonctionnels difficiles Semi-détaché (projet moyen <entre 50 000 et 300 000 lignes de code ) Expérience variée des membres de l'équipe de projet Possibilité l'avoir des contraintes non fonctionnelles importantes Type l'application non maîtrisée par l'organisation Embarqué (grand projet > 300 000 lignes de code) Contraintes serrées L'équipe de projet a, en général, peu l'expérience de l'application Problèmes complexes gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Notations COCOMO HM : charge de développement exprimée en hommes-mois TDEV : temps de développement exprimé en mois KLOC : nombre de milliers de lignes de code N : nombre de personnes requises gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Calcul de l’effort E=A.(KLOC)B où A, B sont deux constantes à estimer Mode organique A=2.4 B=1.05 Mode semi-détaché A=3 B=1.12 Mode embarqué A=3.6 B=1.20 gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Calcul du temps de développement Mode organique TDEV=2.5(HM)0.38 Mode semi-détaché TDEV=2.5(HM)0.35 Mode embarqué TDEV=2.5(KLOC)0.32 Personnel requis N=HM/TDEV Remarques : Le temps de développement est une fonction de l'effort global de développement et non pas de la taille de l'équipe La prise en compte de la disponibilité du personnel par le modèle n'est pas claire gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Quelle méthode d'estimation choisir ? Chaque méthode a ses avantages et ses inconvénients L'estimation du coût du projet doit se baser sur plusieurs méthodes Le fait que les résultats fournis par les différentes méthodes sont sensiblement différents montre qu'il y a un manque d'information. Dans ce cas, des actions doivent être entreprises pour obtenir plus d'information permettant l'améliorer la précision des estimations L'affectation du coût pour gagner est parfois la seule méthode possible gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI
Alain Lopes -IUT ORSAY - PARIS XI Conclusion Estimer le coût du projet pour le fournisseur puis décider du prix facturé au client L'estimation algorithmique du coût est difficile puisqu'elle repose sur des estimations des attributs du logiciel final Importance des modèles l'estimation du coût du logiciel pour le management : moyen de comparaison entre plusieurs options de développement Le temps requis pour développer un projet n'est pas simplement proportionnel à la taille de l'équipe de projet Chaque organisation doit déterminer ses propres attributs et ses propres multiplicateurs en fonction de ses spécificités, ses priorités et ses contraintes gestion projet 2 - année 2005-2006 Alain Lopes -IUT ORSAY - PARIS XI