Académique Documents
Professionnel Documents
Culture Documents
d’Informatique
Logiciel Génie
Ingénieur Ingénierie
Génie Logiciel
Est un produit
● une forme exécutable : séquence d'instructions exécutables par
une machine
● une forme non exécutable : données, documentation
(développement, installation, utilisation et maintenance)
1ère classification
Système
Système
destiné à un
spécifique
même type
développé
d’application
pour les
et conçu pour
besoins d’un
différents
client
clients
2ème classification
Logiciel
Logiciel système
d‘application
Système d‘exploitation Bureautique
Drivers
Loisir
Outils de développement
Métier
SGBD
Archivage
Logiciel réseau
… …
3ème classification
Logiciel
Logiciel
gratuit Logiciel libre
propriétaire
(freeware)
L'auteur
le code source
autorise
est libre et
L'auteur se l'utilisation et
modifiable,
réserve le la copie par
garantie la
droit de autrui
liberté de
diffuser et de gratuitement,
l’utilisateur
modifier le mais garde le
dans son
logiciel droit de
utilisation d’un
modifier le
logiciel
logiciel
Inadéquation
Délais
Coûts
Fiabilité
Maintenance
• Difficile et coûteuse
C‘est à vous
de continuer
❖ Le génie logiciel est un domaine des sciences de l’ingénieur dont l’objet d’étude
est la conception, la fabrication, et la maintenance des systèmes informatiques
complexes.
Bien Le bon
développer logiciel
❖ Le génie logiciel est un domaine en pleine évolution qui offre une grande palette
d’outils et de méthodes pour parvenir à construire des logiciels de qualité.
Méthodes,
Techniques Méthodologies
DEVELOPPER
BESOINS ET LOGICIEL
MAINTENIR
Normes
Principes, règles Outils
Outils supportent
Méthodologie
Regroupent et appliquent
Méthodes et techniques
Principes
● Clients
● Développeur: Développer
● Maintenance:Maintenir
5
Dr. Narjes Ben Hariz 22
Cycle de Vie Logiciel
❖ Cycle de vie d’un logiciel: processus qui démarre par la détection d’un besoin
de développement d’un logiciel et qui se termine par la mise hors service du
logiciel.
❖ Il n’existe pas de cycle de vie idéal:
• Diversité des besoins et des contraintes de qualité.
• Différences de contexte et d’expertise aussi bien des organisations que
des personnes.
❖ L’objectif du cycle de vie est de détecter les erreurs au plus tôt et ainsi de
maîtriser la qualité du logiciel, les délais de sa réalisation et les coûts
associés.
Exploitation &
Avant-projet Retrait
Gestion de
Développement Maintenance
projet
Analyse
Conception
Maintenance &
Implémentation
techniques
Assistance
Activités
retrait
Étude Tests
préalable
Installation
Documentation
Modèle en
Cascade
Modèles Linéaires
Modèle en V
Modèles
Classiques Modèle
Incrémental
Modèle par
Prototypage
Modèle en
Cascade
Modèles Linéaires
Modèle en V
Modèles
Classiques Modèle
Incrémental
Modèle par
Modèles Itératifs
Prototypage
Modèle en Spirale
Principe
Analyse
Conception
Codage
Tests unitaires
Intégration
et Tests
Exploitation /
Maintenance
Principe
❖ Chaque étape doit être achevée avant que ne débute la suivante.
❖ Chaque étape permet d’élaborer des produits intermédiaires
❖ Chaque fin d’étape est matérialisée par un événement, où s’exerce une
activité de contrôle (Vérification et Validation) afin d’éliminer au plus tôt
les anomalies des produits réalisés.
❖ Le passage à l’étape suivante est conditionné par le résultat de contrôle
(acceptation, rejet, ajournement)
❖ Les retours en arrière sur les étapes précédentes se limitent à un retour
sur l’étape immédiatement antérieure.
Avantages
Inconvénients
❖ Approche purement séquentielle et « simpliste »
❖ Il est rare que le client puisse fournir toutes les spécifications dès le
début du projet.
❖ Le client ne reçoit pas de résultats concrets pendant le
développement du logiciel
❖ Les risques se décalent vers la fin
❖ Très faible implication du client
Quand l’utiliser ?
Principe V&V
Installation et
Etude Préalable
Test
Spécification Validation
Fonctionnelle
Conception Tests
Globale d’Intégration
Conception
Tests Unitaires
Détaillée
Codage
Principe
❖ Processus linéaire dérivé du modèle en cascade qui met l’accent sur la
vérification et la validation
❖ En plus de l’enchaînement des étapes successives, ce cycle met en relation
des étapes plus éloignées.
❖ Les premières étapes du cycle doivent préparer les dernières étapes,
essentiellement les activités de vérification et de validation.
❖ On insiste sur la partie test, réalisée à chaque étape et permettant de
s’assurer que le composant correspond à la description
• obligation de concevoir les jeux de test et leurs résultats ;
• réflexion et retour sur la description en cours.
Dr. Narjes Ben Hariz 33
Cycle de Vie Logiciel
Modèle en V
Principe
❖ Deux sortes de dépendances entre étapes :
● Traits continus : correspondent à l’enchaînement du modèle de
la cascade, les étapes se déroulent séquentiellement en suivant
le V de gauche à droite
● Traits non continus : Une partie des résultats de l’étape de
départ est utilisée directement par l’étape d’arrivée.
Avantages
❖ Une meilleure spécification
❖ Evite d’énoncer une propriété qu’il est impossible de vérifier objectivement une
fois le logiciel réalisé.
❖ Obligation de concevoir les jeux de tests et leurs résultats oblige à une réflexion
et à des retours sur la description en cours.
Inconvénients
développement du logiciel
Quand l’utiliser ?
Modèle en
Cascade
Modèles Linéaires
Modèle en V
Modèles
Classiques Modèle
Incrémental
Modèle par
Prototypage
incrément3
Principe Incréments
délivrés
incrément2
incrément1
❖ A été proposé dans les années 80
noyau
❖ Incrément= version
temps
❖ Trie les spécifications par priorités et les regroupent dans des groupes
de spécifications
Principe
Analyse des Conception
besoins architecturale
Conception
détaillée d’un Codage d’un Validation de
incrément
incrément l’incrément
Intégration
Validation du
système
6
8
Système final
Dr. Narjes Ben Hariz 40
Cycle de Vie Logiciel
Modèle incrémental
Principe
Avantages
Inconvénients
en incréments
Quand l’utiliser ?
Principe
Développer
Ecouter le
le
client
prototype
Evaluer le
prototype
Avantages
❖ Pour le client: Une approche où domine l’écoute total du client.
• Le client reçoit des résultats tangibles rapidement
• Le client peut exprimer ses besoins plus facilement
• Le client peut changer d’avis sans conséquences dramatiques
❖ Pour l’utilisateur:
• Expérimentation rapide par les utilisateurs et feedback immédiat
• Former les utilisateurs avant la livraison du système final
❖ Pour l’équipe de développement:
• Meilleure clarification des spécifications
• Amélioration de la COMMUNICATION entre d’une part le client et l’analyste, d’autre part
l’analyste et le concepteur
Dr. Narjes Ben Hariz 47
Cycle de Vie Logiciel
Modèle par Prototypage
Inconvénients
coûts, etc,…)
Quand l’utiliser ?
❖ Souvent utilisé pour la validation des spécifications MAIS
❖ Peut être aussi utilisé à différentes étapes du cycle de vie. Selon l’étape, les objectifs
du prototypes sont différents.
• Pour montrer la faisabilité
• Valider les interfaces utilisateurs
• etc.
Principe
❖ Développement et test
• Contient pratiquement la plupart des activités : conception, codage, test, … etc.
❖ Planification de la prochaine itération
• Un planning de l’itération
• Un plan de tests
Dr. Narjes Ben Hariz 52
Cycle de Vie Logiciel
Modèle en Spirale
Principe
❖ Détermination des objectifs
• En terme de fonctionnalité, de performance, de coût,...etc.
• Déterminer les alternatives : développer, réutiliser, acheter, sous-traiter…etc.
• Contraintes : coûts, plannings, … etc.
❖ Identification et évaluation de risques
• Etudier les alternatives de développement
• Identification des risques : technologie non maîtrisées, équipe peu expérimentée,
planning trop serré, …etc.
• Evaluation des risques : voir si les risques peuvent impacter le projet et à quel degré
❖ Développement et test
• Contient pratiquement la plupart des activités : conception, codage, test, … etc.
❖ Planification de la prochaine itération
• Un planning de l’itération
• Un plan de tests
Dr. Narjes Ben Hariz 53
Cycle de Vie Logiciel
Modèle en Spirale
Avantages
Inconvénients
d’opération de ce modèle;
Inconvénients
d’opération de ce modèle;
Quand l’utiliser ?
Principes
1. Toujours satisfaire le client à travers des livraisons rapides et continues
Principes
C‘est à vous
de continuer