Queen’s University
Les logiciels font partie intégrante de notre société : ils facilitent notre vie quotidienne et nous aident à mieux l’organiser… jusqu’à ce qu’un problème surgisse. Des tâches de base comme gazouiller, texter ou faire des appels par Skype sont exécutées par l’entremise d’interfaces simples qui cachent des plateformes complexes à fort contenu logiciel qu’on appelle des systèmes à ultra grande échelle (UGE). Chaque jour, des millions de personnes utilisent des systèmes à UGE comme ceux de Google, de Facebook, d’Amazon et de PayPal. Et pourtant, les méthodes employées jusqu’ici pour construire et exploiter ces systèmes d’une grande complexité sont généralement plutôt intuitives, ce qui entraine un gaspillage de ressources et une augmentation des couts de développement. L’industrie des logiciels à UGE a un besoin criant de systèmes pouvant aider à la prise de décisions basées sur des faits pour minimiser les risques auxquels s’exposent les développeurs et optimiser l’expérience des utilisateurs.
Ahmed Hassan, chercheur en analyse logicielle à la Queen’s University à Kingston, en Ontario, améliore la façon dont les systèmes à UGE sont construits et utilisés. Son équipe et lui utilisent des techniques d’apprentissage machine et d’exploration de données pour fouiller les riches dépôts de données rarement explorés qui sont associés à ces systèmes. Ils analysent non seulement le code informatique des systèmes à UGE, mais également toute l’information recueillie pendant leur développement et leur exploitation : les notes de conception, les modifications apportées aux codes, les commentaires des utilisateurs, l’historique du débogage, les journaux et les courriels. L’étude approfondie de ces sources d’information permet de faire ressortir les problèmes et les possibilités qui, autrement, auraient pu passer complètement inaperçus, comme les mises à jour qui sont les plus susceptibles de présenter des bogues ou de contrarier les utilisateurs.
Les solutions de M. Hassan ont déjà été adoptées par divers secteurs de l’industrie au Canada et à l’étranger. Ses travaux de recherche permettent aux développeurs de systèmes à UGE de mieux connaitre leurs logiciels et d’avoir accès à des solutions intelligentes qui font que ces systèmes essentiels sont durables, fiables et conviviaux. Et pour nous, qu’est-ce que cela signifie? De meilleures expériences utilisateur, des applications qui plantent moins souvent, moins de pépins informatiques dans les sites Web et aucune crainte de rater les nouvelles publications de nos amis dans les médias sociaux.