Un meilleur diagnostic des défaillances logicielles grâce à l'amélioration des pratiques de journalisation

 

Tse-Hsun Chen

Université Concordia

 

Domaine : technologies de l'information et des communications

Programme : établissement de nouveaux chercheurs universitaires

Concours 2019-2020

Les journaux d'événements sont largement utilisés dans les logiciels pour enregistrer les comportements de l'exécution du système. Ces journaux d'événements contiennent des renseignements précieux pour le diagnostic des défaillances du système. Des études ont même montré que les journaux d'événements sont souvent la seule source d'information pour diagnostiquer ces défaillances. Cependant, les développeurs ne peuvent pas trop ajouter de code de journalisation en raison de la surcharge du système causée par les journaux d'événements. La qualité du code de journalisation et de l'information intégrée dans les journaux d'événements affecte donc directement la capacité des développeurs à diagnostiquer et à résoudre rapidement la défaillance. Même si les professionnels en exercice utilisent les journaux d'événements depuis des décennies, il n'existe aucune norme industrielle sur la façon de les coder. Le but de notre projet de recherche est d'aider les professionnels du domaine à mieux diagnostiquer les défaillances du système en améliorant leur pratique de journalisation. Nous adopterons une démarche assistée par outil pour étudier manuellement le code journalistique et son contexte (c'est-à-dire son code environnant) dans des systèmes en libre accès et établir des lignes directrices concernant les journaux d'événements. Nous interrogerons ensuite des développeurs afin qu'ils confirment les lignes directrices et expliquent les raisons d'être du code de journalisation. À l'aide des résultats de notre étude et de nos entrevues avec les développeurs, nous créerons un outil automatisé pour dépister les codes journalistiques et suggérer des solutions aux défaillances. Finalement, nous aiderons les développeurs à mieux tirer parti des journaux d'événements lors des diagnostics de défaillances en les améliorant avec des données issues d'autres sources telles que le code source et l'historique du développement du logiciel. Notre projet de recherche contribuera à l'amélioration des pratiques de journalisation dans les entreprises canadiennes et aidera les professionnels à mieux diagnostiquer et résoudre les défaillances du système.