Un système d'aide à l'enseignement d'une méthode de programmation
Abstract
Cet article présente les objectifs et les concepts d'un système d'aide à l'apprentissage d'une méthodologie de construction de programmes. Ce système est en cours de réalisation à l'Institut d'Informatique des Facultés Universitaires de Namur où cette méthodologie est enseignée. Il permettra d'aider les étudiants à comprendre et à appliquer cette méthode.
La méthodologie se base sur la construction par invariant, c'est-à-dire la description d'une situation générale et la construction de suites d'instructions en fonction de cette situation générale. Les difficultés que peuvent rencontrer ceux qui utilisent la méthode concernent essentiellement le caractère peu intuitif du raisonnement en termes de situation, ainsi que la rigueur nécessaire à la formalisation mathématique des situations. Le système devrait permettre de résoudre ces difficultés.
Le système d'aide à l'apprentissage de cette méthode est basé d'une part sur un langage graphique de description de situations dont le concept fondamental est la notion de "segment", et d'autre part sur un langage mathématique d'expression d'assertions, lui-même basé sur les notions de "suite" et d'"ensemble". Parmi les fonctionnalités du système, mentionnons notamment la vérification par démonstration formelle, la recherche de contre-exemples, des vérifications de cohérence entre les deux types d'expression de situations, des vérifications de cohérence et de complétude par rapport à la méthode.
Dans cet article, nous illustrons également différents scénarios d'utilisation du système, ainsi que le type de remarques qu'il peut offrir. Le problème du "segment de somme maximale" est résolu complètement, selon la méthode supportée par le système.
La méthodologie se base sur la construction par invariant, c'est-à-dire la description d'une situation générale et la construction de suites d'instructions en fonction de cette situation générale. Les difficultés que peuvent rencontrer ceux qui utilisent la méthode concernent essentiellement le caractère peu intuitif du raisonnement en termes de situation, ainsi que la rigueur nécessaire à la formalisation mathématique des situations. Le système devrait permettre de résoudre ces difficultés.
Le système d'aide à l'apprentissage de cette méthode est basé d'une part sur un langage graphique de description de situations dont le concept fondamental est la notion de "segment", et d'autre part sur un langage mathématique d'expression d'assertions, lui-même basé sur les notions de "suite" et d'"ensemble". Parmi les fonctionnalités du système, mentionnons notamment la vérification par démonstration formelle, la recherche de contre-exemples, des vérifications de cohérence entre les deux types d'expression de situations, des vérifications de cohérence et de complétude par rapport à la méthode.
Dans cet article, nous illustrons également différents scénarios d'utilisation du système, ainsi que le type de remarques qu'il peut offrir. Le problème du "segment de somme maximale" est résolu complètement, selon la méthode supportée par le système.
Origin : Explicit agreement for this submission
Loading...