Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Gestion de Projets
Bibliographie
Grard-Michel Cochard
cochard@u-picardie.fr
La dure se calcule partir de la charge lorsque l'on sait combien de personnes sont affectes au projet. Une
charge de 6 moisxhommes peut correspondre une dure de 6 mois si on ne dispose que d'une seule personne ou de
1 mois si on dispose de 6 personnes. Toutefois ce mode de calcul est relativement thorique car toutes les
personnes ne sont pas quivalentes (et n'ont pas la mme spcialit) et les tches sont en gnral interdpendantes.
Il existe un certain nombre de mthodes pour calculer la charge d'un projet. Il existe aussi
des "trucs" (malheureusement plus courants qu'on ne le croit) qui sont des agissements ni scientifiques, ni honntes :
la "mthode" de la dilatation consiste ajuster le temps de dveloppement d'un projet au temps disponible ("le
travail se dilate jusqu' remplir le temps disponible") ; la "mthode" du march consiste ajuster la charge au
la mthode Delphi
la mthode de la rpartition proportionnelle
la mthode d'valuation analytique
les mthodes Cocomo/Diebold
la mthode des points fonctionnels
Passons en revue ces diffrentes mthodes (qui peuvent, d'ailleurs, tre utilises simultanment ou en combinaison).
Mthode Delphi
Son nom vient de Delphes o la Pythie rendait ses oracles. Elle consiste faire appel des experts qui, selon
leur propre exprience, proposent confidentiellement une charge indicative. On procde alors en deux tapes :
1) Une runion des experts permet de faire la liste des propositions (sans mentionner les noms des experts).
2) Un temps de rflexion est donn aux experts qui peuvent rviser leur jugement. Une seconde runion dresse
une nouvelle liste des propositions. La moyenne de celles-ci, par exemple, donne une ide de la charge globale
du projet.
Attention, ceci ne concerne que la charge de ralisation (programmation, jeux d'essais, mise au point). Il est
convenu de rajouter aux charges ci-dessus des charges complmentaires :
Mthodes Cocomo
Cocomo signifie COnstructive COst MOdel. Cette mthode, qui ne s'applique qu' l'tape de ralisation,
suppose l'existence d'une corrlation entre la taille (en instructions source) d'un programme et la charge
consomme. Le rsultat s'exprime par la formule suivante dans le modle de base Cocomo81 :
charge (en moisxhommes) = a{KLOC}b
o a, b, sont des coefficients donns ci-dessous et KLOC reprsente le nombre, en milliers, de lignes de code (LOC
= Lines Of Code) ; en fait il s'agit du nombre d'instructions source.
Mode
Organic
2.4 1.05
3.6 1.20
Un projet est considr comme moyen si le nombre d'instructions source est compris entre 50 000 et 300 000.
Le modle intermdiaire Cocomo81 est plus labor et prend en compte des facteurs d'ajustement intgrant
les conditions de dveloppement. L'quation donnant la charge est alors :
charge (en moisxhommes) = a(EAF)(KLOC)b
o EAF (Effort Adjustment Factor), qui vaut 1 dans le modle de base, est calcul partir de 15 critres regroups
en 4 catgories : produit, ordinateur, personnel et projet. Le tableau ci-dessous donne les valeurs affectes
chaque paramtre suivant son importance. EAF est le produit de toutes ces valeurs.
Cost Driver
Description
Rating
Low
Very
Low
Nominal
High
Very
High
Extra
High
Product
RELY
0.75
0.88
1.00
1.15
1.40
DATA
Database size
0.94
1.00
1.08
1.16
CPLX
Product complexity
0.70
0.85
1.00
1.15
1.30
1.65
TIME
1.00
1.11
1.30
1.66
STOR
1.00
1.06
1.21
1.56
VIRT
0.87
1.00
1.15
1.30
TURN
0.87
1.00
1.07
1.15
ACAP
Analyst capability
1.46
1.19
1.00
0.86
0.71
AEXP
Applications experience
1.29
1.13
1.00
0.91
0.82
PCAP
Programmer capability
1.42
1.17
1.00
0.86
0.70
VEXP
1.21
1.10
1.00
0.90
LEXP
Language experience
1.14
1.07
1.00
0.95
Computer
Personnel
Project
MODP
1.24
1.10
1.00
0.91
0.82
TOOL
Software Tools
1.24
1.10
1.00
0.91
0.83
SCED
Development Schedule
1.23
1.08
1.00
1.04
1.10
3.2 1.05
2.8 1.20
Le modle Cocomo81 avanc prend en compte, comme prcdemment, la taille du programme, mais aussi des
facteurs de pondration qui diffrent suivant la phase de dveloppement. 4 phases de dveloppement sont
proposes : tude globale (RPD : requirements planning and product design), tude dtaille (DD : detailed
design), programmation (CUT : code and unit test), integration (IT : integration and test). La charge se calcule
donc phase par phase partir de la formule du Cococmo81 intermdiaire avec la pondration ci-dessous de
chaque phase :
Cost Driver
Rating
RPD DD CUT IT
nombre de
vues
<4
<8
>=8
nombre de
sections
<4
<8
>=8
<3
simple
simple
moyen
01
simple
simple
moyen
37
simple
moyen
complexe
23
simple
moyen
complexe
8 et +
moyen
complexe
complexe
4 et +
moyen
complexe
complexe
crans
rapports
Aprs avoir dnombr les objets par type et complexit, un facteur (poids de complexit) est affect chaque objet :
type/
complexit
simple
moyen
complexe
cran
rapport
composant
3GL
10
De plus, le fait de rutiliser des composants dj existants est pris en considration avec un coefficient donn par
un pourcentage : R (pourcentage d'objets rutiliss). Par ailleurs, la productivit est galement prise en compte
selon le tableau suivant.
exprience de
dveloppement
trs
basse
basse
moyenne
forte
trs
forte
performance
du produit
trs
basse
basse
moyenne
forte
trs
forte
push
13
25
50
Dans le modle Early Design CocomoII, la taille est value suivant la technique des points de fonction (voir plus
loin). Pour faciliter la transition entre Cocomo81 et CocomoII, une table de conversion entre les points de fonction
et le nombre de SLOC est fournie suivant le langage utilis :
langage
niveau
min
moyen
max
langage machine
0,10
640
langage d'assemblage
1,00
237
320
416
2,50
60
128
170
RPGII
5,50
40
58
85
C++
6,00
40
55
140
Visual C++
9,50
34
Powerbuilder
20,00
16
Excel
57,00
5,5
Cost
Driver
Counterpart
Combined
Cost
Description
PostDriver
Architecture
Cost Driver
Product
Product
reliability
RCPX
and
complexity
Description
Rating
Very Low
Low
Nominal
High
RELY
0.75
0.88
1.00
1.15
1.39
DATA
Database size
0.93
1.00
1.09
1.19
CPLX
Product complexity
0.70
0.88
1.00
1.15
1.30
1.66
RELY,
DATA,
CPLX,
DOCU
RUSE
Required reusability
0.91
1.00
1.14
1.29
1.49
DOCU
Documentation
0.95
1.00
1.06
1.13
Platform
Required
reuse
TIME
1.00
1.11
1.31
1.67
RUSE
RUSE
STOR
1.00
1.06
1.21
1.57
Platform volatility
0.87
1.00
1.15
1.30
PDIF
TIME,
STOR,
PVOL
PVOL
Platform
difficulty
PERS
Personnel
capability
ACAP,
PCAP,
PCON
PREX
Personnel
AEXP,
experience PEXP, LTEX
Personnel
ACAP
Analyst capability
1.50
1.22
1.00
0.83
0.67
PCAP
Programmer capability
1.37
1.16
1.00
0.87
0.74
PCON
Personnel continuity
1.24
1.10
1.00
0.92
0.84
AEXP
Applications experience
1.22
1.10
1.00
0.89
0.81
PEXP
Platform experience
1.25
1.12
1.00
0.88
0.81
1.22
1.10
1.00
0.91
0.84
TOOL
Software Tools
1.24
1.12
1.00
0.86
0.72
SITE
Multisite development
1.25
1.10
1.00
0.92
0.84
0.78
SCED
Development Schedule
1.29
1.10
1.00
1.00
1.00
FCIL
Facilities
TOOL, SITE
LTEX
SCED
Schedule
SCED
Project
Enfin, dernier modle propos par les concepteurs de Cocomo, le modle Post Architecture CocomoII est bas
sur l'quation suivante :
charge (en moisxhommes) = a.EAF.(KLOC)b
a, EAF (calcul avec les facteurs du tableau ci-dessus droite), KLOC ont les dfinitions donnes ci-dessus. Quant
l'exposant b, il est dfinit lui-mme par :
b = 1,01 + 0,01.(Wi)
Precedentedness
4.05
3.24
2.42
1.62
0.81
0.00
Development/Flexibility
6.07
4.86
3.64
2.43
1.21
0.00
Architecture/Risk Resolution
4.22
3.38
2.53
1.69
0.84
0.00
Team Cohesion
4.94
3.95
2.97
1.98
0.99
0.00
Process Maturity
4.54
3.64
2.73
1.82
0.91
0.00
Comme prcdemment, les informations de sortie se rfrent des GDR, composs de DE.
INT caractrise une interrogation , c'est dire une combinaison entre/sortie qui ne fait pas de mise jour de
GDI et qui met en oeuvre un processus d'extraction de donnes brutes. Il utilise GDR, donc des DE.
La complexit (faible, moyenne, leve) est dtermine par les tableaux suivants :
complexit des GDI
1 19 DE
20 50 DE
51 DE ou plus
1 SLD
faible
faible
moyenne
2 5 SLD
faible
moyenne
6 SLD ou plus
moyenne
leve
1 19 DE
20 50 DE
51 DE ou plus
1 SLD
faible
faible
moyenne
leve
2 5 SLD
faible
moyenne
leve
leve
6 SLD ou plus
moyenne
leve
leve
1 4 DE
5 15 DE
16 DE ou plus
1 5 DE
6 19 DE
20 DE ou plus
0 ou 1 GDR
faible
faible
moyenne
0 ou 1 GDR
faible
faible
moyenne
2 GDR
faible
moyenne
leve
2 3 GDR
faible
moyenne
leve
3 GDR ou plus
moyenne
leve
leve
4 GDR ou plus
moyenne
leve
leve
6 19 DE
20 DE ou plus
0 ou 1 GDR
faible
faible
moyenne
2 3 GDR
faible
moyenne
leve
4 GDR ou plus
moyenne
leve
leve
On affecte ensuite des points de fonction chaque unit d'oeuvre suivant sa complexit :
complexit
faible
moyenne
leve
10
15
10
degr d'influence
communication de donnes
systme distribu
performance
intensit d'utilisation de la
configuration matrielle
taux de transaction
saisie interactive
convivialit
facilit d'installation
facilit d'exploitation
portabilit de l'application
facilit d'adaptation
Pour terminer, il faut passer du NNPF la charge en multipliant le premier par un coefficient multiplicateur.
La mthode ne fournit pas ce coefficient (laiss la charge des SSII). Toutefois le tableau ci-dessous donne un
ordre de grandeur du coefficient de transformation :
Tests
Exercice 1
L'tape "tude pralable" d'un projet est estime 10 jours. En utilisant la mthode de la rpartition
proportionnelle, estimer les charges des diffrentes tapes du projet.
Exercice 2
Un projet de logiciel est estim 60 000 instructions source. En utilisant les mthodes Cocomo, puis la mthode
de rpartition proportionnelle, dterminer la charges des diffrentes tapes du projet.
Solution de l'exercice 1
L'tape "tude pralable" d'un projet est estime 10 jours. En utilisant la mthode de la rpartition
proportionnelle, estimer les charges des diffrentes tapes du projet.
On se fixe les ratios suivants :
tape
ratio
tude pralable
10% du projet
tude dtaille
23% du projet
tude technique
10% de la charge de
ralisation
ralisation
2 fois la charge de
l'tude dtaille
mise en oeuvre
35% de la charge de
ralisation
encadrement du projet : 20% de la charge de ralisation (tape de ralisation) ; 10% de la charge (autres tapes)
recette : 20% de la charge de ralisation
documentation utilisateur : 5% de la charge de ralisation
A partir de la charge de l'tude pralable, on dtermine la charge du projet : 100 jours approximativement (sans
les charges complmentaires). Les autres charges peuvent tre dduites de ces rsultats (on arrondit les
calculs puisque nous faisons une approximation). :
Solution de l'exercice 2
Cocomo :