Petite Histoire UML

  • Published on
    23-Oct-2015

  • View
    13

  • Download
    2

Embed Size (px)

Transcript

<ul><li><p>Petite histoire dPetite histoire dUMLUMLPierrePierre--Alain MullerAlain Muller</p><p>ESSAIMESSAIMpa.mullerpa.muller@@uha.fruha.fr03.89.59.69.6503.89.59.69.65</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 22</p><p>ProlifProlifration des mration des mthodes objetthodes objet Une cinquantaine de mUne cinquantaine de mthodes objet thodes objet </p><p>au dau dbut des annbut des annes 90es 90 Confusion, attentismeConfusion, attentisme</p><p> Consensus autour dConsensus autour didides communeses communes Objets, classes, associations, sousObjets, classes, associations, sous--</p><p>systsystmes, cas dmes, cas dutilisationutilisation</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 33</p><p>Unification des mUnification des mthodesthodes</p><p> La guerre des mLa guerre des mthodes ne fait plus thodes ne fait plus avancer la technologie des objetsavancer la technologie des objets Ne permet pas de dNe permet pas de dgager un marchgager un march suffisantsuffisant</p><p> Recherche dRecherche dun langage commun uniqueun langage commun unique Utilisable par toutes les mUtilisable par toutes les mthodesthodes AdaptAdapt toutes les phases du dtoutes les phases du dveloppementveloppement Compatible avec toutes les techniques de Compatible avec toutes les techniques de </p><p>rralisationalisation</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 44</p><p>De quoi aDe quoi a--tt--on besoin ?on besoin ?</p><p> Un langage de modUn langage de modlisationlisation Notation claireNotation claire SSmantique prmantique prcisecise</p><p> Une dUne dmarche de gmarche de gnie logicielnie logiciel</p><p>Mthode = Langage + Dmarche</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 55</p><p>Langage de modLangage de modlisationlisation</p><p> GGnnriquerique ExpressifExpressif Flexible (configurable, extensible)Flexible (configurable, extensible) Syntaxe et sSyntaxe et smantiquemantique Unification par convergence Unification par convergence </p><p>aujourdaujourdhuihui</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 66</p><p>DDmarchemarche</p><p> GGnnriquerique Impossible Impossible standardiserstandardiser</p><p> Personnes, applications, cultures...Personnes, applications, cultures...</p><p> Cadre configurableCadre configurable Unification par convergence dans le Unification par convergence dans le </p><p>futurfutur</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 77</p><p>DiffDiffrentes sortes de systrentes sortes de systmesmes</p><p> Logiciels Logiciels IngIngnierie des logicielsnierie des logiciels</p><p> Logiciels et matLogiciels et matrielsriels IngIngnierie des systnierie des systmesmes</p><p> OrganisationsOrganisations IngIngnierie des organisationsnierie des organisations</p><p>Unification sur plusieurs domaines dapplications</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 88</p><p>Rapprochement Rapprochement BoochBooch / OMT/ OMT</p><p> BoochBooch93 et OMT93 et OMT--2 sont plus 2 sont plus ressemblantes que diffressemblantes que diffrentesrentes BoochBooch93 adopte les associations, les 93 adopte les associations, les </p><p>diagrammes d'diagrammes d'HarelHarel, les traces , les traces ddvvnementsnements</p><p> OMTOMT--2 introduit les flots de messages et 2 introduit les flots de messages et retire les diagrammes de flot de donnretire les diagrammes de flot de donneses</p><p> BoochBooch--93 construction93 construction OMTOMT--2 analyse et abstraction2 analyse et abstraction</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 99</p><p>Notation unifiNotation unifie UMLe UML</p><p> BasBase sur les me sur les mthodes de BOOCH, thodes de BOOCH, OMT et OOSEOMT et OOSE</p><p> InfluencInfluence par les bonnes ide par les bonnes ides des es des autres mautres mthodesthodes</p><p> MMrie par le travail en communrie par le travail en commun</p><p>Grady Booch James Rumbaugh Ivar Jacobson</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1010</p><p>Principales influencesPrincipales influences</p><p> Souvent une histoire imbriquSouvent une histoire imbriquee</p><p>Booch Catgories et sous-systmesEmbley Classes singletons et objets compositesFusion Description des oprations, numrotation des messagesGamma, et al. Frameworks, patterns, et notesHarel Automates (Statecharts) Jacobson Cas dutilisation (use cases)Meyer Pr- et post-conditionsOdell Classification dynamique, clairage sur les vnementsOMT AssociationsShlaer-Mellor Cycle de vie des objetsWirfs-Brock Responsabilits (CRC)</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1111</p><p>ObjectifsObjectifs</p><p> ReprReprsenter des systsenter des systmes entiersmes entiers</p><p> Etablir un couplage explicite entre les Etablir un couplage explicite entre les concepts et les artefacts exconcepts et les artefacts excutablescutables</p><p> Prendre en compte les facteurs Prendre en compte les facteurs ddchellechelle</p><p> CrCrer un langage de moder un langage de modlisation lisation utilisable utilisable la fois par les humains et la fois par les humains et les machinesles machines</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1212</p><p>Approche retenueApproche retenue</p><p> Identifier la sIdentifier la smantique des mantique des concepts de baseconcepts de base</p><p> Classer les conceptsClasser les concepts Construire un mConstruire un mtamodtamodlele Choisir une notation graphiqueChoisir une notation graphique Regrouper par niveau dRegrouper par niveau dabstraction, abstraction, </p><p>complexitcomplexit et domaineet domaine</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1313</p><p>MMtamodtamodlele Identification des concepts de baseIdentification des concepts de base</p><p> DDfinition de la sfinition de la smantique de ces mantique de ces conceptsconcepts</p><p> Choix dChoix dune reprune reprsentation graphiquesentation graphique</p><p> MMtamodtamodlisationlisation ddUML avec UMLUML avec UML Description formelle des Description formelle des llments de ments de </p><p>modmodlisationlisation</p><p> AustAustre, pas pre, pas pdagogiquedagogique MMthodologistesthodologistes et constructeurs det constructeurs doutilsoutils</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1414</p><p>ModModles et les vuesles et les vues</p><p> ModModle = unitle = unit de dde dveloppementveloppement CohCohrence interne forterence interne forte Couplage faible avec les autres Couplage faible avec les autres </p><p>modmodlesles ReliReli une phase de dune phase de dveloppementveloppement</p><p> Vue = projection (modVue = projection (modle)le) GraphiqueGraphique Peut englober plusieurs modPeut englober plusieurs modlesles</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1515</p><p>Unification des mUnification des mthodes objetthodes objet</p><p> Appel aux propositions de lAppel aux propositions de lOMGOMG DDmarche dmarche dunificationunification UML (UML (UnifiedUnified ModelingModeling LanguageLanguage))</p><p> OMG (OMG (ObjectObject Management Group)Management Group) Consortium ouvert, sans but lucratifConsortium ouvert, sans but lucratif Edition de spEdition de spcifications techniquescifications techniques &gt;800 membres&gt;800 membres</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1616</p><p>Les grandes Les grandes tapestapes Octobre 95Octobre 95</p><p> UnifiedUnified MethodMethod V0.8V0.8</p><p> Octobre 96 Octobre 96 UML V0.91 (UML V0.91 (TheThe UnifiedUnified ModelingModeling</p><p>LanguageLanguage for for ObjectObject--OrientedOrientedDevelopmentDevelopment))</p><p> Janvier 97Janvier 97 UML 1.0 est soumise UML 1.0 est soumise llOMGOMG</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1717</p><p>Les grandes Les grandes tapestapes</p><p> DDcembre 97cembre 97 UML 1.1 est normalisUML 1.1 est normalise par le par lOMGOMG RTF (CrRTF (Cration ation RevisionRevision TaskTask Force)Force)</p><p> Juin 1999Juin 1999 UML 1.3 publiUML 1.3 publi par UML RTFpar UML RTF 458 probl458 problmes / UML 1.1mes / UML 1.1</p><p> Septembre 2001Septembre 2001 UML 1.4UML 1.4</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1818</p><p>Actuellement UML 1.4Actuellement UML 1.4 Computer Associates International Inc. Electronic Data Systems Corporation Hewlett-Packard Company IBM Corporation I-Logix IntelliCorp Microsoft Corporation Object Management Group Oracle Corporation Ptech Inc. Rational Software Corporation Reich Technologies Softeam Taskon A/S Unisys Corporation</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 1919</p><p>Les grandes Les grandes tapestapes</p><p> Septembre 2001Septembre 2001 RFP UML 2.0 divisRFP UML 2.0 divis en 4 documentsen 4 documents</p><p> InfrastructureInfrastructure SuperstructureSuperstructure ObjectObject ConstraintConstraint LanguageLanguage DiagramDiagram InterchangeInterchange</p><p> En janvier 2003En janvier 2003 U2 U2 PartnersPartners , 2U, UML4MDA, 2U, UML4MDA Tiraillement entre vite/mieuxTiraillement entre vite/mieux</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 2020</p><p>PortPorte de dUMLUML</p><p> Standardiser les artefacts du Standardiser les artefacts du ddveloppementveloppement ModModles, notation et diagrammesles, notation et diagrammes</p><p> Ne pas standardiser le processusNe pas standardiser le processus DirigDirig par les cas dpar les cas dutilisationutilisation CentrCentr sur lsur larchitecturearchitecture ItItratif et incrratif et incrmentalmental</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 2121</p><p>Acceptation dAcceptation dUMLUML</p><p> UML est dans le domaine publicUML est dans le domaine public Successeur naturel des mSuccesseur naturel des mthodes de thodes de </p><p>BoochBooch, OMT et OOSE, OMT et OOSE UML est le fruit de lUML est le fruit de lexpexprience et rience et </p><p>des besoins de la communautdes besoins de la communaut des des utilisateursutilisateurs</p><p>UML est la notation pour documenter les modles objets</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 2222</p><p>Introduction au mIntroduction au mtamodtamodlele</p><p> UML a UML a tt ddabord dabord dfini avec UMLfini avec UML Dessins + textesDessins + textes MMtata--modmodlele informelinformel</p><p> Promotion du noyau dPromotion du noyau dUMLUML Alignement avec le MOFAlignement avec le MOF Un langage pour exprimer des Un langage pour exprimer des </p><p>mmtamodtamodlesles</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 2323</p><p>IngIngnierie des modnierie des modlesles</p><p> Architecture de Architecture de mmtamodtamodlisationlisationde lde lOMGOMG</p><p>M2</p><p>M3</p><p>M1</p><p>M0</p><p>Mtamodle UML, CWM, SPEM, , Java, </p><p>Mta-Mtamodle MOF, XMI, OCL, QVT</p><p>Modle</p><p>Domaine</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 2424</p><p>ModModles et transformationsles et transformations</p><p>Model(Metamodel 2)</p><p>Model(Metamodel 1)</p><p>Model(Metamodel 3)</p><p>Model(Metamodel 4)</p><p>Model(Metamodel A)</p><p>Model(Metamodel B)</p><p>Model(Metamodel C)</p><p>Model(Metamodel D)</p><p>T1T1</p><p>T1</p><p>T1T1 T1</p><p>T2</p><p>T4T3</p><p>T1</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 2525</p><p>Le minimumLe minimum</p><p> EntitEntits (classes) + types de bases (classes) + types de base RelationsRelations PaquetagesPaquetages</p></li><li><p>Petite histoire d'UMLPetite histoire d'UML PierrePierre--Alain MullerAlain Muller 2626</p><p>En rEn rsumsum</p><p> UML est une norme de langage de UML est une norme de langage de modmodlisation objetlisation objet</p><p> UML nUML nest pas une mest pas une mthodethode UML convient pour toutes les UML convient pour toutes les </p><p>mmthodes objetthodes objet UML est en UML est en volution continuevolution continue</p><p>Petite histoire dUMLProlifration des mthodes objetUnification des mthodesDe quoi a-t-on besoin ?Langage de modlisationDmarcheDiffrentes sortes de systmesRapprochement Booch / OMTNotation unifie UMLPrincipales influencesObjectifsApproche retenueMtamodleModles et les vuesUnification des mthodes objetLes grandes tapesLes grandes tapesActuellement UML 1.4Les grandes tapesPorte dUMLAcceptation dUMLIntroduction au mtamodleIngnierie des modlesModles et transformationsLe minimumEn rsum</p></li></ul>