![]()
Précédent : Etude de l'apprentissage par exploration
Remonter : Travaux à caractère descriptif sur Suivant
: Réutilisation de connaissances en
supervision
Conception de programmes Participante : Françoise Détienne
Une synthèse des résultats d'études empiriques menées dans le domaine de la psychologie de la programmation sur l'activité de conception de programmes et sur les processus de réutilisation dans la conception a été réalisée [25, 15]. Il semble important de prendre en compte l'effet du paradigme de programmation sur les activités de conception. C'est ce qui a été fait dans une revue critique [14] des études expérimentales menées sur la conception orientée-objet (OO). Les défenseurs du paradigme OO font des hypothèses fortes sur le caractère naturel de la conception avec cette approche : ce paradigme entraînerait une meilleure conception et une meilleure réutilisation. Ces hypothèses ont été évaluées sur la base de résultats expérimentaux (voir par exemple [4, 8] ) concernant l'activité individuelle, de novices et d'experts, mais aussi l'activité collective de conception de logiciels.
Compréhension de programmes Participants : Jean-Marie Burkhardt, Françoise Détienne
Deux types d'approches théoriques s'opposent pour rendre compte de la compréhension de programmes : la compréhension de programmes vue comme de la compréhension de textes et la compréhension de programmes vue comme de la résolution de problèmes. Selon la première approche, trois types de modèles ont été empruntés à la compréhension de textes : les modèles fonctionnels, des modèles structurels, et des modèles intégrant la notion de modèle de situation (ou modèle mental). Nous avons développé ce dernier type de modèle pour rendre compte de la compréhension de programmes orientés-objet [12]. Selon la seconde approche, la compréhension de programmes est vue comme une activité de résolution de problèmes. Tout en intégrant l'approche fonctionnelle, elle met l'accent sur l'importance des processus selectifs et des représentations sélectives dans la compréhension de programmes. Dans une synthèse [16] nous discutons des validations expérimentales apportées à ces différentes approches. La compréhension de programmes se caractérise par le fait que comprendre un programme est toujours finalisé par une tâche (par ex, modification ou réutilisation) ou, selon la terminologie utilisée en compréhension de textes, par un objectif de lecture. Une question abordée dans cette revue de question est la prise en compte de l'effet des objectifs de lecture dans les différentes approches de la compréhension de programmes. Cette question est approfondie dans le cadre des modèles intégrant la notion de modèle de situation.
Mécanisme de réutilisation de solutions en programmation Participants : Jean-Marie Burkhardt, Françoise Détienne
Souvent, la tâche de conception de programme donne lieu à l'évocation et l'adaptation de solutions développées dans le passé, celles-ci provenant d'une source interne (mémoire du concepteur) et/ou externe (programme existant, composants, classe dont on hérite etc.). Une expérience a été menée pour étudier, dans un contexte le plus réaliste possible, l'activité de réutilisation. Notre étude a porté sur une population de 30 experts et de 21 novices en C++. Nous y examinons l'effet de la tâche de réutilisation et du niveau d'expertise sur les représentations d'un programme-source (codé en C++) construites par les concepteurs (en collaboration avec S. Wiedenbeck de l'Université de Nebraska et M. Ziane de l'IUT département informatique de Paris 5). De plus, une analyse fine de l'activité permet d'identifier les stratégies d'exploration du programme-source et les stratégies de réutilisation proprement dites. Les analyses quantitatives et qualitatives des données sont en cours (avec l'aide d'Yves Lechevallier, de l'INRIA SICLA ). La mise en perspective des premiers résultats avec ceux d'une précédente étude sur les mécanismes analogiques de récupération de solutions aboutit à la proposition d'un modèle de l'activité de conception avec réutilisation, dans un contexte de conception orientée-objet ; des spécifications ergonomiques en sont déduites pour l'assistance et les environnements de conception [3]. En parallèle, nous avons mené une réflexion sur l'aspect documentation de programmes car cet aspect est lié de façon intrinsèque à la réutilisation. Nous avons élaboré un cadre théorique qui permet d'intègrer ces deux versants de l'activité [13]. Il se base sur les modèles de compréhension de texte et de production de texte. Dans ce cadre, nous proposons une typologie cognitive des processus de réutilisation et des processus de documentation. Les points essentiels concernent la similarité entre les hiérarchies de représentations construites dans ces deux activités et l'idée que la production de notes en langue naturelle au cours de la conception est liée à la nature cyclique de l'activité de conception. Basé sur notre approche, nous proposons un cadre pour la documentation de composants réutilisables.