Enseigner Ada, pourquoi ?, à qui ?, comment ? Choisir un langage : entre le tentant et le raisonnable !


précédentsommairesuivant

II. Le génie logiciel

Dès les années 1970 on parle, déjà, de la crise du logiciel (et, aujourd'hui, le problème est récurrent et même encore plus préoccupant) : coût de développement dépassé ou difficile à prévoir, délais non respectés, livraison non conforme aux spécifications, programmes trop gourmands, peu fiables, modifications souvent impossibles, etc. Passons en revue, succinctement, quelques critères ou propriétés que doit satisfaire une application conséquente et de qualité. Le décor ainsi planté permettra de mettre en évidence dans le chapitre suivant les points forts du langage Ada satisfaisant aux objectifs soulevés.

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. On parle alors volontiers de composants logiciels à l'instar des composants que l'on réutilise en électronique.

L'extensibilité : c'est la facilité d'adaptation d'un logiciel aux changements de spécifications, évolution de la structure de données ou ajout de fonctionnalités sont souhaitables. Ceci impliquant des 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 système, ni d'un compilateur particulier, c'est particulièrement important pour des applications numériques. La portabilité facilite le transfert d'une configuration matériel et / ou d'un système logiciel à un autre

La testabilité : c'est la mise en œuvre de processus agressifs dont le but est de trouver des erreurs dans un logiciel. Cette phase du développement d'un logiciel est capitale mais souvent négligée ou bâclée. Cette étape se prépare avant l'implémentation car on construit les plans de tests avant le codage (pendant les étapes de conception).

La maintenabilité : c'est l'aptitude d'un logiciel à être modifié élégamment, rapidement, sans remettre en cause fondamentalement la structure déjà spécifiée ni les applications existantes. Maintenance corrective cela s'entend mais aussi maintenance adaptative.

La lisibilité : c'est la propriété d'un code accessible et compréhensible rapidement par un plus grand nombre de développeurs. La verbosité d'un langage parfois décriée peut devenir une qualité. A titre d'anecdote on pourrait montrer le traditionnel « Bonjour le Monde » à des non spécialistes, dans différents langages, la version Ada est la plus lisible (même comparée à Pascal !). Deux autres exemples ?

La facilité de certification et de validation : c'est l'aptitude d'un logiciel à pouvoir être associé à des propriétés prouvant qu'il respecte ses spécifications, qu'il se termine correctement ou qu'il ne se bloque pas dans des situations de saturation de charge ou de manque de ressource. L'existence d'un langage normalisé et de possibilités de vérifications statiques contribuent à satisfaire cet objectif.


précédentsommairesuivant

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Copyright © 2003 Daniel Feneuille Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.