Le Modèle de Maturité des Capacités (CMM) se présente comme une approche efficace et simple pour faire progresser diverses fonctions au sein de votre entreprise.
Pour la direction d’une entreprise, le contrôle d’un système ou la gestion d’un groupe, la compréhension des capacités se révèle essentielle.
Une fois que vous avez clairement identifié les différentes fonctions de votre entreprise, il est impératif d’évaluer leur performance. Cette évaluation permettra ensuite de définir des normes et des objectifs pertinents pour votre organisation.
Ainsi, pour mesurer et suivre les performances, ainsi que les progrès de chaque fonction et individu, les entrepreneurs et chefs d’entreprise ont besoin d’une solution robuste et d’une méthode pour capturer ces données.
De cette manière, une entreprise peut mettre en place des systèmes capables de gérer la complexité et de garantir la précision requise à grande échelle.
C’est précisément là que le CMM entre en jeu.
Dans cet article, nous allons explorer en détail ce que sont le CMM et le CMMI, leurs différents niveaux, ainsi que les distinctions qui les caractérisent.
Commençons cette exploration !
Qu’est-ce que le Modèle de Maturité des Capacités ?
Le Modèle de Maturité des Capacités (CMM) est une méthode éprouvée utilisée pour structurer et améliorer le processus de développement d’applications au sein d’une organisation. Il offre aux développeurs les outils nécessaires pour affiner leur approche de développement de logiciels, ce qui se traduit par une cohérence et une efficacité accrues.
Quel que soit votre rôle au sein de l’équipe de développement, vous familiariser avec le CMM peut vous aider à améliorer vos performances individuelles. Le CMM est donc une méthode qui soutient l’évaluation, le développement et l’optimisation du processus de développement logiciel.
Le CMM décrit les principales étapes du développement de logiciels et d’autres processus liés à l’ingénierie, à la gestion et à la planification. Il repose sur l’idée qu’une amélioration continue peut être atteinte par le biais de petites avancées progressives, plutôt que par des changements brusques et importants.
De plus, il propose un cadre pour gérer ces petites améliorations à différents niveaux de maturité, afin de mettre en place une base pour l’amélioration constante du processus de développement logiciel. Par conséquent, cette méthodologie sert de pilier central aux systèmes de gestion spécialement conçus pour renforcer la qualité du développement de produits et de services, ainsi que leur livraison.
Le CMM a été développé et promu par le SEI (Software Engineering Institute), un centre de recherche et développement financé par le ministère de la Défense américain. Il fait désormais partie de l’Université Carnegie Mellon. Le SEI a été créé en 1984 pour résoudre divers problèmes liés aux logiciels et pour faire progresser les méthodologies logicielles.
Le SEI a été mis en place pour optimiser le développement, l’acquisition et la maintenance des systèmes fortement dépendants des logiciels pour le ministère de la Défense (DOD). Il préconise l’adoption par l’industrie de l’évolution du CMM, notamment l’intégration CMM (CMMI).
Pourquoi utiliser le CMM ?
Le CMM présente de nombreux avantages, et l’un des plus importants est sa capacité à générer des gains de temps et d’argent. En effet, le système est spécialement conçu pour identifier les faiblesses dans le processus d’amélioration plus efficacement que d’autres modèles.
De plus, le CMM améliore les processus commerciaux et limite également les changements soudains dans les calendriers de production. Étant donné que le CMM a été le premier modèle conçu pour optimiser les processus industriels, il peut être considéré comme la pierre angulaire d’autres créations de modèles, telles que la version améliorée du CMM (c’est-à-dire le CMMI), le Business Capability Maturity Model (BCMM), et bien d’autres.
Le CMM est un modèle suffisamment flexible pour s’adapter à tous les processus et marchés. Quel que soit votre secteur d’activité, si vous disposez d’une équipe de développement, les membres peuvent utiliser ce modèle pour corriger les erreurs dans le processus.
Les cinq niveaux de maturité du CMM
Les cinq niveaux du modèle de maturité des capacités (CMM) dans le processus de développement sont les suivants :
#1. Niveau initial
À ce niveau, les processus ne sont pas organisés. Ils peuvent même être parfois chaotiques. Le succès dépend alors des efforts de chaque membre et ne peut être reproduit de manière fiable. Cela s’explique par le manque de documentation et de définition des processus pour permettre leur reproduction.
Les processus suivis sont immatures et ad hoc, ce qui crée un environnement instable pour le développement de logiciels. De plus, il est impossible de prévoir la qualité du produit ou le délai de sa finalisation.
#2. Répétable
À ce niveau, les processus nécessaires sont bien établis, documentés et définis. Par conséquent, les techniques de gestion de projet sont correctement mises en place, mais le succès n’est pas nécessairement reproductible dans tous les domaines clés du processus.
Le niveau de répétabilité peut être atteint en instaurant des politiques de base pour la gestion de projet. L’expérience acquise lors de projets précédents est utilisée pour gérer des projets de nature similaire. Cela inclut la définition des ressources nécessaires, des objectifs, des contraintes, etc. pour le projet.

Ce niveau présente un plan détaillé qui doit être scrupuleusement suivi pour assurer la réussite d’un logiciel de qualité. L’objectif principal est de maintenir les performances du produit, tel que son composant, tout au long de son cycle de vie.
Le niveau reproductible inclut également la prise en compte des commentaires des clients et la gestion des avis, ce qui peut entraîner des modifications des exigences initiales. Cette gestion des exigences consiste en la prise en compte de ces modifications.
De plus, la gestion de la sous-traitance vise à assurer la qualité des entrepreneurs impliqués dans le développement de logiciels. Cela signifie la gestion de certaines parties du logiciel développées par des tiers. L’assurance qualité logicielle garantit un produit logiciel de qualité grâce à l’application de règles et de directives standard pendant le processus de développement.
#3. Défini
La documentation des lignes directrices et des procédures est réalisée à ce niveau. Il s’agit d’un ensemble bien défini de processus et de gestion de l’ingénierie logicielle. Ceci comprend :
- Examens par les pairs : dans cette méthode, les défauts sont corrigés à l’aide de divers processus d’examen, tels que les inspections, les vérifications par les pairs, les procédures pas à pas, etc.
- Coordination intergroupes : cette méthode consiste en des interactions entre plusieurs équipes de développement pour assurer une satisfaction efficace et correcte des besoins.
- Définition du processus organisationnel : cette méthode se concentre sur le développement et la maintenance des processus de développement logiciel.
- Concentration sur les processus de l’organisation : cela inclut les pratiques et les activités qui doivent être suivies pour améliorer les capacités de processus de l’organisation.
- Programmes de formation : les programmes de formation visent à améliorer les connaissances et les compétences des membres de l’équipe et à accroître l’efficacité du travail.
#4. Géré

À ce niveau, des objectifs quantitatifs sont fixés pour la qualité des produits logiciels et les processus logiciels de l’organisation. Les mesures effectuées permettent de prévoir la qualité du processus et du produit dans des limites définies quantitativement.
Ce niveau englobe des stratégies et des plans pour développer et analyser quantitativement la qualité des produits. Il se concentre également sur la gestion de la performance du projet.
#5. Optimisation
Il s’agit de la dernière étape de la maturité des processus dans le CMM, qui se concentre uniquement sur l’amélioration continue des processus de développement au sein de l’organisation, par le biais de rétroactions quantitatives. Cela se fait en utilisant des techniques, une évaluation et des outils pour les processus logiciels afin d’éviter la répétition d’erreurs connues.
Ce niveau comprend :
- Gestion des changements de processus : ce processus de gestion vise à l’amélioration continue des processus de développement logiciel. Cela améliore la qualité, le temps de cycle et la productivité du produit logiciel.
- Gestion du changement technologique : elle consiste à utiliser des technologies et des techniques d’identification pour améliorer la qualité du produit et minimiser le temps de développement.
- Prévention des défauts : la prévention des défauts peut être effectuée en identifiant la cause des erreurs et en empêchant ces erreurs de se reproduire dans les projets suivants. Cela permet d’améliorer les processus définis par le projet.
Intégration du Modèle de Maturité des Capacités

L’intégration du Modèle de Maturité des Capacités (CMMI) est un modèle de processus simple que les organisations peuvent utiliser pour améliorer les processus de développement, stimuler les comportements efficaces et accroître la productivité dans le flux de travail lors du développement d’un produit, d’un service ou d’un projet. Il en résulte une réduction des risques tout au long du processus.
Le CMMI a été développé et introduit par l’Université Carnegie Mellon. L’objectif principal de ce développement est d’accroître l’efficacité et la convivialité des modèles de maturité, qui permettent de mesurer la capacité d’une organisation à progresser en continu dans des domaines particuliers. Cela ne peut se produire qu’en intégrant plusieurs modèles dans un seul cadre.
La première version est sortie en 2002 et la version suivante en 2006. En 2010, la version 1.3 a été publiée et la dernière version, 2.0, a été lancée en 2018, avec divers changements, notamment pour la rendre plus accessible et efficace pour les entreprises.
Le CMMI a été acquis par l’ISACA (anciennement connue sous le nom d’Information Systems Audit and Control Association), qui propose des certifications comme le cadre COBIT. Le CMMI est un modèle de processus et de comportement qui soutient les organisations tout au long du développement de produits ou de services.

Ainsi, l’objectif du CMMI est clair. Il est utilisé pour améliorer la qualité des services ou des produits en suivant un modèle qui répond aux attentes des clients et qui augmente la valeur d’une organisation sur le marché. Il évalue également la réputation de votre entreprise et la valeur des parties prenantes du secteur.
Le CMMI couvre actuellement les domaines d’intérêt suivants :
- CMMI pour le développement : Il est utilisé pour le développement de produits et de services.
- CMMI pour les services : il concerne la mise en place, la prestation et la gestion de services.
- CMMI pour l’acquisition : il concerne l’acquisition de produits et de services.
Représentation du CMMI
La représentation CMMI permet à une organisation de suivre un ensemble d’objectifs d’amélioration. Il existe deux représentations :
Représentation par étapes
- Elle utilise un ensemble défini de domaines de processus de développement pour décrire le chemin d’amélioration.
- Elle offre une série d’améliorations, où chaque partie de la série sert de base à l’amélioration suivante.
- Elle définit un parcours amélioré à l’aide de niveaux de maturité. Et le niveau de maturité indique la maturité des différents processus de l’organisation.
- Elle permet de comparer différentes organisations selon différents niveaux de maturité.
Représentation continue
- Elle permet de sélectionner des domaines de processus particuliers.
- Elle utilise des niveaux de capacité pour mesurer l’amélioration du processus individuel.
- De plus, elle permet de comparer les organisations en fonction des domaines de processus.
- La représentation continue permet également aux organisations de choisir parmi différents processus pour une meilleure amélioration.
- Dans cette représentation, les organisations peuvent mieux atteindre leurs objectifs et réduire les risques en choisissant l’ordre d’amélioration des différents processus.
Étapes du CMMI
Il existe cinq stades de maturité dans le CMMI avec une représentation par étapes :
#1.Initial : à ce niveau, les processus de développement sont mal contrôlés ou gérés. Les résultats des processus de développement sont imprévisibles. De plus, des approches chaotiques et ad hoc sont utilisées. Les domaines de processus clés (KPA) ne sont pas définis. La qualité n’est pas optimale, et le produit ou les services sont très risqués.
#2. Géré : à ce stade de maturité, les exigences sont gérées correctement et les processus de développement sont contrôlés et planifiés. Le projet est correctement géré et mis en œuvre conformément aux plans documentés. Cependant, le risque est toujours présent, mais il est moins élevé qu’au niveau initial.

#3.Défini : au niveau de maturité défini, les processus de développement sont bien décrits et caractérisés à l’aide de procédures, de normes, d’outils et de méthodes appropriés. La qualité est de niveau moyen, et le risque est également moyen.
#4.Géré quantitativement : dans ce modèle, les objectifs quantitatifs pour la qualité et la performance des processus sont définis. Il est basé sur les besoins de l’organisation, les exigences des clients, etc. Les mesures de performance du processus sont analysées quantitativement. Les processus sont de meilleure qualité, avec moins de risques.
#5.Optimisation : Il s’agit de la dernière étape du modèle de maturité, qui implique une amélioration continue de la performance et des processus. L’amélioration à ce niveau est à la fois innovante et progressive. Les processus et la performance sont de meilleure qualité, et le risque est le plus faible.
Niveaux de capacité du CMMI
Un niveau de capacité indique les pratiques pertinentes pour un domaine de processus particulier afin d’améliorer les processus d’une organisation liés à ce domaine. Il existe six niveaux de capacité pour les modèles CMMI :
- Niveau de capacité 0 (incomplet) : il comprend les processus incomplets, partiels et non exécutés. À ce niveau, il n’y a pas d’objectifs génériques.
- Niveau de capacité 1 (réalisé) : les performances du processus ne sont pas stables à ce niveau. Les objectifs de coût, de délai et de qualité ne sont pas atteints. Le processus de niveau 1 doit exécuter des pratiques spécifiques.
- Niveau de capacité 2 (géré) : le processus est surveillé, contrôlé et planifié à ce niveau. Les objectifs sont à la fois des modèles et des éléments tels que la qualité, le calendrier et le coût. L’organisation doit gérer activement les processus à l’aide de mesures.
- Niveau de capacité 3 (défini) : il s’agit d’un niveau défini où le processus est bien géré et répond à un ensemble de directives et de normes organisationnelles. Il se concentre sur la normalisation des processus.
- Niveau de capacité 4 (géré quantitativement) : ici, le processus est contrôlé à l’aide de techniques quantitatives et statistiques. À ce niveau, la performance des processus est comprise en termes de mesures et de statistiques.
- Niveau de capacité 5 (optimisation) : ce niveau se concentre sur l’amélioration continue de la performance des processus. Les performances sont améliorées de manière innovante et progressive.
CMM vs CMMI : Différence

Le CMMI est une version mise à jour ou plus récente du CMM. Le SEI a développé le CMMI pour normaliser et intégrer le CMM, qui avait différents modèles pour chaque fonction qu’il couvrait. Ces modèles n’étaient pas synchronisés ; leur intégration rend le processus plus flexible et efficace.
En ce qui concerne les domaines de processus clés, les pratiques, les niveaux de maturité et les objectifs, la structure du CMMI est semblable à celle du CMM. Cependant, le CMMI propose deux représentations différentes des processus.
Voici quelques autres différences entre le CMM et le CMMI :
| CMM | CMMI | |
| Définition | CMM signifie Capability Maturity Model, développé en 1984. | CMMI signifie Capability Maturity Model Integration, développé en 2006. |
| Objectif | Il s’agit d’un modèle comportemental développé pour mesurer les processus de développement logiciel au sein d’une organisation. | Il s’agit de la version mise à jour du modèle CMM, qui est plus axée sur les tâches et plus efficace. |
| Objectif Principal | L’objectif principal est d’évaluer les niveaux de maturité dans le processus de développement logiciel. | L’objectif principal est de combiner différents modèles logiciels en un seul et de surmonter certains inconvénients du CMM. |
| Étapes | Le CMM comporte cinq étapes : initiale, répétée, définie, gérée et optimisée. | Le CMMI comporte cinq étapes : initiale, gérée, définie, gérée quantitativement et optimisée. |
| Efficacité | Le CMM est moins efficace. | Le CMMI est plus efficace. |
| Orientation | Il est trop axé sur les processus. | Il est axé sur les objectifs. |
Conclusion
Le Modèle de Maturité des Capacités (CMM) est un système de résolution de problèmes pour les processus de développement de logiciels au sein des industries. Il peut éviter aux entreprises de rencontrer des problèmes liés aux processus.
D’autre part, le CMMI propose une méthodologie plus avancée que le CMM. Il vise à répondre aux attentes des clients, à valoriser la création, à développer la commercialisation, à améliorer la qualité des produits et des services et à accroître la notoriété.
Vous pouvez également explorer le cadre de gestion du cycle de vie des applications, qui contribue à développer et à livrer des logiciels dans les délais, dans les limites du budget et avec une qualité supérieure.