Cette étude s'appuie sur le système industriel Poséidon 2.
On s'intéresse plus particulièrement à l'objet technique "Baie de Contrôle et de mesure".
Système informatisé tournant sous UNIX, capable (entre autre):
6 séances de 4 heures de cours/TD en classe entière + 1 séance de 2 heures de cours
6 séances de 4 heures de TP en demi-groupe (3 séances par demi-groupe).
A la fin de la séquence, les élèves seront capables:
Les objectifs de cette séquence visent les capacités suivantes:
Collecter | Extraire les spécifications utiles à l'application à partir des notices techniques (Objectif 1). |
Analyser | Mettre en forme ou compléter des spécifications existantes, rédiger une notice d'utilisation (Objectif 2) |
Réaliser | Réaliser des fichiers sources et produire le code exécutable (Objectif 3), stocker contrôler et protéger des informations (Objectif 3 et 4) |
Interconnecter | Ètablir une communication, échanger des informations (Objectif 4) |
Le découpage se fait en 5 phases:
Il est à noter que les phases 3 et 4 consistent à acquérir des techniques de travail et de communication. L'emploi de ces techniques se prolonge dans toute la séquence.
Cours | 2 heures |
TD | 2 heures |
Cours | 2 fois 2 heures |
Présentation générale du système UNIX
TD | 3 fois 2 heures |
TP | 4 heures par demi-groupe |
TP | 4 heures par demi-groupe (fusionné avec le TP de la phase 3) |
Ètant données 4 fonctions UNIX, rechercher le manuel de ces fonctions,
et rédiger une version HTML de cette documentation.
Déterminer l'algorithme d'un programme mettant en oeuvre ces fonctions.
Rédiger cet
algorithme dans un fichier HTML, et faire des liens hyper-texte de ce
fichier vers les
fichiers décrivants les fonctions utilisées.
Les fonctions étudiées sont:
Le programme les mettant en oeuvre est un programme devant autoriser l'accès aux ports d'E/S de l'ordinateur, et lançant ensuite un processus utilisateur se servant effectivement de ces ports.
Cours/TD | 2 fois 4 heures |
TP | 2 fois 4 heures par demi-groupe |
programmation en C.
Reprise du point de vue du programmeur du concept de fichier UNIX.
Notion de processus père/fils
Interrogation écrite: mise en oeuvre dans un programme des techniques de programmation sous UNIX
Cette séquence a également servi de support pour mon mémoire professionnel.
Les élèves sont maintenant capables de: | % |
Se connecter à une station UNIX et d'effectuer les opérations courantes (navigation dans les répertoires, création/suppression de fichiers, éditions) | 100 |
Ècrire un document simple au format HTML | 80 |
Ècrire et compiler un programme (appel du compilateur en ligne de commande) | 60-80 |
Accéder à des fichiers ou aux E/S standards en C sous UNIX | 60-80 |
Créer et lancer un processus en C | 50-75 |
Créer des tubes et les utiliser pour la communication entre processus | 50-70 |
Rechercher des informations dans le manuel ou dans une documentation constructeur en anglais | 40-60 |
Rechercher des informations dans le manuel ou dans une documentation constructeur en anglais | 40-60 |
Cependant, certains élèves ne maîtrisent toujours pas les notions
élémentaires de la programmation structurée (boucles en particulier),
et, en outre, beaucoup d'élèves ont encore de grosses lacunes au niveau
de la syntaxe des langages C et C++.
Cet état de fait a deux conséquences majeures:
Ce second point s'est révélé particulièrement visible lors de l'interrogation du 13/12/1999 où les notes très basses (moyenne de la classe 5,5) reflètent plutôt que les problèmes de maîtrise des connaissances nouvelles, des problèmes liés à l'incapacité pure et simple de près de 60% des élèves à écrire un programme rudimentaire en C sur papier (programme principal, mise en oeuvre des structures de contrôle, appel de fonctions, syntaxe des expressions). Toujours d'après les résultats de l'interrogation du 13/12/1999, et sur le même programme, il apparaît que moins de 20% des élèves sont capables d'écrire sur papier un programme correct (c'est à dire syntaxiquement juste et répondant aux exigences posées).
A l'inverse, pendant le dernier TP, il apparaissait une compréhension des entrées/sorties sur fichiers par plus de 80% des élèves et de la notion de tube par près des trois quart d'entre eux.
Cette différence de résultats entre travail sur papier et sur machine, s'explique par la démarche empirique adoptée en TP par les élèves, et qui consiste à produire un "premier jet" et à effectuer des modifications successives afin de satisfaire le compilateur et se débarrasser des messages d'erreurs, plutôt qu'à une attitude réfléchie commençant par une phase d'analyse structurée.
Séquence Pédagogique, © 1999-2000 Sylvain LEROUX