Professional Documents
Culture Documents
Ibrahima GUEYE
Objectifs du cours
Ingnierie du logiciel
Principes et objectifs
Modlisation avec UML(Unified Modelling
Language) Comprendre les concepts cls de lapproche oriente objet. Savoir aborder un problme en se basant sur une approche oriente objet. Matriser les principaux diagrammes UML qui permettent de concevoir un systme 2
Motivations
Systmes dinformation dune entreprise est compos
de matriels et de logiciels.
80 % de logiciel 20 % de matriel
logiciel?
4
Quelques principes du GL
Gnralisation regroupement dun ensemble de fonctionnalits
Comment y parvenir?
Communication avec lutilisateur: en
amont, durant et en aval Via un langage comprhensible Travail avec rigueur et avec abstraction
6
logiciel
Comment atteindre ce but? Analyser le mode opratoire des utilisateurs Adapter lergonomie du logiciel aux utilisateurs.
programmation de haut niveau quipement matriel de qualit Vrification et tests (version alpha ou bta)
donnes/traitements) Externaliser certaines tches en utilisant des middlewares Utiliser des formats standards (XML) et des protocoles de communication normaliss (Corba)
9
erreurs Maintenance adaptative: ajuster le logiciel en fonction de lvolution de son environnement Maintenance perfective: accrotre/amliorer les possibilits du 13 logiciels
Phases de dveloppement
Le cycle de dveloppement classique comporte cinq
tapes:
Analyse des besoins: Dterminer les
fonctionnalits que doivent possder le logiciel Analyse: dterminer les tches et les structures qui se rptent dans le problme Conception: saccorder sur la manire dont le systme doit tre construit. Implmentation: Codage du rsultat de la conception. Test: Le systme est-il conforme au cahier des charges
16
pas chercher lexhaustivit. Dlimiter les frontires du systme. Spcifier le quoi fait par le logiciel. tudier la faisabilit du projet Faisabilit organisationnelle. Faisabilit technique. Faisabilit temporelle Faisabilit financire
17
Analyse
Analyse du domaine: identifier les lments du
de lorganisation actuelle.
Analyse technique: recenser les quipements
informatiques en place.
18
Conception
Dfinir larchitecture du logiciel
Dfinir chaque constituant du logiciel Informations traites Oprations effectues Rsultats fournis Contraintes respecter Optimiser les modles Choisir un langage de programmation
19
Implmentation
Cration des modules et des bases de
donnes Un module pour raliser une fonctionnalit donne Adaptation et/ ou modification des modules existants
Intgration des diffrents modules.
20
Tests
Tests unitaires: permettent de vrifier que chaque
module fonctionne correctement indpendamment des autres. Tests dintgration: permettent de vrifier que tous les programmes tests individuellement fonctionnent bien ensemble.
Tests systmes: permettent de vrifier que le
systme fonctionne correctement dans les conditions relles dutilisation. Tests Alpha: faire tester le logiciel par le client sur le site de dveloppement Tests Bta: faire tester le logiciel par le client sur le21
conception.
Composition: une dmarche: explique la procdure suivre en
exploitant au mieux les principes de modularit, dabstraction, de rutilisation, etc. un formalisme de reprsentation: facilite la communication, lorganisation et la vrification.
des modles: facilitent les retours sur la conception
23
Notions de modle
Cest une reprsentation abstraite et simplifie
(i.e. qui exclut certains dtails) dune entit (phnomne, processus, systme, etc.) du monde rel en vue de le dcrire, de lexpliquer ou de le prvoir. Il est synonyme de thorie, mais avec une connotation pratique : cest une thorie oriente vers laction quelle doit servir. Il permet de rduire la complexit dun phnomne en liminant les dtails qui ninfluencent pas son comportement de manire significative. Il reflte ce que le concepteur croit important pour la comprhension et la prdiction du phnomne modlis. 24
dobservation (satellite . . .), il permet de prvoir les conditions climatiques pour les jours venir. Modle conomique: peut par exemple permettre de simuler lvolution de cours boursiers en fonction dhypothses macroconomiques (volution du chmage, taux de croissance . . .). Modle dmographique: dfinit la composition dun panel dune population et son comportement, dans le but de fiabiliser des tudes statistiques, daugmenter limpact de dmarches commerciales, etc.
25
standards qui aident concevoir des logiciels de qualit Il existe de nombreuses mthodes: Mthodes fonctionnelles: hirarchie de fonction
SADT, SA-SD, etc.
et des traitements.
Merise, Entit Relation, etc.
points communs (objets, mthode, paramtres, ) Rumbaugh ont chacun commenc adopter les ides des autres. Les 3 auteurs ont souhait crer un langage de modlisation unifi
27
Historique
Standardisation par lOMG Soumission lOMG
Standardisation par lOMG Soumission lOMG Soumission lOMG Version bta OOPSLA96 OOPSLA95
UML 1.1 UML 1.0 UML 0.9 Mthode unifie 0.8 Booch93 OMT-2 OMT-1 OOSE
Janvier 1997
Juin 1996 Octobre 1995
Autres mthodes
28
Booch91
Partenaires
Aujourdhui
UML est le langage de modlisation orient objet le
plus connu et le plus utilis au monde UML sapplique plusieurs domaines UML nest pas une mthode Peu dutilisateurs connaissent le standard, ils ont une vision outille dUML (Vision Utilisateur)
5% forte comprhension, 45% faible comprhension, 50%
aucune comprhension
UML est fortement critiqu car pas assez formel Le march UML est important et saccrot MDA, UML2.0, IBM a rachet Rational !!!
29