SlideShare une entreprise Scribd logo
1  sur  34
Télécharger pour lire hors ligne
Business Plan Google Slides Template
FGST
Analyse et conception orientée objet
CYCLE DE VIE D'UN LOGICIEL
www.elbahihassan.com
elbahihassan@gmail.com ISTA Oulad Teima
ISTA OULED TEIMA
3
Hassan EL BAHI www.elbahihassan.com
Information :
● L’information est un ensemble de données ayant un sens compréhensible par l'esprit
humain. Elle peut donc prendre plusieurs formes : texte, image, son, vidéo, symbole …
Système d’informations :
● Le système d’informations est un ensemble organisé des ressource humains et matériels
ayant pour but la collection, le stockage, le transport, le traitement, la diffusion, la
présentation et la destruction de l’information au sein d’une organisation. Cela est réalisé
en général grâce à un ordinateur.
Rappel
ISTA OULED TEIMA
4
Hassan EL BAHI www.elbahihassan.com
Informatique :
● L’informatique est la science du traitement automatique des informations
Système informatique :
● Le système informatique est l’ensemble des éléments matériels et logiciels destinés au
traitement automatique de l’information. Exemple : Ordinateur.
Un logiciel :
● Un logiciel est un système d’information automatisé.
Rappel
ISTA OULED TEIMA
5
Hassan EL BAHI www.elbahihassan.com
Rappel
Logiciels
Système informatiques
Système d’informations
Informations
ISTA OULED TEIMA
6
Hassan EL BAHI www.elbahihassan.com
Système informatique
Partie matérielle Partie logicielle
ISTA OULED TEIMA
7
Hassan EL BAHI www.elbahihassan.com
Système informatique
Partie matérielle Partie logicielle
ISTA OULED TEIMA
8
Hassan EL BAHI www.elbahihassan.com
Système informatique
Partie matérielle Partie logicielle
ISTA OULED TEIMA
9
Hassan EL BAHI www.elbahihassan.com
● Le « Ordinateur » a besoin du « Software » pour être piloté
● Le « Ordinateur » a besoin du « Hardware » pour être exécuté
● Évolution des capacités des logiciels est intimement liée à l’évolution du hardware et
aussi d’autre facteurs :
○ Amélioration de la puissance du processeur
○ Amélioration des capacité de stockages
○ Changement des dispositifs d’entrée ou de sortie (écran tactile, stylo optique, etc. )
○ Augmentation de la mobilités des unités mobiles (Smartphones, Tablettes, Smart Watch, etc.)
Comparaison entre le logiciel et le matériel
ISTA OULED TEIMA
10
Hassan EL BAHI www.elbahihassan.com
Plusieurs dégâts ont été causés par des erreurs dans des logiciels :
● Le bug du sonde Mariner-1 en 1962 : une fusée spatiale pour mission de survol de venus,
a dérouté de sa trajectoire après 5 min de son lancement
→ Cause : Une formule mathématique qui a été mal transcrite en code source
→ Coût : 18,5 millions de dollars
Impacts d’un logiciel de mauvaise qualité
ISTA OULED TEIMA
11
Hassan EL BAHI www.elbahihassan.com
● Processeur Pentium, 1994: Bug dans la table de valeurs utilisée par l'algorithme de
division.
● Intel a décidé de remplacer tous les processeurs Pentium défectueux, ce qui aurait pu
représenter un coût énorme pour la compagnie.
Impacts d’un logiciel de mauvaise qualité
ISTA OULED TEIMA
12
Hassan EL BAHI www.elbahihassan.com
La présence du bug (Processeur Pentium, 1994) peut être vérifiée manuellement en
effectuant le calcul suivant dans toute application utilisant des nombres à virgule, y compris
la calculatrice Windows ou Microsoft Excel dans Windows 95/98.
● La valeur correcte est:
● La valeur renvoyée par un processeur Pentium défectueux est :
● Toutefois, seule une petite fraction des possesseurs de processeurs défectueux a
demandé l'échange.
Impacts d’un logiciel de mauvaise qualité
ISTA OULED TEIMA
13
Hassan EL BAHI www.elbahihassan.com
● Ariane V vol 501, 1996
→ Explosion après 40 secondes de vol
→ Coût : 370 millions de dollars
→ Panne du système de navigation
due à un dépassement de capacité
(arithmetic overflow)
Impacts d’un logiciel de mauvaise qualité
ISTA OULED TEIMA
14
Hassan EL BAHI www.elbahihassan.com
Impacts d’un logiciel de mauvaise qualité
● La société de tests de logiciels Tricentis a analysé 606 défaillances logicielles sur 314
entreprises afin de mieux comprendre l'impact commercial et financier des défaillances
logicielles.
● Ces défaillances de logiciels avaient affecté 3,6 milliards de personnes et entraîné des
pertes financières de 1 700 milliards de dollars.
*Référence : https://www.techrepublic.com/article/report-software-failure-caused-1-7-trillion-in-financial-losses-in-2017/
ISTA OULED TEIMA
15
Hassan EL BAHI www.elbahihassan.com
Raisons principales des bugs
● Erreurs humaines
● Taille et complexité des logiciels
● Taille des équipes de conception/développement
● Manque de méthodes de conception
● Négligence de la phase d'analyse des besoins du client
● Négligence et manque de méthodes et d'outils des phases de validation/vérification
ISTA OULED TEIMA
16
Hassan EL BAHI www.elbahihassan.com
● Validité : aptitude d'un produit logiciel à remplir exactement ses fonctions, définies par le
cahier des charges et les spécifications.
● Fiabilité ou robustesse : aptitude d'un produit logiciel à fonctionner dans des conditions
anormales.
● Extensibilité (maintenance) : facilité avec laquelle un logiciel se prête à sa maintenance,
c'est-à-dire à une modification ou à une extension des fonctions qui lui sont demandées.
● Réutilisabilité : aptitude d'un logiciel à être réutilisé, en tout ou en partie, dans de
nouvelles applications.
● Compatibilité : facilité avec laquelle un logiciel peut être combiné avec d'autres logiciels.
Critères de qualité d’un logiciel
ISTA OULED TEIMA
17
Hassan EL BAHI www.elbahihassan.com
● Efficacité : Utilisation optimale des ressources matérielles.
● Portabilité : facilité avec laquelle un logiciel peut être transféré sous différents
environnements matériels et logiciels.
● Vérifiabilité : facilité de préparation des procédures de test.
● Intégrité : aptitude d'un logiciel à protéger son code et ses données contre des accès non
autorisés.
● Facilité d'emploi : facilité d'apprentissage, d'utilisation, de préparation des données,
d'interprétation des erreurs et de rattrapage en cas d'erreur d'utilisation.
Critères de qualité d’un logiciel
ISTA OULED TEIMA
18
Hassan EL BAHI www.elbahihassan.com
Le processus de développement logiciel contient un certain nombre d’étapes :
Les étapes de développement logiciel
Définir les besoins et les
exigences du client et des
utilisateurs
Analyser le
système
Concevoir le
système
Programmer le
logiciel
Déployer
Tester le
logiciel
Maintenir le
système
ISTA OULED TEIMA
19
Hassan EL BAHI www.elbahihassan.com
● La définition des besoins et des exigences correspond à l’étape dans laquelle nous
discutions avec le client et les futurs utilisateurs afin de comprendre de quoi ils ont
besoin : QUI doit pouvoir faire QUOI ?
● Lors de cette étape, nous définissions également les demandes précises, telles que le
respect de certaines normes graphiques, les temps de réponse, le matériel sur lesquels le
logiciel devrait fonctionner, etc.
Définition des besoins et des exigences
Les étapes de développement logiciel
ISTA OULED TEIMA
20
Hassan EL BAHI www.elbahihassan.com
● L’analyse du système permet d’affiner ce qui a été défini dans l’étape précédente.
● Dans cette étape de développement logiciel on détaille davantage le fonctionnement
interne du futur logiciel (COMMENT cela doit-il fonctionner ?).
Analyser le système
Les étapes de développement logiciel
ISTA OULED TEIMA
21
Hassan EL BAHI www.elbahihassan.com
● La conception du système correspond à la définition de choix techniques.
● La phase de conception permet de décrire de manière non ambiguë, le plus souvent en
utilisant un langage de modélisation, le fonctionnement futur du système, afin d'en
faciliter la réalisation.
Conception du système
Les étapes de développement logiciel
ISTA OULED TEIMA
22
Hassan EL BAHI www.elbahihassan.com
● La programmation est l’étape dans laquelle les informaticiens réalisent le logiciel à l’aide
de langages de programmation, de systèmes de gestion de bases de données, etc.
Programmer le logiciel
Les étapes de développement logiciel
ISTA OULED TEIMA
23
Hassan EL BAHI www.elbahihassan.com
● Durant les tests, les informaticiens vérifient que le logiciel fonctionne et répond aux
besoins définis en début du projet.
● Cette phase de tests peut intégrer des validations du logiciel avec le client et/ou les
utilisateurs. C’est même plus que souhaité.
Tester le logiciel
Les étapes de développement logiciel
ISTA OULED TEIMA
24
Hassan EL BAHI www.elbahihassan.com
● Lors du déploiement, les informaticiens installent le logiciel sur le matériel et réalisent
des ajustements pour faire fonctionner le logiciel dans l’environnement de travail des
utilisateurs.
Déployer
Les étapes de développement logiciel
ISTA OULED TEIMA
25
Hassan EL BAHI www.elbahihassan.com
● La maintenance correspond à la période qui suit l’installation et pendant laquelle les
anomalies et problèmes doivent être corrigés.
Maintenir le système
Les étapes de développement logiciel
ISTA OULED TEIMA
26
Hassan EL BAHI www.elbahihassan.com
Les étapes de développement logiciel ne sont pas forcément utilisées de façon linéaire. On
parle souvent de cycles de vie, qui ont pour but d’organiser ces étapes de différentes
manières en fonction d’un certain nombre de critères relatifs au projet de développement. Ci-
dessous, quelques exemples de cycle de vie.
● La cascade
● Le modèle en V
● Le modèle en W
● La spirale
● Le RAD
● Etc.
Cycle de vie d’un logiciel
ISTA OULED TEIMA
27
Hassan EL BAHI www.elbahihassan.com
● Le cycle de vie en cascade peut être utilisé lorsqu’un projet est relativement simple,
c’est-à-dire pour lequel nous avons la quasi-certitude que les besoins ou exigences
n’évolueront pas en cours de projet.
● En pratique, une étape ne démarre que si la précédente ait été validée par le client et/ou
les utilisateurs.
Le Cycle de vie en cascade
Cycle de vie d’un logiciel
ISTA OULED TEIMA
28
Hassan EL BAHI www.elbahihassan.com
Le Cycle de vie en cascade
Cycle de vie d’un logiciel
ISTA OULED TEIMA
29
Hassan EL BAHI www.elbahihassan.com
1. Étude de faisabilité: Cette étape permet de décider de la nécessité et de l’opportunité de
lancer le projet.
2. Analyse des besoins: Cette étape correspond à l’étape n°1 énoncé ci-dessus.
3. Conception générale : correspond à l’étape Analyse du système.
4. Conception détaillée Cette étape est équivalente à l’étape Conception du système.
5. Réalisation: Cette étape équivalente à l’étape La programmation.
6. Intégration: Cette étape équivaut à une partie de l’étape La programmation. Notez que
l’étape Tests n’est pas vu ici comme une étape, mais comme des validations.
7. Le déploiement: Cette étape équivalente à l’étape Déployer.
Le Cycle de vie en cascade
Cycle de vie d’un logiciel
ISTA OULED TEIMA
30
Hassan EL BAHI www.elbahihassan.com
● Un projet plus important dont les besoins et les exigences risquent d’évoluer pourrait
avoir un cycle en V.
● Comme illustré dans le diapositive suivant, le système à développer serait décomposé en
modules. Chaque module serait conçu, développé et testé séparément.
● Les différents modules pourraient alors être intégrés dans le système global au fur et à
mesure.
● Des tests d’intégration permettraient alors de garantir que l’ensemble fonctionne de
façon à répondre à la conception générale du système.
● Les tests d’acceptation permettent ensuite de vérifier la cohérence du système avec les
besoins.
Le Cycle de vie en V
Cycle de vie d’un logiciel
ISTA OULED TEIMA
31
Hassan EL BAHI www.elbahihassan.com
Le Cycle de vie en V
Cycle de vie d’un logiciel
ISTA OULED TEIMA
32
Hassan EL BAHI www.elbahihassan.com
1. Analyse des besoins : identique à l’étape Définition des besoins et des exigences.
2. Conception système : Cette étape couvre une partie de l’étape : l’analyse du système et
de l’étape : la conception du système. Il s’agit d’une vision globale du logiciel à
développer.
3. Le système est divisé en composants pour lesquels on réalisera :
4. Conception composant : l’analyse et la conception détaillée du composant
5. Réalisation : composant La réalisation ou la programmation du composant
6. Test composant : Cela correspond donc aux étapes la programmation et les tests.
7. Tests d’intégration : Les différents composants sont alors intégrés dans un logiciel.
8. Tests d’acceptation: correspondent à la validation du logiciel par le client et les
utilisateurs.
Le Cycle de vie en cascade
Cycle de vie d’un logiciel
ISTA OULED TEIMA
33
Hassan EL BAHI www.elbahihassan.com
● Un logiciel est un système d’information automatisé.
● Le processus de développement logiciel contient un certain nombre d’étapes :
○ Définir les besoins et les exigences du client et des utilisateurs, Analyser le système,
Concevoir le système, Programmer le logiciel, Tester le logiciel, Déployer et Maintenir le
système.
● L’objectif d’un cycle de vie est d’organiser les différentes étapes du processus de
développement logiciel en fonction d’un certain nombre de critères relatifs au projet de
développement.
○ Les cycles de vie en cascade et en V sont les plus utilisés.
Résumé
1.Le cycle de vie d’un logiciel.pdf

Contenu connexe

Similaire à 1.Le cycle de vie d’un logiciel.pdf

Enib cours c.a.i. web - séance #6 : autour de la webapp
Enib   cours c.a.i. web - séance #6 : autour de la webappEnib   cours c.a.i. web - séance #6 : autour de la webapp
Enib cours c.a.i. web - séance #6 : autour de la webapp
Horacio Gonzalez
 
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
hbadir
 
Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.
Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.
Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.
Anasse Ej
 
Kit De Survie Techno et Web à l'usage des Entrepreneurs
Kit De Survie Techno et Web à l'usage des EntrepreneursKit De Survie Techno et Web à l'usage des Entrepreneurs
Kit De Survie Techno et Web à l'usage des Entrepreneurs
Stéphanie Hertrich
 

Similaire à 1.Le cycle de vie d’un logiciel.pdf (20)

1-Cours de Géniel Logiciel
1-Cours de Géniel Logiciel1-Cours de Géniel Logiciel
1-Cours de Géniel Logiciel
 
Soubki projet
Soubki projetSoubki projet
Soubki projet
 
RA et CCDS - Séance 1.pptx
RA et CCDS - Séance 1.pptxRA et CCDS - Séance 1.pptx
RA et CCDS - Séance 1.pptx
 
Enib cours c.a.i. web - séance #6 : autour de la webapp
Enib   cours c.a.i. web - séance #6 : autour de la webappEnib   cours c.a.i. web - séance #6 : autour de la webapp
Enib cours c.a.i. web - séance #6 : autour de la webapp
 
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt1_Assurance_Qualit_et_Gnie_Logiciel.ppt
1_Assurance_Qualit_et_Gnie_Logiciel.ppt
 
qualimétrie logiciel - Entreprise Software Analytic - nov 2015
qualimétrie logiciel -  Entreprise Software Analytic - nov 2015qualimétrie logiciel -  Entreprise Software Analytic - nov 2015
qualimétrie logiciel - Entreprise Software Analytic - nov 2015
 
Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.
Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.
Cobit : DS 8 - Gérer le service d’assistance aux clients et les incidents.
 
L’informatique efficience
L’informatique efficienceL’informatique efficience
L’informatique efficience
 
Cours Jean-Louis BOULANGER: Réalisation d'une application logicielle.
Cours Jean-Louis BOULANGER: Réalisation d'une application logicielle.Cours Jean-Louis BOULANGER: Réalisation d'une application logicielle.
Cours Jean-Louis BOULANGER: Réalisation d'une application logicielle.
 
PerfUG : présentation de Dynatrace APM
PerfUG : présentation de Dynatrace APMPerfUG : présentation de Dynatrace APM
PerfUG : présentation de Dynatrace APM
 
Disaster Recovery Plan (DRP) & Business Continuity Plan 2012 - Computerland
Disaster Recovery Plan (DRP) & Business Continuity Plan 2012 - ComputerlandDisaster Recovery Plan (DRP) & Business Continuity Plan 2012 - Computerland
Disaster Recovery Plan (DRP) & Business Continuity Plan 2012 - Computerland
 
Dossier spécifications intégration_v1.00
Dossier spécifications intégration_v1.00Dossier spécifications intégration_v1.00
Dossier spécifications intégration_v1.00
 
MISE EN ŒUVRE ET IMPLEMENTATION SUR GLPI.pptx
MISE EN ŒUVRE ET IMPLEMENTATION SUR GLPI.pptxMISE EN ŒUVRE ET IMPLEMENTATION SUR GLPI.pptx
MISE EN ŒUVRE ET IMPLEMENTATION SUR GLPI.pptx
 
Tirer profit d'un outillage de gestion des exigences
Tirer profit d'un outillage de gestion des exigencesTirer profit d'un outillage de gestion des exigences
Tirer profit d'un outillage de gestion des exigences
 
Le Plan de Reprise d'Activité pour les PME
Le Plan de Reprise d'Activité pour les PMELe Plan de Reprise d'Activité pour les PME
Le Plan de Reprise d'Activité pour les PME
 
PrésQL.pdf
PrésQL.pdfPrésQL.pdf
PrésQL.pdf
 
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptxChapitre 1 - Introcution & cycles de développement - Etudiant.pptx
Chapitre 1 - Introcution & cycles de développement - Etudiant.pptx
 
La gestion des actifs logiciels : enjeux et opportunités
La gestion des actifs logiciels : enjeux et opportunitésLa gestion des actifs logiciels : enjeux et opportunités
La gestion des actifs logiciels : enjeux et opportunités
 
Comment integrer les applications de votre Systeme Information entre elles ?
Comment integrer les applications de votre Systeme Information entre elles ?Comment integrer les applications de votre Systeme Information entre elles ?
Comment integrer les applications de votre Systeme Information entre elles ?
 
Kit De Survie Techno et Web à l'usage des Entrepreneurs
Kit De Survie Techno et Web à l'usage des EntrepreneursKit De Survie Techno et Web à l'usage des Entrepreneurs
Kit De Survie Techno et Web à l'usage des Entrepreneurs
 

1.Le cycle de vie d’un logiciel.pdf

  • 1. Business Plan Google Slides Template FGST Analyse et conception orientée objet CYCLE DE VIE D'UN LOGICIEL www.elbahihassan.com elbahihassan@gmail.com ISTA Oulad Teima
  • 2.
  • 3. ISTA OULED TEIMA 3 Hassan EL BAHI www.elbahihassan.com Information : ● L’information est un ensemble de données ayant un sens compréhensible par l'esprit humain. Elle peut donc prendre plusieurs formes : texte, image, son, vidéo, symbole … Système d’informations : ● Le système d’informations est un ensemble organisé des ressource humains et matériels ayant pour but la collection, le stockage, le transport, le traitement, la diffusion, la présentation et la destruction de l’information au sein d’une organisation. Cela est réalisé en général grâce à un ordinateur. Rappel
  • 4. ISTA OULED TEIMA 4 Hassan EL BAHI www.elbahihassan.com Informatique : ● L’informatique est la science du traitement automatique des informations Système informatique : ● Le système informatique est l’ensemble des éléments matériels et logiciels destinés au traitement automatique de l’information. Exemple : Ordinateur. Un logiciel : ● Un logiciel est un système d’information automatisé. Rappel
  • 5. ISTA OULED TEIMA 5 Hassan EL BAHI www.elbahihassan.com Rappel Logiciels Système informatiques Système d’informations Informations
  • 6. ISTA OULED TEIMA 6 Hassan EL BAHI www.elbahihassan.com Système informatique Partie matérielle Partie logicielle
  • 7. ISTA OULED TEIMA 7 Hassan EL BAHI www.elbahihassan.com Système informatique Partie matérielle Partie logicielle
  • 8. ISTA OULED TEIMA 8 Hassan EL BAHI www.elbahihassan.com Système informatique Partie matérielle Partie logicielle
  • 9. ISTA OULED TEIMA 9 Hassan EL BAHI www.elbahihassan.com ● Le « Ordinateur » a besoin du « Software » pour être piloté ● Le « Ordinateur » a besoin du « Hardware » pour être exécuté ● Évolution des capacités des logiciels est intimement liée à l’évolution du hardware et aussi d’autre facteurs : ○ Amélioration de la puissance du processeur ○ Amélioration des capacité de stockages ○ Changement des dispositifs d’entrée ou de sortie (écran tactile, stylo optique, etc. ) ○ Augmentation de la mobilités des unités mobiles (Smartphones, Tablettes, Smart Watch, etc.) Comparaison entre le logiciel et le matériel
  • 10. ISTA OULED TEIMA 10 Hassan EL BAHI www.elbahihassan.com Plusieurs dégâts ont été causés par des erreurs dans des logiciels : ● Le bug du sonde Mariner-1 en 1962 : une fusée spatiale pour mission de survol de venus, a dérouté de sa trajectoire après 5 min de son lancement → Cause : Une formule mathématique qui a été mal transcrite en code source → Coût : 18,5 millions de dollars Impacts d’un logiciel de mauvaise qualité
  • 11. ISTA OULED TEIMA 11 Hassan EL BAHI www.elbahihassan.com ● Processeur Pentium, 1994: Bug dans la table de valeurs utilisée par l'algorithme de division. ● Intel a décidé de remplacer tous les processeurs Pentium défectueux, ce qui aurait pu représenter un coût énorme pour la compagnie. Impacts d’un logiciel de mauvaise qualité
  • 12. ISTA OULED TEIMA 12 Hassan EL BAHI www.elbahihassan.com La présence du bug (Processeur Pentium, 1994) peut être vérifiée manuellement en effectuant le calcul suivant dans toute application utilisant des nombres à virgule, y compris la calculatrice Windows ou Microsoft Excel dans Windows 95/98. ● La valeur correcte est: ● La valeur renvoyée par un processeur Pentium défectueux est : ● Toutefois, seule une petite fraction des possesseurs de processeurs défectueux a demandé l'échange. Impacts d’un logiciel de mauvaise qualité
  • 13. ISTA OULED TEIMA 13 Hassan EL BAHI www.elbahihassan.com ● Ariane V vol 501, 1996 → Explosion après 40 secondes de vol → Coût : 370 millions de dollars → Panne du système de navigation due à un dépassement de capacité (arithmetic overflow) Impacts d’un logiciel de mauvaise qualité
  • 14. ISTA OULED TEIMA 14 Hassan EL BAHI www.elbahihassan.com Impacts d’un logiciel de mauvaise qualité ● La société de tests de logiciels Tricentis a analysé 606 défaillances logicielles sur 314 entreprises afin de mieux comprendre l'impact commercial et financier des défaillances logicielles. ● Ces défaillances de logiciels avaient affecté 3,6 milliards de personnes et entraîné des pertes financières de 1 700 milliards de dollars. *Référence : https://www.techrepublic.com/article/report-software-failure-caused-1-7-trillion-in-financial-losses-in-2017/
  • 15. ISTA OULED TEIMA 15 Hassan EL BAHI www.elbahihassan.com Raisons principales des bugs ● Erreurs humaines ● Taille et complexité des logiciels ● Taille des équipes de conception/développement ● Manque de méthodes de conception ● Négligence de la phase d'analyse des besoins du client ● Négligence et manque de méthodes et d'outils des phases de validation/vérification
  • 16. ISTA OULED TEIMA 16 Hassan EL BAHI www.elbahihassan.com ● Validité : aptitude d'un produit logiciel à remplir exactement ses fonctions, définies par le cahier des charges et les spécifications. ● Fiabilité ou robustesse : aptitude d'un produit logiciel à fonctionner dans des conditions anormales. ● Extensibilité (maintenance) : facilité avec laquelle un logiciel se prête à sa maintenance, c'est-à-dire à une modification ou à une extension des fonctions qui lui sont demandées. ● Réutilisabilité : aptitude d'un logiciel à être réutilisé, en tout ou en partie, dans de nouvelles applications. ● Compatibilité : facilité avec laquelle un logiciel peut être combiné avec d'autres logiciels. Critères de qualité d’un logiciel
  • 17. ISTA OULED TEIMA 17 Hassan EL BAHI www.elbahihassan.com ● Efficacité : Utilisation optimale des ressources matérielles. ● Portabilité : facilité avec laquelle un logiciel peut être transféré sous différents environnements matériels et logiciels. ● Vérifiabilité : facilité de préparation des procédures de test. ● Intégrité : aptitude d'un logiciel à protéger son code et ses données contre des accès non autorisés. ● Facilité d'emploi : facilité d'apprentissage, d'utilisation, de préparation des données, d'interprétation des erreurs et de rattrapage en cas d'erreur d'utilisation. Critères de qualité d’un logiciel
  • 18. ISTA OULED TEIMA 18 Hassan EL BAHI www.elbahihassan.com Le processus de développement logiciel contient un certain nombre d’étapes : Les étapes de développement logiciel Définir les besoins et les exigences du client et des utilisateurs Analyser le système Concevoir le système Programmer le logiciel Déployer Tester le logiciel Maintenir le système
  • 19. ISTA OULED TEIMA 19 Hassan EL BAHI www.elbahihassan.com ● La définition des besoins et des exigences correspond à l’étape dans laquelle nous discutions avec le client et les futurs utilisateurs afin de comprendre de quoi ils ont besoin : QUI doit pouvoir faire QUOI ? ● Lors de cette étape, nous définissions également les demandes précises, telles que le respect de certaines normes graphiques, les temps de réponse, le matériel sur lesquels le logiciel devrait fonctionner, etc. Définition des besoins et des exigences Les étapes de développement logiciel
  • 20. ISTA OULED TEIMA 20 Hassan EL BAHI www.elbahihassan.com ● L’analyse du système permet d’affiner ce qui a été défini dans l’étape précédente. ● Dans cette étape de développement logiciel on détaille davantage le fonctionnement interne du futur logiciel (COMMENT cela doit-il fonctionner ?). Analyser le système Les étapes de développement logiciel
  • 21. ISTA OULED TEIMA 21 Hassan EL BAHI www.elbahihassan.com ● La conception du système correspond à la définition de choix techniques. ● La phase de conception permet de décrire de manière non ambiguë, le plus souvent en utilisant un langage de modélisation, le fonctionnement futur du système, afin d'en faciliter la réalisation. Conception du système Les étapes de développement logiciel
  • 22. ISTA OULED TEIMA 22 Hassan EL BAHI www.elbahihassan.com ● La programmation est l’étape dans laquelle les informaticiens réalisent le logiciel à l’aide de langages de programmation, de systèmes de gestion de bases de données, etc. Programmer le logiciel Les étapes de développement logiciel
  • 23. ISTA OULED TEIMA 23 Hassan EL BAHI www.elbahihassan.com ● Durant les tests, les informaticiens vérifient que le logiciel fonctionne et répond aux besoins définis en début du projet. ● Cette phase de tests peut intégrer des validations du logiciel avec le client et/ou les utilisateurs. C’est même plus que souhaité. Tester le logiciel Les étapes de développement logiciel
  • 24. ISTA OULED TEIMA 24 Hassan EL BAHI www.elbahihassan.com ● Lors du déploiement, les informaticiens installent le logiciel sur le matériel et réalisent des ajustements pour faire fonctionner le logiciel dans l’environnement de travail des utilisateurs. Déployer Les étapes de développement logiciel
  • 25. ISTA OULED TEIMA 25 Hassan EL BAHI www.elbahihassan.com ● La maintenance correspond à la période qui suit l’installation et pendant laquelle les anomalies et problèmes doivent être corrigés. Maintenir le système Les étapes de développement logiciel
  • 26. ISTA OULED TEIMA 26 Hassan EL BAHI www.elbahihassan.com Les étapes de développement logiciel ne sont pas forcément utilisées de façon linéaire. On parle souvent de cycles de vie, qui ont pour but d’organiser ces étapes de différentes manières en fonction d’un certain nombre de critères relatifs au projet de développement. Ci- dessous, quelques exemples de cycle de vie. ● La cascade ● Le modèle en V ● Le modèle en W ● La spirale ● Le RAD ● Etc. Cycle de vie d’un logiciel
  • 27. ISTA OULED TEIMA 27 Hassan EL BAHI www.elbahihassan.com ● Le cycle de vie en cascade peut être utilisé lorsqu’un projet est relativement simple, c’est-à-dire pour lequel nous avons la quasi-certitude que les besoins ou exigences n’évolueront pas en cours de projet. ● En pratique, une étape ne démarre que si la précédente ait été validée par le client et/ou les utilisateurs. Le Cycle de vie en cascade Cycle de vie d’un logiciel
  • 28. ISTA OULED TEIMA 28 Hassan EL BAHI www.elbahihassan.com Le Cycle de vie en cascade Cycle de vie d’un logiciel
  • 29. ISTA OULED TEIMA 29 Hassan EL BAHI www.elbahihassan.com 1. Étude de faisabilité: Cette étape permet de décider de la nécessité et de l’opportunité de lancer le projet. 2. Analyse des besoins: Cette étape correspond à l’étape n°1 énoncé ci-dessus. 3. Conception générale : correspond à l’étape Analyse du système. 4. Conception détaillée Cette étape est équivalente à l’étape Conception du système. 5. Réalisation: Cette étape équivalente à l’étape La programmation. 6. Intégration: Cette étape équivaut à une partie de l’étape La programmation. Notez que l’étape Tests n’est pas vu ici comme une étape, mais comme des validations. 7. Le déploiement: Cette étape équivalente à l’étape Déployer. Le Cycle de vie en cascade Cycle de vie d’un logiciel
  • 30. ISTA OULED TEIMA 30 Hassan EL BAHI www.elbahihassan.com ● Un projet plus important dont les besoins et les exigences risquent d’évoluer pourrait avoir un cycle en V. ● Comme illustré dans le diapositive suivant, le système à développer serait décomposé en modules. Chaque module serait conçu, développé et testé séparément. ● Les différents modules pourraient alors être intégrés dans le système global au fur et à mesure. ● Des tests d’intégration permettraient alors de garantir que l’ensemble fonctionne de façon à répondre à la conception générale du système. ● Les tests d’acceptation permettent ensuite de vérifier la cohérence du système avec les besoins. Le Cycle de vie en V Cycle de vie d’un logiciel
  • 31. ISTA OULED TEIMA 31 Hassan EL BAHI www.elbahihassan.com Le Cycle de vie en V Cycle de vie d’un logiciel
  • 32. ISTA OULED TEIMA 32 Hassan EL BAHI www.elbahihassan.com 1. Analyse des besoins : identique à l’étape Définition des besoins et des exigences. 2. Conception système : Cette étape couvre une partie de l’étape : l’analyse du système et de l’étape : la conception du système. Il s’agit d’une vision globale du logiciel à développer. 3. Le système est divisé en composants pour lesquels on réalisera : 4. Conception composant : l’analyse et la conception détaillée du composant 5. Réalisation : composant La réalisation ou la programmation du composant 6. Test composant : Cela correspond donc aux étapes la programmation et les tests. 7. Tests d’intégration : Les différents composants sont alors intégrés dans un logiciel. 8. Tests d’acceptation: correspondent à la validation du logiciel par le client et les utilisateurs. Le Cycle de vie en cascade Cycle de vie d’un logiciel
  • 33. ISTA OULED TEIMA 33 Hassan EL BAHI www.elbahihassan.com ● Un logiciel est un système d’information automatisé. ● Le processus de développement logiciel contient un certain nombre d’étapes : ○ Définir les besoins et les exigences du client et des utilisateurs, Analyser le système, Concevoir le système, Programmer le logiciel, Tester le logiciel, Déployer et Maintenir le système. ● L’objectif d’un cycle de vie est d’organiser les différentes étapes du processus de développement logiciel en fonction d’un certain nombre de critères relatifs au projet de développement. ○ Les cycles de vie en cascade et en V sont les plus utilisés. Résumé