Professional Documents
Culture Documents
Licence Informatique
2012-2013
Objectifs du cours
Introduction lingnierie du logiciel
Comprendre les objectifs
Hardware et Software
Systmes informatiques
80 % de logiciel 20 % de matriel
Depuis quelques annes, la fabrication du matriel est assure par quelques fabricants seulement
Le matriel est relativement fiable Le march est standardis
Les problmes lis linformatique sont essentiellement des problmes de Logiciel Cours d'UML 4
Le Gnie Logiciel
Terme introduit en 1968 lors de la confrence de lOTAN Garmish Dfinitions
Comme toute discipline dingnierie, le gnie logiciel est la rencontre entre la science et lindustrie(Shaw) Appliquer des connaissances scientifiques la production de programmes et de la documentation ncessaire leur dveloppement, mise en uvre et maintenance (Boehm) Ingnierie: Proposer des solution pratiques en appliquant des connaissances scientifiques pour construire des produits de qualits un cot et dans les dlais dtermins. Cours d'UML 5
Objectifs du GL
Comment faire des logiciels de qualits? Mais dabord cest quoi les critres de qualit dun logiciel? Cours d'UML 6
Facilit dutilisation
Importance de leffort ncessaire pour interagir avec le logiciel
Robustesse, sret
Le logiciel fonctionne convenablement en toutes circonstances, rien de catastrophique ne peut survenir mme en dehors des conditions dutilisations prvues.
Solutions
Utiliser des mthodes formelles, langage de programmation de haut niveau Vrification et tests Cours d'UML 9
Solutions
Rutilisabilit Vrification, tests Structures de donnes complexes et algos simples Anticiper les changements avenir Cours d'UML 15
Quelques principes du GL
Gnralisation
regroupement dun ensemble de fonctionnalits semblables en une fonctionnalit paramtrable (gnricit, hritage)
Structuration
faon de dcomposer un logiciel (utilisation dune mthode bottom-up ou top-down)
Abstraction
mcanisme qui permet de prsenter un contexte en exprimant les lments pertinents et en omettant ceux qui ne le sont pas.
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 Cours d'UML
Analyse
Analyse du domaine: identifier les lments du domaine ainsi que les relations et interactions entre ces lments. Analyse de lexistant: dterminer les fonctions principales et rutilisables du systme existant. Analyse organisationnelle: dterminer la structure de lorganisation actuelle. Analyse technique: recenser les quipements informatiques en place. Cours d'UML 20
Conception
Dfinir larchitecture du logiciel Dfinir chaque constituant du logiciel
Informations traites Oprations effectues Rsultats fournis Contraintes respecter
Implmentation
Cration des modules et des bases de donnes
Un module pour raliser une fonctionnalit donne Adaptation et/ ou modification des modules existants
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 le site de production Cours d'UML 23
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 et lvolution des applications. Cours d'UML 25
Mthodes objets: intgration des donnes et des traitements dans un objet unique.
OMT, OOSE, etc. Cours d'UML 27
Historique
Autres mthodesBooch91OMT1OOSEPartenairesBooch93OMT-2Mthode unifie 0.8UML 0.9UML 1.0UML 1.1UML 1.2UML 1.xUML 2.01999-2002Juin 1998Novembre 1997Septembre 1997Janvier
1997Juin 1996Octobre 1995Standardisation par lOMG Soumission lOMG Standardisation par lOMG Soumission lOMG Soumission lOMG Version bta OOPSLA96OOPSLA952003Cours d'UML 29
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
RUP
Peut 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 !!! Cours d'UML 30