Td corrigé estimation des charges - UFR SEGMI pdf

estimation des charges - UFR SEGMI

Le Groupe du Rapporteur sur la Question 11-1/2 est le principal responsable du sujet au sein de l'UIT?D. ...... sessions conduits par le Groupe de planification intersessions (GPI pour les exercices de planification) et le Groupe sur les réglementations et les procédures (GRP) chargé d'étudier les questions de réglementation ...




part of the document



CALCUL DES CHARGES


INTRODUCTION :

( CHARGE ET DUREE :

( la charge = quantité de travail nécessaire
( cela permet d’estimer les coûts
( indiquée en : jours/personne ; mois/personne ; année/personne
la base : 1 mois # 20 jours

( la taille du projet :
_ à partir de l’estimation des charges
_ indication :
_ petit projet ( = 30 mois/personne
_ grand projet ( >= 100 mois/personne

( la durée :
_ indication pour les délais
_ la durée est fonction :
du nombre de personne ( notion de pointe de travail
de la difficulté du projet

( LES BESOINS D’ESTIMATION :

( les niveaux :

_ à un Niveau correspond un objectif avec son degré de précision


Niveau :
Cas : Projet Ex : projet de gestion des commandes( GC )
Etape
Ex : étude préalable du projet GC Phase Ex : phase « observation »
de l’étude préalable du projet GCTâche Ex : spécification de la fonction « achat »

( niveau «  projet » :

_ estimation de la charge globale
_ but : avoir une enveloppe budgétaire
durée prévisionnelle
« poids » du projet
estimation de sa rentabilité

( niveau « étape » :

_ estimation de la charge spécifique à l’étape
_ but : ajuster le découpage ( division en sous-projets
choix de sous-traitance : évaluation de l’appel d’offre
prévision des délais et ressources

( niveau « phase » :

_ but : avoir une planification précise
suivi de projet
affectation des ressources

( niveau « tâche » :
_ estimation la plus fine possible
_ rattaché à une personne et une durée


LES METHODES EMPIRIQUES :

( METHODE DE PARKINSON :

_ 1957
_ loi basée basé sur le principe :
le travail est fonction du temps disponible des personnes ,
en l’absence de précision
_ exemple pris : l’administration

( METHODE DU MARCHE :

_ principe :
la charge correspond au prix à proposer , pour remporter l’appel d’offre

_ exemples :
_ appel d’offres publics longtemps lié au « mieux-disant » sur le prix
_ révision récente

_ nota :
hypothèse :
ultérieurement , lien de dépendance client-fournisseur
( possibilité de renégocier le contrat
LES METHODES PAR DEDUCTION :

( basées sur le « jugement d’expert » :
_ ex : méthode Delphi

( basées sur la « répartition proportionnelle »
_ hypothèse :
les différents sous-ensembles résultant d’un découpage temporel sont liés par une relation de proportionnalité

( basées sur un « modèle » de type économétrique :


























( l’association des méthodes :
_ ces méthodes peuvent être associées
_ ex :
projet de développement
( modèle économétrique ( nombre de programmes et types
( jugement d’expert ( durée moyenne des programmes par type

( METHODE DELPHI :

_ 1948
( le niveau de l’estimation : le Projet

( principe :
_ analogie avec des projets équivalents
_ ex : SSII spécialiste de Banque _ réutilisation de l’expérience des équipes projet
( réajustement si petite banque sans difficulté réseau


( démarche :
_ avis auprès d’un groupe d’experts
_ estimation par chaque expert
_ tous les points de vue sont publiés et anonymes
_ correction par chaque expert de son estimation initiale
_ nouvelle estimation par chaque expert et justificatif de son jugement
_ proposition définitive de l’expert avec possibilité de révision de son jugement

( schéma :




























( intérêt :
_ références à la pratique des projets
_ confrontation collective des estimations

( limite :
_ estimation valable sur des thèmes réutilisables
_ disposer d’experts ou de projets en nombre suffisant comme référence
_ contrainte : en projets SI ( souvent projets à thèmes novateurs

( exemples :
_ en projets d’Administration
( comparaison sur les projets plus facile :
possibilité de joindre des administrations équivalentes ( coopération entre corps de métier )
( cas : projet état civil d’une Mairie ( 2002 )

( LA METHODE DE REPARTITION PROPORTIONNELLE :

( le niveau de l’estimation : l’étape

( 3 modalités :
( à partir de l’estimation de la charge globale du projet
( répartition descendante
( à partir de l’évaluation d’une des étapes
( ex : par une autre méthode )
( déduire la charge des autres étapes
( utilisation ascendante )
( au cours du projet, après observation du temps consommé sur les étapes à l’amont
( ajustement de l’estimation des étapes à l’aval
( utilisation dynamique )

( emploi de Ratios :
_ cas : ratios constatés sur d’autres projets

_ ordre de grandeur

Etape Ratio
Etude préalable10% du total projet ( hors mise en œuvre )Etude détaillée20-30% total projetEtude technique5-15% de charge réalisationRéalisation # 2 fois la charge d’étude détaillée
( # 40-60% du total projet )
( cas de l’étude préalable :

_ 3 phases : Observation _ Conception/organisation _ Appréciation
_ la phase « observation » :
si N = nombre d’interlocuteurs à enquêter
Pi = poids affecté à chaque interlocuteur ( de 0,5 à 3 jours )
alors :
la charge de la phase « observation » = Somme ( Pi ) pour i = 1 à N

_ les 2 autres phases = Charges déduites de la phase « observation »

_ ordre de grandeur :
phase Pourcentage / charge d’étude préalable
Observation 30-40%Conception/organisation50-60%Appréciation 10%

( cas de l’étude détaillée:

_ 2 facteurs de variation : la couverture d’étude _ la maille d’étude
_ la couverture d’étude :
_ nombre de fonctionnalités
_ réutilisabilité des procédures
ex : petits projets : peu de variation
( étude préalable # étude détaillée
ex : en secteur Banque :
2 approches sur les Produits 
( 1 produit commun ( ex : compte ; pel ; livret )
( chaque produit est spécifique ( ex : compte , compte joint ,..)

_ la maille d’étude : mesure le degré de précision de la description
ex : modèle conceptuel de données : plus ou moins complet
ex : traitements : plus ou moins finalisés
ex : dossier d’étude détaillée :
algorithme précis
ou cahier des charges succinct

( cas de l’étude technique:

_ les causes de variation :
_ selon le volume à réaliser
_ selon le degré de difficulté ( nouveautés techniques )
ex : projets internet de 1ére génération


( cas de la réalisation :

_ lien avec la charge de l’étude détaillée
_ ratio # 2 x Charge étude détaillée


( cas des charges complémentaires :

tâche Ratio
Encadrement projet :
_ à l’étape « réalisation »
_ aux autres étapes
20% charge réalisation
10% charge de l’étapeRecette 20% charge réalisationDocumentation utilisateurs5% charge de réalisation
_ la charge « encadrement » :
_ la plus élevée à l’étape de réalisation
( montée en charge , remontée problèmes , ..)

_ la charge « recette » :
_ variable selon la taille du logiciel ( balayage des branches du programme )
+ niveau de qualité
_ les tâches associent le client et le fournisseur :
jeux d’essai _ environnement recette _ exécution

_ la charge « documentation utilisateurs »
_ variable selon la taille logiciel
+ niveau de qualité ( manuel , aide en ligne ..)

( cas de la « mise en œuvre » :

_ difficulté d’évaluer le passage de l’ancien au nouveau système
_ variable selon
la complexité du déploiement ( ex : nombre de fichiers à migrer,..)
la taille du logiciel
le scénario : progressif ou non ( ex : passage euro : progressif )

_ ratio estimatif : # 40% Charge de réalisation
ex : Banque : fusion de plusieurs SI

_ cas des grands projets :
la phase de mise en œuvre = 1 sous-projet à part entière

( limites de la méthode :

_ basée sur des estimations
_ ordres de grandeur
_ variabilité face à la diversité des situations


( LE MODELE COCOMO :

_ déf : modèle de construction des coûts ( constructive cost model )
_ 1981 _ par Boehm

( le niveau de l’estimation : l’étape de réalisation

( hypothèses :

_ toujours le même effort pour écrire un même nombre de lignes de programme,
quel que soit le langage de 3éme génération
_ l’estimation de la taille du logiciel à développer > l’estimation du travail nécessaire

base de calcul pour le modèle :

_ coefficient de corrélation : taille du logiciel – charge consommée
( # 100 projets observés )
_ l’unité d’œuvre = l’instruction source ( ligne de code )


( résultats :

_ la Charge de réalisation = a x (kisl)**b en mois/personne
_ le Délai normal = c x ( Charge réalisation ) **d en mois
_ la taille normale de l’équipe = Charge de réalisation / Délai normal

avec :
kisl = nombre de milliers d’instructions sources livrées
a,b,c,d = paramètres à valeurs différentes selon la catégorie du projet


( résultats par type de projet :

Type projetCharge réalisation (mois/personne )Délai ( mois)SIMPLE
= 300.000 instructions +
forte équipe
C = 3,6 x ( kisl ) **1,2

D = 2,5 x C**0,32

( exemple:
projet de logiciel estimé à 40.000 instructions
==> charge de réalisation = 2,4 x ( 40 ) **1,05
# 116 mois/personne
délai normal = 2,5 x (116)**0,38
# 12 mois
==> taille normale de l’équipe = charge réalisation/délai normal
= 116/12 # 9 personnes

utilisation de « facteurs correcteurs » :

_ les « facteurs correcteurs » = coefficients de pondération

_ constat :
les valeurs du modèle sont biaisées ( statistiques sur les projets d’une même société )

_ la répartition des facteurs correcteurs :

LOGICIEL :
Fiabilité ( exigence de régularité )
ex : logiciel de contrôle aérien
Base de données
( ratio volume en octets/taille du logiciel en lignes programme
==> faible si 100
Complexité ( algorithmes à traiter )
Temps d’exècution
ex : en contrôle aérien

MATERIEL :
Taille mémoire ( optimisation ou non )
Stabilité de l’environnement ( fréquence des versions de logiciel )
Disponibilité de la machine de test

PERSONNEL :
Compétence des concepteurs et développeurs
Expérience du langage et de l’environnement technique

PROJET :
Utilisation d’une méthode
Utilisation d’un AGL
Contrainte de délai ( par rapport au « délai normal » )

_ pour chaque facteur correcteur :
==> attribution de valeurs dans un intervalle spécifique = estimation de 1 à 1,7
==> issues de l’analyse statistique des projets de référence


( récapitulatif des étapes du modèle cocomo :

_ estimation du nombre d’instructions source
_ calcul de la charge dite « brute »
_ sélection des facteurs correcteurs
_ application des facteurs correcteurs à la charge brute ==> charge dite « nette »
_ évaluation du délai normal
( évolution du modèle :

_ cocomo II ( 1997)
_ affinement des paramétres de contexte
_ inclusion des projets dès le stade de l’analyse


( limites du modèle cocomo :

_ ce modèle = démarche statistique
inconvénient : avoir une corrélation et non pas une mise en relation des différents causes
_ faible prise en compte de l’évolution des techniques
==> le nombre d’instructions source = variable selon l’AGL
_ fort poids des facteurs correcteurs : de 1 à 1,7

( nota : site de réflexion sur le modéle
http://sunset.usc.edu/COCOMOII

( LE MODELE D’EVALUATION ANALYTIQUE:


( le niveau de l’estimation : l’étape de réalisation

( domaine :
_ projets de réalisation
ex : usage en SSII pour évaluer les charges de réalisation

( démarche :

_ établir une typologie par nature des programmes à réaliser
= stable
_ établir un degré de difficulté ( en jours/personne )
= variable selon l’environnement et l’équipe de développement

Type : transaction
Facile ( j/personne)Moyen (j/personne)Difficile ( j/personne)menu0,250,51consultation12,54Mise à jour1,535Edition en temps réel124
Type : programmes par lots ( batch )
Facile ( j/personne)Moyen (j/personne)Difficile ( j/personne)Extraction 0,511,5Mise à jour235Edition 1,52,54

( calcul de la Charge de réalisation :

Charge réalisation =
( ( nombre programmes/type * degré de difficulté )

Nota : inclus
jeux tests
tests programmes

Charge totale = Charge de réalisation
+ tests enchaînement ( # 10% charge réalisation )
+ encadrement ( # 20% charge réalisation )

( détermination du Délai :

_ application de règles issues de l’organisation :

( si la taille du groupe augmente :
augmentation de la charge de coordination et de la division du travail
augmentation des risques d’incohérence

( un encadrement direct doit être < 10 membres du projet
dans la pratique : encadrement direct de 5-6 membres

_ estimation : pour des projets de 3 à 30 mois/personne
Délai # 2,7 ( Charge en mois/personne ) **1/3

( exemple :
composants d’une application

complexitéfacilemoyendifficile totaltype composantnombrepoidschargenombrepoidschargenombrepoidscharge              écran80,252200,51012112 24segment90,54,561610220 30,5interface  0120,56  0 6sous-programme  0  0200,510 10accés base données   040,251  0 1programme60,5332,57,55315 25,5reprise données  0000199 9            total réalisation           106intégration         10%10,6encadrement         20%21,2total projet          137,8

( bilan de l’exemple :
_ Charge du projet évaluée à 138 j/personne
ou 7 mois/personne ( base : 1 mois = 20 jours ouvrés )
_ Délai # 2,7 x ( 7 ) **1/3 # 4,8 mois


( limites de la méthode :

_ évaluer le degré de difficulté
ex : difficulté fonctionnelle
_ restreinte uniquement à la réalisation
_ pour petits projets de réalisation ( = 51 DEs1 SLDFaibleFaibleMoyenne2 à 5 SLDFaibleMoyenneElevée >= 6 SLD Moyenne Elevée Elevée 
( nombre de points de fonction d’un GDI :

ComplexitéFaible Moyenne Elevée Nombre de points de fonction71015

_ b°) GDE ( Groupe de Données Externe ) :

( déf : groupe de données perçu comme logiquement liées par l’utilisateur

_ le GDE est créé et mis à jour par un autre domaine
_ le domaine d’étude fait uniquement l’appel par interrogation
_ le GDE = GDI d’un autre domaine

_ ex :
en projet SI Banque
domaine « contrat » ( appel à domaine « client »
















( composition d’un GDE
= Somme de données élémentaires ( DE )
propriétés d’une entité en modèle conceptuel (champs y compris les clés étrangères )
= un ou plusieurs sous-ensembles logiques de données ( SLD )
sous-ensembles de données élémentaires reconnaissables par l’utilisateur

( ex. GDE :
entité « client bancaire » :
DE= numéro client ;date création ;coordonnée principale
= 1 SLD
entité « particulier » :
DE= nom ;prénom ;numéro client(clé étrangère)
= 1 SLD
entité « entreprise » =intitulé ;numéro siret ;numéro client (clé étrangère)
= 1 SLD
( la complexité d’un GDE :


1 à 19 DEs20 à 50 DEs>= 51 DEs1 SLDFaibleFaibleMoyenne2 à 5 SLDFaibleMoyenneElevée >= 6 SLD Moyenne Elevée Elevée 
( nombre de points de fonction d’un GDI :

ComplexitéFaible Moyenne Elevée Nombre de points de fonction5710
_ c°) les ENTREES ( ENT ) :

( déf : une fonction élémentaire, significative pour l’utilisateur, qui permet d’introduire des données à l’intérieur d’un domaine.

_ les données =
_ données spécifiques du domaine
_ paramètres de traitement

_ le traitement = toujours mise à jour,
avec ou non lecture

( ex : écran de saisie d’un client

une ENT utilise des Groupes de Données référencées ( GDR)
_ un GDR = GDI ou GDE

( la complexité d’une ENT :

1 à 4 DEs5 à 15 DEs>= 16 DEs0 ou 1 GDRFaibleFaibleMoyenne2 GDRFaibleMoyenneElevée >= 3 GDR Moyenne Elevée Elevée 
( nombre de points de fonction d’une ENT :

ComplexitéFaible Moyenne Elevée Nombre de points de fonction346

_ d°) les SORTIES ( SOR ) :

( déf : une fonction élémentaire, significative pour l’utilisateur, qui envoie des données vers l’extérieur du domaine et qui n’effectue aucune mise à jour à l’intérieur du domaine.

( une SOR :
= génération d’un état élémentaire
= message à destination d’une autre application, avec des données calculées ou dérivées, obtenues à partir d’autres données

_ 1 SORe est composée de DE

_ 1 SOR utilise en lecture 1 ou plusieurs Groupes de Données Référencées ( GDR )
un GDR = GDI ou GDE

_ si 2 SOR ont même logique de traitement et même DE
( 1 seule SOR
ex : sortie papier + sortie écran

( ex : édition de la liste des clients

( la complexité d’une SOR :

1 à 5 DEs6 à 19 DEs>= 20 DEs0 ou 1 GDRFaibleFaibleMoyenne2 à 3 GDRFaibleMoyenneElevée >= 4 GDR Moyenne Elevée Elevée 
( nombre de points de fonction d’une SOR :

ComplexitéFaible Moyenne Elevée Nombre de points de fonction357

_ e°) les INTERROGATIONS ( INT ) :

( déf : une fonction élémentaire, qui a pour résultat l’extraction des données.

_ la demande d’interrogation peut être saisie ou provenir d’une autre application.
_ le résultat d’une INT = 1 ou plusieurs DE
_

( une INT :

_ la demande d’interrogation peut être saisie ou provenir d’une autre application.

_ 1 INT est composée de 1 ou plusieurs DE

_ 1 INT utilise en lecture 1 ou plusieurs Groupes de Données Référencées ( GDR )
un GDR = GDI ou GDE

_ si 2 INT ont même logique de traitement et même DE
( 1 seule INT

( ex : affichage des informations sur le client

( la complexité d’une INT :

1 à 5 DEs6 à 19 DEs>= 20 DEs0 ou 1 GDRFaibleFaibleMoyenne2 à 3 GDRFaibleMoyenneElevée >= 4 GDR Moyenne Elevée Elevée 
( nombre de points de fonction d’une SOR :

ComplexitéFaible Moyenne Elevée Nombre de points de fonction346

( LA DEMARCHE D’ESTIMATION :

_ en 2 étapes :
( 1ére étape : Dénombrement
( 2éme étape : Ajustement

( 1ére étape : Dénombrement

dénombrer les composants fonctionnels
indiquer leur degré de complexité
calculer le nombre de points de fonction bruts ( PFB )

==> exemple :

Entité Complexité Nombre de composantspoidsNombre de points de fonction bruts GDIFaible
Moyen
Faible 3
1
17
10
1521
10
15GDEFaible
Moyen
Faible2
2
35
7
1010
14
30ENTFaible
Moyen
Faible4
6
23
4
612
24
12SORFaible
Moyen
Faible3
44
5
712
20
0INTFaible
Moyen
Faible2
5
43
4
66
20
24PFB230

( 2éme étape : Ajustement

==> par le facteur d’ajustement = FA
= mesure les fonctionnalités techniques et ergonomiques fournies à l’utilisateur de l’application
==> les CGS = Caractéristiques générales du système
= 14 paramètres contribuant à l’évaluation des FA

N°CGS = caractéristique générale du système1Communication des données2Système distribué3Performance4Intensité d’utilisation de la configuration matérielle5Taux de transaction6Saisie interactive7Convivialité8Mise à jour en temps réel des GDI9Complexité des traitements10Réutilisation du code de l’application11Facilité de l’installation12Facilité d’exploitation13Portabilité de l’application14Facilité d’adaptation
==> attribution d’une note à chaque CGS = Degré d’influence ( DI )
comprise entre 0 et 5

==> calcul du degré d’influence total = DIT :
compris entre 0 et 70 ( = 5 * 14 )

DIT = ( DI(i) pour i = 1 à 14

==> le facteur d’ajustement :

_ il permet d’ajuster le nombre de points de fonction brut ( PFB ) :
de + ou – 35%
[ (1 – 35% = 65%) à (1 + 35% = 135) ]

FA = 0,65 + DIT/100

==> le nombre de points de fonction ajusté :

PFA = FA * PFB

( constat : sur application du facteur d’ajustement

_ parfois, certains choisissent d’évaluer la complexité globale du projet,
sans passer par l’évaluation analytique des CGS

( PASSAGE DE LA COMPLEXITE A LA CHARGE ET AU DELAI

==> la transformation du PFB ou PFA en Charge :
= variable selon l’environnement matériel et humain

_ nota : recommandation pour que l’entreprise établit ses propres coefficients

==> ordre de grandeur pour un projet classique :

étude préalable :
3 jours par point de fonction
_ 2 jours par point de fonction ( si petit projet )
_ 4 jours par point de fonction ( si grand projet )
étude détaillée :
2 jours par point de fonction
réalisation :
1 jour par point de fonction ( si langage de 4éme génération )

==> ordre de grandeur des charges pour un projet RAD :

3 heures par point de fonction ( cible raisonnable )
1h30 par point de fonction ( maximum )
_ ex : projet RAD à la division Fibres de DuPont ( 1989 )
2 heures par point de fonction

_ nota : le temps de travail des utilisateurs n’est pas intégré dans les calculs

==> ordre de grandeur des délais pour un projet RAD :

_ distinction de 3 classes de projet par Nombre de Points de Fonction
==> petit projet moyen projet > 1000 et grand projet > 3000 et 5000 points de fonction : découper le projet RAD en sous-projets

_ délais de référence par classe de projet RAD :

Projet :Petit (