ACTUALITÉ SCIENTIFIQUE
ET INNOVATION DE L'ÉTS
Le génie logiciel, cet inconnu - Par : Claude Laporte,

Le génie logiciel, cet inconnu


Claude Laporte
Claude Y. Laporte était professeur de génie logiciel à l’ÉTS avant de prendre sa retraite. Il est l’éditeur du groupe de travail pour l’élaboration des normes ISO/IEC 29110 qui porte sur l’ingénierie de systèmes et l’ingénierie de logiciels.

génie logiciel

En mars 2015, Claude Y. Laporte, professeur agrégé de génie logiciel à l’ÉTS, était l’invité d’une émission scientifique intitulée Les années lumière dans laquelle il a expliqué les concepts généraux de cette nouvelle discipline d’ingénierie.Diffusée chaque dimanche à la station radiophonique ICI Radio-Canada de 12 h 10 à 14 h, cette émission radiophonique se penche sur la science et les nombreux sujets qui gravitent autour tels que la santé, l’environnement, la recherche fondamentale, la démographie, l’urbanisme…

Dans quoi s’applique le génie logiciel?

On retrouve du logiciel tout autour de nous. Un exemple concret de l’utilisation du génie logiciel se trouve dans le secteur automobile : les voitures de haute gamme réclament aujourd’hui environ 100 millions de lignes de codes de programmation avec près d’une centaine de processeurs. Quand on sait que le développement de 200 000 lignes de codes de composants critiques requiert un budget de plus de 3 000 personnes-mois, on comprend toute la complexité et la nécessité du génie logiciel dans nos vies quotidiennes.

Comment définir le génie logiciel?

Discipline spécialisée du génie, le terme génie logiciel a fait ses premières apparitions à la fin des années 60. À l’ÉTS, on inaugure le programme en génie logiciel en 2001. Concrètement, il s’agit de l’application d’une approche systématique, rigoureuse et quantifiable au développement, à l’exploitation et à la maintenance des logiciels, en d’autres termes l’application de l’ingénierie au logiciel.

Quel est le processus d’application du génie logiciel?

Contrairement aux idées parfois préconçues, la notion de programmation (ou codage) d’un logiciel de grande taille n’est qu’une petite partie d’un processus (de 10 à 15 % du budget environ) qui requiert plusieurs activités essentielles. Par exemple, un cycle de développement en cascade comporte les grandes activités suivantes : après analyse des besoins du client, ces derniers sont traduits en spécifications qui doivent être documentées et approuvées par le client. Dès que les spécifications sont approuvées, on peut procéder à la rédaction de tests pour vérifier le code qui sera développé.  Arrive alors le développement d’une architecture, la création du code en tant que tel, l’intégration des modules de code puis le test du système. Chacune des activités du processus de développement comporte malheureusement l’injection d’erreurs; il est habituel de procéder à plusieurs vérifications (p.ex. des revues et des tests) qui permettront de détecter le plus d’erreurs possible avant la livraison du produit final au client.

Un enjeu important du génie logiciel réside dans le fait que contrairement à bien d’autres disciplines d’ingénierie, il n’est pas régi par les lois de la nature. Ce n’est qu’à coups de projets et d’erreurs, depuis les années 60, qu’il a été possible d’élaborer un corpus de connaissances (les « bonnes pratiques ») éprouvées et reconnues dans des normes internationales et professionnelles.

Pour entendre cette entrevue radiophonique, cliquez ici.

Claude Laporte

Profil de l'auteur(e)

Claude Y. Laporte était professeur de génie logiciel à l’ÉTS avant de prendre sa retraite. Il est l’éditeur du groupe de travail pour l’élaboration des normes ISO/IEC 29110 qui porte sur l’ingénierie de systèmes et l’ingénierie de logiciels.

Programme : Génie logiciel  Génie des technologies de l'information 

Profil de l'auteur(e)


commentaires

    Laisser un commentaire

    Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *