You are on page 1of 36

COURS IGL

INTRODUCTION AU GÉNIE
LOGICIEL Cours 1 :
Introduction
au Génie
Logiciel

Mostefai Mohammed Amine – m_mostefai@esi.dz


Batata Sofiane – s_batata@esi.dz 1
Cours 1 – Introduction au GL OBJECTIFS DU COURS

Objectifs du cours

 Sensibilisation au rôle du logiciel dans le quotidien

Cours IGL, Copyright © 2011, ESI


 Impact de la qualité du logiciel

 Processus de développement des logiciels

 Familiarisation avec le module

2
INTRODUCTION
AU GÉNIE
Section 2 : Le
Section 1 : Le LOGICIEL
Développement
Logiciel Cours 1
de Logiciels Introduction
Générale

Section 3 : Le
Génie Logiciel
3

Cours IGL, Copyright © 2011, ESI


COURS IGL

Introduction
au Génie
Section 1 : Le Logiciel Logiciel

Cours IGL, Copyright © 2011, ESI


SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Où se trouve le logiciel ?

Cours IGL, Copyright © 2011, ESI


5
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Le logiciel est omniprésent

• Le Logiciel est quasiment « partout »

Cours IGL, Copyright © 2011, ESI


• Beaucoup de choses de notre quotidien sont inimaginables
sans le logiciel
• Bureautique, voyages aériens, scolarité, recherche
scientifique, loisirs,…
• Par conséquent, notre vie dépend très fortement de la
qualité des logiciels qui la gèrent

6
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Impacts Positifs du logiciel

Le logiciel a amélioré le quotidien de plusieurs manières :


• Le logiciel accélère les traitements

Cours IGL, Copyright © 2011, ESI


• Le logiciel ne « se lasse » pas
• Le logiciel résout des problèmes complexes rapidement
• Capacité de calcul, de stockage et de traitement incroyables
• Le logiciel a introduit de nouveaux loisirs
Exemples :
• Paiement électronique , Achat sur internet, Recherche d’information,
Logiciels métier ( ERP, tableurs, traitement de texte), Bibliothèques en
ligne, …
7
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Im p a ct s d ’u n l og i ciel d e M a u vais e Q u a l ité

Plusieurs désastres plus ou moins importants ont été causés par des
« erreurs » dans des logiciels :

Cours IGL, Copyright © 2011, ESI


• La paranoïa de lu bug de l’an 2000 : à l’époque, la plupart des
logiciels traitaient les dates avec deux chiffres. Quand l’an 2000 fut sur
le point d’arriver, personne ne pouvait vraiment prédire ce qui allait se
passer. Finalement, plus de peur que de mal.

• Le bug du Mariner-1 en 1962 : Une fusée spatiale a dérouté de sa


trajectoire à cause d’une formule mathématique qui a été mal transcrite
en code source.

• Therac-25 accélérateur médical (1985) : La machine était destinée à


soigner des malades. À cause d’un bug sur le déclenchement des
radiations, au moins cinq personnes ont trouvé la mort,
8
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Im p a ct s d ’u n l og i ciel d e M a u vais e Q u a l ité

• En 1983, la troisième guerre mondiale a failli éclater : En pleine guerre


froide, un logiciel de surveillance soviétique a détecté de faux missiles
balistiques envoyés des USA.

Cours IGL, Copyright © 2011, ESI


• 1991, pendant la guerre du golfe : Un missile américain tue 22 soldats
américains au lieu d’intercepter un missile ennemi. Cause : une erreur de
fonction d’arrondi,

• 1996 Cash de la fusée Ariane 5 – Vol 501 : Un module convertissait des réels
64 bits en des entiers signés 16 bits ce qui a cause un fonctionnement anormal
des moteurs. La fusée s’est désintégrée après 40 secondes de vol.

• 2000 Panama, machine médicale traitement de cancer . Le logiciel a permis


de dessiner cinq zones protégées alors que la machine ne tolérait que quatre.
Résultat : des tissus sains ont été irradiés et huit personnes au moins décédées,

9
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Qu’est-ce qu’un logiciel ?

• Un logiciel est un ensemble d'informations relatives à des traitements

Cours IGL, Copyright © 2011, ESI


effectués automatiquement par un appareil informatique. Y sont
incluses les instructions de traitement, regroupées sous forme de
programmes, des donnée.

• Un logiciel est un « transformateur » d’information. Cette information


peut être aussi simple qu’un bit de données ou aussi complexe qu’une
présentation multimédia.

10
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Composition d’un logiciel

Cours IGL, Copyright © 2011, ESI


Binaires
(exécutables)

Produits
Connexes

Documentation

11
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Comparaison avec un produit normal

Cours IGL, Copyright © 2011, ESI


Produit palpable Produit non palpable
Produit manufacturé Produit Développé
Assemblage facile de Assemblage difficile
composants (réutilisation)
Maintenance Par Remplacement Maintenance par l’équipe de
des composants développement elle-même
Procédé de développement Procédé de développement
industrialisé entièrement basé sur les
humains
12
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Classification de Logiciels

• Il n’existe pas une classification mais plusieurs

Cours IGL, Copyright © 2011, ESI


• L’une des classifications les plus célèbres est celle du NAPCS :

13
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Classification de Logiciels
Drivers

Système d’exploitation

Outils de développement

Cours IGL, Copyright © 2011, ESI


Logiciels Système
SGBD

Logiciels réseau
Logiciels

Bureautique

Loisirs

Applications Métier

Archivage

,,,,
14
SECTION 1 – LE
Cours 1 – Introduction au GL LOGICIEL

Software et Hardware

Le « software » et le « hardware » sont indissociables :


• Le « hardware » a besoin du « software » pour être piloté

Cours IGL, Copyright © 2011, ESI


• Le « software » a besoin du hardware pour être exécuté

L’évolution phénoménale des capacités des logiciels est intimement liée à


l’évolution du hardware et aussi d’autres facteurs :

• Amélioration de la puissance du processeur


• Amélioration des capacités de stockages
• Changement des dispositifs d’entrée ou de sortie (Ecran tactile, stylo
optique, kinect, …etc.)
• Augmentation de la mobilités et des unités mobiles (Smartphones,
tablettes, notebooks,…etc.,)

15
COURS IGL

Introduction
au Génie
Section 1 : Débat (5 Mn) Logiciel

16

Cours IGL, Copyright © 2011, ESI


COURS IGL

Introduction
au Génie
Section 2 : Le Logiciel
développement de logiciels

17

Cours IGL, Copyright © 2011, ESI


SECTION 2 – LE
Cours 1 – Introduction au GL DÉVELOPPEMENT

Développement d’un Logiciel

• Le développement est la transformation d’une idée ou d’un besoin en

Cours IGL, Copyright © 2011, ESI


un logiciel fonctionnel
• L’idée est produite par un client (utilisateur) et développée par un
fournisseur
• Le client et le fournisseur peuvent être la même entité

Idée ou besoin Développement Exploitation


(Client) (Fournisseur) (Client)

18
SECTION 2 – LE
Cours 1 – Introduction au GL DÉVELOPPEMENT

Un B on L og i ciel d u Poi nt d e Vu e d ’u n Cl i ent

Peu couteux

Cours IGL, Copyright © 2011, ESI


Respecte Fait ce qu’on
Un bon
des critères lui demande
logiciel
de qualité de faire

Livré dans les


délais

19
SECTION 2 – LE
Cours 1 – Introduction au GL DÉVELOPPEMENT

U n B o n L o g i c i e l d u Po i n t d e Vu e d ’u n Fo u r n i s s e u r

Minimise le
coût

Cours IGL, Copyright © 2011, ESI


Respecte les Minimise les
exigences de délais
qualité
Un bon
logiciel

Fait ce qu’on Maximise les


attend de lui profits

20
SECTION 2 – LE
Cours 1 – Introduction au GL DÉVELOPPEMENT

Faits sur le développement

• Le développement de logiciels n’est pas une opération facile


• Le développement est un ensemble d’activités

Cours IGL, Copyright © 2011, ESI


• La programmation (le codage) n’est pas le développement mais une
des activités du développement
• Il n’y a pas une seule façon de développer un logiciel donné mais
plusieurs
• Il y a une différence entre développer et « développer bien »
• Les projets de développement sont souvent longs et coûteux (50 % des
coûts dans la maintenance).
• Les projets de développement font souvent intervenir plusieurs
personnes de compétences différentes.

21
SECTION 2 – LE
Cours 1 – Introduction au GL DÉVELOPPEMENT

Que faut-il pour le développement ?

Une équipe

Cours IGL, Copyright © 2011, ESI


La Un projet de
Un procédé
communication développement

Des outils

22
SECTION 2 – LE
Cours 1 – Introduction au GL DÉVELOPPEMENT

Que faut-il pour le développement ?

• L’équipe n’est pas uniquement composée de programmeurs mais

Cours IGL, Copyright © 2011, ESI


d’autres acteurs : chefs de projets, testeurs,…
• Il existe une panoplie d’outils relatifs au développement : compilateurs,
environnements de tests, éditeurs,…
• La communication est essentielle dans un projet de développement

23
COURS IGL

Introduction
au Génie
Section 2 : Débat (5 Mn) Logiciel

24

Cours IGL, Copyright © 2011, ESI


COURS IGL

Introduction
au Génie
Section 3 : Le Génie Logiciel Logiciel

25

Cours IGL, Copyright © 2011, ESI


SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Echecs des projets de développement

Taux de succès des projets (Standish Group)

Cours IGL, Copyright © 2011, ESI


Projets réussis
16%

Projets annulés Projets altérés


31% 53%

26
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Critères de réussite

Cours IGL, Copyright © 2011, ESI


27
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Difficultés et points de vue

Cours IGL, Copyright © 2011, ESI


28
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Difficultés de développements

Plusieurs difficultés caractérisent le développement de logiciels :


• Difficile de gérer le projet et les personnes

Cours IGL, Copyright © 2011, ESI


• Les clients arrivent difficilement à décrire leurs besoins de façon
assez claire pour les fournisseurs
• Les besoins sont en constantes évolutions ainsi que
l’environnement
• Le logiciel est non palpable (intangible)
• Différence de langage entre les personnes techniques et non
techniques
• Difficulté de découvrir les erreurs avant la livraison du produit.
• Le piratage de logiciels cause un énorme préjudice pour les
fournisseurs

29
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Difficultés de développements

A la fin des années 60, apparut la crise du logiciel caractérisée par :


• Des logiciel qui ne satisfont pas les attentes des clients

Cours IGL, Copyright © 2011, ESI


• Des temps de réponse trop lents
• Non respect des délais et des coûts
• Maintenance trop chère car trop difficile

D’où l’apparition du génie logiciel

30
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Le Génie Logiciel

L’objectif du génie logiciel est de permettre le développement de

Cours IGL, Copyright © 2011, ESI


logiciels :
• Satisfaisant le client et le fournisseur
• De qualité supérieure
• Dans des délais raisonnables
• Avec des coûts acceptables

31
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Le Génie Logiciel

Le terme génie logiciel (en anglais software engineering) désigne


l'ensemble des méthodes, des techniques et outils concourant à la

Cours IGL, Copyright © 2011, ESI


production d'un logiciel, au-delà de la seule activité de
programmation.

32
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Historique

• Fin des années 50, apparition du terme « Software Engineering »


• De 1965 à 1985, la crise du logiciel

Cours IGL, Copyright © 2011, ESI


• A partir de 1985, conscience de la difficulté du domaine. Accord
sur le fait qu’aucune méthodologie ni aucun outils n’est
« universel» pour les problèmes de développement
• Les années 90, émergence d’internet et les outils RAD
• Année 2000 – Apparitions de méthodologies légères appelées
« méthodes agiles »

33
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

De quoi est composé le GL ?

Méthodes

Cours IGL, Copyright © 2011, ESI


Le Génie
Logiciel

Outils Techniques

34
SECTION 3 – LE GÉNIE
Cours 1 – Introduction au GL LOGICIEL

Composantes du GL

Une méthode Un procédé Les outils Les techniques

Cours IGL, Copyright © 2011, ESI


Composé de
Définie par un plusieurs
procédé activités Utilisés par Utilisées par
des acteurs des acteurs
Exécutées par
des acteurs
Déroulée par
des acteurs Selon
certaines Pour exécuter
techniques des activités
Pour certaines
selon une
Supportée par activités
En utilisant certaines
des outils
certains outils manière

35
COURS IGL

Introduction
au Génie
Section 3 : Débat (10 mn) Logiciel

36

Cours IGL, Copyright © 2011, ESI