Analyse de l'activité des utilisateurs (traces) dans les logiciels

Partager par e-mail

Les logiciels pour les services publics sont toujours plus complexes car la réglementation évolue constamment et les besoins des utilisateurs s'affinent. Ainsi, la qualité des logiciels diminue, ce qui rend leur maintenance et leur utilisation plus difficiles. Par exemple, certaines anomalies survenant dans l'environnement de production ne peuvent être reproduites et ne peuvent donc être résolues. Du point de vue de l'utilisateur, le logiciel devient plus complexe à utiliser et à comprendre, ce qui affecte l'expérience utilisateur.

Pour garantir un niveau de qualité acceptable, nous explorons l'exploitation des traces des utilisateurs. Une trace utilisateur est une empreinte laissée par un utilisateur lors de l'utilisation d'un logiciel. A court terme, l'objectif est de fournir du feedback aux équipes de production. Par exemple, cela pourrait nous permettre de confronter les traces des tests d'acceptation à l'utilisation réelle. A long terme, un assistant intelligent pourrait être conçu pour aider l'utilisateur à effectuer des tâches délicates ou des actions répétitives. Pour ce faire, il est nécessaire de modéliser le logiciel à partir des traces de l'utilisateur. L'analyse de l'activité de l'utilisateur est particulièrement intéressante car elle donne un aperçu réaliste de la façon dont l'utilisateur utilise l'application et de son fonctionnement. Enfin, aucune action n'est requise de la part de l'utilisateur pour capter, enregistrer et collecter des observations. Cependant, les données collectées doivent respecter la vie privée de l'utilisateur et s'inscrire dans un cadre éthique de traitement.

De nombreux domaines scientifiques étudient l'activité de l'utilisateur mais atteignent des objectifs différents. Nous nous concentrons sur la découverte des processus car le modèle de processus d'entreprise est le point de départ de l'adaptation des processus. Pour l'instant, c'est le plus précieux.

Les approches existantes proposent différentes méthodes pour trouver un modèle de processus à partir de traces d'activités. La plus connue est le process mining (van der Aalst, 2016). Plusieurs expériences ont été menées sur un jeu de données en accès libre du logiciel Berger-Levrault. Les expériences sont basées sur une étude réussie (Astromskis et al., 2015) mais ne parviennent pas à reproduire ces résultats. Deux points peuvent expliquer cela :

  • La conception du système d'enregistrement est cruciale. La meilleure façon de procéder est de concevoir le système d'enregistrement en fonction d'un objectif connu. Mais avec les logiciels existants, ce système d'enregistrement existe déjà, comment l'améliorer ? Plus généralement : comment concevoir un bon système d'enregistrement ?
  • es résultats montrent des caractéristiques de nos données qui ne peuvent pas être traitées par les méthodes actuelles d'extraction de processus. Par exemple, les données sont bruyantes et peuvent décrire des cas d'utilisation qui se croisent sans information d'étiquetage. Ces problèmes de données proviennent du workflow non structuré de l'application (❷ et ❸). Du point de vue de la conception, le flux de travail ❶ est meilleur, mais cela peut être pénible pour l'utilisateur lorsque le processus métier est complexe ❸.

Notre objectif est de concevoir un système multi-agent. En effet, les systèmes multi-agents adaptatifs ont déjà prouvé leur capacité à gérer des données complexes. Notre travail est décomposé en plusieurs étapes, la première conçoit et implémente un système multi-agent capable de détecter et de corriger les erreurs dans les traces. Dans cette étape, le modèle de processus est supposé être connu. Les résultats de l'évaluation sont encourageants. La deuxième étape consiste à ajouter des erreurs au modèle du processus. De nouveaux comportements de l'agent devront être déterminés pour résoudre ce problème. Cette étape prépare à un démarrage sans modèle présupposé. Le modèle doit ensuite être entièrement découvert.

Plus ...

Retour en haut