http://www.squale.org Fabrice Bellingard - Squale Project Lead -
<ul>« You can't control what you can't measure » </ul><ul>Tom DeMarco, 1986 </ul>
Intervenant <ul><li>Fabrice Bellingard </li><ul><li>7 années en architecture et développement des SI
…  et 8 années dans le monde de l'open-source </li><ul><li>Eclipse Core
Eclipse plugins
Apache Maven
Apache Archiva
… et maintenant Squale, chez Qualixo ! </li></ul></ul></ul><ul><ul><li>Une autre passion : l'autre « SI » – Solidarité Int...
Sommaire <ul><li>Introduction en questions
Les grands principes de Squale
Une démo !
Squale aujourd'hui et demain </li></ul>
Outils qualité : pour qui, pour quoi ? <ul><li>Exemples de points de vue différents (source : Club Qualimétrie -  http://w...
Des métriques ? <ul><li>Pléthores de métriques existantes  </li><ul><li>Sens ?
Justesse de l'algorithme ?
Applicabilité ?
Seuils ? </li></ul></ul>
Qualité :des dogmes faciles ? <ul><li>« La probabilité de bug est proportionnelle à la complexité cyclomatique »  </li></u...
<ul><li>Modèle de la norme ISO-9126 </li><ul><li>Capacité fonctionnelle
Fiabilité
Facilité d'utilisation
Rendement
Maintenabilité
Portabilité </li></ul></ul>-> Comment calculer ces indicateurs ?? Trop haut-niveau ?
Sommaire <ul><li>Introduction en questions
Les grands principes de Squale
Une démo !
Squale aujourd'hui et demain </li></ul>
Prochain SlideShare
Chargement dans…5
×

2009-09-15 Squale au Paris JUG

968 vues

Publié le

2009-09-15 Squale au Paris JUG

Publié dans : Technologie
0 commentaire
0 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

  • Soyez le premier à aimer ceci

Aucun téléchargement
Vues
Nombre de vues
968
Sur SlideShare
0
Issues des intégrations
0
Intégrations
257
Actions
Partages
0
Téléchargements
0
Commentaires
0
J’aime
0
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

2009-09-15 Squale au Paris JUG

  1. 2. http://www.squale.org Fabrice Bellingard - Squale Project Lead -
  2. 3. <ul>« You can't control what you can't measure » </ul><ul>Tom DeMarco, 1986 </ul>
  3. 4. Intervenant <ul><li>Fabrice Bellingard </li><ul><li>7 années en architecture et développement des SI
  4. 5. … et 8 années dans le monde de l'open-source </li><ul><li>Eclipse Core
  5. 6. Eclipse plugins
  6. 7. Apache Maven
  7. 8. Apache Archiva
  8. 9. … et maintenant Squale, chez Qualixo ! </li></ul></ul></ul><ul><ul><li>Une autre passion : l'autre « SI » – Solidarité Internationale – </li><ul><li>WWF, Planète Urgence </li></ul></ul></ul>
  9. 10. Sommaire <ul><li>Introduction en questions
  10. 11. Les grands principes de Squale
  11. 12. Une démo !
  12. 13. Squale aujourd'hui et demain </li></ul>
  13. 14. Outils qualité : pour qui, pour quoi ? <ul><li>Exemples de points de vue différents (source : Club Qualimétrie - http://www.clubqualimetrie.fr ) </li><ul><li>Développeur </li><ul><li>Détecter des parties suspectes de son code, potentiellement zones à risque </li></ul><li>Chef de projet </li><ul><li>Contractualiser un niveau d'exigences avec ses fournisseurs </li></ul><li>Top-manager </li><ul><li>Maîtriser la complexité de son SI, donc les coûts </li></ul></ul></ul>-> Analyser, contrôler, maîtriser
  14. 15. Des métriques ? <ul><li>Pléthores de métriques existantes </li><ul><li>Sens ?
  15. 16. Justesse de l'algorithme ?
  16. 17. Applicabilité ?
  17. 18. Seuils ? </li></ul></ul>
  18. 19. Qualité :des dogmes faciles ? <ul><li>« La probabilité de bug est proportionnelle à la complexité cyclomatique » </li></ul>http://www.enerjy.com/blog/?p=198
  19. 20. <ul><li>Modèle de la norme ISO-9126 </li><ul><li>Capacité fonctionnelle
  20. 21. Fiabilité
  21. 22. Facilité d'utilisation
  22. 23. Rendement
  23. 24. Maintenabilité
  24. 25. Portabilité </li></ul></ul>-> Comment calculer ces indicateurs ?? Trop haut-niveau ?
  25. 26. Sommaire <ul><li>Introduction en questions
  26. 27. Les grands principes de Squale
  27. 28. Une démo !
  28. 29. Squale aujourd'hui et demain </li></ul>
  29. 30. Software QUALity Enhancement <ul><li>Squale, une plateforme qualimétrie open-source offrant : </li><ul><li>Des modèles issus de travaux de recherche </li><ul><li>Modèles qualité élaborés
  30. 31. Modèles technico-économiques </li></ul><li>Une application d'analyse et de restitution de la qualité </li><ul><li>Basée sur ces modèles
  31. 32. Ciblant plusieurs langages et plateformes
  32. 33. Ouverte et extensible
  33. 34. Vision de la qualité adaptée à différents profils </li></ul></ul></ul>
  34. 35. Pôle de compétitivité System@tic <ul><li>Squale est un projet du groupe thématique « Logiciel Libre »
  35. 36. Organisation et partenaires : </li></ul>
  36. 37. Squale – Les modèles <ul><li>Travaux de recherche avec INRIA Lille et Paris 8 </li><ul><li>Issus de l'expérience de Qualixo et validés chez les grands comptes
  37. 38. S’inspire de l’état de l’art : Standard ISO 9126, Travaux McCall, Approche GQM </li></ul><li>Approche sur 4 niveaux : </li><ul><li>Facteurs (6) : ex. « Maintenabilité »
  38. 39. Critères (13+) : ex. « Homogénéité »
  39. 40. Pratiques : ex. « Règles de nommage »
  40. 41. Données qualité brutes (ex. métriques de code) </li></ul><li>Notes des facteurs/critères/pratiques normalisées : </li><ul><li>Situées dans l’intervalle continu [ 0 – 3 ]
  41. 42. Définissent un niveau d'exigence </li></ul></ul>
  42. 43. Squale – Les modèles (2) <ul><li>Modèles mathématiques customisables </li><ul><li>Formules basées sur une ou plusieurs données brutes </li><ul><li>Pour une meilleure identification </li></ul><li>Formules continues </li><ul><li>Pour éviter les effets de seuils </li></ul><li>Formules paramétrables </li><ul><li>Durcir ou assouplir le calcul d'une note </li></ul><li>Formules complexes </li><ul><li>Permettant de limiter les effets de bords </li></ul></ul></ul>
  43. 44. Squale – L'application
  44. 45. Squale – L'application (2) <ul><li>Grandes fonctionnalités : </li><ul><li>Support de plusieurs langages </li><ul><li>Java : out-of-the-box avec les Checkstyle & Co.
  45. 46. C/C++/Cobol : connecteur McCabe
  46. 47. PHP et autres à venir </li></ul><li>Support de plusieurs modèles </li><ul><li>Pour les applications hétérogènes
  47. 48. Modification en ligne des grilles qualité
  48. 49. Insertion de notations manuelles </li></ul><li>Notion d'audits </li><ul><li>de suivi – exécution régulière, purge automatique
  49. 50. de jalon – on demand, pas de purge </li></ul></ul></ul>
  50. 51. Squale – L'application (3) <ul><ul><li>IHM Web </li><ul><li>Gestion des différents profils
  51. 52. Home page personnalisable
  52. 53. Navigation guidée, selon plusieurs axes : </li><ul><li>Drill-down niveau modèle
  53. 54. Drill-down niveau source
  54. 55. Temporelle
  55. 56. Tops
  56. 57. Evolution </li></ul><li>Proposition de plans de remédiation </li></ul><li>Référentiel des applications analysées
  57. 58. Statistiques et exports divers </li></ul></ul>
  58. 59. Sommaire <ul><li>Introduction en questions
  59. 60. Les grands principes de Squale
  60. 61. Une démo !
  61. 62. Squale aujourd'hui et demain </li></ul>
  62. 63. Une démo !
  63. 64. Sommaire <ul><li>Introduction en questions
  64. 65. Les grands principes de Squale
  65. 66. Une démo !
  66. 67. Squale aujourd'hui et demain </li></ul>
  67. 68. Squale – Aujourd'hui <ul><li>En production chez Air France et PSA </li><ul><li>100+ applications, ~ 13 millions de ligne de code </li><ul><li>Java, C/C++, Cobol </li></ul><li>Modèles customisés et validés
  68. 69. Application mâture, production-ready </li><ul><li>Architecture distribuée chez Air France </li></ul></ul><li>En téléchargement sur le site officiel : </li><ul><li>Distribution full open-source permettant l'analyse d'applications Java sur un modèle simple </li><ul><li>Basée sur Checkstyle, PMD, JavaNCSS & Co. </li></ul><li>Nécessite des outils commerciaux pour C/C++/Cobol </li></ul></ul>
  69. 70. Squale – A venir <ul><li>Modèles : </li><ul><li>Amélioration des modèles qualité existants (-> standardisation ?)
  70. 71. Amélioration des plans de remédiation
  71. 72. Modèle de calcul du ROI d'un processus qualimétrique </li></ul><li>Application : </li><ul><li>Amélioration de l'ergonomie et de l'IHM (visualisations)
  72. 73. Extensions à d'autres langages
  73. 74. Extensions à d'autres données </li></ul><li>Référentiel mutualisé </li><ul><li>Centralisation de données d'analyse pour : </li><ul><li>Valider plus largement les modèles et les améliorer
  74. 75. Fournir des statistiques globales </li></ul></ul></ul>
  75. 76. Conclusion
  76. 77. Conclusion <ul><li>« You can't control what you can't measure » </li><ul><li>However, rencently... </li><ul><li>Software Engineering: An Idea Whose Time Has Come and Gone? </li></ul></ul><li>Mots clés de Squale : </li><ul><li>Vision de la qualité adaptée à différents profils : du suivi haut-niveau pour top-managers à une utilisation pragmatique pour le développeur
  77. 78. Modèles qualimétriques évolués
  78. 79. Analyse multi-langages, Java en full open-source
  79. 80. Recherche constante (plans de remédiation, ROI, ...) </li></ul></ul>
  80. 81. Bibliographie / liens <ul><li>Site Squale </li><ul><li>http://www.squale.org </li></ul><li>25 th IEEE International Conference on Software Maintenance </li><ul><li>http://icsm2009.cs.ualberta.ca/schedb.php#sept23 </li></ul><li>Le Club Qualimétrie </li><ul><li>http://www.clubqualimetrie.fr </li></ul><li>Tom DeMarco </li><ul><li>1986. Controlling Software Projects: Management, Measurement, and Estimates. Prentice Hall, ISBN 0131717111
  81. 82. 2009. Software Engineering: An Idea Whose Time Has Come and Gone? IEEE Software, Viewpoints. </li></ul><li>McCabe Cyclomatic Complexity: the proof in the pudding </li><ul><li>http://www.enerjy.com/blog/?p=198 </li></ul></ul>
  82. 83. Questions / Réponses
  83. 84. Sponsors
  84. 85. Merci de votre attention!
  85. 86. Licence <ul><li>http://creativecommons.org/licenses/by-nc-sa/2.0/fr/ </li></ul>

×