Modèle de maturité des capacités (CMM) expliqué en 5 minutes ou moins

Le modèle de maturité des capacités (CMM) est un moyen efficace et simple de faire évoluer plusieurs fonctions de votre entreprise.

Pour diriger une entreprise, contrôler un système ou gérer un groupe, comprendre les capacités est un aspect essentiel.

Une fois que vous avez défini les différentes fonctions de votre entreprise, vous devez évaluer la performance de toutes ces fonctions. Selon cela, vous définissez des normes et des objectifs pour votre entreprise.

Ainsi, pour mesurer et contrôler la performance et l’avancement du travail de chaque fonction et individu, les entrepreneurs et chefs d’entreprise ont besoin d’avoir une solution solide et de la capturer.

De cette façon, une entreprise peut développer des systèmes qui peuvent supporter le fardeau de la complexité et donner la précision nécessaire à l’échelle.

C’est là que CMM entre en scène.

Dans cet article, je vais discuter de ce que sont CMM et CMMI, leurs niveaux et les différences entre eux.

Commençons!

Qu’est-ce que le modèle de maturité des capacités ?

Le modèle de maturité des capacités (CMM) est une méthodologie simple utilisée pour créer et affiner le processus de développement d’applications d’une organisation. Cela permet aux développeurs de développer et d’améliorer le processus de développement de logiciels, ce qui se traduit par une cohérence et une efficacité accrues.

Quel que soit le rôle qui vous a été attribué dans l’équipe de développement, vous familiariser avec CMM peut vous aider à améliorer vos performances. Ainsi, vous pouvez dire que CMM est une méthode qui aide à évaluer, développer et améliorer le processus de développement logiciel.

CMM décrit les principales procédures de développement de logiciels et d’autres princesses qui subissent l’ingénierie, la gestion et la planification. Il suppose qu’un processus d’amélioration régulier est réalisable via de petits signes de progrès au lieu de percées plus importantes.

En outre, il offre un cadre pour gérer les signes mineurs à différents niveaux de maturité afin de fournir une plate-forme d’amélioration continue du processus de développement logiciel. Par conséquent, cette méthodologie agit comme le cœur des systèmes de gestion spécialement conçus pour améliorer la qualité de développement des produits et services ainsi que leurs livraisons.

CMM a été développé et promu par le SEI (Software Engineering Institute), un centre de R&D parrainé par le DOD américain. Il fait maintenant partie de l’Université Carnegie Mellon. SEI a été fondée en 1984 pour résoudre divers problèmes logiciels et faire progresser les méthodologies logicielles.

SEI a été créé pour optimiser le processus de développement, d’acquisition et de maintenance de systèmes fortement réservés aux logiciels pour le ministère de la Défense (DOD). Il préconise l’adoption centrée sur l’industrie de l’évolution CMM, c’est-à-dire l’intégration CMM (CMMI).

Pourquoi avez-vous besoin de CMM ?

CMM a de nombreux atouts, et l’avantage le plus utile de l’utilisation de cette méthodologie est sa capacité à économiser du temps et de l’argent. En effet, le système est parfaitement conçu pour connaître les défauts du processus d’amélioration plus efficacement que les autres modèles.

De plus, CMM améliore les processus commerciaux et réduit également les changements soudains dans les calendriers de production. Étant donné que le CMM a été le premier modèle conçu pour améliorer le processus industriel, il peut être la pierre angulaire d’autres créations de modèles, telles que la version améliorée du CMM (c’est-à-dire CMMI), le Business Capability Maturity Model (BCMM), etc.

CMM est un modèle assez flexible pour tous les processus et marchés. Quel que soit le secteur auquel vous appartenez, si vous avez une équipe de développement, les membres peuvent utiliser le modèle pour corriger les erreurs dans le processus.

Cinq niveaux de maturité en CMM

Les cinq niveaux du modèle de maturité des capacités (CMM) dans le processus de développement sont :

#1. Niveau initial

À ce niveau, les processus ne sont pas en ordre. Cela peut même parfois être chaotique. Ici, le succès dépend des efforts de chaque membre et n’est pas considéré comme un processus reproductible. C’est uniquement parce que le processus n’est pas suffisamment documenté et défini pour pouvoir être reproduit.

Les processus suivis sont immatures et Adhoc, ce qui constitue un environnement instable pour votre développement logiciel. De plus, il n’y a aucune base pour prédire la qualité du produit et son temps d’achèvement.

#2. Répétable

À ce niveau, les processus requis sont bien établis, documentés et définis. En conséquence, les techniques de gestion de projet sont correctement établies et le succès peut ne pas être reproduit dans certains domaines de processus clés.

Le niveau de répétabilité peut être atteint en établissant certaines politiques de base de gestion de projet. L’expérience acquise dans des projets antérieurs est utilisée pour gérer des projets de même nature. Cela inclut la définition des ressources requises, des objectifs, des contraintes, etc. pour le projet.

Ce niveau présente un plan détaillé qui doit être suivi correctement pour 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 du cycle de vie du logiciel.

Le niveau reproductible comprend également les commentaires des clients et la gestion des avis, ce qui peut entraîner des modifications de l’exigence définie. Cette gestion des exigences consiste en la prise en compte des exigences modifiées.

De plus, la gestion de sous-traitance se concentre sur la gestion d’entrepreneurs qualifiés pour le développement de logiciels. Cela signifie qu’il gère certaines parties logicielles développées par des tiers. L’assurance qualité logicielle garantit un produit logiciel de qualité avec certaines règles et directives standard pendant le processus de développement.

#3. Défini

La documentation des lignes directrices et des procédures a lieu à ce niveau. Il s’agit d’un ensemble bien défini de processus et de gestion d’ingénierie logicielle. Ceci comprend:

  • Examens par les pairs : dans cette méthode, les défauts doivent être supprimés à l’aide de divers processus d’examen tels que les inspections, les vérifications par des 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 correcte et efficace des besoins.
  • Définition du processus d’organisation : La 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 comprend 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 se concentrent sur l’amélioration des connaissances et des compétences des membres de l’équipe et assurent une amélioration de 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 d’une organisation. Les mesures effectuées permettent à l’organisation de prédire la qualité du processus et du produit dans des limites définies quantitativement.

Ce niveau comprend des stratégies et des plans établis pour développer et comprendre l’analyse quantitative et 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 dans l’organisation via une rétroaction quantitative. Cela se fait en utilisant des techniques, une évaluation et des outils pour les processus logiciels afin d’éviter la répétition de défauts connus.

Ce niveau comprend :

  • Gestion des changements de processus : ce processus de gestion se concentre sur l’amélioration continue des processus de développement de logiciels. Cela améliore la qualité, le temps de cycle et la productivité du produit logiciel.
  • Gestion du changement technologique : Elle consiste en l’utilisation de technologies et de 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 défauts et en empêchant ces défauts de se reproduire dans les prochains projets. Cela améliore 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 améliorer 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.

CMMI a été développé et introduit par l’Université Carnegie Mellon. L’intention principale de ce développement est d’augmenter l’efficacité et la convivialité des modèles de maturité qui peuvent mesurer la capacité d’une organisation à avoir une amélioration continue 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 est apparue et la dernière version, 2.0, a été lancée en 2018, avec divers changements comme la rendre plus accessible, efficace, etc. ., pour les entreprises.

CMMI a été racheté par ISACA (anciennement connu sous le nom d’Information Systems Audit and Control Association), qui possède des certifications comme le cadre COBIT. Le CMMI est un modèle de processus et de comportement qui aide les organisations tout au long du processus de développement de produits ou de services.

Ainsi, l’objectif du CMMI est assez clair. Il est utilisé pour améliorer la qualité du service ou du produit en suivant le modèle qui répond aux attentes des clients et augmente la valeur d’une organisation sur le marché. Il évalue également la réputation de votre entreprise et la valeur des parties prenantes de l’industrie.

Le CMMI aborde actuellement les domaines d’intérêt suivants :

  • CMMI pour le développement : C’est pour développer des produits et des services.
  • CMMI pour les services : c’est pour l’établissement, la livraison et la gestion des services.
  • CMMI pour Acquisition : Il s’agit de l’acquisition de produits et de services.

Représentation du CMMI

La représentation CMMI permet à une organisation de poursuivre un ensemble d’objectifs d’amélioration. Il existe deux représentations :

Représentation mise en scène

  • Il utilise un ensemble défini de domaines de processus de développement pour décrire le chemin d’amélioration.
  • Il fournit une série d’améliorations, où chaque partie de la série sert de structure pour l’amélioration suivante.
  • Il 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.
  • Il permet la comparaison entre différentes organisations pour différents niveaux de maturité.

Représentation continue

  • Il permet la sélection de domaines de processus particuliers.
  • Il utilise des niveaux de capacité pour mesurer l’amélioration du processus individuel.
  • En outre, il permet une comparaison entre les organisations sur la base du domaine de processus par domaine 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 sélectionnant l’ordre d’amélioration des différents processus.

Étapes du CMMI

Il existe cinq stades de maturité dans 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. Cela implique également des résultats imprévisibles des processus de développement. De plus, des approches chaotiques et ad hoc sont utilisées. Vous ne trouverez pas de domaines de processus clés (KPA) définis. La qualité n’est pas si bonne, et le produit ou les services sont les plus à risque.

#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. Ici, le projet est correctement géré et mis en œuvre conformément aux plans documentés. Cependant, le risque existe toujours mais est inférieur 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é que vous trouverez est de qualité moyenne et le risque est également moyen.

#4.Géré quantitativement : dans ce modèle, les objectifs quantitatifs des processus de qualité et de performance 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. Ici, vous trouverez des processus de meilleure qualité à moindre risque.

#5.Optimisation : Il s’agit de la dernière étape du modèle de maturité qui implique une amélioration continue des performances et des processus. L’amélioration de ce niveau est à la fois innovante et progressive. Les processus et les performances 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 au domaine de processus. 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. A 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. Ici, les objectifs sont à la fois modèles et autres comme la qualité, le calendrier et le coût. L’organisation doit gérer activement les processus à l’aide de métriques.
  • Niveau de capacité 3 (défini) : il s’agit d’un niveau défini où le processus est bien géré et qui 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 métriques et en termes statistiques.
  • Niveau de capacité 5 (Optimisation) : ce niveau se concentre sur l’amélioration continue des performances des processus. Les performances sont améliorées de manière innovante et progressive.

CMM vs CMMI : Différence

CMMI est un modèle mis à jour ou plus récent de CMM. Le SEI a développé CMMI pour normaliser et intégrer CMM, qui a différents modèles pour chaque fonction qu’il couvre. Ces modèles ne sont pas synchronisés ; leur intégration rend le processus flexible et efficace.

En ce qui concerne les domaines de processus clés, les pratiques, les niveaux de maturité et les objectifs, la structure CMMI est similaire à la structure CMM. Cependant, CMMI propose deux représentations différentes des processus.

Découvrons quelques autres différences entre CMM et CMMI :

CMMCMMICMM signifie Capability Maturity Model, développé en 1984. CMMI signifie Capability Maturity Model Integration, développé en 2006. Il s’agit d’un modèle comportemental développé pour mesurer les processus de développement logiciel dans une organisation. C’est la version mise à jour du modèle CMM qui est plus axé sur les tâches et efficace. 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 logiciel et de surmonter certains inconvénients de CMM.CMM comporte cinq étapes : initiale, répétée, définie, gérée et optimiséeCMMI comporte cinq étapes : initiale, gérée, définie, gérée quantitativement et optimisée. Le CMM est moins efficace. Le CMMI est plus efficace. 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 dans les industries. Cela peut éviter aux entreprises de faire face à des problèmes de processus.

D’autre part, CMMI a une méthodologie plus avancée que CMM. Il s’agit de répondre aux attentes des clients, de valoriser la création, de développer la commercialisation, d’améliorer la qualité des produits et des services et d’accroître la notoriété.

Vous pouvez également explorer le cadre de gestion du cycle de vie des applications qui aide à développer et à livrer le logiciel dans les délais, dans les limites du budget et de qualité supérieure.