IFT3902 : (Gestion de projet pour le) développement, (et la) maintenance des logiciels



Documents pareils
IFT3902 : (Gestion de projet pour le) développement, (et la) maintenance des logiciels

IFT3913 Qualité du logiciel et métriques. Chapitre 2 Modèles de processus du développement du logiciel. Plan du cours

IFT6251 : Sujets spéciaux en génie logiciel

Qualité. Validation et qualité des systèmes de traitement de l information dédiés aux laboratoires TECHNOLOGIE APPLIQUÉE DOSSIER INFORMATIQUE

IFT3902 : (Gestion de projet pour le) développement, (et la) maintenance des logiciels

Quelles exigences pour la qualité de la formation à distance?

Qualité du logiciel: Méthodes de test

-- Séance Exigences Non-Fonctionnelles

Systèmes et algorithmes répartis

Processus d Informatisation

SQLI GROUP Permission de réutiliser tel quel, avec le Copyright

Quels échanges et pourquoi? Pour faire évoluer dans le temps vers quelle structure de pilotage?

Master Informatique et Systèmes. Architecture des Systèmes d Information. 03 Architecture Logicielle et Technique

Analyse,, Conception des Systèmes Informatiques

Comité Français des Tests Logiciels. Testeur Certifié. Version 2012

Optimisez vos échanges commerciaux. avec la Dématérialisation Fiscale de Factures

Les bonnes pratiques d un PMO

Rapport de certification

GESTION DE PROJET SÉANCE 2 : LES CYCLE DE VIE D'UN PROJET

Semarchy Convergence for MDM La Plate-Forme MDM Évolutionnaire

DEVELOPPEMENT ET MAINTENANCE DE LOGICIEL: OUTIL DE PILOTAGE

Génie Logiciel LA QUALITE 1/5 LA QUALITE 3/5 LA QUALITE 2/5 LA QUALITE 4/5 LA QUALITE 5/5

LOG2420 Analyse et conception d interfaces utilisateur

Disponibilité et fiabilité des services et des systèmes

Assurance Qualité. Cours de génie logiciel. Renaud Marlet. LaBRI / INRIA (d'après A.-M. Hugues) màj 23/04/2007

Les BRMS Business Rules Management System. Groupe GENITECH

Analyse et Conception objet du logiciel Analyse et conception objet du logiciel : Méthode de conception objet et notation UML.

HACCP Évolutions réglementaires et normatives

1. Étude réalisée par l AFOPE en Hellriegel D., Slocum J. W., Woodman R. W., Management des organisations, Bruxelles, De Boeck, 1992.

5 bonnes pratiques pour solution décisionnelle mobile

Outils logiciels pour la combinaison de vérification fonctionnelle et d évaluation de performances au sein de CADP

Engagement par approche.

WHITE PAPER. Quels avantages la déduplication offre-t-elle aux entreprises? Livre blanc Acronis

CERTIFICATION LA CERTIFICATION

IFT3902 : (Gestion de projet pour le) développement, (et la) maintenance des logiciels

BIG DATA en Sciences et Industries de l Environnement

L exploitation des rapports de vérifications réglementaires : quels enjeux, quelle solution?

Conditions de l'examen

Retour d expérience implémentation Scrum / XP

TaaS. Cahier des charges application mobile Master MDSI. Transport as a Service. Business Process Reengineering

Les structures de données. Rajae El Ouazzani

Une aide au déploiement de STEP AP 242 : les recommandations d utilisation

Colloque Du contrôle permanent à la maîtrise globale des SI. Jean-Louis Bleicher Banque Fédérale des Banques Populaires

C ) Détail volets A, B, C, D et E. Hypothèses (facteurs externes au projet) Sources de vérification. Actions Objectifs Méthode, résultats

1. Qu'est ce qu'un Indicateur? Quels sont les types d'indicateurs? Exemples... 5

Guide d administration de Microsoft Exchange ActiveSync

Urbanisation de système d'information. PLM 6 (Product Lifecycle Management) Collaboration et partage d'informations

//////////////////////////////////////////////////////////////////// Administration bases de données

Cegid Business Place Produflex

CREATIVE WORK VALORISATION DE LA PI

Introduction à l ISO/IEC 17025:2005

Logiciels de Gestion de Projet: Guide de sélection

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Fax sur IP. Panorama

Tremplins de la Qualité. Tome 2

L'infonuagique, les opportunités et les risques v.1

Mise en place d une info-structure étendue et sécurisée à base de logiciels libres

Les tendances de la dématérialisation et les besoins des Entreprises

ITIL V2. La gestion de la disponibilité

Les défis statistiques du Big Data

LOG4430 : Architecture logicielle et conception avancée

ITIL v3. La clé d une gestion réussie des services informatiques

Panorama général des normes et outils d audit. François VERGEZ AFAI

«CAPABILITY MATURITY MODEL INTEGRATION MS» EXPLIQUÉ SIMPLEMENT

Petit guide pour choisir une solution CRM

Montrer que la gestion des risques en sécurité de l information est liée au métier

Gestion active des bâtiments. Classification des niveaux d intégration de la sécurité

LA QUALITE, L ASSURANCE DE LA QUALITE ET LA CERTIFICATION ISO 9001

Accenture Claim Components. Accéder à la haute performance dans la gestion des sinistres

Achat de matériel informatique (PC, Portables, Serveurs) Aspects développement durable. Matinfo3 CNRS

Que souhaitent les Administrateurs Système?

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

ÉVALUATION DE LA MAINTENABILITÉ DE S3MDSS AVEC L OUTIL SONAR

MSP Center Plus. Vue du Produit

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Intégration de l interface graphique de Ptidej dans Eclipse

VMware : De la Virtualisation. au Cloud Computing

ITIL pour les PME/PMI LIVRE BLANC SUR LES MEILLEURES PRATIQUES

Release Status Date Written by Edited by Approved by FR_1.00 Final 19/03/2014

ITIL V2. La gestion des mises en production

Séminaire WagrALIM. Food factory of the future 24 mars Le process control au service de la traçabilité et des KPI de productivité

GUIDE SUR LES INDICATEURS DE PERFORMANCE DANS LES UNITÉS DE VÉRIFICATION INTERNE

Rapport de certification

Estimer les activités de support - maintenance des applications logicielles

MESURE DE LA COMPLEXITÉ FONCTIONNELLE DES LOGICIELS

Introduction au projet ebxml. Alain Dechamps

Workflow et Service Oriented Architecture (SOA)

Portail collaboratif Intranet documentaire Dématérialisation de processus

Smart Notification Management

Ingénierie et qualité du logiciel et des systèmes

Améliorer la Performance des Fournisseurs

CCNA Discovery Travailler dans une PME ou chez un fournisseur de services Internet

SOCIAL INTELLIGENCE BUSINESS RESULTS

ISO/CEI Technologies de l information Gestion des actifs logiciels. Partie 1: Procédés et évaluation progressive de la conformité

Vertec Engineering L ERP professionnel pour ingénieurs

Solution. collaborative. de vos relations clients.

Les fonctions de hachage, un domaine à la mode

Transcription:

IFT3902 : (Gestion de projet pour le) développement, (et la) maintenance des logiciels Yann-Gaël Guéhéneuc Professeur adjoint guehene@iro.umontreal.ca, local 2345 (Cours inspiré du cours du Pr. François Lustman) Département d informatique et de recherche opérationnelle Université de Montréal Yann-Gaël Guéhéneuc 2004

Les métriques 1. Introduction 2. Métriques de produit 3. Métriques de processus 4. Métrique de qualité 5. Conclusion 2/43

3/43 1. Introduction (1/5) Une application définit une métrique (ou une distance) sur X, ssi + R 2 : X d ), ( ), (, x y d y x d X y x = y x y x d X y x = = 0 ), (, ), ( ), ( ), (,, z y d y x d z x d X z y x +

1. Introduction (2/5) Métriques en génie logiciel «Lorsque vous pouvez mesurer ce dont vous parlez et l exprimer en nombres, vous savez quelque chose à son sujet ; mais lorsque vous ne pouvez l exprimer en nombres, votre connaissance est maigre et peu satisfaisante : c est peut-être le début de la connaissance mais dans vos pensées, vous avez à peine progressé jusqu au stade de la science.» Lord Kelvin (traduction approximative) 4/43

1. Introduction (3/5) Métriques en génie logiciel Formulation Collection Analyse «C est une erreur de proposer une mesure sans consensus sur la caractéristique mesurée» Norman Fenton (traduction approximative) 5/43

1. Introduction (4/5) Métriques en génie logiciel Privées Publiques Éthique! 6/43

1. Introduction (5/5) Métriques en génie logiciel Métriques directes / métriques indirectes Métrique directe Résultat direct de l observation Exemple : KLOC Métrique indirecte Résultat d une transformation des résultats de l observation Exemple : complexité cyclomatique 7/43

Les métriques 1. Introduction 2. Métriques de produit 3. Métriques de processus 4. Métrique de qualité 5. Conclusion 8/43

2. Métriques de produit (1/4) Exemples Nombre de lignes de code final Entity targetentity = relationship.gettargetactor(); final String targetentityname = targetentity.getname(); if (!(targetentity instanceof Ghost) (this.visibleelements & VisibilityElement.GHOST_ENTITIES_DISPLAY) == VisibilityElement.GHOST_ENTITIES_DISPLAY) { final StringBuffer relationshipnames; if (relationships.containskey(targetentityname)) { relationshipnames = (StringBuffer) relationships.get(targetentityname); } else { relationshipnames = newstringbuffer(); relationships.put(targetentityname, relationshipnames); 9/43

2. Métriques de produit (2/4) Exemples Complexité cyclomatique (McCabe) Mesure du nombre de chemins indépendants dans un algorithme. Mesure de la complexité de l algorithme par rapport au nombre de chemin pour traverser cet algorithme 10/43

2. Métriques de produit (3/4) Exemples Complexité cyclomatique V(G) = (# Liens) - (# Nœuds) + 1 11/43

2. Métriques de produit (4/4) Plus au chapitre 5.5. Contrôle du produit : métriques Plus dans le cours IFT3903 12/43

Les métriques 1. Introduction 2. Métriques de produit 3. Métriques de processus 4. Métrique de qualité 5. Conclusion 13/43

3. Métriques de processus (1/17) Métriques de maturité Structure interne Caractéristiques des équipes Caractéristiques de la hiérarchie Niveau de coopération Questionnaires Voir par exemple les entreprises Decision Point, Inc., Workforce Metrics 14/43

3. Métriques de processus (2/17) Métriques de maturité Gestion Niveau du projet Qualité et configuration de la gestion Questionnaires Voir par exemple S. J. Leadabrand and W.E. Burns ; Assessment Metrics for Use with the Capability Maturity Model: Are We Improving? ; CrossTalk, February 1994 15/43

3. Métriques de processus (3/17) Métriques de maturité Personnels Expérience Certification Efficacité Questionnaires Flexibilité Questionnaires Mises à niveau Nombre de cours Augmentation de la qualité 16/43

3. Métriques de processus (4/17) Métriques de maturité Technologie Disposition des ressources informatiques Niveau de technologie Niveau de remplacement des technologies Questionnaires 17/43

3. Métriques de processus (5/17) Métriques de maturité Documentation Application des standards Nombre de standards utilisés Questionnaires 18/43

3. Métriques de processus (6/17) Métriques de maturité Processus Productivité Efficacité Qualité Traçabilité Mean time to defect : moyenne du temps entre la découverte d un problème et du suivant pendant le développement Métriques actuelles / planifiées 19/43

3. Métriques de processus (7/17) Métriques de gestion Projet Jalons Nombre de jalons Nombre de besoins remplis par jalons Niveau de contrôle des métriques Risques «Photos» avant / après Modèles 20/43

3. Métriques de processus (8/17) Métriques de gestion Qualité Satisfaction des clients Caractéristiques de taille Caractéristiques de structure Évaluation empirique 21/43

3. Métriques de processus (9/17) Métriques de gestion Qualité Revue Nombre de revues Dépendances entre revues Niveau de revues 22/43

3. Métriques de processus (10/17) Métriques de gestion Qualité Productivité Performance Productivité / qualité Efficacité Temps Ressources 23/43

3. Métriques de processus (11/17) Métriques de gestion Qualité Assurance de la qualité Évaluation de la qualité Prévention des erreurs Niveau de mesure Analyse des données Normes ISO 9000-3 24/43

3. Métriques de processus (12/17) Métriques de gestion Configuration Changements Tailles Dépendances Intervalles Révision Versions Nombre de versions Nombre de versions par clients Différences entre versions 25/43

3. Métriques de processus (13/17) Métriques du cycle de vie Définitions des problèmes Types des problèmes Standards pour la définition Niveau d utilisation d outils Stabilité 26/43

3. Métriques de processus (14/17) Métriques du cycle de vie Besoins et spécifications Niveau du flot depuis la définition des problèmes Moyenne de la participation Méthode de développement Niveau des estimations Intégration Cas d utilisation 27/43

3. Métriques de processus (15/17) Métriques du cycle de vie Conception Niveau d automatisation Utilisation de bibliothèques Niveau de réutilisation 28/43

3. Métriques de processus (16/17) Métriques du cycle de vie Implantation Niveau d automatisation Moyenne de la qualité du code Niveau de couverture de tests Performances Distribution 29/43

3. Métriques de processus (17/17) Métriques du cycle de vie Maintenance Gestion des erreurs Changeabilité Extensibilité Modifications légères Fiabilité Contrôle des configurations 30/43

Les métriques 1. Introduction 2. Métriques de produit 3. Métriques de processus 4. Métrique de qualité 5. Conclusion 31/43

4. Métriques de qualité (1/10) Conformité Mesure des erreurs Date de détection Date de correction Criticité Nombre de tests Origine Code affecté par la correction 32/43

4. Métriques de qualité (2/10) Efficacité Questionnaires Voir par exemple Kevin McIsaac ; Metrics, Assessment Process ; ZDnet on-line, October 2002 Analyses / évaluation comparatives (benchmarking) 33/43

4. Métriques de qualité (3/10) Fiabilité Probabilité qu un programme s exécute sans défaillances dans un environnement donné pour une période de temps donnée (Fenton) Temps moyen pour un défaut (MTTF), de réparation (MTTR), entre défauts (MTBF = MTTF + MTTR) Disponibilité : MTTF / MTBF 100 34/43

4. Métriques de qualité (4/10) Maintenabilité Modèle de Coleman-Oman MI = 171 5.2 ln( avev) 0.23 avev ( g') 16.2 ln( aveloc) + 50 sin MI < 65 : maintenabilité faible avev : volume de Halstead moyen avev(g ) : complexité cyclomatique moyenne aveloc : nombre moyen de lignes de code percm : pourcentage de lignes de commentaires 65 MI < 85 : maintenabilité bonne 85 MI : maintenabilité excellente 2.46 percm 35/43

4. Métriques de qualité (5/10) Intégrité Vérification par le BIOS de l authentification de l utilisateur Nombre d attaques Accès à la(aux) base(s) de données Nombre de clés étrangères Profondeur de l arbre de références Nombre d algorithmes de prévention de la corruption 36/43

4. Métriques de qualité (6/10) Testabilité Unitaire Pourcentage de classes avec des dépendances codées explicitement Pourcentage de classes avec des dépendances implicites (utilisation de Class.forName()) Intégration T. B. Nguyen, M. Delaunay, C. Robach ; Testability Analysis For Software Components ; ICSM, October 2002 37/43

4. Métriques de qualité (7/10) Utilisabilité Questionnaires Pourcentage de la tâche complétée Ratio succès / échecs Charge de travail Nombre de commandes utilisées Temps d apprentissage Nombre de fois que l usage exprime sa frustration ou sa colère 38/43

4. Métriques de qualité (8/10) Inter-opérabilité Échangeabilité des données Nombre d interfaces de conversion des données implantées / nombre d interfaces de conversion spécifiées (nécessaires) Cohérence des interfaces Nombre de protocoles implémentant des formats cohérents / nombre de protocoles spécifiés (nécessaires) 39/43

4. Métriques de qualité (9/10) Portabilité Nombre de composants liés à la portabilité implantés / nombre de composants liés à la portabilité identifiés (nécessaires) 40/43

4. Métriques de qualité (10/10) Réutilisabilité Moins d appels par lignes de code Moins de paramètres d entrées/sorties Plus de commentaire par lignes de code Plus d appels à des fonctions «utilitaires» par ligne de code 41/43

Les métriques 1. Introduction 2. Métriques de produit 3. Métrique de qualité 4. Métriques de processus 5. Conclusion 42/43

4. Conclusion Une science à part entière Un sujet de recherche prometteur Attention aux aspects humains 43/43