"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 !