** Nouveau depuis août 2007 **

La programmation en première année basée sur l'enrichissement progressif de micromondes multi-agents

(First-year programming based on progressive enrichment of multiagent microworlds)

par Isabelle Cambron, Mathieu Cuvelier, Gregory de le Vingne, Maxime Romain, Cécile Toint et Peter Van Roy

Comment est-ce que l'on peut bien enseigner la programmation lors de la première année? C'est une question importante qui peut amener à une manière de voir l'enseignement de la programmation très différente des manières classiques. Nous avons développé un cours basé sur l'idée d'une progression de micromondes ("microworlds" en anglais).

Chaque micromonde contient quelques concepts et permet aux étudiants d'apprendre ces concepts. Quand les étudiants atteignent les limites d'un micromonde, nous ajoutons quelques concepts pour créer un nouveau micromonde plus riche. Cela donne une suite de micromondes qui mène rapidement à des concepts typiquement vus dans des cours beaucoup plus avancés. Ainsi, les étudiants apprennent la programmation multi-agent aux agents concurrents, les interfaces graphiques, les composants logiciels, la tolérance aux pannes, et d'autres concepts sophistiqués encore, le tout dans un cours abordable de première année. La programmation concurrente, en particulier, est fortement présente dans ce cours. Nous considérons la concurrence comme un des concepts-clés de l'informatique, qui mérite d'être introduite le plus tôt possible.

Ce travail a été fait par les étudiants en informatique dans deux mémoires de fin d'études au Département d'Ingénierie Informatique à l'UCL sous la supervision de Peter Van Roy. Un premier pas a été fait par Isabelle Cambron et Mathieu Cuvelier dans leur mémoire en 2005-6. Le travail a ensuite été largement étendu et complété par Gregory de le Vingne, Maxime Romain et Cécile Toint dans un second mémoire en 2006-7. Les mémoires utilisent un support logiciel, LogOz, écrit en Oz avec le Mozart Programming System.

Actuellement, le deuxième mémoire contient tout ce qu'il faut pour faire un cours complet. Nous vous présentons aussi le premier mémoire parce qu'il a quelques apports intéressants. Voici toutes les informations:

Ensemble, ces deux mémoires fournissent tout ce qu'il faut pour donner un cours basé sur l'idée d'enrichissement des micromondes. Je vous invite à utiliser ces mémoires pour vos cours et à me faire part de vos expériences.