





La complexité de code
La complexité de votre code à un impact significatif sur le taux de défauts ainsi que sur la robustesse de vos produits logiciels. C´est pourquoi, la mauvaise qualité d´un logiciel, ou des programmes erronés, sont souvent expliqués par une complexité de code trop élevée.En outre, un code complexe n´est pas seulement sujet aux erreurs, il est aussi difficile à tester, coûte cher et représente un défi à maintenir.
Comme les coûts d´un programme erroné, ou plus simplement de mauvaise qualité, peuvent être très élevés et peuvent même s´avérer critiques pour une entreprise, concevoir des logiciels avec une complexité raisonnable vous permet d´économiser de l´argent. C´est dans cet optique que l´on utilise les indicateurs de complexité de logiciel afin de localiser les parties du code qui se trouvent ètre trop complexes.
Seulement, ces programmes doivent être utilisés le plus tôt possible au cours du processus de développement de votre logiciel car cela vous permettra de trouver les bogues plus rapidement, tout en fournissant beaucoup moins d´efforts. Les indicateurs de complexité sont également utilisés pour contrôler la qualité des projets de développement qui ont été sous-traités à d´autres entreprises.
Les lignes de codes sont les indicateurs les plus traditionnellement utilisés pour mesurer l´exhaustivité de la complexité d´une application. Mais celles-ci ne prennent aucunement en compte l´intelligence du contenu ainsi que la disposition du code.
plus d´informations.
La complexité de McCabe (v(G)) est l´indicateur statique le plus largement répandu. Elle permet de mesurer le nombre de chemins linéaires-indépendants dans un module de programme.
Cet indicateur donne aussi des indications sur les tests : le nombre de cas de test pour une fonction devant être au moins égal à l´indicateur de McCabe.
plus d´informations.
Les indicateurs d´Halstead sont basés sur le nombre d´opérandes et d´opérateurs du code source:
- Nombre d´opérateurs uniques (n1)
- Nombre d´opérandes uniques (n2)
- Nombre total d´opérateurs (N1)
- Nombre total d´opérandes (N2)
- Le nombre estimé de bugs (Estimated number of errors), B
- Le niveau de difficulté (Difficulty level, error proneness), D
- L´effort d´implémentation (Effort to implement), E
- Le niveau du programme (Program level), Abstraktionsniveau des Programms, L
- La taille du programme (Program length), N
- Le temps d´implémentation (Implementation time / time to understand), T
- Le volume (Volume: size of the implementation of an algorithm), V
L´index de maintenabilité (Maintainability Index, MI) indique quand il est plus avantageux et/ou moins risqué de réécrire le code, au lieu de le modifier.
plus d´informations
Nos outils :
Testwell CMT++ (pour C et C++)
Testwell CMTJava (pour Java)
Imagix 4D
Documents:
Article sur la " Complexité et qualité , comment mesurer la complexité d´un logiciel"



