Techniques d'estimation - Points de cas d'utilisation

UNE Use-Case est une série d'interactions liées entre un utilisateur et un système qui permet à l'utilisateur d'atteindre un objectif.

Les cas d'utilisation sont un moyen de capturer les exigences fonctionnelles d'un système. L'utilisateur du système est appelé «acteur». Les cas d'utilisation sont fondamentalement sous forme de texte.

Points de cas d'utilisation - Définition

Use-Case Points (UCP)est une technique d'estimation logicielle utilisée pour mesurer la taille du logiciel avec des cas d'utilisation. Le concept de l'UCP est similaire à celui des PF.

Le nombre de UCP dans un projet est basé sur les éléments suivants:

  • Le nombre et la complexité des cas d'utilisation dans le système.
  • Le nombre et la complexité des acteurs du système.
    • Diverses exigences non fonctionnelles (telles que la portabilité, les performances, la maintenabilité) qui ne sont pas écrites comme des cas d'utilisation.

    • L'environnement dans lequel le projet sera développé (tel que la langue, la motivation de l'équipe, etc.)

L'estimation avec les UCP nécessite que tous les cas d'utilisation soient écrits avec un objectif et à peu près au même niveau, donnant la même quantité de détails. Par conséquent, avant l'estimation, l'équipe de projet doit s'assurer qu'elle a rédigé ses cas d'utilisation avec des objectifs définis et à un niveau détaillé. Le cas d'utilisation est normalement terminé en une seule session et une fois l'objectif atteint, l'utilisateur peut passer à une autre activité.

Historique des points de cas d'utilisation

La méthode d'estimation des points d'utilisation a été introduite par Gustav Karner en 1993. Le travail a ensuite été autorisé par Rational Software qui a fusionné avec IBM.

Processus de comptage des points de cas d'utilisation

Le processus de comptage des points d'utilisation comprend les étapes suivantes:

  • Calculer les UCP non ajustés
  • Ajuster à la complexité technique
  • Ajuster à la complexité environnementale
  • Calculer les UCP ajustés

Étape 1: Calculez les points de cas d'utilisation non ajustés.

Vous calculez d'abord les points d'utilisation non ajustés, en suivant les étapes suivantes:

  • Déterminer le poids de cas d'utilisation non ajusté
  • Déterminer le poids d'acteur non ajusté
  • Calculer les points de cas d'utilisation non ajustés

Step 1.1 - Déterminez le poids de cas d'utilisation non ajusté.

Step 1.1.1 - Trouvez le nombre de transactions dans chaque cas d'utilisation.

Si les cas d'utilisation sont écrits avec des niveaux d'objectif utilisateur, une transaction équivaut à une étape du cas d'utilisation. Trouvez le nombre de transactions en comptant les étapes dans le cas d'utilisation.

Step 1.1.2- Classez chaque cas d'utilisation comme simple, moyen ou complexe en fonction du nombre de transactions dans le cas d'utilisation. Attribuez également une pondération de cas d'utilisation comme indiqué dans le tableau suivant -

Complexité des cas d'utilisation Nombre de transactions Poids du cas d'utilisation
Facile ≤3 5
Moyenne 4 à 7 dix
Complexe > 7 15

Step 1.1.3- Répétez pour chaque cas d'utilisation et obtenez tous les poids de cas d'utilisation. Le poids de cas d'utilisation non ajusté (UUCW) est la somme de tous les poids de cas d'utilisation.

Step 1.1.4 - Trouvez le poids de cas d'utilisation non ajusté (UUCW) à l'aide du tableau suivant -

Complexité des cas d'utilisation Poids du cas d'utilisation Nombre de cas d'utilisation Produit
Facile 5 NSUC 5 × NSUC
Moyenne dix NAUC 10 × NAUC
Complexe 15 NCUC 15 × NCUC
Unadjusted Use-Case Weight (UUCW) 5 × NSUC + 10 × NAUC + 15 × NCUC

Où,

NSUC est le non. des cas d'utilisation simples.

NAUC est le non. des cas d'utilisation moyens.

NCUC est le non. des cas d’utilisation complexes.

Step 1.2 - Déterminez le poids non ajusté de l'acteur.

Un acteur dans un cas d'utilisation peut être une personne, un autre programme, etc. Certains acteurs, comme un système avec une API définie, ont des besoins très simples et n'augmentent que légèrement la complexité d'un cas d'utilisation.

Certains acteurs, comme un système interagissant via un protocole, ont plus de besoins et augmentent dans une certaine mesure la complexité d'un cas d'utilisation.

D'autres acteurs, tels qu'un utilisateur interagissant via l'interface graphique, ont un impact significatif sur la complexité d'un cas d'utilisation. Sur la base de ces différences, vous pouvez classer les acteurs comme simples, moyens et complexes.

Step 1.2.1 - Classer les acteurs comme simples, moyens et complexes et attribuer des poids d'acteurs comme indiqué dans le tableau suivant -

Complexité des acteurs Exemple Poids de l'acteur
Facile Un système avec une API définie 1
Moyenne Un système interagissant via un protocole 2
Complexe Un utilisateur interagissant via GUI 3

Step 1.2.2- Répétez pour chaque acteur et obtenez tous les poids d'acteur. Le poids d'acteur non ajusté (UAW) est la somme de tous les poids d'acteur.

Step 1.2.3 - Trouvez le poids d'acteur non ajusté (UAW) à l'aide du tableau suivant -

Complexité des acteurs Poids de l'acteur Nombre d'acteurs Produit
Facile 1 NSA 1 × NSA
Moyenne 2 NAA 2 × NAA
Complexe 3 NCA 3 × NCA
Unadjusted Actor Weight (UAW) 1 × NSA + 2 × NAA + 3 × NCA

Où,

NSA est le non. des acteurs simples.

NAA est le non. des acteurs moyens.

NCA est le non. des acteurs complexes.

Step 1.3 - Calculer les points de cas d'utilisation non ajustés.

Le poids de cas d'utilisation non ajusté (UUCW) et le poids d'acteur non ajusté (UAW) donnent ensemble la taille non ajustée du système, appelée points de cas d'utilisation non ajustés.

Unadjusted Use-Case Points (UUCP) = UUCW + UAW

Les prochaines étapes consistent à ajuster les points d'utilisation non ajustés (UUCP) pour la complexité technique et la complexité environnementale.

Étape 2: Ajustez la complexité technique

Step 2.1 - Considérez les 13 facteurs qui contribuent à l'impact de la complexité technique d'un projet sur les points d'utilisation et leurs pondérations correspondantes, comme indiqué dans le tableau suivant -

Facteur La description Poids
T1 Système distribué 2.0
T2 Temps de réponse ou objectifs de performance de débit 1.0
T3 Efficacité de l'utilisateur final 1.0
T4 Traitement interne complexe 1.0
T5 Le code doit être réutilisable 1.0
T6 Facile à installer .5
T7 Facile à utiliser .5
T8 Portable 2.0
T9 Facile à changer 1.0
T10 Concurrent 1.0
T11 Comprend des objectifs de sécurité spéciaux 1.0
T12 Fournit un accès direct à des tiers 1.0
T13 Des installations spéciales de formation des utilisateurs sont nécessaires 1.0

Bon nombre de ces facteurs représentent les exigences non fonctionnelles du projet.

Step 2.2 - Pour chacun des 13 facteurs, évaluez le projet et notez de 0 (non pertinent) à 5 (très important).

Step 2.3 - Calculer l'impact du facteur à partir du poids d'impact du facteur et la valeur nominale du projet comme

Impact of the Factor = Impact Weight × Rated Value

Step (2.4)- Calculez la somme de l'impact de tous les facteurs. Cela donne le facteur technique total (TFactor) comme indiqué dans le tableau ci-dessous -

Facteur La description Poids (W) Valeur nominale (0 à 5) (RV) Impact (I = W × RV)
T1 Système distribué 2.0
T2 Temps de réponse ou objectifs de performance de débit 1.0
T3 Efficacité de l'utilisateur final 1.0
T4 Traitement interne complexe 1.0
T5 Le code doit être réutilisable 1.0
T6 Facile à installer .5
T7 Facile à utiliser .5
T8 Portable 2.0
T9 Facile à changer 1.0
T10 Concurrent 1.0
T11 Comprend des objectifs de sécurité spéciaux 1.0
T12 Fournit un accès direct à des tiers 1.0
T13 Des installations spéciales de formation des utilisateurs sont nécessaires 1.0
Total Technical Factor (TFactor)

Step 2.5 - Calculer le facteur de complexité technique (TCF) comme -

TCF = 0.6 + (0.01 × TFactor)

Étape 3: Ajuster à la complexité environnementale

Step 3.1 - Considérez les 8 facteurs environnementaux qui pourraient affecter l'exécution du projet et leurs poids correspondants comme indiqué dans le tableau suivant -

Facteur La description Poids
F1 Familier avec le modèle de projet utilisé 1,5
F2 Expérience d'application .5
F3 Expérience orientée objet 1.0
F4 Capacité d'analyste principal .5
F5 Motivation 1.0
F6 Exigences stables 2.0
F7 Personnel à temps partiel -1,0
F8 Langage de programmation difficile -1,0

Step 3.2 - Pour chacun des 8 facteurs, évaluez le projet et notez de 0 (non pertinent) à 5 (très important).

Step 3.3 - Calculer l'impact du facteur à partir du poids d'impact du facteur et la valeur nominale du projet comme

Impact of the Factor = Impact Weight × Rated Value

Step 3.4- Calculez la somme de l'impact de tous les facteurs. Cela donne le facteur d'environnement total (EFactor) comme indiqué dans le tableau suivant -

Facteur La description Poids (W) Valeur nominale (0 à 5) (RV) Impact (I = W × RV)
F1 Familier avec le modèle de projet utilisé 1,5
F2 Expérience d'application .5
F3 Expérience orientée objet 1.0
F4 Capacité d'analyste principal .5
F5 Motivation 1.0
F6 Exigences stables 2.0
F7 Personnel à temps partiel -1,0
F8 Langage de programmation difficile -1,0
Total Environment Factor (EFactor)

Step 3.5 - Calculez le facteur environnemental (FE) comme -

1.4 + (-0.03 × EFactor)

Étape 4: Calculer les points d'utilisation ajustés (UCP)

Calculer les points d'utilisation ajustés (UCP) comme -

UCP = UUCP × TCF × EF

Avantages et inconvénients des points de cas d'utilisation

Avantages des points de cas d'utilisation

  • Les UCP sont basés sur des cas d'utilisation et peuvent être mesurés très tôt dans le cycle de vie du projet.

  • L'UCP (estimation de la taille) sera indépendante de la taille, des compétences et de l'expérience de l'équipe qui met en œuvre le projet.

  • Les estimations basées sur l'UCP se révèlent proches des valeurs réelles lorsque l'estimation est effectuée par des personnes expérimentées.

  • UCP est facile à utiliser et ne nécessite aucune analyse supplémentaire.

  • Les cas d'utilisation sont largement utilisés comme méthode de choix pour décrire les exigences. Dans de tels cas, l'UCP est la meilleure technique d'estimation appropriée.

Inconvénients des points de cas d'utilisation

  • UCP ne peut être utilisé que lorsque les exigences sont écrites sous la forme de cas d'utilisation.

  • Dépend de cas d'utilisation bien écrits et axés sur les objectifs. Si les cas d'utilisation ne sont pas bien ou uniformément structurés, l'UCP résultant peut ne pas être précis.

  • Les facteurs techniques et environnementaux ont un impact important sur l'UCP. Des précautions doivent être prises lors de l'attribution de valeurs aux facteurs techniques et environnementaux.

  • UCP est utile pour l'estimation initiale de la taille globale du projet, mais ils sont beaucoup moins utiles pour conduire le travail d'itération en itération d'une équipe.