11 votes

Comment créer et entretenir une bibliothèque de réutilisation du code ?

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.

1voto

ja. Points 2989

Consultez les "Confessions d'un vendeur de programmes d'occasion" de Will Tracz, ainsi que les articles de Martin Griss, le rabbin de la réutilisation chez HP.

0voto

Eduardo Molteni Points 23135

Je pense que vous réfléchissez trop à un problème qui n'en est pas un.

Comment avez-vous configuré ma bibliothèque ? Facile, si vous utilisez la même méthode (ou presque) dans deux projets ou plus, mettez-la dans la bibliothèque.

-1voto

ZeroCool Points 726

Il est bien vu d'avoir sa propre bibliothèque, mais une bibliothèque de plusieurs milliers de lignes est une ruine !

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X