Transcript M.E.D.A.L.
M.E.D.A.L. IUP-MIAGE 3ème année Bases et standards Module d’Enseignement à Distance pour l’Architecture Logicielle Diapositive n° 1 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Les 9 « pierres » 1) Introduction Face à une évolution rapide des technologies, une complexité croissante des besoins et des applications, à un besoin de migration technologique, à un nombre pléthorique de méthodes, il faut : - bien asseoir les bases, - aller vers un standard. Diapositive n° 2 IUP MIAGE - Université de NANTES UML et UP Alain VAILLY M.E.D.A.L. 2) Les 9 « pierres » Conviction n° 1 Par delà la multitude de méthodes de conception de systèmes d’information existantes ou ayant existé, seule une petite dizaine de modèles doivent être connus des étudiants et des « gens de terrain » qui veulent comprendre les concepts sous-jacents à ces méthodes. Diapositive n° 3 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 2) Les 9 « pierres » Conviction n° 2 Pour résister au changement, et se placer dans la durée, il faut mettre l’accent sur les modèles de base. La maîtrise de ces briques élémentaires, puis la confrontation des modèles entre eux, permettent de former un socle sur lequel prendront appui les étudiants et les praticiens durant toute leur vie professionnelle. Diapositive n° 4 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 2) Les 9 « pierres » Conviction n° 1 Par delà la multitude de méthodes de conception de systèmes d’information existantes ou ayant existé, seule une petite dizaine de modèles doivent être connus des étudiants et des « gens de terrain » qui veulent comprendre les concepts sous-jacents à ces méthodes. Arbres JSD Automates Réseaux de P ETRI Modèle relationnel Expressions régulières Diagrammes de flots de données Modèles de traitement de Merise Modèle entités-associations-propriétés Diapositive n° 5 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 2) Les 9 « pierres » Conviction n° 2 Pour résister au changement, et se placer dans la durée, il faut mettre l’accent sur les modèles de base. La maîtrise de ces briques élémentaires, puis la confrontation des modèles entre eux, permettent de former un socle sur lequel prendront appui les étudiants et les praticiens durant toute leur vie professionnelle. Arbres JSD Automates Réseaux de P ETRI Modèle relationnel Expressions régulières Diagrammes de flots de données Modèles de traitement de Merise Modèle entités-associations-propriétés Diapositive n° 6 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard UML est un langage de modélisation standard d’un système basé sur une notation spécifique. Il s’agit d’une représentation de l’ensemble des éléments du monde objet (classes, objets …) ainsi que les liens qui les relient. Les objets sont représentés : – physiquement (vues statiques) : diagrammes d’objets, de classes, des cas d’utilisation, de composants, de déploiement – par leur fonctionnement (vues dynamiques) : diagrammes de séquences, de collaboration, d’états-transitions, d’activités Diapositive n° 7 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? Langage = Unified Modeling Language - convergence, stabilisation : versions 0.8 à 2.0 - acceptation : outils et méthodes compatibles UML - syntaxe et règles : méta-modèle et MOF - sémantique informelle - évolution vers des personnalisations : profiles Diapositive n° 8 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard Diapositive n° 9 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard Diapositive n° 10 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? Processus = X Unified Process -convergence, stabilisation : principes (itératif, incrémental, architecture, UC) - uniquement des solutions propriétaires (RUP, Y...) - pratiques convergentes du développement ? - fortement lié à l’outil - une normalisation ? le méta-modèle SPEM Diapositive n° 11 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? Applicable à tout développement logiciel (à objets) Systèmes d’information, SIG... Systèmes temps réels, embarqués... Interfaces, simulateurs, calcul Applications diverses Couverture complète du cycle de développement Analyse des besoins ... Intégration et tests Diapositive n° 12 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? Complète UML inclut un grand nombre de concepts autour de - l’objet : objets, classes, opérations, attributs, relations, envois de message, etc - l’analyse des besoins : acteurs, cas d’utilisation, - la conception du logiciel : composants, modules, processus, - l’implantation : nœuds, liaisons, déploiement. Extensible UML autorise l’enrichissement ou la personnalisation de la notation au moyen des stéréotypes. Diapositive n° 13 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? UML propose huit types de combinaisons cohérentes et complémentaires : les diagrammes. - de cas d’utilisation (UC - Use Case) décrivent les acteurs et l’utilisation du système. - de classes représentent les classes et les relations statiques entre ces classes : classe, attribut, opération, visibilité, interface, association, agrégation, héritage, dépendance... - d’objets décrivent des objets et des liens. Les objets peuvent être actifs et définir leur flot de contrôle. Sur ces liens (réels ou virtuels) circulent des messages. Les envois de messages sont synchrones ou asynchrones, avec ou sans résultats. Diapositive n° 14 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? Les diagrammes d’objets se retrouvent sous deux formes dans UML : - Les diagrammes de séquence, qui donnent une vision temporelle des interactions en objets en mettant l’accent sur l’ordonnancement des échanges entre objets ; - Les diagrammes de collaboration, qui donnent une vision spatiale des interactions en mettant l’accent sur les liaisons entre objets. Diapositive n° 15 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? Les diagrammes états-transitions modélisent le comportement des objets au cours du temps. Les diagrammes d’activités décrivent le flot de contrôle interne aux opérations. A grande échelle, ils représentent aussi les échanges entre objets. Les diagrammes de composants mettent en évidence les composants d’implémentation et leurs relations. Les diagrammes de déploiement définissent la structure matérielle et la distribution des objets et des composants. En plus : stéréotypes, paquetages, notes, contraintes. Diapositive n° 16 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Diapositive n° 17 3) UN standard ? cas d’utilisation IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Diapositive n° 18 3) UN standard ? cas d’utilisation IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Diapositive n° 19 3) UN standard ? cas d’utilisation IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Diapositive n° 20 3) UN standard ? cas d’utilisation IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Diapositive n° 21 3) UN standard ? scénario IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? classes Diapositive n° 22 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? classes Diapositive n° 23 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Diapositive n° 24 3) UN standard ? classes IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? collaboration Diapositive n° 25 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. Diapositive n° 26 3) UN standard ? séquence IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? context Salle::créerSalle(bat, noEtage, noSalle, superficie, type) : Salle pre: -- le bâtiment et la salle existent Bâtiment.allInstances->includes(bat) and OCL Type.allInstances->includes(type) post: -- soit sal l’objet créé let sal : Salle in Salle.allInstances@pre->excludes(sal) and sal.no_étage = noEtage and sal.no_salle = noSalle and sal.no_bat = bat.no_bat and sal.superficie = superficie and sal.typeSalle = type and sal.bâtiment = bat and -- ajout explicite dans l’ensemble des instances Salle.allInstances = Salle.allInstances@pre->including(sal) result = sal Diapositive n° 27 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? états-transitions Diapositive n° 28 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? activités Diapositive n° 29 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? activités Diapositive n° 30 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? composants Diapositive n° 31 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 3) UN standard ? déploiement Diapositive n° 32 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 4) Conclusion • UML est un langage complet mais complexe. • La démarche -ie. UP- n’est pas encore stabilisée (il y a des propositions). • Un problème de migration (MERISE --> UML) se pose. • Les bases existent et doivent être maîtrisées. Diapositive n° 33 IUP MIAGE - Université de NANTES Alain VAILLY M.E.D.A.L. 4) Conclusion Concrètement, il faut : - fixer son besoin méthodologique, - choisir une ou plusieurs méthodes, - choisir son ou ses outils. L’objectif est de converger vers une méthode applicable et supportée par un outil. Diapositive n° 34 IUP MIAGE - Université de NANTES Alain VAILLY