2018-11-12 Critique des modèles d’évolution des capacités logiciel CMMSM et CMMISM CMM et CMMI sont des ‘marques de service‘ (service marks) du Software Engineering Institute
Contenu Les ‘défauts’ du modèle Les malentendus Les évaluations La certifications des évaluateurs L’amélioration des processus Les ‘affirmations gratuites’ 11/12/2018
Le CMM Niveau Emphase Secteurs clés Risques Résultats 5. D’optimisation Qualité du produit et des processus Gestion de projet Secteurs clés Héros Gestion de configuration logiciel Assurance-qualité logiciel Gestion de la sous-traitance logiciel Suivi et supervision de projet logiciel Planification de projet logiciel Gestion des exigences Revues par les pairs Coordination intergroupes Ingénierie de produits logiciel Gestion logiciel intégrée Programme de formation Définition du processus de l’organisation Focalisation organisationnelle sur les processus Risques Gestion de la qualité logiciel Gestion quantitative de processus Gestion des changements du processus Gestion des changements technologiques Prévention des défauts Processus en amélioration continue Processus d’ingénierie Productivité et qualité Résultats 1. Initial 2. Reproductible 3. Défini 4. Maîtrisé 11/12/2018
Représentation étagée CMM I Représentation étagée Niveau Focus Domaine de processus Qualité Productivité Optimisation continue Innovation et déploiement organisationnels Analyse causale et résolution 5 En optimisation 4 Gestion quantitative Gestion quantitative Performance du processus organisationnel Gestion de projet quantitative Développement des exigences Solution technique Intégration produit Vérification Validation Focalisation sur le processus organisationnel Définition du processus organisationnel +IPPD Formation organisationnelle Gestion de projet intégrée + IPPD Gestion du risque Analyse de décision et résolution 3 Personnalisé Capitalisation et personnalisation Gestion des exigences Planification de projet Suivi et contrôle de projet Gestion des ententes avec les fournisseurs Mesure et analyse Assurance qualité processus et produit Gestion de configuration 2 Discipliné Gestion de projet Risque Reprise 1 Initial 11/12/2018
CMMI – Continuous Representation CMMI SE/SW CMMI System/Software Category Process Areas Organizational Process Focus Organizational Process Definition Organizational Training Organizational Process Performance Organizational Innovation and Deployment Process Management Project Planning Project Monitoring and Control Supplier Agreement Management Integrated Project Management Risk Management Quantitative Project Management Project Management Engineering Requirements Management Requirements Development Technical Solution Product Integration Verification Validation Support Configuration Management Process and Product Quality Assurance Measurement and Analysis Causal Analysis and Resolution Decision Analysis and Resolution 11/12/2018
Les ‘défauts’ du modèle Le CMM/CMMI a été conçu pour les grandes organisations et les grands projets ‘One-size-fits-all’ e.g. la défense américaine Le CMM est un Modèle à étapes (staged) versus à évolution continue Modèle conçu pour le développement et non la maintenance, l’opération ou l’acquisition de COTS. ‘Faible’ couverture des pratiques suivantes: La gestion des risques dans le CMM Les tests 11/12/2018
Les ‘défauts’ du modèle Le CMM ne décrit pas ‘comment’ faire Le CMM décrit ‘quoi’ faire Il est long de mettre en application le CMM On sous-estime les changements culturels Environ 24 mois pour passer d’un niveau à l’autre Il est coûteux de mettre en application les pratiques de CMM de 500$ à 2,000$ par ingénieur logiciel Le CMM n’a pas de fondements théoriques Il repose sur l’expérience des auteurs CMM ne dit pas pourquoi une pratique est importante 11/12/2018
Les ‘défauts’ du modèle Compatibilité (du CMM) avec d’autres modèles et normes et approches SE-CMM, ISO 9000, SPICE, ISO 12207 Approche Six-sigma Le CMM est appliqué ‘à la lettre’ i.e. ‘checklist mentality’ Le CMM est un guide de pratiques éprouvées Il s’agit de satisfaire aux objectifs de chaque domaine de processus et non de mettre en place toutes les pratiques 11/12/2018
Les ‘défauts’ du modèle Les exécutifs veulent un niveau de maturité Ils veulent un niveau de maturité pour des raisons de ‘marketing’ Ils ne cherchent pas l’amélioration de leurs entreprises (ils recherchent les profits) i.e. identification des objectifs d’affaires e.g. compétitivité Il y a un trop grand saut entre le niveau 1 et 2. En se concentrant sur le CMM, on peut ‘oublier’ d’autres problèmes importants e.g. les affaires, l’innovation, etc. 11/12/2018
Les ‘défauts’ du modèle Le CMM ne s’applique pas aux organisations qui font des logiciels commerciaux (‘shrink wrap’) e.g Microsoft. Le CMM réduit la productivité des individus Le CMM ignore les individus et leurs interfaces dans un projet Voir le People CMM (P CMM) 11/12/2018
Les ‘défauts’ du modèle Un haut niveau de maturité n’assure pas nécessairement un haut niveau de productivité, de qualité et de ‘profits’ Les priorités imposées (modèle étagé) par le CMMI ne sont pas nécessairement celles de l’organisation Le modèle n’est pas bon, puisqu’il y a des organisations qui ‘baisse’ de niveau de maturité e.g. du niveau 2 au niveau 1 11/12/2018
Les ‘défauts’ du modèle Toutes les étapes du cycle de développement ne sont pas décrites dans le CMM Le CMM décrit les activités qui débutent lors de l’analyse des exigences et se terminent lors de l’acceptation du logiciel Ne décrit pas les activités en aval et en amont i.e. from craddle to grave (exploration, operation, maintenance, retirement) Cannot include everything that an organization needs to know to do software/systems engineering Software/systems engineering is broader or deeper than is captured in CMMs 11/12/2018
Les ‘défauts’ du modèle Process considerations CMMs discuss the pieces/parts that go into doing good systems engineering, but they do not address how to pull together the process as a whole. CMM describe characteristics of good processes—they do not provide processes CMM do not provide guidance about when to use what processes CMMs focus on compliance with requirements for processes and work products, as in the Product and Process Quality Assurance process area of CMMI, rather than on product value. 11/12/2018
Les ‘défauts’ du modèle Management aspects CMM provide little guidance on how to organize the people on the project Product oriented, matrix, IPTs, ... CMM do not address what kind of people should perform systems engineering, only how to train the people already there Innovation CMMs tend to be about reducing risks rather than about identifying and exploiting opportunities CMMs are not inconsistent with innovation Environment CMMI does not address the issue of providing a good support environment In many companies, tools are not upgraded fast enough to keep pace. 11/12/2018
Les ‘défauts’ du modèle Technical Aspects It is beyond the scope of capability models to define what levels of detail and abstraction are most appropriate for requirements, architecture, and design at a particular stage in the product development cycle. Operational Concepts CMMI does not address the use of operational concepts to help discover new requirements and as tools to validate derived and allocated requirements. 11/12/2018
Les ‘défauts’ du modèle Define the right problem CMMs assume that the objectives, work products, and plans were all correctly and unambiguously identified in the beginning. Exploration Phase Figuring out what problems should be solved during Development and articulating the systems requirements Because of the significantly different nature of the Exploration phase, a number of processes and activities advocated by the capability models are in need of substantial tailoring Exploration team must learn to recognize dead ends quickly. Capability models do not address these activities and skills Configuration Management - CCB Likely to be hundreds of alternative design concepts and corresponding paths of requirements, and to hold a CCB for every change is impractical or impossible 11/12/2018
Les malentendus Le CMM ne permet pas de mettre en place des pratiques d’un niveau de maturité supérieur à celui de l’organisation Le CMM impose un cycle de développement en cascade Le CMM oblige la mise en place de certaines méthodes pour satisfaire les pratiques clés Le CMM ne s’intéresse pas aux personnes, il ne discute que des pratiques ‘techniques’. 11/12/2018
Les évaluations Les évaluations CBA IPI sont longues et coûteuses 100 personnes-jours et plus Coût de l’évaluateur Environ 40,000$ 2. Les évaluations peuvent être inutiles pour les organisations immatures 3. L’organisation évaluée peut proposer des projets qui ne sont pas représentatifs des projets en développement. Ce qui peut ‘fausser’ le résultat de l’évaluation Projet en difficulté, par rapport à des projets sans trop de problèmes majeurs Très gros projet, par rapport à de nombreux petits projets 11/12/2018
Les évaluations L’évaluation est la même pour une petite société que pour une grande société Les évaluation ne mesurent pas quantitativement la productivité et le niveau de qualité Les organisations ne sont pas tenues d’effectuer une évaluation périodique (e.g. ISO 9000) Conséquence: une organisation peut revendiquer un niveau de maturité même si le niveau a été ‘perdu’ depuis plusieurs mois et même depuis plus d’un an 11/12/2018
La certification des évaluateurs Le processus de certification Suivre un cours ’Intro CMM’ d’une durée de trois jours Participer à titre de membre d’une équipe d’évaluation CMM Diriger, sous observation, une évaluation CMM Effectuer, en solo, des évaluations Évaluation d’une société niveau 3 pour confirmer le niveau 4 ? 11/12/2018
L’amélioration du processus Les organisations éprouvent des difficultés à définir un plan d’action Un grand nombre de sociétés (40%) ne parviennent pas à l’étape du plan d’action ou de l’implantation du plan d’action ou éprouvent de sérieuses difficultés 11/12/2018
L’amélioration du processus Il est très coûteux de former les praticiens au développement ou à l’utilisation des processus Les organisations éprouvent des difficultés à ‘intégrer’ les nouvelles pratiques Le CMM impose la rédaction de nombreuses et volumineuses procédures ‘Thick 3-Ring Binder’ 11/12/2018
L’amélioration du processus Il est parfois prohibitif pour une petite organisation d’investir dans l’amélioration des processus Les petites organisation n’ont pas les ressources compétentes pour développer et implanter les nouvelles pratiques Y-a-t-il des bénéfices à atteindre un niveau supérieur au niveau 3 ? Il n’y a pas de données qui montrent un cas d’affaire 11/12/2018
L’amélioration du processus La mise en oeuvre de certaines pratiques (e.g. inspection) semble plus efficace que la séquence de pratiques prescrites par le CMM L’amélioration des processus est perçu comme du temps perdu, du temps non productif. Let’s get ‘real’ work done ! Il semble difficile d’orchestrer plusieurs programmes d’amélioration e.g. ISO 9000, Six-sigma, TQM, et autres processus d’affaires. 11/12/2018
Les affirmations ‘gratuites’ Nous (i.e. un consultant) vous garantissons un niveau de maturité X en Y mois ‘Nos’ outils vous donneront un niveau X de maturité 11/12/2018
Critique des modèles d’évolution des capacités logiciel CMMSM et CMMISM CMM et CMMI sont des ‘marques de service‘ (service marks) du Software Engineering Institute 11/12/2018