Académique Documents
Professionnel Documents
Culture Documents
Céline ROUDET
Celine.Roudet@u-bourgogne.fr
http://ufrsciencestech.u-bourgogne.fr/~roudet/teaching.html
http://ufrsciencestech.u-bourgogne.fr/master1/GenieLogiciel/
Introduction au Génie Logiciel Céline ROUDET 5 Introduction au Génie Logiciel Céline ROUDET 6
Qu’est-ce qu’un logiciel ? Projet logiciel et schéma/comité directeur
Introduction au Génie Logiciel Céline ROUDET 7 Introduction au Génie Logiciel Céline ROUDET 8
Introduction au Génie Logiciel Céline ROUDET 9 Introduction au Génie Logiciel Céline ROUDET 10
Introduction au Génie Logiciel Céline ROUDET 11 Introduction au Génie Logiciel Céline ROUDET 12
Vie du logiciel (et coûts engendrés côté MOE) La qualité logicielle
• Définitions (AFNOR) :
Aptitude d’1 produit/service à satisfaire les besoins des utilisateurs
Assurance qualité : manière dont on compte atteindre la qualité
Point de vue
Vue orientée
3- Historique des différents cycles de vie
concepteur
Critère Critère Critère logiciel
Vision interne
qui détermine
ex : cohérence, concision, la qualité
simplicité, modularité …
Introduction au Génie Logiciel Céline ROUDET 17 Introduction au Génie Logiciel Céline ROUDET 18
La crise du logiciel n’est pas terminée ! Les facteurs d’échec
Raisons invoquées des projets abandonnés (études du
• Réussite des projets informatiques (études du Standish
Group)
Standish Group en 1995) :
Année Succès Mitigé Echec
Pb Analyse
1995 16% 53% 31% des besoins
IT : Information Technology
Introduction au Génie Logiciel Céline ROUDET 19 Introduction au Génie Logiciel Céline ROUDET 20
Introduction au Génie Logiciel Céline ROUDET 23 Introduction au Génie Logiciel Céline ROUDET 24
Organiser le processus de développement CM1 : Introduction au Génie Logiciel
• Processus = enchaînement d’activités
1- Introduction
• Pour chaque activité, on doit déterminer des rôles :
2- Activités du processus / étude de cas
Qui fait • Capture/analyse des besoins
Activité Résultats
Qui approuve Entrées • Spécifications fonctionnelles
intermédiaires
Qui vérifie
• Planifications et gestions
Qui valide Validation / Vérification
Gestion de projet, Doc • Conception détaillée
Qui est consulté
des versions, …
• Implémentation et tests unitaires
• Assurance qualité contrôles réguliers : • Intégration, qualification et déploiement
Validation : le bon produit ? (conforme aux besoins) • Maintenance
Vérification : le produit correct ? (sans bugs, défauts)
3- Historique des différents cycles de vie
Introduction au Génie Logiciel Céline ROUDET 25 Introduction au Génie Logiciel Céline ROUDET 26
Étude de cas : projet tutoré à 4 étudiants (2009–10) Maquette 1 de l’IHM (logiciel Visio)
• Sujet :
Modélisation et simulation des activités d’une entreprise de
collecte, traitement, stockage et expédition de céréales (blé,
orge, colza, …)
Fenêtre principale
l’entreprise souhaite se doter d’un système informatique de
suivi en temps réel pour la surveillance continue des
dispositifs matériels
27 28
Détail des
cellules
29 30
1) Analyse des besoins (le QUOI) 2) Spécifications fonctionnelles
Diag. de séquence (Traitement du grain) : diag. d’intéraction (dynamique)
→ use cases
(diagramme de
comportement UML) :
besoins
fonctionnels
+ précisions du rôle de
chaque acteur
+ liste des tests envisagés pour valider les scenarii
+ contexte du système (modèle du domaine / du métier)
+ besoins non fonctionnels et architecturaux + maquette, prototype : guider le choix de l’architecture
31 32
4) Conception (choix de l’architecture technique) 4.2) Diagramme de classes (de structure : statique)
Tiré de : http://laurent-audibert.developpez.com/Cours-UML/?page=mise-en-oeuvre-uml#L9 37 38
[selon C. Larman]
Extensions utilisateur . . . . . . . . . . . 41,8% 1- Introduction
Correction d’erreurs . . . . . . . . . . . . 21,4%
Modification format de données . . . 17,4%
Modification de matériel . . . . . . . . . . 6,2% 2- Activités du processus / étude de cas
Documentation . . . . . . . . . . . . . . . . . 5,5%
Efficacité . . . . . . . . . . . . . . . . . . . . . . 4%
3- Historique des différents cycles de vie
• Modèles séquentiels
• Modèles itératifs et incrémentaux
Maintenance, évolution :
correction des erreurs (robustesse)
demandes d’évolution (nouvelles
fonctionnalités, portabilité, …)
étape longue, critique et coûteuse (80%
de l’effort)
Introduction au Génie Logiciel Céline ROUDET 47 Introduction au Génie Logiciel Céline ROUDET 48
CM1 : Introduction au Génie Logiciel Modèle itératif
Introduction au Génie Logiciel Céline ROUDET 49 Introduction au Génie Logiciel Céline ROUDET 50
Source : Wikipedia
Modèle itératif (2) Modèle en spirale (1986)
s
ue
isq
sr
e de
s
aly
An
Produits opérationnels :
Avantages et inconvénients du modèle en spirale Modèle incrémental incréments livrables
• Inconvénients :
Qualité des prototypes développés souvent faible
Le client ne voit le système réalisé qu’à la fin !
Itérations :
Un système complexe qui fonctionne a toujours évolué à partir d’un système
simple qui a fonctionné … (John Gall) 55 56
Livres :
– Quality factors. J.A. McCall, in Encyclopædia of Software Engineering, J.Wiley & Sons - 1994
– Le génie logiciel. J. Printz. Eyrolles - 2005
– Object-Oriented Analysis and Design with applications, 3rd ed. G. Booch et al. – 2007
– Programmation en C++ et génie logiciel. V. T'kindt. Dunod – 2007
– Software Engineering - 9th ed. I. Sommerville. Addison-Wesley – 2010
– Mémento - Cahier des charges informatique. Y. Constantinidis. Eyrolles – 2011
– Tout sur le développement logiciel - Ecrire du code efficace, Jean-François Pillou,
Christine Eberhardt, Dunod, 2011
– Architecture logicielle. Concevoir des applications simples, sûres et adaptables.J.
Printz. Dunod – 2012
– Architecture logicielle - Pour une approche organisationnelle, fonctionnelle et
technique. T. Bailet. Editions ENI – 2012
– Expression du besoin et cahier des charges fonctionnel. Élaboration et rédaction–
3rd éd. J. Bernard-Bouissières. Editions AFNOR – 2013
– Design Patterns en Java. Les 23 modèles de conception - Descriptions et solutions
illustrées en UML2 et Java, Laurent Debrauwer, Eni, 2013
Introduction au Génie Logiciel Céline ROUDET 59 Introduction au Génie Logiciel Céline ROUDET 60