En programmation informatique , l'instrumentation est l'acte de modifier un logiciel afin de pouvoir effectuer une analyse dessus.
En général, l'instrumentation modifie soit le code source , soit le code binaire .
L'instrumentation permet le profilage : la mesure du comportement dynamique au cours d'une exécution de test. Ceci est utile pour les propriétés d'un programme qui ne peuvent pas être analysées de manière statique avec une précision suffisante, comme l'analyse des performances et des alias .
L'instrumentation peut inclure :
- Enregistrement d'événements tels que les échecs et le début et la fin des opérations
- Mesurer et enregistrer la durée des opérations
Limites
L'instrumentation est limitée par la couverture d'exécution. Si le programme n'atteint jamais un point d'exécution particulier, l'instrumentation ne collecte aucune donnée à ce stade. Par exemple, si une application de traitement de texte est instrumentée, mais que l'utilisateur n'active jamais la fonction d'impression, l'instrumentation ne peut rien dire sur les routines qui sont utilisées exclusivement par la fonction d'impression.
Certains types d'instrumentation peuvent entraîner une augmentation considérable du temps d'exécution. Cela peut limiter l'application de l'instrumentation aux contextes de débogage.