Génération de modèles et extraction de qualités pour le développement logiciel Agile

  • François Georis

Student thesis: Master typesMaster en sciences informatiques à finalité spécialisée en data science

Résumé

En développement logiciel Agile, on utilise habituellement un backlog composé d’un ensemble d’histoires d’utilisateur pour documenter les exigences utilisateurs d’un projet. En règle générale, chacune d’elles correspond à une phrase assez courte respectant le template de Cohn(“As a <acteur>, I want <objectif> ,[so that <bénéfice>]”) et leur nombre est assez élevé. Cela rend très compliqué le maintien du backlog, la compréhension du domaine couvert sans une analyse détaillée et l’identification de l’impact de chaque histoire d’utilisateur sur les décisions de design. Les attributs de qualité sont l’un des facteurs les plus importants dans la prise de décisions design. Dans ce mémoire, nous proposons: (a) une technique d’identification des attributs de qualité liés à une histoire d’utilisateur et (b) une approche permettant de modéliser automatiquement les histoires d’utilisateur sous forme de diagrammes de robustesse (visualisation semi-formelle modélisant le flux d’un scénario en incluant les acteurs, les entités du domaine et les interfaces utilisateurs). Pour évaluer nos travaux, nous avons utilisé une base de données composée de 1,675 histoires d’utilisateur réparties entre 22 backlogs de projets industriels et universitaires. (a) Pour cette première technique, nous avons testé différents modèles de classification d’apprentissage automatique pour prouver qu’il est possible de détecter les histoires d’utilisateur faisant référence à un attribut de qualité et d’en identifier le type. Nos expérimentations ont pu montrer la faisabilité de notre idée avec un F1-Score de 0.71 pour la détection et un F1-Score de 0.63 pour l’identification. (b) La seconde technique permet de fusionner les diagrammes de robustesse de plusieurs histoires d’utilisateur afin d’offrir une vue d’ensemble du domaine et permettre l’identification de la redon- dance et des incohérences potentielles. De plus, pour faciliter l’analyse en détail d’un élément de ces diagrammes unifiés, nous proposons une approche par "Point-De-Vue". Elle consiste à sélectionner un élément et à représenter seulement les objets du diagramme en lien avec celui-ci. Nous avons évalué la qualité syntaxique des diagrammes de robustesse générés en fonction du fait que l’ensemble des objets qui le composent sont connectés ou ne le sont pas.
la date de réponse14 juin 2019
langue originaleFrançais
L'institution diplômante
  • Universite de Namur
SuperviseurPierre Yves Schobbens (Promoteur)

mots-clés

  • Agile
  • Machine Learning
  • attribut de qualité
  • Agile Software Development
  • model-driven development
  • natural language processing
  • software architecture
  • decision making
  • machine learning

Contient cette citation

'