<!-- Slide number: 1 -->

Chapitre 1 : Introduction au génie logiciel
UP GL-BD
<!-- Slide number: 2 -->
Acquis d’apprentissage du module
A la validation de ce module l’étudiant sera capable de :
Exploiter et expliquer les concepts de base du Génie Logiciel, à savoir :
Les Enjeux & l’Importance du Génie Logiciel
Les cycles de vie logiciel
Les méthodologies de développement logiciel
La Spécification du logiciel & l’Ingénierie des exigences
L’ Architecture & la Conception des logiciels
La Gestion de Configuration logicielle
Le Test & la Vérification logicielle
Mettre en pratique ses connaissances de la méthode agile SCRUM à travers Un projet.
Source : Fiche module GL et AGL 2016/2017
GL & AGL
2
Notes:
<!-- Slide number: 3 -->
Objectifs du Chapitre 1
Comprendre les enjeux du génie logiciel
Identifier les critères de qualité d’un logiciel
Définir les concepts de base liés au génie logiciel
GL & AGL
3
<!-- Slide number: 4 -->
Plan du Chapitre 1
Intérêt du génie logiciel
Crise du logiciel
Catastrophes informatiques
Génie logiciel : Définition
Facteurs de qualité du logiciel
Eléments clés du GL
GL & AGL
Publicité
4
<!-- Slide number: 5 -->
Intérêt du génie logiciel (1/5)
But de l’ingénieur : Construire un logiciel de qualité.
Est-ce que la construction d’un logiciel est une aventure tranquille?
GL & AGL
5
<!-- Slide number: 6 -->
Intérêt du génie logiciel (2/5)La crise du logiciel
Question : Avant le Génie Logiciel, avait-on des logiciels?
Réponse: On en avait mais :
Cela coûtait cher (et plus que prévu)
Cela durait longtemps (et plus que prévu)
Cela n’était même pas sûr d’aboutir ! (pas sûr d'obtenir ce qui a été demandé)

Crise du logiciel : La crise du logiciel est associée à une baisse significative de la qualité des logiciels
GL & AGL
6
<!-- Slide number: 7 -->
Intérêt du génie logiciel (3/5)Les catastrophes informatiques

Exemple de catastrophe informatique : Ariane5
Coût : 7 milliards de dollars
Erreur : Le système de bord a été incapable de convertir une donnée provenant d’un processeur de 64 bits dans un système de 32 bits.
GL & AGL
7
<!-- Slide number: 8 -->
Intérêt du génie logiciel (4/5)Les catastrophes informatiques
.
Catastrophe informatique : Airbus 380
Coûts : N’ont jamais été dévoilés.
Erreur : Tout le monde utilisait le même logiciel, mais les Allemands se servaient d’une vieille version du programme

GL & AGL
8
Notes:
Publicité
Plusieurs compagnies de différents pays ont travaillé ensemble, mais à
distance.
Erreur: Tout le monde utilisait le même logiciel, mais les Allemands se servaient d’une vieille version du programmees coûts de cette erreur n’ont jamais été dévoilés, mais l’appareil est arr. Résultats: au moment de l’assemblage de l’appareil, rien ne fonctionnait! Livé sur le marché un an plus tard que prévu.
<!-- Slide number: 9 -->
Intérêt du génie logiciel (5/5)
Par conséquent,
Le développement d’un logiciel est une aventure risquée car :
Cela coûte cher (et plus que prévu)
Cela dure longtemps (et plus que prévu)
Cela n’est même pas sûr d’aboutir ! (pas sûr d'obtenir ce qui a été demandé)
Donc il faut apprendre à construire un logiciel de qualité
GL & AGL
9
Notes:
<!-- Slide number: 10 -->
Génie logiciel : Définition (1/2)
Génie
Logiciel


Programmes informatiques
Génie civil


Documentation
Art de construction
Ensemble de méthodes, techniques et outils nécessaires à la production de logiciels de qualité.
GL & AGL
10
Notes:
<!-- Slide number: 11 -->
Génie logiciel : Définition (2/2)
Discipline basée sur le savoir, le savoir faire et le faire savoir pour produire de façon industrielle des logiciels de qualité au meilleurs prix
Discipline méthodes, techniques et outils
Basée sur le savoir théorique
Le savoir-faire compétence, ressource humaine
Publicité
Le faire savoir communication
Pour produire développement, réalisation
Façon industrielle travail d’équipe, méthodologie
Des logiciels Les produits
De qualité au meilleur prix Qualité/Prix
GL & AGL
11
Notes:
<!-- Slide number: 12 -->
Facteurs de qualité du logiciel (1/2)
| Facteur de qualité | Définition |
| --- | --- |
| Fiabilité | La conformité du logiciel vis-à-vis de ses spécifications. Les résultats sont vérifiables et sont ceux attendus. |
| Robustesse & Disponibilité | - Le logiciel reste stable, disponible et capable de fournir des résultats toujours fiables dans les conditions de fonctionnement extrême dans le temps. |
| Performance | - L’ensemble des exigences non fonctionnelles concernant la qualité en matière de temps de réponse, de dimensionnement et de comportement système du logiciel. |
| Convivialité | - L’ergonomie et la facilité d’installation, de déploiement, d’apprentissage et d’utilisation. |
| Maintenabilité | - La facilité de reprise en main du logiciel pour des besoins correctifs et/ou évolutifs afin de l’ajuster à de nouvelles conditions et contraintes d’exécution ou de répondre à de nouveaux besoins . |
GL & AGL
12
<!-- Slide number: 13 -->
Facteurs de qualité du logiciel (2/2)
| Facteur de qualité | Définition |
| --- | --- |
| Interopérabilité | - La capacité à fonctionner et à interagir avec des systèmes ouverts |
| Portabilité | - Le logiciel fonctionne indépendamment de son environnement cible d’exploitation avec le minimum de coût |
| Réutilisabilité | - Le regroupement d’un ensemble de fonctionnalités semblables en librairies partagées et réutilisables en tout ou en partie : Avec usage de composants prêts (Open source ou commercial). Adaptation des design pattern dans la conception et l’implémentation. |
| Sécurité | - La mise en place de la politique d’attribution de droit d’accès pour un ensemble de ressources et de fonctionnalités du logiciel. |
GL & AGL
13
<!-- Slide number: 14 -->
Eléments clés du génie logiciel (1/4)
Processus de développement logiciel
Méthodologies de développement
Méthodes de développement
Normes qualité
Les modèles de cycle de vie
Publicité

Ateliers de génie logiciel
Outils de développement
GL & AGL
14
<!-- Slide number: 15 -->
Eléments clés du génie logiciel (2/4)
Méthodologie de développement :
Ensemble de principes régissant la conception, le développement et la livraison du logiciel.
Méta-méthode (méthode des méthodes).
Méthode de développement :
Une modélisation (concepts manipulés).
Une implémentation d’une méthodologie de développement logiciel.
Processus de développement logiciel : C’est l’ensemble des activités du développement logiciel.
GL & AGL
15
<!-- Slide number: 16 -->
Eléments clés du génie logiciel (3/4)
Modèles de cycle de vie de développement logiciel : chaque modèle de cycle de vie présente un procédé d’agencement des activités.
Outils de développement : N’importe quel outil utilisé lors du développement logiciel.
Exemples : Editeurs de texte, Outils de gestion de projet, Compilateurs, IDE, etc.
Ateliers de génie logiciel (AGL) : Ensemble d’outils permettant de couvrir le cycle de vie logiciel depuis .
Exemples : Rational Rose, Power AMC, etc.
GL & AGL
16
<!-- Slide number: 17 -->
Eléments clés du génie logiciel (4/4)
Norme qualité :
« Document établi par consensus et approuvé par un organisme reconnu, qui fournit, pour des usages communs et répétés, des règles, des lignes directrices ou des caractéristiques, pour des activités ou leurs résultats garantissant un niveau d'ordre optimal dans un contexte donné. » [ISO]
Exemples : ISO, ITIL, COBIT, PMBOK, CMMI.
GL & AGL
17