Vous êtes sur la page 1sur 44

Ecole supérieure en Informatique de Sidi Bel Abbes

Conduite et Gestion des


Projets Informatiques

Introduction

1ère année second cycle


08 Février 2018

AMAR BENSABER Djamel


Sommaire

„ Principales étapes d’un cycle de vie d’un logiciel


„ Avant-projet
„ Cycle de développement
1. Analyse
2. Conception
3. I lé
Implémentation
t ti
4. Test
5
5. Installation
„ Exploitation et Maintenance
„ Retrait
Principales étapes d’un
cycle de vie d’un logiciel
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Cycle de vie du logiciel
Cycle de vie du logiciel

• De façon générale, on peut dire que le cycle de


vie du logiciel est la période de temps s'étalant du
début à la fin du processus du logiciel.
• Il commence donc avec la proposition ou la
décision de développer un logiciel et se termine
avec sa mise hors service.
service
• Quand on subdivise le cycle de vie, on obtient des
phases
h ( h ) des
(phase), d étapes
é (
(stage)
) et des
d sous‐
étapes (step).
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
L’avant‐projet
p j
Le développement du logiciel est précédé d'une phase préparatoire que nous 
appellerons avant‐projet (et qu
appellerons avant‐projet (et qu'on
on nomme aussi étude d
nomme aussi étude d'opportunité)
opportunité). Cette 
Cette
phase a comme objectif de répondre aux questions suivantes:
• pourquoi développer le logiciel ?
• comment procéder pour faire ce développement ?
• quels moyens faut‐il mettre en œuvre ?
Elle comprend des tâches techniques groupées sous le terme étude préalable, 
on peut citer:
•• identifier les besoins de l
identifier les besoins de l'utilisateur;
utilisateur;
• faire des études de faisabilité;
• dresser un état de l
dresser un état de l'existant
existant et faire une analyse de ses forces et 
et faire une analyse de ses forces et
faiblesses;
• formuler des solutions potentielles;
• planifier la transition entre l'ancien logiciel et le nouveau, s'il y a lieu
Initiation du projet
Initiation du projet

La préparation de la gestion du projet est appelée initiation 
du projet, et comprend les tâches suivantes:
• Prévoir les ressources nécessaires au projet;
• Identifier les procédures et normes spécifiques
• Identifier les procédures et normes spécifiques 
au projet et les mesures à mettre en place 
po r contrôler le r application
pour contrôler leur application;
• Planifier la gestion du projet.
Initiation du projet
Initiation du projet

• Le résultat de l'avant‐projet est consigné dans un


document appelé cahier des charges du projet ou
spécification du projet.

• Celui‐ci énonce donc les spécifications techniques,


administratives
ad s a es eet financières
a c è es du bu
but,, des beso
besoins,
s, de
la portée et des limites du projet, ainsi que ses
relations avec d'autres projets.
p j
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Cycle de développement du logiciel
Cycle de développement du logiciel

Un certain nombre d'activités accompagnent


nécessairement tout le y
cycle de
développement:
• la gestion du projet,
projet
• la vérification et validation,
• le développement de la documentation,
• la
l gestion
ti ded la
l configuration,
fi ti
• et la formation.
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
La gestion du projet
La gestion du projet comprend la planification du projet, le pilotage
et le suivi du projet, et la gestion de la qualité.

La planification du projet a comme buts de:


• générer une décomposition du projet en activités et tâches plus
élémentaires;
• définir
défi i un calendrier
l d i ded pilotage,
il t
• définir les ressources du projet et l'allocation de ces ressources aux
tâches et les procédures du projet.
projet

Le p
pilotage
g et le suivi du p
projet
j consiste à :
• enregistrer les faits sur l'avancement du projet;
p
• comparer cet avancement avec la p planification;;
• entreprendre, si nécessaire, des mesures correctives.
La gestion du projet
La gestion de la qualité du logiciel comprend l'ensemble des
activités de gestion déployées pour garantir que le processus de
développement engendre un produit de qualité.
g en q
Il s'agit quelque
q sort du p processus q
qui p
pilote les activités de
vérification et de validation.
La gestion de la qualité du logiciel comprend donc les tâches
suivantes:
• Planifier le p
programme
g de q
qualité;
• Implémenter un système de comptes‐rendus de
problèmes et d d'actions
actions correctives;
• Définir un programme pour mesurer la qualité;
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Phases du cycle de développement

TTous les
l modèles
dèl dud cycle
l de
d développement
dé l ne sont pas
les mêmes, mais l'idée est toujours la même: le logiciel
est développé en phases,
phases chacune ayant un résultat
défini et un critère de terminaison défini, et chaque
phase est achevée avant q
p que ne commence la suivante.
Le modèle classique du cycle de développement
comprend
p les p
phases suivantes: analyse,
y conception,
p
implémentation, test, et éventuellement phase
d'installation.
Chaque phase a des entrées et des sorties, qui sont
généralement des documents et parfois des produits.
Approche
pp "Programmer‐Corriger"
g g
CYCLE  DE  VIE  EN  CASCADE Version 1.
CYCLE  EN  " b "
MODÈLE  EN  " V "
Expression des
besoins
CYCLE  DE  VIE  EN  " W "

Analyse des Validation


Besoins Système
y Maquette
q

Conception
p Vérification Conception
p Validation
Maquette Maquette Système Logiciel

Réalisation Conception Vérification


Maquette Logiciel Logiciel

Réalisation
Logiciel

PANET
CYCLE  DE  VIE  EN  CASCADE Version 2.
ANALYSE DES BESOINS

CONCEPTION GÉNÉRALE

CONCEPTION DETAILLEE

CODAGE 

TEST & INTEGRATION

INSTALLATION 

EXPLOITATION
EXPLOITATION 
MAINTENANCE
Phase d'analyse
Lors de la phase d
d'analyse,
analyse, également appelée phase de spécification, on analyse
les besoins de l'utilisateur et on définit ce que le logiciel devra faire.
Le résultat de la phase d'analyse est consigné dans un document appelé cahier
d charges
des h d logiciel
du l i i l (à ne pas confondre
f d avec le l cahier
hi des
d charges
h d
du
projet).
Une spécification comporte les éléments suivants:
• Spécification fonctionnelle, qui définit toutes les fonctions que le
logiciel doit offrir;
• Comportement en cas d'erreurs, c'est‐à‐dire dans les cas où le
logiciel ne peut pas accomplir une fonction;
• Performances
P f requises,
i par exemple: l temps ded réponse,
é
encombrement en mémoire, sécurité de fonctionnement;
• Interfaces avec ll'utilisateur
utilisateur, en particulier le dialogue sur terminal,
terminal la
présentation des écrans, la disposition des états imprimés, etc.
• Interfaces avec dd'autres
autres logiciels;
• Contraintes de réalisation, telles que l'environnement de
développement, le langage de programmation à utiliser, etc.
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Conception

• La phase d'analyse est suivie de la phase de conception


(design phase), généralement décomposée en deux phases
successives dont la première est appelée conception
générale, et la deuxième conception détaillée.
• A partir du document de spécification,
spécification la phase de conception
doit fournir une réponse à la question: "Comment réaliser le
logiciel ?".
Conception
1 C
1. Conception générale
ti é é l
• Si nécessaire, il faut commencer par l'ébauche de plusieurs
variantes de solutions et choisir celle qui offre le meilleur
rapport entre coûts et avantages.
• Il faut ensuite figer la solution retenue,
retenue la décrire et la détailler.
détailler
En particulier, il faut décrire l'architecture de la solution, c'est‐à‐
dire son organisation en entités, les interfaces de ces entités et
les interactions entre ces entités.
• Ce processus de structuration doit être poursuivi jusqu'à ce que
tous les éléments du document de spécification ont été pris en
compte. Le résultat de cette démarche est un document de
conception générale.
générale
• Durant la phase de conception générale, il faut également
préparer la phase d d'intégration
intégration. A cet effet,
effet il faut élaborer un
plan d'intégration, y compris un plan de test d'intégration.
Conception
2 C
2. Conception détaillée
ti dét illé
• La conception détaillée affine la conception générale.
• Elle commence par décomposer les entités découvertes lors de la
conception générale en entités plus élémentaires.
• Cette décomposition doit être poursuivie jusqu'au niveau où les
entités sont faciles à implémenter et à tester, c'est‐à‐dire
correspondent à des composants logiciels élémentaires.
élémentaires
• Il faut ensuite décrire chaque composant logiciel en détail: son
interface, les algorithmes utilisés, le traitement des erreurs, ses
performances, etc.
• L'ensemble de ces descriptionsp constitue le document de
conception détaillée.
• Pendant la conception détaillée, il faut également préparer la
vérification des composants logiciels élémentaires qui fera l'objet
de la phase des tests unitaires.
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Implémentation
p
• Après
p la conception
p détaillée,, on p peut p
passer à la p
phase
d'implémentation, également appelée phase de construction,
phase de réalisation ou phase de codage.
• Lors de cette phase, la conception détaillée est traduite dans
un langage de programmation.
• Il faut également préparer les données nécessaires à
l'exploitation du logiciel, soit en les saisissant, soit en
convertissant des données déjà existantes.
existantes
• La phase d'implémentation fournit donc les composants
logiciels sur support informatique; on peut citer les sources et
objets compilés, les comptes‐rendus des résultats de
compilation, etc.
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Test
• Durant cette phase, les composants du logiciel sont évalués et
intégrés pour déterminer s'ils satisfont la spécification élaborée lors
de la phase d'analyse.
• Cette phase est en général subdivisée en deux phases:
• Les tests unitaires: on évalue chaque q composant
p
individuellement pour s'assurer qu'il est conforme à la
conception
p détaillée.
S'il s'avère qu'un composant comporte des erreurs, il est renvoyé à son
auteur pour correction.
• Les tests d'intégration consistent a:
1. construire par assemblage un composant à partir de
composants plus petits;
2. exécuter les tests p
pour le composant
p assemblé;;
3. comparer les résultats obtenus aux résultats attendus;
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
L'installation
l'installation comprend les tâches suivantes:
• Planifier l'installation;
• Distribuer le logiciel;
•Installer le logiciel et son environnement (cadre
organisationnel, matériel, données);
• Vérifier le logiciel dans son environnement opérationnel;
• Mettre hors service tout logiciel censé avoir été remplacé par
le nouveau logiciel;
L
Les manuels l d'utilisation
d' tili ti ett d'exploitation
d' l it ti d i t être
doivent êt prêts
êt lors
l d
de
l'installation du logiciel. La documentation d'utilisation est organisée en un
ou plusieurs documents qui pourraient être les suivants:
• Guide d'installation;
• Guide de l'utilisateur;
• Manuel de référence;
• Manuel de l'opérateur.
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
La vérification et de validation 
Les activités de vérification et de validation sont les activités
q
techniques déployées
p y pour maîtriser la q
p qualité du p
produit.

1. La Vérification

• La vérification d'un produit consiste à s'assurer que le produit


est bien construit,
construit ou autrement dit,dit que sa construction
satisfait les exigences de qualité spécifiées.
Exemples:
p
• La vérification d'un document revient à s'assurer que les
règles de structuration et de présentation sont respectées,
que le document est complet, non ambigü et cohérent.
• Pour un programme, on peut vérifier que les règles de style
ont été respectées et que les tests qu'il a subi sont suffisants.
La vérification et de validation 

2 La Validation
2. La Validation
• La validation revient à s'assurer qu'on a construit le bon
produit.
• Valider un produit final revient à s'assurer qu'il est conforme
à son cahier des charges et qu'il donne satisfaction à ses
utilisateurs.
• Pour
P qu'une
' conception
ti soitit valide,
lid il faut
f t qu'elle
' ll prenne en
compte tous les éléments énoncés lors de l'analyse.
La documentation
• La documentation est un élément essentiel dans le
dé l
développement d' logiciel:
d'un l i i l elle
ll fait
f i partie
i du
d produit
d i à
réaliser; elle matérialise l'avancement des travaux, car
chaque phase est concrétisée par la production d d'un
un ou
plusieurs documents;
• elle constitue le support de communication entre les
différents intervenants du projet. On peut distinguer trois
types de documents:
– Les documents de gestion du projet,
– Les documents techniques de réalisation (code
source),
– Les manuels d
d'utilisation
utilisation et d
d'exploitation
exploitation.
Gestion de la configuration
La documentation de développement et le logiciel lui‐même sont constitués d'un
grand nombre d'éléments qui évoluent durant tout le cycle de vie.
Le but de la gestion de la configuration est de maîtriser cette évolution. La gestion de
la configuration comprend donc l'ensemble des activités suivantes:
• Identifier et définir les éléments de configuration et toutes
leurs relations;
• Archiver les éléments de configuration,
configuration aussi bien leurs états
initiaux que leurs états successifs;
• Contrôler les modifications des éléments de configuration, ce
qui inclut pour chaque modification:
– Autoriser le changement,
– Vérifier que le nouvel état est complet et cohérent,
– Enregistrer le nouvel état,
– Mettre à disposition le nouvel état.
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Exploitation et maintenance
Après l'installation suit la phase d'exploitation et de maintenance.
g
Le logiciel est maintenant employé
p y dans son environnement
opérationnel, son comportement est surveillé et, si nécessaire, il
est modifié.
La maintenance et le support du logiciel comprennent les tâches
suivantes:
• Effectuer des dépannages pour des corrections
mineures;
• Réappliquer le cycle de développement pour des
modifications plus importantes;
• Distribuer les mises à jour;
•Fournir ll'assistance
assistance technique et un support de
consultation;
Exploitation et maintenance
Il peut être nécessaire de modifier le logiciel pour corriger des
f
défauts,, p
pour améliorer ses p
performances,
f , p
pour adapter
p le
logiciel à un nouvel environnement ou pour répondre à des
nouveaux besoins ou à des besoins modifiés.
On peut donc distinguer entre:
• La maintenance corrective: non conformité au
spécifications;
• Laa maintenance perfective (évolutive) : changement
des spécification fonctionnelles du logiciel;
• La maintenance adaptative: changement de
l’environnement (matériel, plateforme, système
d’exploitation
d exploitation, etc.).
etc )
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel
Retrait
A un moment donné,, on décide de mettre le logiciel
g hors service. Les
tâches correspondantes sont accomplies durant la phase de
retrait et comprennent:
• Avertir les utilisateurs;
• Effectuer une exploitation en parallèle du logiciel
à retirer et de son successeur;
• Arrêter le support du logiciel.
Avant‐projet Développement Exploitation et Retrait
Maintenance
Initiation 
du projet Planification du projet
Planification du projet 
Gestion 
de Pilotage et suivi du projet  Évaluation
Projet
j
Gestion de qualité
Gestion de qualité

Analyse
Conception
Implémentation
T t
Test
Activités  Étude  Maintenance  Retrait
Installation
Technique préalable et assistance
Vé ifi ti
Vérification et Validation
t V lid ti
Gestion de la configuration
Dé l
Développement de la documentation
d l d i
Formation
Cycle de développement du logiciel
Cycle de développement du logiciel

Cycle de vie du logiciel