L'intégration Continue

Les précurseurs

Les outils de versionning

Les outils de gestion de version sont maintenant partie intégrante de la palette d'outils du développeur. Ils permettent d'avoir un référentiel permettant le partage entre plusieurs ressources, tout en conservant l'historique de tous les changements effectués, appelés révisions. L'utilisation de ces outils présentent des avantages indéniables:

Les tests unitaires

Les tests unitaires sont apparus très tôt, puis se sont peu à peu normalisés et adaptés aux besoins des développeurs. Ainsi, quasiment chaque langage dispose de ses propres tests unitaires, nécéssitant parfois l'utilisation d'un framework ou d'une bibliothèque externe:

Ces tests contrôlent l'implémentation du code au niveau des fonctions ou des classes. Leur principale utilité est de valider le bon fonctionnement de ces derniers, sans se préoccuper de l'application globale. Cela permet ainsi de garantir au maximum le fonctionnement correct des modules, et de minimiser ainsi les problèmes d'intégration.

Les outils de build

Les outils de build ont la responsabilité de compiler le code source, et éventuellement d'en assurer le déploiement. Tous les outils de build ont en commun qu'ils permettent une utilisation au travers de règles (compiler, déployer, tester, etc.). Parmi ces outils, on peut notamment citer les plus utilisés actuellement:

Les outils d'inspection de code

Les outils d'inspection de code permettent d'obtenir des indices de qualité du code produit, ainsi que des rapports donnant les différents points à revoir, éventuellement accompagnés de propositions de correction. Les outils actuels permettent ainsi de tester la généricité du code, sa documentation, les performances (profiling), les codes obsolètes, les mauvaises habitudes, le code mort, etc.

Ils servent donc à la fois au développeur, qui optimise ainsi sa technique et ses habitudes de programmation, qu'aux personnes réalisant la recette qualité d'un projet, grâce au reporting.