20070320 01 - Démarche qualité logicielle et outillage (SNCF)
1. DIRECTION DU SYSTEMED’INFORMATION VOYAGEURS
SNCF DSIV
MISE EN QUALITE LOGICIELLE
Pascal LAMBERT
Responsable Pôle DSIV Ta Ingénierie de Développement
mars 2007
4. 4
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
DIRECTION DU SYSTEME D’INFORMATION VOYAGEURS
Développements et mises en œuvre d’applications informatiques pour
la branche Voyageurs France Europe
la branche Transports Publics
le domaine Production Voyageurs
Missions
La Direction du Système d’Information Voyageurs (DSIV) garantit
la cohérence d’ensemble des évolutions du SIV en support aux métiers et aux
orientations de ses clients internes
la qualité de fonctionnement opérationnel 24h/24 et 7j/7 du SIV
la bonne intégration des évolutions dans le SIV opérationnel
la cohérence d’ensemble de l’architecture technique
DSIV / DSIV Ta
5. 5
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
DIRECTION DU SYSTEME D’INFORMATION VOYAGEURS
La DSIV fournit une prestation de Maîtrise d’Œuvre Générale du
Système d’Information Voyageurs
Souvent en relation avec d’autres entités du groupe SNCF
SysrailData, Voyages-sncf.com, CRMServices, Effia, Direction des Systèmes
d’Information et des Télécommunications (DSIT), …
Effectif ≈ 1200 personnes dont 1/3 en prestation externe (TMA, centre de
services, …)
La DSIV gère ≈ 400 applications et ≈ 150 projets dont
Poste de vente MOSAÏQUE, automates Borne Libre Service, DBR
PDA ACCELIO pour les Agents du Service Commercial Trains
Programme NOTES de refonte de la gamme tarifaire
TGV Est-Européen
DSIV / DSIV Ta
6. 6
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
Division DSIV TA
Division DSIV Ta
Appartient à la Direction Technique et Services de la DSIV
Expertise et Appui aux Départements de Réalisations
Architecture technique, Supervision applicative, Télécommunications, Administration
Systèmes et Logiciels, Expertise EAI, Projet MDA, Ingénierie de Développement
65 personnes
Pôle DSIV Ta Ingénierie de Développement
Expertise Bases de Données
Normalisation du poste de développement RésaRail
Normalisation des postes de développement J2EE et .Net
Développement et maintenance de composants communs
Qualité logicielle
18 personnes
DSIV / DSIV Ta
8. 8
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
Peu de projets aboutissent conformément aux prévisions
Trop d’anomalies de forte sévérité en fin de qualification
Plus de temps consacré aux corrections d’anomalies qu’aux
évolutions
Plus une anomalie est détectée tardivement plus sa correction est
chère
Des défauts de projets informatiques visibles voire catastrophiques
Juillet 2005 : Une des JT Bug du Poste de vente MOSAÏQUE
Nécessité de mettre en place une démarche Qualité
CONSTAT
DEMARCHE MQL
9. 9
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
Qualité des Processus de réalisation
Définition des étapes du processus de développement et de leurs flux
d’entrées et de sortie
Suivi du processus (mesure de son efficacité)
Identification et correction des dysfonctionnements
ISO 9001, CMM, CMMI, SPICE, ITIL
Qualité des Produits réalisés
Conformité du produit par rapport aux spécifications
Préconisation de méthodes d’amélioration du produit développé
ISO 9126 : Exigence de Qualité des Produits Logiciels
Démarche outillée Mise en Qualité Logicielle (MQL) de la DSIV
QUALITE
DEMARCHE MQL
10. 10
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
OBJECTIFS DSIV
DEMARCHE MQL
Amélioration du Pilotage des projets & applications
par le contrôle du niveau de qualité des réalisations
par le suivi de la qualité des réalisations dans le temps
par des restitutions adaptées aux profils des acteurs projet
(tableaux de bord, vues synthétiques ou détaillées)
Conservation de la maîtrise des applications sous-traitées
maîtrise des produits
dégradation du code ?
acceptation du devis ?
quels composants impactés ?
tests à renforcer ?
…
indépendance vis-à-vis du sous-traitant
12. 12
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
Basée sur ISO 9126
Démarche
Facteurs/Critères/Métriques
Notation
Note = 1 Refus
Note = 2 Acceptable avec réserve
Note = 3 Accepté
Note = 4 Aucun problème
Pas de note « moyenne »
DEMARCHE MISE EN QUALITE LOGICIELLE
DEMARCHE MQL
Vue Qualité
orientée
« Management »
Vue
« Gestion de Données »
déterminant la Qualité
Qualité Globale
Facteur
1
Critère
1
Métrique 1
. . .Facteur
2
Facteur i
Critère
2
Critère j
. . .
Métrique 2 Métrique k. . .
seuils mesure
poids note
note
13. 13
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
PERIMETRE
Cycle en V de la DSIV
Besoin du client
Évaluation régulière qualité du code
Recette client
Implémentation
SFD
REP (DAT, …)
SFG
Validation couverture de code
Validation architecture applicative
Contractualisation Qualité
Initialisation processus
Qualité : les exigences
DEMARCHE MQL
14. 14
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
DEMARCHE MQL
ORGANISATION
Départements métier
Équipes de
Réalisation
Correspondants
qualité
Division transverse
Cellule qualité
Experts
développement
Experts conception
Fournissent les
bonnes
pratiques
Fait les analyse
qualité
Remonte les
problèmes
récurrentsFait l’interface et
communique les
résultats
Réalise le projet
suivant les
bonnes
pratiques et
corrige les
problèmes de
qualité
Fournit les
résultats
15. 15
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
PRINCIPE DE FONCTIONNEMENT
Code source
VB, Java, .Net,
Cobol, C/C++, C#
Moteur d ’analyse périodique
(calcul des métriques)
Rapport via le portail
Équipe projet
(CP, développeurs, qualiticien)
Réseau qualité
(Cellule qualité Ta &
correspondants division)
Accompagnement et support
Normes & Standards
DEMARCHE MQL
22. 22
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
AUJOURD’HUI ET DEMAIN …
PROJET PQL
2003 2004 2005 2006 20072002
Partenariat Université Montréal DIRO :
Détection anti-patterns, Visualisation
Intégration des éléments de revues de code manuelles
Contrôle des N&S
Mise en production PQBD
23. 23
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
Serveur d’Application
ARCHITECTURE LOGICIELLE
Code Source
Java, VB6, VB .Net,
C#, C, C++, COBOL
Gestion de
Configuration Logicielle
Rational ClearCase
Autres sources
Métriques Qualité de Code
(analyse statique)
McCABE IQ
Normes & Standards
(analyse statique)
Compuware
Devpartner for Java
Compuware
Devpartner Studio
VB, VB.Net
Sodima QAC
pour le C
Sodima QAC++
pour C++
Couverture de code
(analyse dynamique)
Compuware
Devpartner for Java
Compuware
Devpartner Studio
VB, VB.Net
Référentiel
Qualité
Logicielle
Oracle 9.2.0.7
Tomcat
Clients Intranet
PROJET PQL
30. 30
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
QUELQUES CHIFFRES
REX
Nombre de ligne de code analysées
15
6,5
0 2 4 6 8 10 12 14 16
2006
2005
en millions
Activité 2006
500
400
0 100 200 300 400 500 600
Analyses
PQL
en jours/homme
Nombre de Projets Suivis
0
20
40
60
80
100
120
140
2004 2005 2006 2007
31. 31
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
Répartition du temps en conception/réalisation
14%
62%
26%23%
46%
30%
Bilan Qualité Suivi MQL
en conception
en développement
autre que correction d’anos
en correction d’anos
100 %
80 %
60 %
40 %
20 %
0 %
IMPACTS DE LA MQL
Suivi qualité Augmentation de la couverture fonctionnelle
Etude réalisée par la société SPAD (DECISIA) 2nd semestre 2005
Respect des préconisations Gain en phase d’intégration
Nombre d’intégrations
REX
32. 32
DIRECTIONDU SYSTEME D’INFORMATIONVOYAGEURS
CONCLUSION
REX
Faire vivre la démarche MQL nécessite
un sponsoring managérial fort
Inscription de la démarche dans le cycle de vie projet
un effort constant de communication et de promotion
Pression constante sur les coûts et délais
Importance du facteur humain
un suivi constant des évolutions
De la méthodologie
Des offres logicielles
Environnement technologique en perpétuel changement
La démarche MQL met en évidence des dysfonctionnements en amont
et aval du développement
Intégration de la démarche MQL dans une démarche Qualité plus globale (ISO
9001, CMM, CMMI, SPICE, ITIL)