290 likes | 525 Views
Conception Objet. UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon. Objectifs du cours. Acquérir un savoir-faire dans la conception et le développement d’applications objets (Java) Découvrir le langage UML Apprendre une « méthode » de conception orientée objets.
E N D
Conception Objet UML support à la COO 2ème année IUT Calais-Boulogne Bénédicte Talon
Objectifs du cours • Acquérir un savoir-faire dans la conception et le développement d’applications objets (Java) • Découvrir le langage UML • Apprendre une « méthode » de conception orientée objets Bénédicte Talon – Cours Conception Objet 2
Présentation de l’enseignement • 2 séances de « Conception Objet » de 1h30/semaine • Bénédicte Talon • Alternance de cours/TD/TP Bénédicte Talon – Cours Conception Objet 3
Plan du cours • Introduction/Rappel • Les vues structurelles (statiques) • Le diagramme de cas d’utilisation • Le diagramme de classes • Les vues comportementales (dynamiques) • Le diagramme d’interaction • Une méthode Objet • AGL et Documentation Bénédicte Talon – Cours Conception Objet 4
Conception Objet Chapitre 1 Introduction/Rappel
Introduction • Bibliographie utilisée • Petit Test • Qu’est ce que la Conception Objet • Histoire rapide • UML • Les différents diagrammes Bénédicte Talon – Cours Conception Objet 6
Bibliographie • UML en français • Uml.free.fr • UML2 par la pratique – 4ème édition • Pascal Roques, EYROLLES, 2005 • Conception objet en Java avec BlueJ • David Barnes et Michael Kölling, Pearson Education • UML • Martin Fowler, Le tout en poche, Campus Press • Introduction à UML • Sinan Si Alhir, O’REILLY • UML 2 • Benoît Charroux, Aomar Osmani, Yann Thierry-Mieg Bénédicte Talon – Cours Conception Objet 7
Introduction – Conception Objet • Approche fonctionnelle non adaptée • applications qui évoluent sans cesse • complexité croit continuellement • Objectif approche objet • faciliter l'évolution d'applications complexes Bénédicte Talon – Cours Conception Objet 8
Introduction – Petit Test de connaissances • Des concepts évoqués l’an passé • Objet • Programme objet • Classe • Encapsulation • UML • Diagramme de classes Bénédicte Talon – Cours Conception Objet 9
Introduction – Conception Objet • Objectif méthode objet • Structurer un système sans centrer l'analyse uniquement sur les données ou uniquement sur les traitements (mais sur les deux) • Approche objet moins intuitive que l'approche fonctionnelle. • plus naturel de décomposer un problème sous forme d'une hiérarchie de fonctions atomiques et de données, qu'en terme d'objets et d'interaction entre ces objets. Bénédicte Talon – Cours Conception Objet 10
Introduction – Conception Objet • Très grande rigueur nécessaire • développeurs (même expérimentés) pensent à travers un langage de programmation. • Les langages orientés objet doivent être considérés comme des outils • Comment programmer « objet » un système si l'on ne dispose pas d'un moyen de représentation adéquat ? Bénédicte Talon – Cours Conception Objet 11
Introduction –Conception Objet • Les "méthodologues" [Rumbaugh] disent qu'une méthode comporte : • une démarche (les étapes, phases et tâches de mise en oeuvre) • des formalismes (les modélisations et les techniques de transformation) • une organisation et des moyens de mise en oeuvre Bénédicte Talon – Cours Conception Objet 12
Introduction – Conception Objet • Langage pour • Représenter des concepts abstraits (graphiquement) • Limiter les ambiguïtés • Faciliter l'analyse Bénédicte Talon – Cours Conception Objet 13
Introduction –Conception Objet • Démarchepour • penser objet dès le départ, • définir les vues (décrire tous les aspects d’un système) • Organisation et moyens de mise en œuvre • Outils (AGL) • Gestion de projet Bénédicte Talon – Cours Conception Objet 14
Introduction – Conception Objet • Modèle (Formalisme) • abstraction de la réalité. • vue subjective, mais pertinente de la réalité. • frontière entre la réalité et la perspective de l'observateur. • reflète des aspects importants • Modéliser permet de communiquer • Le langage naturel est trop imprécis • Le code est précis mais trop détaillé Bénédicte Talon – Cours Conception Objet 15
Introduction – Conception Objet L’abstraction • Pourquoi ? • Faciliter la compréhension du système • Réduire la réalité pour de disposer d'éléments de travail exploitables par des moyens mathématiques ou informatiques. • Comment ? • le représenter et • reproduire ses comportements. • en réduisant la complexité du système étudié Bénédicte Talon – Cours Conception Objet 16
Introduction – Conception Objet Pour penser et concevoir objet • "prendre de la hauteur", • jongler avec des concepts abstraits, • Les langages de programmation constituent un cadre trop rigide • Se discipliner à "penser objet" dès la phase d’analyse Bénédicte Talon – Cours Conception Objet 17
Introduction - Histoire Premières méthodes (années 70) Approche systémique (années 80) Émergence des Méthodes Objets (années 90-95) Booch, Rumbaugh, Jacobson Révision (2000) Unification (années 95-97) Normalisation (fin 1997) Industrialisation Bénédicte Talon – Cours Conception Objet 18
Introduction - Histoire Bénédicte Talon – Cours Conception Objet 19
UML - Généralités • Les "méthodologues" préconisent 3 composantes • Merise : ensemble "cohérent" sur ces 3 composantes. • UML exclusivement formalismes. • UML est un langage pas une méthode Bénédicte Talon – Cours Conception Objet 20
UML - Généralités • Exprimer, élaborer des modèles objet • Indépendamment de tout langage de programmation. • Normalise les concepts objet Bénédicte Talon – Cours Conception Objet 21
UML - Généralités • Langage formel (méta-modèle) • Concepts véhiculés et manipulés • Sémantique de ces éléments Bénédicte Talon – Cours Conception Objet 22
UML – 3 initiales • Langage : Support de communication • Spécifier : exigences • Visualiser • Construire • Documenter : aspect formel • Langage <> Processus Bénédicte Talon – Cours Conception Objet 23
UML – 3 initiales • Modèle • Représentation d’un sujet • Important de ne pas tout représenter en même temps • Gérer l’abstraction • Unifié • Combiner les meilleures pratiques Bénédicte Talon – Cours Conception Objet 24
UML – Buts • Prêt à l’emploi • Expressif • Simple • Précis • Extensible • Indépendant de l’implémentation • Indépendant d’un processus Bénédicte Talon – Cours Conception Objet 25
UML – La réponse • les diagrammes • Représenter un système selon des vues complémentaires • Représentation graphique • Types des éléments prédéfinis • Véhiculent une sémantique précise ( toujours la même vue d'un système) Bénédicte Talon – Cours Conception Objet 26
UML – Les diagrammes • Vues statiques (structurelles) du système : • diagrammes de cas d'utilisation • diagrammes d'objets • diagrammes de classes • diagrammes de composants • diagrammes de déploiement • Vues dynamiques (comportementales) du système : • diagrammes de collaboration • diagrammes de séquence • diagrammes d'états transitions • diagrammes d'activités Bénédicte Talon – Cours Conception Objet 27
UML et processus • Les auteurs favorisent une approche • Dirigée par les use cases • Architecturale • Itérative • Incrémentale Bénédicte Talon – Cours Conception Objet 28