Académique Documents
Professionnel Documents
Culture Documents
3 1
PROCESSUS DE
DÉVELOPPEMENT D’UN
LOGICIEL
Pr Idrissa SARR
Idrissa.sarr@ucad.edu.sn
http://edmi.ucad.sn/~idrissasarr
Ch. 3 2
Questions
• Complexe ≠ compliqué
LES EXIGENCES
Ch. 3 7
• Contrainte de temps
• Time-to-market est un défi majeur surtout face à la concurrence
• Staff
• Implication d’autres ressources humaines qui ne sont pas
nécessairement des experts du domaine
Ch. 3 8
Exigences d’ingénierie
• Impliquent
• Elucider
• comprendre
• analyser
• Spécifier
• Mettre l’accent sur
• Quelles qualités sont requises, et NON comment les obtenir
9
Utilisateurs
Développeur
Clients Développeur
• Attentif,
• Cultivé,
• Ouvert
• …..
Ch.1 12
• Attentif,
• Cultivé,
• Ouvert
• Méthodique
• …
Ch.1 13
SURVOL DES
MÉTHODES DE
DÉVELOPPEMENT
Ch. 3 15
# méthodes
• Code&Fix
• Waterfall
• Spirale
• Prototypage
• Unified process
• Méthodes d’Agile : Extreme programming
Ch. 3 17
Code&Fix
La première approche
• Ecrire le code
• Le peaufiner pour éliminer les erreurs détectées,
améliorer les fonctionnalités et ajouter de nouvelles
caractéristiques.
Code&Fix
• Avantages
• Sans surcharge administrative
• Faible expertise, tout le monde peut l’utiliser
• Pratique pour les petits projets et sans trop de risques
• Inconvénients
• Sans contrôle et visibilité
• Sans planification des ressources
• Sans deadlines
• Erreurs difficiles à détecter/corriger
Ch. 3 19
Waterfall (1)
• Inventée à la fin des années 50 et popularisée en 1970
Feasibility study
Modèle waterfall
Requirements
Design
Requirements
Design
Coding and
module testing
Integration and
system testing
Modèle spirale
• Comme les besoins des utilisateurs finaux sont difficiles à
cerner, alors il est plus efficace de gérer le
développement par étapes.
1. Réaliser un logiciel
2. Vérifier s’il satisfait les exigences des clients
3. Si oui arrêter, Sinon retourner au point 1
Les 4 phases de la méthode spirale
Phase d’identification
• Identification des besoins.
Inception Elaboration
Transition Construction
• Elaboration
• Capturer les détails des besoins/exigences des utilisateurs
• Décider d’acheter ou de coder
• Construction
• Les composants achetés/codés sont intégrés
• Transition
• Livrer un logiciel satisfaisant des critères fixés.
Ch. 3 35
Inconvénients
• Modèle compliqué: requiert
• Nécessite une expertise en analyse de risque
• Compétence en management
Rapide prototypage
• Idée de base:
• Les utilisateurs sont non techniques et souvent ne savent pas ce
qu’ils veulent/peuvent avoir.
Requirements Capture
Iterate
Quick Design
Build Prototype
Customer Evaluation of
Prototype
RP: Avantages
• Réduit les risques d’erreurs des besoins utilisateurs
RP: Inconvenients
• Requiert une collaboration extensive avec le client
• Coûte de l’argent au client
• Difficile à finir si le client se retire
• Difficile d’évaluer la durée du projet
Ch. 3 40
Agile/XP (Manifeste)
• XP : Extreme Programming
• Individus et interactions
• Plus que les processus et les outils
• Logiciels opérationnels
• Plus qu’une documentation exhaustive
Livraison &
Exploration Client feed-back
Attribution de
Tâches Développement
Création de Tests
Fonctionnels
Ch. 3 42
Agile: Avantages
• Méthode souple et pratique pour les projets à petite et
moyenne échelle
Agile: Inconvénient
• Ne convient pas pour les projets à grande échelle ou la
documentation est indispensable
Résumons
• Quelle est la meilleure méthode de développement parmi
celles présentées?