• Aucun résultat trouvé

ARTheque - STEF - ENS Cachan | Didactique de l'informatique

N/A
N/A
Protected

Academic year: 2021

Partager "ARTheque - STEF - ENS Cachan | Didactique de l'informatique"

Copied!
10
0
0

Texte intégral

(1)

Résumé DIDACTIQUE DE L'INFORMATIQUE A. MI CHARD I.N.R.I.A. Sophia Antipolis 06560 - VALBONNE

Cette communication décrit quelques uns des courants de recherche. relevant de la Psychologie et de l'Informatique. visant à fonder une didactique de la programmation.

(2)

1. Introduction.

La didactiqile ne l'informatiaue comme celle -le tout autre discipline scientifique, suppose que des choix soient faits sur les concepts gue l'on veut faire a(::oi1prir à l'élève et repose sur l'util isation des morJe'.1es de l'apprentissage Que nous offre la Psychologie gêne' ." E' Nous n'insisterons pas ici sur le premier point, à savoir le choix d'objectifs pédagogiques précis, pour lequel aucun consensus explicite n'existe à l'heure actuelle: entre ceux qui mettent J'accent sur la maitrise ne l'outil informatique par les éle'ves dans le but de les préparer à la dissémination des micro-ordinateurs, et ceux qui voient dans l'algorithmique une discipline générale de l'esprit favor-able à l'acquisition du raisonnement logiaue, les potnts de vue ne sont certes pas inconciliables mais inconciliés: il n'est en effet pas évident que les méthodes à utiliser dans ces deux optiques soient les m@mes.

Notre objectif ici est de montrer comment des théories issues de la Psychologie de l'apprentissage " .•. ;.:u @tre utilisées pour proposer des méthodes d'enseignenknt de la programmation, puis de décrire quelques dirFc':ions de recherche qui laissent peut-@tre présager ce que seront les outils pédagoqiques de demain.

2. !:'apport _cJ.~~ études psychologiques de programmation.

la Sic.J'Hion de

Trés sommair",ment, la psychologie nous dit ;:;C"?

appren-dre, c"'est réorganiser des connaissances antérie;lr(~5 pour définir de nouveaux types de relations capables Cle. rendre compte des expériences nouvelles du sujet.

Dans une perspeccive génétique, "outils" (schèmes) intellectuels dialectique d'assimilation des

l'"acquisition ej-,. r: LJ'Jeô':x

se fait par u.n prncessus

(3)

l'environnement à l'appareil cognitif du sujet, assimilation qui ne peut se faire évidemment que gràce et par les schemes déja disponibles, et d'accomodation de ces schemes, c'est à dire par une transformation de ceux-ci pour tenter de les adapter aux exigences du monde réel.

Dans une per specti ve de résolut ion de problème, apprendre, c'est intégrer de nouvelles informations dans une mémoire permanente, ou sémantique (elle est construite de signifiés relativement indépendants des signifiants qui ont permis leur manipulation), que les psychologues décrivent comme un réseau pour mettre l'accent sur les interdépendances entre les unités mémorisées. L'apprentissage peut être décrit comme une réorganisation de ce réseau sémantique: de nouvelles relations entre classes d'informations, entre con-cepts, sont établies, d'autre relations sont perdues ou "recodées" comme des cas particuliers de relations plus générales.

Ces principes psychologiques attirent donc l'attention du pédagogue sur le fait qu'un apprentissage ne se fait pas sur "le vide", mais à partir de structures et d'un contenu acquis qui conditionnent complétement la façon dont un sujet pourra apprenender une nouvelle réalité.

2.1. Utilisation de "modèles concrets".

Une méthode pédagogique éprouvée consiste à fournir au sujet confronté à la découverte d'une procédure logico-mathématique abstraite, un support concret permettant une activité sensori-motrice par laquelle le sujet pourra "objectiver" les étapes (transformations, résultats intermédiaires) de la procédure qu'il construit.

Dés 1950, Brownell et Moser [Il en Angleterre, et Aebli [2] à Genève, proposaient divers dispositifs matériels pemettant à l'enfant de découvrir et d'expliciter des procédures logico-mQthématiques générales.

(4)

Dans le domaine plus spécifique de la programmation informa-tique, Mayer [3], [4], a proposé et validé

representations concrètes de l'ordinateur pour l'élève de rattacher la notion de programme a matérialisant le déroulement de celui-ci et les

l'emploi de permettre a' un support transforrna-tions internes de la machine qu'il commande. Son paradigme expérimental est le suivant: il propose l'étude d'un langage informatique (Basic par ex.) à deux groupes d'élèves. Le premier groupe dispose comme support de cours d'un manuel décrivant fonctionnellement les diverses instructions, avec des exemples. Le second groupe commence par une étude d'un modèle concret de l'ordinateur visualisant le contenu des registres memoires, 1 es données entrées et sorties, et le programme avec un pointeur sur l'instruction courante: chaque instruction donne donc lieu de facon visible à une modification du contenu d'une ou plusieurs mémoires, et à des transferts entre entrée et mémoire et entre mémoire et sortie.

Ce second groupe dispose par ailleurs du même support de cours que le premier. L'auteur constate que le second groupe obtient de meilleures performances à un test d'apprentissage que le premier, et que cet avantage n'existe que si l'étude du modèle concret a précédé l'étude du langage et non l'inverse.

Une autre expérience du même auteur, construite sur le même modèle concerne l'apprentissage d'un langage de manipulation de fichiers. Là encore les résultats sont en faveur de cette technique d'ancrage des acquisitions par le biais d'un modèle concret.

Ce principe pédagogique de l'ancrage ne nécessite pas forcément l'emploi d'un dispositif artificiel. On peut en effet rattacher à ce même principe le système de manipula-tion géomètr ique LOGO décr i t dans les communicat ions précèdentes: l'enfant de dix ans environ dispose de schemes sensori-moteurs trés efficaces, alors que sa pensée

(5)

abstraite n~en est encore qu~à ses balbutiements. La notion d'algorithme pourrra être ancrée à la notion bien comprise d'enchainement de mouvements du corps propre de l'enfant pour obtenir un déplacement complexe. Cette isomorphie con-sciente entre les mouvements du corps et ceux de la tortue, décrite sous le nom de syntonie par Papert [5J, permet également une recherche de l'erreur de programmation beau-coup plus facile et fructueuse que si elle devait rester au niveau des représentations intériorisées.

2.2. Les données de ~-organisation.

Un autre pr incipe pédagog ique, également relié à la notion d~ancrage, a été proposé par Ausubel [6]. Ce dernier a constaté que la comprenension d'un texte technique relevant d~un domaine peu familier du lecteur, était facilitée si le document était précédé d'une courte intro-duction décrivant le sujet abordé dans des termes familiers à ce même lecteur.

Ce principe a été appliqué à la comprenension de programmes informatiques: un nombre important de recherches ont été consacrées à la documentation des programmes, c~est à dire à tous les commentaires, descriptions en langue naturelle, représentations synthétiques sous forme d~organigrammes ou de "pseudo-codes", destinés à facili ter la comprenension de l'algorithme.

Shneiderman a ainsi montré [7], [8], que les formes les plus traditionnelles de représentations d~un algorithme sous forme d' organig ramme n~éta ient pas les plus efficaces, et

qu~on pouvait par exemple leur préférer des représentations plus synthétiques illustrant mieux la dynamique des modifi-cations des valeurs des variables. Ces résultats semblent donc converger nettement avec ceux de Mayer [op. ci té]: les représentations proposées ressemblent, en plus générales, aux modèles concrets de l'ordinateur utilisés par cet auteur. On remarquera toutefois que ces représentations

(6)

concrètes de "l'état de la machine" sont statiques: elles sont généralement fournies sur support papier comme une aide i la lecture du proqramme. D'autre outils de plus en plus répandus dans les "environnements" de programmation modernes sont dynamiques: la possibilité d'obtenir pendant l'éxècution du programme une "trace" des modifications de des variables et du contrôle (c'est à dire des "choix" à chaque embranchement possible du programme) est largement exploitée par les orogrammeurs en particulier lors de la phase de mise au point du programme. Il ne semble pas que l'utilité didactique de ces aides ait été encore systématiquement évaluée.

3. Quelques voies actuelles de recherche.

On peut penser que les progrés les plus marquants dans la didactique de l'informatique sont venus (cf LOGO) et viendront de la rencontre entre deux courants de recherches encore trop lointains: celui gui vise a une meilleure comprenension du fonctionnement cognitif du sujet program-mant ou apprenant i programmer, et celui visant i la concep-tion de nouveaux outils (langages, dispositifs d'aide i la programmation, etc .. ) informatiques. Il nous semble toutefois que c'est dans le premier de ces domaines que les plus grands progrés restent à faire (c'est sans doute là aussi qu'ils sont les plus difficiles à obtenir) pour pouvoir proposer au pédagogue des méthodes et des outils plus efficaces.

Les trois premières communication de cette séance illustrent bien quelques une des voies explorées par les psychologues. Nous tenterons de décrire rapidement ici les travaux plus orientés vers la conception des outils informatiques.

(7)

3.1. Les langages de programmation.

Les langages de programmation les plus répandus (Basic, Fortran, Pascal, etc .. ) permettent de décrire une procédure de transformations de variables, ces dernières pouvant être simples (numériques, booléennes) ou complexes (chaines de caractères, matrices .•• ). Toute procédure un tant soit peu complexe peut être décomposée en une suite de procédures plus élémentaires et souvent plus générales Une première évolution des langages de programmation a visé a faciliter cette écriture modulaire des programmes. A cet égard, les langages "procéduraux" les plus récents (Pascal, Ada) per-mettent non seulement au programmeur confirmé d'écrire des programmes mieux structurés et donc plus lisibles, mais facilitent chez le deêutant la planification de la procédure en lui imposant des règles d'explicitation des étapes de celle-ci. Il est intéressant de remarquer que le plus répandu de ces langages structurés, Pascal, était précisemment destiné dés sa conception à être un outil d'enseignement de la programmation, les créateurs cherchant à définir un langage incitant les d débutants à de "bonnes habitudes" de programmation [9].

Par ailleurs, la possibilité de compiler séparément des procédures suceptibles d'être mises en oeuvre dans un même programme permet de constituer des bibliothèques de "sous-programmes" qui constituent une aide précieuse pour le deôutant lui permettant d'obtenir rapidement des résultats non triviaux.

Une toute autre approche est celle des langages de "manipû-lation d'objets". Deux existent à l'heure actuelle: LOGO, bien connu maintenant, et Smalltalk dont la diffusion est pour l'instant plus restreinte en Europe tout au moins. L'entité manipulée n'est plus une variable, mais un "objet", seulement graphique dans le cas de Logo, ou quelconque en Smalltalk. Un objet est un ensemble de valeurs et de procédures permettant de les manipuler. On peut transformer l'état d'un objet en lui envoyant un message. Enfin, un

(8)

objet peut envoyer un message ~ un autre objet ou ~ lui-même (récursivité). Des objets de plus en plus complexes peuvent être définis ~ partir des objets simples disponible dans une bibliothèque.

Les auteurs de Smalltalk ont travaillé pendant environ qua-tre ans sur l'apprentissage de la programmation par les enfants. Les résultats ne sont malheureusement réellement probants que

c'est à dire équivalente problème du procéduraux

pour la manipulation des objets graphiques, pour la oartie du langage fonctionnellement à Logo. Enfin, pour ces deux langages, le transfert des connaissances à d'autres langages, par exemple, reste entier.

3.2. La structuration des données.

Les applications informatiques les plus répandues (ges-tion) portent sur des ensembles d'informations souvent trés complexes suceptibles d'être manipulées par de nombreux pro-grammes différents. Les systemes de gestion de base de données (SGBD) sont des outils permettant de décrire et de manipuler à partir de programmes ces grandes masses d'informations. Plusieurs modèles de structuration de l'information existent: le modèle "en réseau" dans lequel les relations entre les di fférentes classes d'informations sont explicitement décrites par l'utilisateur, le modèle "relationnel" dans lequel les données sont décrites sous formes de tableaux ~ double entrée, chaque tabl eau consti-tuant une regroupemen t log ique, le modèle h iér archique où l'information est structurée sous forme d'un arbre symbol-isant les relations d'inclusion entre classes.

Ces modéles ne sont pas fonctionnellement équivalents, mais qui plus est, on peut faire l'hypothèse qu'il ne permettent pas de refléter avec la même facilité la représentation "sémantique" que le sujet se fait des informations. Des recherches nous paraissent nécessaires pour mieux connaitre la valeur didactique de ces différents modèles.

(9)

3.3. Les outils de programmation.

Les plus importants appartiennent catégories: les éditeurs, et les aides L~édition, au sens informatique du terme, qui a trait à la frappe dactylographique

à deux grandes au diagnostic. recouvre tout ce

d~un texte (qui

mots dans un paragraphe d'aide à la mise au point, peut être un programme) et à la correction des différentes erreurs. Les progrés les plus notables dans le domaine des éditeurs interactifs tiennent au fait que les programmes ont une structure syntaxique entièrement définie, et qu~il est possible de tenir compte de cette structure pour diagnosti-quer en temps réel (c'est à dire au moment de la saisie) un grand nombre d~erreurs de programmation qui ne seraient sur un systeme traditionnel apparues que lors de la compilation ou de l'éxécution du programme.

Les plus sophistiqués de ces éditeurs syntaxiques donnent également la possibilité d~obtenir instantanément des représentations laconiques et synthétiques de la structure du programme. Ces outils, fort appréciés des programmeurs de haut niveau, pourrait sans doute, au prix d'une adaptation "ergonomique", constituer une aide précieuse pour le débutant.

Nous avons déja dit quelques précédent des outils dynamiques et nous n'y reviendrons pas.

4. Conclusion.

Il est clair que dans le domaine de l'apprentissage de la programmation, les recherches sont encore rares et ne convergent pas vers un corpus de connaissances cohérent suf-fisant pour asseoir une bonne pédagogie.

Il nous semble que l'intérèt relativement récent que portent les psychologues à ces problèmes, peut faire espérer des progrés substanciels. De nombreux outils informatiques existent ou peuvent être créer à la condition qu'une con-naissance opératoire du fonctionnement cognitif du sujet

(10)

programmant soit disponihJe pour guider J'informaticien. Le coût de l'adaptation ou de la création d'un logiciel moderne (langage, éditeur, SGBD, etc .. ) est tel que l'empirisme et les essais et erreurs sont à coup sur de mauvaises méthodes pour progresser.

REFERENCES.

[lJ Brownell W.A.; Moser H.E.; Meaningful vs. mechanical learning: a study in grade III substraction. Duke University Research Studies in Education. Duke University Press, Durham N.C. 1949

[2J Aebli H. Didactique psychologique. Delachaux-Niestlé, Neufchatel, Suisse, J.947

[3] Mayer R.E. Different problem-solving competencies esta-blished inlearning computer programming with and without meaningful models. J. Educ. Psychol, (67), 1975, 725-734.

[4] Mayer R.E. The psychology of how novices learn computer programming. ACM Computing Surveys, 13,1,1981,121,141.

[5] Papert S. Mindstorms. Chi1dren, Computers and powerfu1 ideas. Basic Books, N.Y. 1980.

[6] Ausubel D.P. Educationnal Psycholoqv: a cognitive view. HaIt, Rinehart and Winston, NY, 1968.

[7] Sneiderman B., Mayer R. ,Mc Kay D., HelIer P.; Experimen-tal investigation of the utili ty of detai led flowcharts in programming. Comm. ACM, 20, 1977, 373,381.

[8] Shneiàerman B., Control f10w and data structure documen-tation: two experiments. Comm ACM, 25, l, 1982, 55,63

[91 Jensen K., Wirth N.; Pascal user manual ard report. Springer-Verlag, NY, 1975.

Références

Documents relatifs

De ce point de vue, si les acteurs privilégiés de la didactique comparée sont les chercheurs en didactique travaillant dans leurs champs disciplinaires, c’est

Bien qu’il s’agisse d’une revue destinée à promouvoir la recherche en didactique des sciences et des techniques, les articles traitant des disciplines technologiques

Une des questions centrales pour toute théorie de l'intervention didactique concerne la forme sous laquelle l'information est le mieux transmise ~ l '~l~ve. Dans

en 1969 pour la biologie et dont certains travaux ont fait l'objet de publi- cations dans des revues de didactique. -L'ouverture de l'université à l'enseignement uour adultes a

Les deux autres logiciels (RES AIR et PENDSIM) exploitent les possibilités graphiques pour la représentation dans des espaces variés (espace de phase, espaces d'énergies, ...)

Il est certain qu'à travers ce foisonnement de recherches, un certain nombre d'idées directrices en matière de didactique des sciences et de pédagogie appliquée voient le jour

La pédagogie de la technologie a fait l’objet de très importants investissements dans la formation des maîtres, dans les diverses voies qui étaient ouvertes par

- La création d’un pôle de recherche en innovation didactique en informatique - Innovation dans les pratiques d’enseignements et les approches d’apprentissage - Innovation