Title: Les points de fonction
1Ingénierie du logiciel m.a.
Professeur Naji Habra
Métriques logicielles méthode des points de
fonction.
Anne-Sophie Leclercq Pawel Mysliwiec
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
2Les différentes méthodes
- Les points de fonction étendus
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
3Albrecht
- Pionnier en la matière des points de fonction
- FPA à la base de nombreuses autres méthodes
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
4Inconvénients de la méthode dAlbrecht
- Linterprétation des PF peut varier selon les
personnes
- Il est nécessaire davoir une spécification
complète
- Si limplémentation séloigne de la
spécification, la valeur des PF est faussée
- Les PF ne sont pas en pratique indépendants du
système et de la méthode de conception
- Les PF ne sappliquent pas à tous les domaines
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
5 Bang Metric de DeMarco
- Méthode publiée en 1982
- Mêmes concepts quAlbrecht, mais forme différente
- Idée technique intéressante.
- La méthode dAlbrecht lui a été préférée car ses
PF
- sont plus faciles à automatiser
- avaient laura dIBM derrière eux
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
6Points de fonction Mark II
- Version actuelle 1.3.1, 1998
- Remet en cause la structure de base dAlbrecht
car critères dAlbrecht trop subjectifs
- Objectif renforcer le lien entre PF et effort
Tient compte de la technologie
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
7Points de fonction Mark II
meilleure estimation quAlbrecht
- moins pratique quAlbrecht car dépendante de la
technologie
- Utilisé principalement en Grande Bretagne
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
8Data Points
- Développés pour adapter les points de fonction
aux logiciels modernes
- Variante de la méthode des points de fonction.
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
9GUIDE
- GUIDE groupe dutilisateurs dIBM
- Méthode publiée en 1985
- clarification et précision de certaines règles
dAlbrecht
- exemples de ce qui doit être compté ou non
des personnes différentes peuvent obtenir les
mêmes classifications
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
10Object Points
- Auteur Sneed
- Publication 1994
- Méthode adaptée aux systèmes orientés objet
- Car la méthode classique nétait pas adéquate
- A servi de base à dautres méthodes
- Object Points Analysis (Banker, 1991)
- Function Points with OO (Below, 1995)
- Object Points Analysis (Gupta, 1996)
- Usecases and OO (Feteke, 1997)
- Object Oriented Function Points (Caldiera, 1998)
- Enhanced Object Points (Stensrud, 1998)
11IFPUG
- IFPUG version 4.1.1 (2001)
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
12Création de lIFPUG
- IFPUG regroupement dutilisateurs de la méthode
des points de fonction
- Basé sur la méthode dAlbrecht
clarifier les règles de mesure
fixer des normes
favoriser lutilisation et lévolution des points
de fonction
- Différentes versions de leur manuel de comptage
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
13IFPUG version 1
- des définitions alternatives
- des guides dinterprétation
- des sujets pour lesquels il ny avait pas eu de
consensus
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
14IFPUG version 2
- Des exemples dinterprétation
- Les interprétations doivent toutefois tenir
compte des changements dans lenvironnement
technique et industriel
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
15IFPUG version 3
- Ensemble plus cohérent de règles didentification
et de mesure des points de fonction, validées par
des experts
- Buts plus précis que les précédents
- mesurer ce que lutilisateur demande et reçoit
- mesurer indépendamment de la technologie
- obtenir une taille de métrique pour lanalyse de
la qualité et la productivité
- obtenir un moyen destimation du logiciel
- obtenir un facteur de normalisation pour la
comparaison de logiciels
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
16Apports dIFPUG version 4
- Par rapport aux précédentes versions
- processus de mesure plus facile et plus rapide
- plus de cohérence à terme entre les projets et
les praticiens
- Par rapport à Albrecht, critères
?
moins sujets à linterprétation
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
17IFPUG E/R
- Lanalyse des points de fonction se veut
indépendante de la technologie
- Or, elle est apparue avant ladoption générale de
méthodologies structurées et de modélisations de
données
- IFPUG E/R seconde approche dIFPUG90
- Plus dépendante des applications et des
implémentations physiques
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
18IFPUG version 4
- Contient les définitions les plus largement
utilisées des points de fonction
- IFPUG version 4.1.1 (2001)
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
19Autres organisations de méthodes de PF
- Angleterre United Kingdom Function Point Users
Group
- France French Function Point Users Group
- Australie Australian Software Metrics
Associations
- Pays-Bas Netherlands Function Point Users Group
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
20Inconvénients des PF
- La définition des points de fonction nest pas
claire
- mesure de la taille, productivité,
complexité, fonctionnalité ou ce qui est
remis à lutilisateur?
- Ils ne sont malgré tout pas faciles à interpréter
- La formule utilisée pour leur calcul ne repose
pas sur une théorie solide
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
21Le problème des logiciels à temps réel
Application dans des systèmes dinformation de
gestion OK
Application aux logiciels temps réel KO
Propositions
Feature points (1986)
Mark II
Asset-R (1990)
3D Function Points (1992)
Application Feature
Case Study 4 dIFPUG (1998)
Aucune de ces méthodes ne convient
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
22Les points de fonction étendus (FFP)
Méthode publiée en 1997
Sapplique aux logiciels temps réel et systèmes
embarqués
Objectifs de qualité
pertinence
instrumentalisation
caractère pratique et applicable
caractère public
normalisation
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
23Apports des FFP par rapport aux PF (IFPUG 94)
Sappliquent également aux logiciels temps réel
Concepts plus compréhensibles
Règles et procédures plus simples à appliquer
Leffort requis pour mesurer un logiciel nest
pas plus grand
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
24La fiabilité des PF
Deux caractéristiques à obtenir pour quune
méthode soit fiable
Exacte
Répétitive
Taux dexactitude et de répétitivité des points
de fonction de 95
Le modèle des PF répond aux critères des  bonsÂ
modèles en génie logiciel lerreur relative
moyenne de 75 des valeurs calculées par le
modèle est à lintérieur dun intervalle de 25
par rapport à la réalitéÂ
Le fait dutiliser une seconde méthode permet de
vérifier et valider les premiers résultats
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
25Exemple.
Etude de cas
Rice cooker version 2.1
COSMIC-FFP
Alain Abran, Serge Oligny, Charles Symons, Peter
Fagg, Jean-Marc Desharnais, Denis St-Pierre
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
26Cosmic FFP
Etape 1
Sur base des spécifications et des pré-requis,
définir la frontière du logiciel à mesurer.
Etape 2
A partir des pré-requis, définir tous les
processus fonctionnels, les événements
déclancheurs et les groupes de données.
Etape 3
Mapper les éléments définis à létape 2 dans le
modèle contextuel du COSMIC-FFP. Ceci consiste Ã
associer les processus fonctionnels aux
événements declencheurs et aux groupes de données
dans le but didentifier les couches.
Etape 4
Au sein de chaque processus, définir les
sous-processus de lecture, décriture, dentrée
et de sortie. Calculer la cfsu ( valeur
fonctionnelle ) de tous les processus.
Etape 5
Aggrégation des résultats.
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
27Etape 1
Contrôler le cuiseur du riz.
Logiciel en temps réel.
Humain
Utilisateur
Frontière
Heater
Start Switch
Mode Switch
Cuiseur du riz
Warm Lamp
Temperature Sensor
Cook Lamp
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
28Etape 2
Identifier les événements déclancheurs.
Mode Switch Pressed lévénement est crée par
lutilisateur lorsquil choisit le mode de
cuisson.
Ex.
Identifier les processus fonctionnels.
Set Cooking Mode le mode de cuisson est
sélectionné par lutilisateur ou est par défaut
en mode Normal. Le mode de cuisson est sauvegardé
et intervient dans le calcul de la température,
et contrôle les lampes de status.
Ex.
Identifier les groupes de données.
Cooking Mode la donnée est entrée par
lutilisateur ou mise par défaut par le logiciel,
et est utilisé dans le calcul de la température
et contrôle les lampes de status.
Ex.
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
29Etape 3
Mapper les éléments dans le modèle COSMIC-FFP.
Ex.
Select Cooking Mode process
Est-ce quil fonctionne avec un ensemble unique
et ordonné des mouvements de données performants
des FUR ( Fonctionnalités Requises de
lUtilisateur )?
Oui
Est-ce quil est actionné par un événement
déclancheur ?
Oui
Est-ce que lévénement déclencheur apparaît en
dehors de la frontière du logiciel?
Oui
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
30Etape 4
Identifier les sous-processus et appliquer le
calcul.
Ex.
Select Cooking Mode process
No
Process ID
Process Description
Trigger
Sub-Process Desc.
Data Group
Type
FFP
1
1.1
Select Cooking Mode
Receive cooking mode
Mode Switch Pressed
Cooking Mode
E
1
W
1
Write cooking mode
Cooking Mode
Valeur du processus
2 FFP
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec
31Etape 5
Agrégation des résultats.
Nombre de processus
4
Distribution des sous-processus
3
Lecture
2
Ecriture
5
Entrée
Sortie
2
Valeur totale du logiciel
12
Ingénierie du logiciel m.a.
Métriques logicielles méthode des points de
fonction. A.S. Leclercq, P. Mysliwiec