Page principale | Projets | Publications | Thèses | Présentations | Membres | Cours | Gallerie | Intérêt local
Home | Projects | Publications | Theses | Presentations | People | Courses | Gallery | Local interest
 

  Rétro-ingénierie des diagrammes de séquence
par visualisation interactive

Sommaire

Nous proposons une approche semi-automatique pour la rétro-ingénierie des diagrammes de séquence d'UML. Notre approche commence par un ensemble de traces d'exécution qui sont automatiquement alignées pour déterminer le comportement commun du système. Les diagrammes de séquence sont ensuite extraits avec l'aide d'une visualisation interactive, qui permet la navigation dans les traces d'exécution et la production des opérations d'extraction. Nous fournissons une illustration concrète de notre approche avec une étude de cas, et nous montrons en particulier que nos diagrammes de séquence générés sont plus significatifs et plus compacts que ceux qui sont obtenus par les méthodes automatisées.

Abstract

We propose a semi-automated approach for the reverse engineering of UML sequence diagrams. Our approach starts with a set of execution traces that are automatically aligned to determine the common behavior. Sequence diagrams are then extracted with the help of an interactive visualization, which allows navigating though execution traces and performing extraction operations. We provide a concrete illustration of our approach with a case study, and show in particular that the resulting diagrams are more meaningful and more compact than those extracted by automated approaches.

Mots-clés

rétro-ingénierie, diagramme de séquence, trace d'exécution, visualisation interactive.
reverse engineering, sequence diagram, execution trace, interactive visualization.

Online version

Available here in french (en français) in Adobe PDF format (1.6 MB).

BibTeX

@MastersThesis{Grati:2010:MSC,
  author =       "Hassen Grati",
  title =        "R{\'e}tro-ing{\'e}nierie des diagrammes de s{\'e}quence par visualisation interactive",
  month =        jul,
  year =         2010,
  type =         "M.Sc. Thesis",
  school =       "D{\'e}partement d'Informatique et Recherche 
                  Op{\'e}rationnelle, Universit{\'e} de Montr{\'e}al",
}