"Ada et le génie logiciel à l’I.U.T. d’Aix"
Daniel Feneuille (16/07/01 )
I.U.T. département informatique
avenue Gaston Berger
13625 Aix-en-Provence Cedex 1
URL : http://paprika.iut.univ-aix.fr/info/
. Pour récupérer le cours : ftp://paprika.iut.univ-aix.fr/pub/cours_ada_DF
(fichier ada.zip)
E-mail : feneuille@univ-aix.fr
Résumé. Les départements informatiques des I.U.T. forment en France des analystes/programmeurs en deux années après le baccalauréat. L'enseignement de la discipline informatique représente presque 900 heures réparties sur 5 trimestres (cours, TD, TP) et doit être, sans cesse, en "veille technologique", conséquence de l'évolution des méthodes, des matériels et des logiciels. Le langage Ada, choisi comme premier langage d'apprentissage au département informatique de l'I.U.T. d'Aix en Provence à partir de 1989, permet de résoudre de nombreux problèmes didactiques en fédérant des enseignements modulaires, en permettant l'assimilation de concepts réputés difficiles mais incontournables en l'an 2000 comme généricité, exceptions, conception et programmation orientée objet, processus parallèles etc. Ada possède tous les avantages pédagogiques de Pascal (ce que ne permet pas le C++ mais ce dernier très prisé dans la profession est enseigné ensuite). Les avantages pédagogiques évoqués sont alliés, avec Ada, avec la rigueur et le professionnalisme des langages dédiés au génie logiciel.
1.Introduction.
Pourquoi Ada, langage réputé
complexe (donc ..... difficile à enseigner !) mais ceci n'est pas vrai,
est-il proposé, dans des formations modestes (DUT = Bac + 2). C’est que la
vocation des I.U.T. est de former des techniciens supérieurs capables de
réaliser des travaux informatiques concrets en étant rapidement
opérationnels, efficaces et méthodiques. Un bon langage devrait
permettre de faire assimiler, de façon concrète et élégante les
concepts fondamentaux qui résisteront au moins à une décennie de
professionnalisme. Beau défi pédagogique mais .....résolu avec ce langage !
2. Le génie logiciel et Ada.
Le thème de génie logiciel est
présent dans tout le programme pédagogique de la formation (à voir
à partir de l’URL
plus haut). Dans cet esprit nous avons extrait parmi les nombreux
concepts à inculquer (tout au moins dans les premiers mois) quelques points
forts en insistant, avant tout, sur le concept de qualité. C'est
important dans la phase d'apprentissage d'un premier langage (Ada est
enseigné complètement au premier trimestre sur environ 200 heures).
Des facteurs, connus, de la qualité du logiciel nous en avons privilégié trois (pour simplifier et faire court !) :
La réutilisabilité
: c'est l'aptitude d'un logiciel à être repris, en partie ou même en
totalité, pour développer de nouvelles applications.
L'extensibilité
: c'est la facilité d'adaptation d'un logiciel aux changements de
spécifications (impliquant modifications rapides et .... fiables!) permettant
une maintenance adaptative sûre.
La portabilité
: c'est la possibilité pour un produit logiciel de ne pas dépendre d'un
environnement matériel ni d'un compilateur particulier, c'est
particulièrement clair pour des applications numériques.
3. Ada et les entreprises.
Ada est bien utilisé en avionique et
en informatique embarquée (fusée Ariane par exemple) ainsi que pour le
contrôle de trafic (aérien et ferroviaire) où la fiabilité est
cruciale.
Il est aussi apprécié quand le code à développer est conséquent (donc
difficile à maintenir). Mais il n'en reste pas moins qu'actuellement peu
d'entreprises utilisent Ada. Les raisons (entendues ici et là) : économiques
: la formation à Ada et aux concepts qui vont avec coûterait cher ; sans
oublier le prix de la transition des programmes (mon vieux programme marche
tant bien que mal donc je ne change rien !), psychologiques :
réticence à quitter le "terrain" que l'on connaît bien pour
d'autres "aventures" mal maîtrisées (le conservatisme de certains
informaticiens est connu !), mythologiques : Ada c'est compliqué,
contraignant, trop universel (imparable !).
4.Compléments.
Si ce texte vous incite à en savoir
plus sachez qu'il existe un compilateur entièrement gratuit Gnat (sur
Microsoft comme sur Unix ou Linux). Je tiens à votre disposition de très
nombreux documents (articles, cours, TD, TP, adresses, etc.). Vous pouvez
récupérer le cours enseigné à l’IUT 236 pages attention à l’adresse ftp://paprika.iut.univ-aix.fr/pub/cours_ada_DF
; décompactez le fichier Ada.zip et voyez d'abord l’un des 3 fichiers
lisezmoi (txt, doc, PDF).
Actuellement nous intégrons Gtkada
(avec glade) dans notre enseignement de Ada (couplé avec le module d’algorithmique
cours également récupérable même adresse mais fichier algoPDF.zip).
Cette faculté de développer avec des GUI est très séduisante et
évidemment est motivante pour les étudiants qui retrouvent le look des
« Visuals » qu'ils affectionnent tant.
Envoyez moi vos observations (E-Mail
si possible).
Merci et bonne lecture !