Outils de visualisation et d'aide à la mise au point de programmes avec contraintes

par Mohammad Ghoniem

Thèse de doctorat en Informatique. Interaction homme-machine

Sous la direction de Patrice Boizumault.

Soutenue en 2005

à Nantes .


  • Résumé

    La programmation par contraintes est une discipline informatique aux multiples applications dans l'industrie et la recherche. Elle s'attaque \'e0 des probl\'e8mes difficiles\par n\'e9cessitant souvent la mise au point d'algorithmes sophistiqu\'e9s. Or, jusqu'\'e0 pr\'e9sent, les praticiens de l'art de la programmation par contraintes sont d\'e9pourvus d'outils efficaces pour mener \'e0 bien cette entreprise. Dans le pr\'e9sent travail, diverses techniques de visualisation d'information sont mobilis\'e9es pour la surveillance et la mise au point de programmes avec contraintes. Nous commen\'e7ons par d\'e9crire les probl\'e9matiques li\'e9es au d\'e9bogage et \'e0 la mise au point de programmes avec contraintes et les structures de donn\'e9es principales manipul\'e9es par les solveurs de contraintes, \'e0 savoir des files, des arbres et des graphes. Ensuite, nous dressons l'\'e9tat de l'art des techniques de visualisation\par d'information les plus connues et mettons en oeuvre certaines d'entre elles de\par mani\'e8re cibl\'e9e sur les structures de donn\'e9es issues de la programmation par contraintes. Nous nous int\'e9ressons tout particuli\'e8rement \'e0 la visualisation des graphes de taille et de densit\'e9 importante et proposons de les visualiser sous forme de matrices d'adjacence. Gr\'e2ce \'e0 une exp\'e9rience contr\'f4l\'e9e que nous avons mise en place, nous d\'e9montrons que la repr\'e9sentation matricielle des graphes est plus lisible que la repr\'e9sentation traditionnelle sous forme de diagrammes noeuds-liens pour de nombreuses t\'e2ches. Nous d\'e9crivons \'e9galement l'utilisation e\'1bective de cette technique sur divers cas d'\'e9tude issus de la programmation par contraintes et mettons en lumi\'e8re l'utilit\'e9 de cette repr\'e9sentation pour conduire des raisonnements et adapter des strat\'e9gies de r\'e9solution con\'e7ues par des programmeurs en contraintes. Enfin, nous discutons des perspectives ouvertes par ce travail au plan de la programmation par contraintes, au plan du g\'e9nie logiciel, et enfin, de mani\'e8re plus g\'e9n\'e9rale, en termes de visualisation d'information.


  • Résumé

    Constraint-oriented programming finds numerous applications in the industrial and\par academic worlds. It often tackles hard problems that require sophisticated resolution\par algorithms. However, constraint-oriented programmers have so far been left without efficient debugging tools to help them in this endeavour. In the present work, we tackle one of those few problems where two computer science disciplines meet, namely information visualization and constraint-oriented programming. To begin with, we describe the problems related to the debugging and tuning of constraint-oriented programs, as well as the main data structures handled by constraint programs solvers. Then, we report the state of the art in the field of information visualisation and implement some of its most famous techniques suited for the problem at hand. We focus in particular on the visualization of large and dense graphs. For those, we propose a matrix-based visualization. By the means of a user controlled experiment, the matrix-based visualization proves to be more readable than traditional node-link diagrams on numerous tasks. We also describe the actual use of this visualization technique on various cases of study and outline how it can enhance reasoning and help constraint systems programmers adapt the strategies they design. Lastly, we discuss a few perspectives following the present work with regard to constraint programming, as well as software engineering, and more\par generally in terms of information visualization.

Consulter en bibliothèque

La version de soutenance existe sous forme papier

Informations

  • Détails : 1 vol. (211 p.)
  • Notes : Publication autorisée apr le jury
  • Annexes : Bibliographie p. 193-205

Où se trouve cette thèse ?

  • Bibliothèque : Université de Nantes. Service commun de la documentation. Section Sciences.
  • Disponible pour le PEB
  • Cote : 2005 NANT 2064
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.