J'essaie de mettre en place un référentiel de code réutilisable. Je pensais que chaque module de code réutilisable aurait un certain "niveau de maturité". La note serait définie comme le niveau auquel un code réutilisable se situe par rapport à un certain ensemble d'exigences. Le niveau de maturité le plus élevé correspondra au degré de standardisation le plus élevé dans un ensemble prédéfini d'exigences.
Par exemple :
Niveau ; Exigences ; Description
Niveau 0 ; L'utilisation du code est légale ; L'utilisation du code est-elle légale dans l'industrie commerciale/à travers plusieurs contrats/etc ?
Niveau 1 ; ligne de code de base et satisfaction des exigences de niveau 0 ; code prototypé, outils tiers, etc.
Niveau 2 ; dispose d'une interface de fonction et de commentaires et répond aux exigences du niveau 1 ; documentation suffisante pour chaque classe et fonction ; capacité à déterminer la fonctionnalité à partir des commentaires.
Niveau 3 ; respecte les normes de codage et satisfait aux exigences de niveau 2 ; suit les normes de codage définies et réussit le test de l'utilitaire de vérification du code.
Niveau 4 ; inclut des cas de test et répond aux exigences du niveau 3 ; dispose de suffisamment de cas de test pour tester toutes les fonctionnalités du code.
Niveau 5 ; approuvé par le comité de réutilisation et répondant aux exigences du niveau 4 ; examiné par des experts en réutilisation et des pairs et vérifié qu'il répond à tous les niveaux de maturité.
Je me demande si ce niveau de maturité ne devrait pas être une structure hiérarchique, dans laquelle, pour passer au niveau suivant, il faut satisfaire aux exigences de tous les niveaux précédents (comme je l'ai montré ci-dessus) ?
Ou s'il doit s'agir d'un sous-ensemble d'exigences pour atteindre le niveau suivant ?
Par exemple, si nous avons satisfait à x exigences sur y, nous pouvons passer au niveau suivant (les exigences seraient les mêmes que celles mentionnées ci-dessus).
Niveau 0, répond à 0 des 6 exigences
Niveau 1, répond à 1 des 6 exigences
Le problème que je vois avec l'approche par sous-ensemble est que certaines exigences devraient avoir une plus grande pondération, et dans cette approche, cela ne sera pas pris en compte (à moins que je ne commence à devenir spécifique comme, satisfait a sur b et x sur y, etc). Mais dans ce cas, cela pourrait commencer à devenir compliqué.
Est-ce que quelqu'un a déjà fait cela, et si oui, comment avez-vous configuré votre bibliothèque ? Avez-vous un niveau de maturité ou une autre structure ? Toute contribution serait grandement appréciée.