Responsable : 
Shang, Weiyi

Établissement : 
Université Concordia

Année de concours : 
2021-2022

Due à la récente croissance de systèmes à grande échelle faisant appel à beaucoup de logiciels (par exemple, systèmes basés sur le cloud, et systèmes cyber-physiques), la qualité des logiciels et l’expérience utilisateur sont devenues des éléments critiques, mais complexe. Les parties prenantes du logiciel (développeurs, concepteurs, opérateurs et utilisateurs finaux) examinent et répondent à ces défis de manière collaborative via des problèmes de systèmes (ou « system issues » en anglais), qui englobent des unités de travail pour améliorer le système. Les pratiques DevOps largement adoptées, cependant, ont mis en évidence de nouveaux défis pour la gestion des problèmes de systèmes, y compris les besoins spécifiques liés aux rôles et les préoccupations de la confidentialité des utilisateurs. Ces défis nécessitent des solutions de traçabilité basées sur les rôles, centrées sur l’utilisateur et respectant la confidentialité, pour construire de manière dynamique les relations entre les activités liées aux problèmes de systèmes et divers artefacts logiciels et sources de connaissances.
Ce projet cible directement ce problème et étudiera des nouvelles techniques de traçabilité pour prendre en charge les tâches liées aux problèmes de systèmes dans l’environnement DevOps. Nous nous concentrons particulièrement sur six objectifs de recherche (OR). Dans OR1, nous développons des connaissances empiriques sur les besoins en traçabilité pour les activités liées aux problèmes de systèmes parmi les différentes parties prenantes du logiciel. Dans OR2, nous construisons un alignement entre les modèles d’objectifs qui capturent les besoins en traçabilité et les modèles d’informations de traçabilité qui encapsulent les données disponibles. Sur la base des connaissances acquises dans OR1 et OR2, nous étudierons ensuite des techniques permettant de suggérer de manière dynamique des instances de source de connaissances en fonction de l’activité en cours des parties prenantes (OR3). Ces trois premiers objectifs constituent une infrastructure technique à résoudre des tâches liées aux problèmes de systèmes. Ainsi, nous étudions l’application de ces techniques pour aider les opérateurs (OR4) à détecter et localiser les problèmes de systèmes, les développeurs (OR5) à les résoudre pendant des activités collaboratives et les utilisateurs (OR6) à considérer les risques relatifs à la confidentialité.
Le projet proposé apportera des contributions scientifiques novatrices et des connaissances pratiques pour la traçabilité dans DevOps et la gestion des problèmes de logiciels en explorant des méthodes et techniques de traçabilité dynamiques, basées sur les rôles, centrées sur l’utilisateur et les sources de connaissances. Les résultats de cette recherche aideront non seulement les parties prenantes du logiciel à mieux aborder les tâches liées aux problèmes de systèmes, mais aideront également le grand public à mieux comprendre les défis et les risques inhérents aux systèmes logiciels.
Les trois membres de l’équipe impliqués dans ce projet possèdent collectivement des connaissances et une expérience étendue en matière de DevOps, de traçabilité, de gestion des problèmes de systèmes et de méthodes centrées sur l’utilisateur pour mener la recherche. La collaboration étendue dans le projet proposé exploitera l’expertise unique de chaque membre en matière de génie logiciel et d’interaction homme-machine.