Td corrigé estimation des charges - UFR SEGMI pdf

estimation des charges - UFR SEGMI

CALCUL DES CHARGES. INTRODUCTION .... les différents sous-ensembles résultant d'un découpage temporel sont liés par une relation de proportionnalité. basées sur .... la complexité du déploiement ( ex : nombre de fichiers à migrer,..).




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 (