Les nouveaux défis des systèmes complexes et la réponse MDA de l'omg.

Dimension: px
Commencer à balayer dès la page:

Download "Les nouveaux défis des systèmes complexes et la réponse MDA de l'omg."

Transcription

1 Les nouveaux défis des systèmes complexes et la réponse MDA de l'omg. Une approche de génie logiciel. Jean Bézivin

2 Solution miracle ou nouvelle obsession? Ils voient des modèles partout! Requirement model Business Object model Workflow model Business rules model Business process model Design model Deployment model Test model Performance model QoS model Execution model TrucMuch model

3 La nouvelle crise du logiciel Première crise : 1965 Solutions? (NATO Summer School 1967): "Software engineering" "Structured programming" "Top-down approaches" Seconde crise : 2000 Solutions? (OMG november 2000): La PPO ou la PPC ne constituent que des réponses très partielles à la montée en complexité. Seules elles sont aujourd'hui insuffisantes. "MDA : Decouple neutral business models from variable platforms" "Transformations as assets"

4 Les systèmes deviennent plus complexes Volume croissant Des données Du code Évolutivité croissante De la partie métier (mondialisation, concentrations, restructurations, ) De la partie plate-forme d'exécution Hétérogénéité croissante Des langages et des paradigmes Des supports de données et des protocoles d'accès Des systèmes et des plates-formes Des technologies Le rythme d'arrivée des nouvelles technos s'accélère Ce rythme ne se ralentira pas Les vielles technos ne meurent pas, elles se cachent dans les couches profondes du logiciel

5 Réponse aux nouveaux défis des systèmes complexes 1. Les outils actuels ne répondent plus aux besoins 2. Les outils actuels contribuent même à aggraver le problème (volume+évolutivité+hétérogénéité) 3. Il faut donc inventer de nouvelles solutions pour construire les systèmes d'information du nouveau millénaire

6 Exemple typique Un jeune ingénieur en sortie de Bac+5 et ayant des connaissances de base en Java, XML et UML se voit invité, lors de son arrivée en entreprise et avant de commencer son travail, à lire le lundi le rapport public J2EE v1.4 de 228 pages Dans les six premières pages de ce rapport il est fait référence à : EJB, JSP, JMS, JMX, JCA, JAAS, JAXP, JDBC, JNDI. Cette nouvelle version de J2EE est la version Web services et on suppose donc connus les concepts SOAP, SAAJ, JAX-RPC et JAXR Chacun des acronymes cités correspond à une spécification La spécification de EJB 2.1 correspond à un document pdf de 640 pages qui sera lue le mardi Le mercredi sera consacré à la lecture du document Servlet 2.4 PFD specification de 307 pages Le jeudi il s'attaque à la lecture du document JSP 2.0 PFD specification de 374 pages Et ainsi de suite Au bout d'un mois de lectures, notre ingénieur est enfin prêt à commencer le travail productif D'après "Is complexity hurting Java?" de Jason Weiss, dans Java Developer's Journal, Vol. 7, Issue 10, Octobre JFIADSMA'02, Lille

7 Que faire? ( sachant que de ne rien faire est une option de plus en plus coûteuse et dangereuse) ( sachant que la complexité a atteint un tel niveau qu'il est hors de portée d'un seul individu d'avoir une vision globale sur un système en évolution) Accélérer encore la course aux nouvelles technologies dans l'espoir qu'une nouvelle solution magique se présente? Fuite en avant? Réponse de l'omg : MDA Changement de paradigme : des objets aux modèles Changement de stratégie : de l'interprétatif au transformationnel Changement de vision : du centré code au centré aspects Objectif prioritaire : protéger les investissements informatiques des entreprises de l'obsolescence technologique Moyen privilégié: dans les systèmes d'information séparer les aspects liés à la plate-forme des aspects indépendants de la plateforme en les prenant en compte par des modèles indépendants (PIMs et PSMs).

8 Indépendance de la plate-forme : Le précédent des SGB D des années 70 Dans les années 70, la communauté SGBD a du résoudre le problème de l'indépendance de la plate-forme pour les systèmes centrés données Ils ont procédé de la façon suivante : Élever le niveau d'abstraction Codd invente l'algèbre relationnelle L'acceptation ne fut pas instantanée et unanime Inventer un formalisme conceptuel L'industrie se met d'accord sur le standard SQL Ce standard imparfait et critiqué est toujours d'actualité Les communautés du génie logiciel et des systèmes d'information doivent aujourd'hui résoudre à leur tour le problème de l'indépendance de la plate-forme.

9 La puissance des paradigmes : le précédent du schéma MVC des années 80 PIM PDM PSM M V C

10 Des objets aux modèles Les maladies infantiles de l'objet Les limites du tout-objet Le sans-couture, pas sans danger Les patrons et le savoir-faire architectural Les cas d utilisation Le syndrome du wrapper fou La portabilité perdue Le rendez-vous manqué de l'extensibilité Le "cross-cutting" et les aspects Une crise majeure? L'impossible salut par les composants Services, le retour Prise en compte des aspects non-fonctionnels Vers une gestion cohérente des aspects multiples

11 On a menti sur les objets Les limites du tout-objet "En raison des formidables capacités unificatrices du paradigme objet, le passage de la technologie procédurale à la technologie des objets apportera une énorme simplification conceptuelle pour l ingénieur logiciel. Comme tout sera considéré comme objet (principe du tout-objet), on assistera à une formidable réduction du nombre de concepts nécessaires." Tous ensemble, circa 1980 La technologie des objets n'a pas tenu ses promesses de simplification.

12 Des modèles de complexité croissante Technologie procédurale Technologie des objets Technologie des composants Procédures Objets, Classes, Méthodes Beans, Components, Containers, Packages, Interfaces, Use cases, Scenarii,Services, Frameworks, Applications, Patterns, Aspects, etc.

13 Seamlessness considered harmful chef d'agence compte de Jean-Marc compte de Sheila compte de Paul Hypothèse (naïve) : Il y a correspondance exacte entre les objets métier et les objets programme. compte de Joe imprimante Conséquence (fausse) : il est possible de "raffiner" les objets comme on raffinait autrefois les procédures. JFIADSMA'02, Lille analyse conception codage x x' x'' objet «abstrait» objet «concret»

14 Correspondance exacte? Filière Etudiant Enseignant Cours NB: Quid de la persistance, des objets systèmes, de la gestion d'ihm, etc. Diplôme Examen Etudiant Enseignant Modèle d'analyse Filière Cours Diplôme Examen Etudiant Enseignant Modèle de conception Filière Cours NB: M. Jackson qui est à l'origine de cette conjecture de correspondance n'avait jamais préconisé la correspondance exacte. Diplôme Examen JFIADSMA'02, Lille Modèle de codage

15 Une organisation plus réaliste Les use cases; Les racines applicatives fonctionnelles; Les fonctions selon JSD; Modèle de métier Le contexte; Le modèle neutre et stable de l'entreprise; Les objets métier, les règles métier, les processus métier; Modèle de service fusion Modèle de conception Modèle de code Modèle de ressources La plate-forme (CORBA, EJB, DotNet, ); Le code exécutable;

16 Les services sont-ils des objets? le problème f Racines fonctionnelles 1 Système de Certification Take Referee Course Instructor a b c d e g h i Student Referee 1 Apply for Referee Certification * 1 * 1 Program Administrator j k l m n o p q r s 1 1 Referee Applicant 1 Take Referee Certification Test Referee Examiner Configuration sous-jacente Architecture non stable. JFIADSMA'02, Lille Les services sont-ils des objets?x À suivre

17 Les patrons sont-ils des objets? Template method often uses Factory method Memento Proxy implements with Adapter saving state of iteration Abstract Factory enumerating children Iterator Bridge Composite Decorator sharing composites defining traversals Strategy sharing strategies Flyweight Visitor GoF : pas de relation d'héritage entre les patrons.

18 Réutilisabilité : l'erreur de calcul historique Le Discours des années 80 : Il existe un gisement extraordinaire d'économies L'industrie du logiciel peut représenter jusqu'à 5% du PIB des pays industrialisés 85% du code produit par les informaticiens est du tout venant (gestion de tables, tris, etc.) et pourrait donc être réutilisé si l'on disposait de mécanismes adéquats comme l'héritage des langages à objets. 5% x 85 % = 4,25% 2002 : le compte n'y est pas! 5% x 50% x 10% = 0,25% Tests Codage Conception Analyse Chiffres courants: Analyse et conception : 50% Codage : 10% Mise au point : 40%

19 Le rendez-vous manqué de l'extensibilité En 1980 : la technologie des objets va apporter des propriétés d'extensibilité aux logiciels d'application (dixit Perrott, Bézivin, Cointe et autres acolytes) En 2002 : Quel est le mécanisme de terrain permettant de réaliser l'extensibilité d'application au quotidien : c'est indubitablement le mécanisme du plug-in What's a Plug-in (version Netscape)? Plug-ins are software programs that extend the capabilities of the Netscape Browser in a specific way - giving you, for example, the ability to play audio samples or view video movies from within your browser. Exemples : Apple Quick Time, Adobe Acrobat Reader, Macromedia FlashPlayer et ShockWave, RealNetworks RealPlayer, Net2Phone, etc. Est-il possible de faire des plug-ins de plug-ins? Comment gérer les incompatibilités de plug-ins? Comment sont modélisés les concepts d'application et de plug-in d'application (extension)?

20 AOP : un problème bien identifié We have found many programming problems for which neither procedural nor object-oriented programming techniques are sufficient to clearly capture some of the important design decisions the program must implement. This forces the implementation of those design decisions to be scattered through-out the code, resulting in "tangled" code that is excessively difficult to develop and maintain. We present an analysis of why certain design decisions have been so difficult to clearly capture in actual code. We call the properties these decisions address aspects, and show that the reason they have been hard to capture is that they cross-cut the system's basic functionality. We present the basis for a new programming technique, called aspect-oriented programming, that makes it possible to clearly express programs involving such aspects, including appropriate isolation, composition and re-use of the aspect code. JFIADSMA'02, Lille from Gregor Kiczales, John Lamping, Anurag Mendhekar Chris Maeda, Cristina Videira Lopes, Jean-Marc Loingtier, John Irwin. In proceedings of the European Conference on Object-Oriented Programming (ECOOP), Finland. Springer-Verlag LNCS June mais des solutions contestables AOP! AOSD

21 Les aspects sont-ils des objets? AOP: le code comme référentiel unique. Optimisation directives Algorithmique Debugging directives Synchronization preconditions postconditions Code d'organization (#include, etc.) Exceptions Code exécutable

22 La cote des paradigmes objets composants processus règles services événements, transactions, etc. Par exemple : Un modèle de services est mieux adapté à la techno Web actuelle (WebServices, SOAP, WSDL, WSFL, etc.) Un modèle de services s'accommode beaucoup mieux qu'un modèle d'objets ou de composants aux extensions nonfonctionnelles Un modèle de services s'interface beaucoup plus facilement avec un modèle de workflow qu'un modèle d'objets La technologie des modèles permet de subsumer la plupart de ces paradigmes et bien d'autres.

23 Conclusion Use cases Aspects Technologie des Objets Patterns etc. La TdO (Technologie des Objets) a eu à répondre à de nombreux défis depuis sa diffusion industrielle dans les années 1980 De façon générale, elle n'a pas réussi à trouver en son sein, les moyens de répondre à ces défis En conséquence les solutions trouvées sont souvent baroques, informelles, non généralisables difficilement combinables.

24 Conclusion Use cases QoS Aspects IdM Services TdO Règles Processus Patterns Applications etc. L'IdM (Ingénierie des Modèles) semble être en mesure de répondre à certains de ces défis pour lesquels la TdO n'a pas su trouver des réponses internes. Parmi ceux-ci on pourrait citer : Gestion séparée des aspects Prise en compte homogène des éléments fonctionnels et nonfonctionnels Intégration homogène de points de vue différents (règles, services, processus, architecture, etc.) etc. L'IdM semble pouvoir subsumer la TdO et offrir une voie d'évolution progressive aux solutions actuelles à base d'objets et de composants.

25 Objets vs. Modèles : ce n'est qu'un volet du débat La proportion de code automatiquement généré par rapport au code directement produit à la main tend à croître très rapidement. À certains égards Java tient déjà la place du langage d'assemblage et UML du langage de haut niveau. Interpretative approaches compiler compiler's Dist. OS + Middleware OS MDA Transformational approaches

26 MDA: La nouvelle vision de l'omg "OMG is in the ideal position to provide the modelbased standards that are necessary to extend integration beyond the middleware approach Nowis the time to put this plan into effect. Now is the time for the Model Driven Architecture." Richard Soley and the OMG staff, MDA Whitepaper Draft 3.2 November 27, 2000 (appel à contribution)

27 Les patrons en colère Nous ne voulons plus payer le prix fort uniquement pour porter notre système informatique vers une nouvelle plate-forme de middleware (COM, CORBA, Java, HTML, XML, DotNet, Cluster, Grid, etc.) alors que notre modèle métier reste stable. D'autant plus que nous avons déjà donné pour ce type de migration sans aucun retour sur investissement ($$$!!!). Tout ce que nous pouvons accepter c'est de payer une dernière fois pour la construction de modèles abstraits de notre métier et des services associés, modèles qui nous garantiront contre l'obsolescence technologique des plateformes. À partir de ce moment, tout nouveau fournisseur de plateforme, s'il désire nous voir acheter sa solution, sera prié de nous livrer en même temps que sa plate-forme les outils de transformation permettant de générer vers cette plate-forme à partir des modèles neutres de métier et de service.

28 Tir sur cible mobile Minor changes Business Model 1 BM 2 BM 3 Product line or application development Specification Implementation and Tests Usage and maintenance Important changes Platform 1 Pf 2 Pf 3 Pf 4 Pf 5 Pf 6 Pf 7 Pf 8 Pf 9 Pascal; C; ADA; Linux; Smalltalk; C++; Com/DCOM; Apple OS; PowerBuilder; CORBA; Java; EJB; DotNet; C#; XML; SOAP; Web services; etc. Platform change was an exception, it is now becoming a routine operation, that should be taken into account in the normal product development cycle. JFIADSMA'02, Lille

29 La guerre des intergiciels est finie COM+ DCOM CORBA IIOP XML SOAP HTTP HTML Java EJB de Sun Microsoft C# & DotNet Réaction de Sun's à C# & DotNet? + la prochaine merveilleuse plateforme de Middleware (~2005) " Il n'y a ni vainqueur ni perdant " Le prochain champ de bataille sera celui de la transformation de modèles " L'initiative MDA de l'omg vise à promouvoir l'idée de la mise en œuvre de systèmes distribués dirigée par les métamodèles

30 Correspondance vers des plateformes multiples et évolutives COM+ DCOM Java EJB CORBA C# DotNet Modèles neutres basés sur UML et MOF HTTP HTML XML SOAP " MOF et UML constituent le cœur de la technologie MDA. " Hypothèse : Des modèles technologiquement neutres peuvent être mis en œuvre sur sur une grande variété de technologies de plateformes.

31 Write once, run everywhere Model once, Generate everywhere Multi-target code generation PIM Platform-Independent Model etc. CORBA Java/EJB C#/DotNet SMIL/Flash data grid computing pervasive computing cluster computing Web/XML/SOAP JFIADSMA'02, Lille + SVG, GML, Delphi, ASP, MySQL, PHP, etc.

32 De l'oma vers le MDA Technologie procédurale Technologie des objets Technologie des composants Technologie Des modèles Procédures, Pascal, C,... Objets, Classes, Smalltalk, C++,... Paquetages, Frameworks, Patrons, Modèles, Méta-Modèles, UML, MOF, XML, XMI, XSLT, Raffinement procédural Composition d'objets Transformation de modèles

33 Du Middleware vers le Modelware (*) Not initially standardized by OMG; Scope is single application or vendor Object Request Broker Application Objects CORBA Facilities Compound Docs Object Linking Help Facilities User Interface Desktop Mgmt Vertical Markets OMA MDA Lifecycle Events Naming Persistence Transactions Concurrency CORBA Services Externalization Security Time Properties Query Licensing Lannion, 2 juillet 2001 Réunion Groupe META IDL --> UML (du centré-code au centré-modèles) JFIADSMA'02, Lille (*) Le terme "Modelware" a été proposé par F. Jocteur-Monrozier au groupe OFTA.

34 Du contemplatif au productif Person -personid : unsigned long -surname : CString -givenname : CString -middleinitial : char -streetaddress : CString -postcode : CString -countryname : CString - address : CString +Person() +PersonInfo() Applicant -companyname : CString -experience : CString -is made by -reference1 : CString -reference2 : CString -reference3 : CString 1 +Applicant() +ApplicantInfo() +MakeApplication() 1 -is made * by a-uses 1 -is taken by classe CourseSession -coursesessionid : unsigned long -coursedate : unsigned long -teaches -courseid : unsigned long Employee -courselocation : CString -jobtype : CString -is taught by +CourseSession() -roomnr : unsigned long 0..* +CourseSessionInfo() -department : CString -division : CString 1 1 -is in -jobtitle : CString -manager : unsigned long -headsdept : CString -headsdivision : CString -mobilenr : CString -birthdate : unsigned long +Employee() +GetCurrentAge() 0..* -is filled by +EmployeeInfo() CourseRegistration -makes -registrationdate : unsigned long -completionflag : bool -confirmeddate : unsigned long 0..* +CourseRegistration() +CourseRegistrationInfo() RegistrationForm +registrationform() * 0..* -takes Test 1..* -made a -testscore : unsigned long +Test() Application +TestInfo() PermittedStatusChange -productnr : unsigned long -allows change in -has a séquence -fromstatus : char -certificationlevel : unsigned long 0..* -gives -tostatus : char -applicationdate : unsigned long +PermittedStatusChange() +Application() 0..* 1..* +StatusChangeInfo() +ApplicationInfo() Code Java RegForm ApplicantList 0..* PersonList -applies to a Applicant Application ApplicationList 1 -is achieved findapplicant() findperson() 1 -is for a AppStatus -statuscode : char -statusname : CString +AppStatus() +AppStatusInfo() Exam -uses -examid : unsigned long -certificationlevel : unsigned long +Exam() 1 +ExamInfo() ExamSession -is used in -examsession : unsigned long -examlocation : CString -examdate : unsigned long 0..* +ExamSession() +ExamSessionInfo() Applicant() MakeApplication() Application() addapplication() addperson() XMI XMI "from human-readable to computer-understandable"

35 Opérations sur modèles multiples UML model Java model

36 Les éléments des différents modèles sont dépendants Modèle métier UML Vehicle comesfrom Modèle de code Java Vehicle specializes comesfrom extends Truck comesfrom Truck Problème : Comment prendre en compte de façon précise les relations inter-modèles comme les relation intra-modèles? Constat : Les problèmes de traçabilité, de transformation, de tissage d'aspects sont des cas particuliers de la mise en correspondance de modèles. Ils doivent se traiter au niveau des méta-modèles.

37 UML a ouvert le chemin Modèles de produits et de processus From Object-Oriented Programming to Model-Based Software Engineering. UML/MOF OMT SA/RT ERD JSD SADT Merise DFD DFD etc.

38 L'image globale (roadmap) Procedural ADM Method = notation + process + tools 11/1997 OOADM e.g. OMT Unified Method: impossible 07/2001 UML + profiles + other MMs Model weaving >2001 UPM SPEM + specific processes (RUP, IBM SI, etc.) Network of models 1. Comment séparer les aspects? 2. Comment tisser les aspects?

39 Fragments d'un méta-modèle UML not 1.4 UML

40 Trois étapes dans l'évolution des techniques de modélisation à l'omg. (a) (b) (c) UML MOF MOF unmodèle unmodèle UML UML SPEM Workflow Workflow etc. etc. unmodèle unmodèle UML_for_CORBA UML_for_CORBA Common Common Warehouse Warehouse Metadata Metadata unmodèle unmodèle Action Action language language

41 UML 2.0 : pas un langage, mais une famille de langages UML 2.0 Infrastructure RFP -- A UML 2.0 RFP issued September 15, 2000 that is primarily concerned with architectural alignment, restructuring and extension mechanisms. UML 2.0 Superstructure RFP -- A UML 2.0 RFP issued September 15, 2000 that is primarily concerned with the refinement and extension of UML 1.x semantics and notation. UML 2.0 OCL RFP -- A UML 2.0 RFP issued September 15, 2000 that is primarily concerned with with defining an OCL metamodel. UML 2.0 Diagram Interchange RFP -- A UML 2.0 RFP issued March 2, 2001 that is primarily concerned with with defining metamodel for diagram interchange using the XMI facility. "Will UML 2.0 Be Agile or Awkward?" par Cris Kobryn JFIADSMA'02, Lille

42 OMG : le bus logiciel et le bus de connaissances. Java CORBA, IDL, IIOP,... Cobol C# UML CWM MOF, UML, XML,... Workflow UPM

43 Organisation de modèles séparés en ligne (AOSE : aspect-oriented software engineering) Domain Domain model model Resource Resource model model Usage Usage model model (Use (Use Cases) Cases) Design Design model model Test Test model model BUS BUS commun commun (p.ex. (p.ex. CORBA CORBA ou ou DotNet DotNet + UML UML + MOF MOF + XMI) XMI) Deployment Deployment model model Execution Execution model model Architecture Architecture model model Modèles et Méta-modèles sont des entités de première classe

44 Base conceptuelle pour le MDA Quels sont les outils théoriques qui pourraient nous aider en ingénierie des modèles? Réponse essentielle : Ontologies (Gruber, Guarino, etc.)

45 Systèmes et modèles M 1 (l'espace de modélisation) M Un modèle M est une représentation simplifiée du monde; en fait d'une partie S du monde appelée le système. M 0 (le monde) estreprésentépar S

46 AOSE Aspect-Oriented Software Engineering M 1 Ma estreprésentépar M 0 S Mb Mc Un système donné peut avoir plusieurs modèles différents Chaque modèle représente un aspect différent du système. L'appellation AOM (Aspect-Oriented Modeling) est donc un pléonasme. Inversement on peut combiner des modèles différents extraits du même système: opération de tissage des aspects.

47 Principe de substituabilité limitée Le but d'un modèle est toujours d'être capable de répondre à certaines questions en lieu et place du système qu'il est censé représenter. Il doit répondre à ces questions exactement de la même façon que le système y aurait répondu lui-même, si on l'avait interrogé. System represents Model ask() ask()

48 Méta-modèle System represents Model S Meta-Model terminology assertions M M* La correspondance entre un modèle et un système est définie par un méta-modèle.

49 système Différentes sortes de modèles System represent s Model ask() ask() Dynamic System StaticSystem Dy namic Model StaticModel modèle S D S o n JFIADSMA'02, Lille D o o

50 Le modèle d'un modèle Area of San Francisco repof 1/ road map of the San Francisco area /repof repof 1/ road map of the San Francisco area

51 Opérations plus complexes M a S repof repof M ab repof M b M 1 M 2 M 3 M 4 M 5

52 Ontologies et méta-modèles MM M 1 (l'espace de modélisation) M 0 (le monde) M estreprésentépar S Pour le théoricien, ceci est une ontologie Pour le praticien des systèmes d'information, ceci est un méta-modèle Un méta-modèle est une forme simplifiée d'ontologie. "An ontology is an explicit specification of a shared conceptualization" T.G. Gruber

53 Ontologies Les ontologies apportent : Abstraction Consensus et partage an Ontology O basedon a Model M imageof a System S System, ontology, model: ontology OntoUnix; node File<Entity; Directory<File; User<Entity; Group<Entity; link belongsto [User,Group]; contains [Directory,File]; owner [File,User]; end ontology; model UnixModel; ontology OntoUnix; node teachers, students: Group; pierre,paul,jacqques: User; f1,f2,f3,f4: File; d1,d2,d3: Directory; link belongsto (pierre, teachers); belongsto (paul, students); belongsto (jacques, teachers); owner (f1, pierre); owner (f2,paul); owner (f3, paul); owner (f4, jacques); owner (d1, pierre); owner (d2, pierre); owner (d3, paul); contains (d1,f1); contains (d1,f2); contains (d1,d2); contains (d2,f3); end model;

54 Ontologies stratifiées pragmatique Concepts et Relations p.ex. diagrammes UML terminologique assertionel p.ex. comment dessiner une classe? pbs de présentation, etc. p.ex. instructions OCL, Alloy, CG, KIF, Z, etc.

55 Un méta-modèle de Petri Petri Net 1 element net 0..n Petri Net Element Vertex to in 1 0..n from out 1 0..n Arc Transition Place context Arc inv: self.to.oclistypeof(transition) and self.from.oclistypeof(place) or self.to.oclistypeof(place) and self.from.oclistypeof(transition) JFIADSMA'02, Lille

56 Architecture égyptienne [Inspirée par IRDS, CDIF, etc.] M 3 meta-meta model Le MOF M 0 M 1 M 2 meta-model model "le monde réel" Le méta-modèle UML et autres MMs Des modèles UML et d'autres Différentes utilisations de ces modèles

57 Les trois niveaux de modélisation Niveau M 3 the MOF MMM Niveau M 2 the UPM MM (SPEM) the UML MM the CWM MM CCM EDOC etc. Niveau M 1 a UML model m another UML model m Niveau M 0 a particular use of m another use of m

58 La pile de modélisation MDA Espaces M 1, M 2 & M 3 M 3 M 2 M 2 M 2 M 1 M 1 M 1 M 1 M 1 Université de NANTES Un Méta-méta-modèle unique (le MOF) - Une importante bibliothèque de méta-modèles compatibles - Chaque modèle est défini dans le langage de son unique méta-modèle. JFIADSMA'02, Lille

59 Méta-modèles multiples MOF::Class Java::Class UML::Class Java::Participant UML::Participant Peter Smith Peter Smith

60 1. Expression 2. Dérivation Illustration. MM Java Package MOF Class Association MM UML M3 Interface Package Class extends Class Association M2 Présentation Participant Prog. Java de gestion de la conférence JFIADSMA. Participant écoute Présentation Modèle UML de gestion de la conf. JFIADSMA JFIADSMA'02, Lille M1

61 Comparaison des systèmes de syntaxe abstraites Abstract Syntax Systems Compared Technology #1 Technology #2 (formal grammars (MOF + OCL) attribute grammars, etc.) Technology #3 (XML Meta-Language) Technology #4 (Ontology engineering) Technologies evaluation grid M 3 EBNF MOF A XML DTD Or Schema Upper Level Ontologies Different problems Different technological families M 2 M 1 Pascal Language Grammar A specific Pascal Program A specific execution of a Pascal program The UML meta-model A Specific UML Model A Specific phenomenon corresponding to a UML Model A XML document A XML DTD or Schema A XML document +Xpath, XSLT +RDF, OIL, DAML +etc. [XMI=MOF+XML+OCL] Model serialisation 2nd Workshop on UML for Enterprise Applications: Model Driven Solutions for the Enterprise KIF Theories +Description Logics +Conceptual Graphs +etc. :from contemplative to productive. modularity transformation rendering executability verification navigation etc. Abstract syntax systems Meta-models XML Ontologies 2nd Workshop on UML for Enterprise Applications: Model Driven Solutions for the Enterprise Data bases (e.g. rendering : model placement RFP vs XML style sheets) JFIADSMA'02, Lille

62 Ponts technologiques MMa T MMb Mb Espace des modèles abstraits (MDA). Ma Mb/xmi Espace des modèles Concrets (XML) Ma/xmi T/xslt

63 Méta-programmation vs. Méta-modélisation M 3 MM meta MOF::Class MP meta meta meta M 2 STK::MetaClass STK::Class STK::Instance meta meta meta meta M 1 meta Metaclass class STK::Iof Metaclass STK::Iof Cat class STK::Iof Cat STK::Iof Felix STK::Iof

64 [thèse Erwan Breton] Modèles de produits et de processus Artefacts (~structures de données) MOF Processus (~structures de contrôle) CCM Corba UML etc. etc. EDOC EJB EJB SPEM RUP Party Party Management Management etc. etc. Workflow Workflow

65 Qu'est ce qu'un méta-modèle de processus? Qui fait quoi, pourquoi, quand et comment? +preceding 0..* Process +name 1 0..* Activity -name -duration Quelques fragments illustratifs : PIF (fusionné avec PSL) PSL (NIST) CPR (Core Plan Representation) ARIS (ERP SAP ) UPM/SPEM (Unified Process Model) 0..* +following

66 SPEM: un fragment Role 1 1 IsResponsibleFor WorkProduct 0..n +input 0..n 0..n +output Performs Uses 0..n Activity 0..n 0..n Produces

67 Une hiérarchie de méta-modèles de processus Workflow Software Building Process Generic Process Software Process Software Maintenance Process Manufacturing Software Migration Process Concepts communs : Activity Performer Production/Consumption Time Transition Process occurrences etc.

68 Exécutabilité de UML? Un modèle UML Une machine virtuelle universelle pour exécuter des modèles UML? Il n'y a pas d'exécution canonique pour un modèle UML. Cependant le standard "Action Semantics for UML" fournit un méta-modèle pour définir des schémas d'exécution. Nombreuses applications (p.ex. Kennedy-Carter pour faire de la transfo de modèles et de la génération de code)

69 Les raisons d'une transition rapide La technologie des objets a montré la possibilité de description homogène du contexte (organisation, entreprise) et de la plate-forme d'exécution (CORBA, Java) Chacune peut être prise en compte par un méta-modèle séparé (EDOC, CCM, EJB) À partir de ce moment, il est tout à fait raisonnable d'envisager d'appuyer le système à construire sur un méta-modèle MM2, déduit des méta-modèles d'entreprise (MM1) et de plate-forme (MM3). Entreprise Système à construire Plate-forme sem sem sem MM1 MM2 MM3

70 Conditions nécessaires pour le succès du MDA 1. Langage précis (MOF, UML, OCL) 2. Convergence sur un UTL (Unified Transformation Language) MOF 2.0 QVT RFP 3. Stabilisation industrielle du standard de sérialisation de modèles XMI 4. Définitions précises pour les PIMs, CIMs, PDMs and PSMs % Manual/Automatic code generation 100%

71 Au cœur du MDA: les PIMs et les PSMs Modèles MDA PIM: Platform Independent Model Spécification neutre d'un système (modèle de métier et de service) qui ignore tous les détails de mise en oeuvre Exemple: système de facturation exprimé en UML Modèles de plate-forme (PDM?) P.ex. modèles de composants à différents niveaux d'abstraction : CCM, C#, EJB, EDOC, PSM: Platform Specific Model Modèle de métier et de service lié à un modèle de plateforme Exemple: Système de facturation exprimé en "UML profile for CORBA"

La démarche MDA. Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)*

La démarche MDA. Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)* La démarche MDA Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti)* Référence : Livrable 1.1-5 Date : Mai 2002 * : Les partenaires du projet ACCORD sont CNAM,

Plus en détail

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle

Principes. 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA. Programmation en Corba. Stéphane Vialle 2A-SI 3 Prog. réseau et systèmes distribués 3. 3 Programmation en CORBA Stéphane Vialle Stephane.Vialle@supelec.fr http://www.metz.supelec.fr/~vialle 1 Principes 2 Architecture 3 4 Aperçu d utilisation

Plus en détail

Programmation d applications distribuées

Programmation d applications distribuées Programmation d applications distribuées François Charoy Université Henri Poincaré 8 octobre 2007 Première partie I Développement d applications distribuées Objectifs du cours Comprendre ce qu est une

Plus en détail

Ingénierie des Modèles. Méta-modélisation

Ingénierie des Modèles. Méta-modélisation Ingénierie des Modèles Méta-modélisation Eric Cariou Master Technologies de l'internet 2 ème année Université de Pau et des Pays de l'adour UFR Sciences Pau Département Informatique Eric.Cariou@univ-pau.fr

Plus en détail

Plan. Department of Informatics

Plan. Department of Informatics Plan 1. Application Servers 2. Servlets, JSP, JDBC 3. J2EE: Vue d ensemble 4. Distributed Programming 5. Enterprise JavaBeans 6. Enterprise JavaBeans: Special Topics 7. Prise de recul critique Enterprise

Plus en détail

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 34 NFP111 Systèmes et Applications Réparties Cours 7 - CORBA/Partie 1 Claude Duvallet Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon

Plus en détail

IBM Software Group. Modélisation. Rational Software Modeler et Rational Software Architect. 2008 IBM Corporation

IBM Software Group. Modélisation. Rational Software Modeler et Rational Software Architect. 2008 IBM Corporation IBM Software Group Modélisation Rational Software Modeler et Rational Software Architect 2008 IBM Corporation Agenda Présentation de l offre Rational Modélisation UML2 et DSL Automation et MDA Les ateliers

Plus en détail

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués

Architecture JEE. Objectifs attendus. Serveurs d applications JEE. Architectures JEE Normes JEE. Systèmes distribués Architecture JEE. Objectifs attendus Serveurs d applications JEE Systèmes distribués Architectures JEE Normes JEE couches logicielles, n-tiers framework JEE et design patterns 2007/02/28 Eric Hébert.eheb@yahoo.fr

Plus en détail

Les nouvelles architectures des SI : Etat de l Art

Les nouvelles architectures des SI : Etat de l Art Les nouvelles architectures des SI : Etat de l Art Objectif Mesurer concrètement les apports des nouvelles applications SI. Être capable d'évaluer l'accroissement de la complexité des applications. Prendre

Plus en détail

Cedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/

Cedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Cedric Dumoulin (C) The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Webographie The Java EE 7 Tutorial http://docs.oracle.com/javaee/7/tutorial/doc/ Les slides de cette présentation

Plus en détail

Extensions à la formation. Laurent Pérochon, 28-30 avril 2008, RMT Modelia, modélisation conceptuelle, formation UML, INRA Castanet Tolosan

Extensions à la formation. Laurent Pérochon, 28-30 avril 2008, RMT Modelia, modélisation conceptuelle, formation UML, INRA Castanet Tolosan Extensions à la formation Diagramme de timing FinEpreuve SautBarrière CourseAvantBarrière SautMur {>2 et 10 et 2 et 10 et

Plus en détail

Chapitre 5 CORBA (Common Object Request Broker Architecture)

Chapitre 5 CORBA (Common Object Request Broker Architecture) DÉVELOPPEMENT D APPLICATIONS RÉPARTIES CORBA (Common Object Request Broker Architecture) Amen Ben Hadj Ali amenbha@hotmail.com ISI-L3SIL 2011-2012 Plan 2 Architecture CORBA Le langage IDL CORBA en Java

Plus en détail

OpenESB Libre, standard, outillé, documenté et supporté

OpenESB Libre, standard, outillé, documenté et supporté OpenESB Libre, standard, outillé, documenté et supporté Alexis Moussine-Pouchkine Sun Microsystems, Inc. Constat Les projets d'intégration sont mono-éditeur Est-ce viable à long terme? Quel(s) Standard(s)

Plus en détail

Institut Francophone International. Sujet : Études de l approche d ingénierie dirigée par les modèles pour le développement des applications mobiles

Institut Francophone International. Sujet : Études de l approche d ingénierie dirigée par les modèles pour le développement des applications mobiles Institut Francophone International MÉMOIRE DE FIN D ÉTUDES MASTER D INFORMATIQUE Option : Réseaux et Systèmes Communicants Année académique : 2013-2014 Sujet : Études de l approche d ingénierie dirigée

Plus en détail

Développement logiciel pour l Architecture Orientée Services avec IBM Rational Software Development Platform

Développement logiciel pour l Architecture Orientée Services avec IBM Rational Software Development Platform IBM Software Group Développement logiciel pour l Architecture Orientée Services avec IBM Rational Software Development Platform Thierry Bourrier, Techical Consultant thierry.bourrier@fr.ibm.com L Architecture

Plus en détail

Vulgarisation Java EE Java EE, c est quoi?

Vulgarisation Java EE Java EE, c est quoi? Paris, le 1 Février 2012 Vulgarisation Java EE Java EE, c est quoi? Sommaire Qu est ce que Java? Types d applications Java Environnements Java Versions de Java Java EE, c est quoi finalement? Standards

Plus en détail

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION THÈSE N O 2388 (2001) PRÉSENTÉE AU DÉPARTEMENT D'INFORMATIQUE ÉCOLE POLYTECHNIQUE FÉDÉRALE

Plus en détail

Résultats des projets CARROLL. Bilan et perspectives. Ingénierie logicielle orientée modèle MDD

Résultats des projets CARROLL. Bilan et perspectives. Ingénierie logicielle orientée modèle MDD Résultats des projets CARROLL Bilan et perspectives Ingénierie logicielle orientée modèle MDD Serge Salicki, THALES Workshop CARROLL 23 septembre 2005 THALES et le MDE Le MDE est dans la strategie de THALES

Plus en détail

Patrons de Conception (Design Patterns)

Patrons de Conception (Design Patterns) Patrons de Conception (Design Patterns) Introduction 1 Motivation Il est difficile de développer des logiciels efficaces, robustes, extensibles et réutilisables Il est essentiel de comprendre les techniques

Plus en détail

Modélisation Principe Autre principe

Modélisation Principe Autre principe Modélisation Principe : un modèle est une abstraction permettant de mieux comprendre un objet complexe (bâtiment, économie, atmosphère, cellule, logiciel, ). Autre principe : un petit dessin vaut mieux

Plus en détail

SHAREPOINT PORTAL SERVER 2013

SHAREPOINT PORTAL SERVER 2013 Powered by TCPDF (www.tcpdf.org) SHAREPOINT PORTAL SERVER 2013 Sharepoint portal server 2013 DEVELOPING MICROSOFT SHAREPOINT SERVER 2013 CORE SOLUTIONS Réf: MS20488 Durée : 5 jours (7 heures) OBJECTIFS

Plus en détail

M2 MIAGE EVRY RAPPORT DE PROJET TECHNOLOGIE SCA

M2 MIAGE EVRY RAPPORT DE PROJET TECHNOLOGIE SCA M2 MIAGE EVRY RAPPORT DE PROJET TECHNOLOGIE SCA Matière : Architecture orientée service Enseignants : Boccon-Gibod, Godefroy Étudiants : DIALLO Amadou Tidiane GOLAB Barbara 1 IDENTIFICATION DU PROJET Projet

Plus en détail

Java pour le Web. Cours Java - F. Michel

Java pour le Web. Cours Java - F. Michel Java pour le Web Cours Java - F. Michel Introduction à JEE 6 (ex J2EE) Historique Qu'est-ce que JEE JEE : Java Entreprise Edition (ex J2EE) 1. Une technologie outils liés au langage Java + des spécifications

Plus en détail

Modélisation des processus métiers et standardisation

Modélisation des processus métiers et standardisation Modélisation des processus métiers et standardisation Octobre 2004 Table des matières Introduction... 3 Processus métier : un même mot, plusieurs domaines d application... 4 Les critères pour un standard

Plus en détail

Cours en ligne Développement Java pour le web

Cours en ligne Développement Java pour le web Cours en ligne Développement Java pour le web We TrainFrance info@wetrainfrance Programme général du cours Développement Java pour le web Module 1 - Programmation J2ee A) Bases de programmation Java Unité

Plus en détail

Les Nouveautés OpenEdge 11.2. 10 Avril 2013

Les Nouveautés OpenEdge 11.2. 10 Avril 2013 Les Nouveautés OpenEdge 11.2 10 Avril 2013 2 3 http://www.progress.com/fr-fr/openedge/openedgetour.html La Plate-Forme OpenEdge 11 Une solution Complète pour développer les Applications Métiers Open Clients/

Plus en détail

L approche Model-Driven Architecture, crédible pour développer un progiciel de

L approche Model-Driven Architecture, crédible pour développer un progiciel de ÉCOLE DOCTORALE SYSTÈMES L approche Model-Driven Architecture, crédible pour développer un progiciel de gestion intégré Mémoire de DEA Systèmes Industriels Tuteur : Paul Gaborit Xavier Moghrabi Année universitaire

Plus en détail

MDA (Model Driven Architecture) principes et états de l art.

MDA (Model Driven Architecture) principes et états de l art. CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS CENTRE D ENSEIGNEMENT DE LYON Examen probatoire du diplôme d ingénieur C.N.A.M. en INFORMATIQUE option ingénierie et intégration informatique : système de conduite

Plus en détail

Architecture Logicielle

Architecture Logicielle Architecture Logicielle Chapitre 3: UML pour la description et la documentation d une architecture logicielle Année universitaire 2013/2014 Semestre 1 Rappel L architecture d un programme ou d un système

Plus en détail

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence É C O L E D I N G É N I E U R D E S T E C H N O L O G I E S D E L I N F O R M A T I O N E T D E L A C O M M U N I C A T I O N Programme scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION Mentions

Plus en détail

Description de la formation

Description de la formation Description de la formation Modalités Ce parcours de formation est un parcours en alternance, d une durée de 2ans, à raison d une semaine de formation par mois, soit 770 heures et de trois semaines de

Plus en détail

Vers une meilleure gouvernance des plateformes d ingénierie

Vers une meilleure gouvernance des plateformes d ingénierie Vers une meilleure gouvernance des plateformes d ingénierie Vincent Chartier 2012 IBM Corporation La mise en œuvre d une plateforme d ingénierie est complexe Intégrations entre produits nombreuses et complexes

Plus en détail

Présentation de l architecture CORBA

Présentation de l architecture CORBA Présentation de l architecture CORBA Common Object Request Broker Architecture Yves LALOUM Conseil Audit de Systèmes d information CISA ylaloum@advisehr.com 29/04/2003 1 1.Introduction Depuis 1989, une

Plus en détail

Concepteur Développeur Informatique Option Nomade

Concepteur Développeur Informatique Option Nomade Concepteur Développeur Informatique Option Nomade Module : Espace ouvert de formation (2 semaines) Ce module est composée de plusieurs parties : - le module développement durable (14 heures), qui traite

Plus en détail

Composants Logiciels. Le modèle de composant de CORBA. Plan

Composants Logiciels. Le modèle de composant de CORBA. Plan Composants Logiciels Christian Pérez Le modèle de composant de CORBA Année 2010-11 1 Plan Un rapide tour d horizon de CORBA 2 Introduction au modèle de composant de CORBA Définition de composants CORBA

Plus en détail

- Couches - Éléments - Domaines - ArchiMate et les techniques du BABOK

- Couches - Éléments - Domaines - ArchiMate et les techniques du BABOK ArchiMate et l architecture d entreprise Par Julien Allaire Ordre du jour Présentation du langage ArchiMate - Couches - Éléments - Domaines - ArchiMate et les techniques du BABOK Présentation du modèle

Plus en détail

WEB15 IBM Software for Business Process Management. un offre complète et modulaire. Alain DARMON consultant avant-vente BPM alain.darmon@fr.ibm.

WEB15 IBM Software for Business Process Management. un offre complète et modulaire. Alain DARMON consultant avant-vente BPM alain.darmon@fr.ibm. WEB15 IBM Software for Business Process Management un offre complète et modulaire Alain DARMON consultant avant-vente BPM alain.darmon@fr.ibm.com Claude Perrin ECM Client Technical Professional Manager

Plus en détail

IFT2255 : Génie logiciel

IFT2255 : Génie logiciel IFT2255 : Génie logiciel Chapitre 6 - Analyse orientée objets Section 1. Introduction à UML Julie Vachon et Houari Sahraoui 6.1. Introduction à UML 1. Vers une approche orientée objet 2. Introduction ti

Plus en détail

Nouvelles Plateformes Technologiques

Nouvelles Plateformes Technologiques Cycle de présentation du développement Nouvelles Plateformes Technologiques Observatoire Technologique, CTI Observatoire Technologique 4 mai 2004 p 1 Plan de la présentation 1. Historique du projet 2.

Plus en détail

Meta Object Facility. Plan

Meta Object Facility. Plan Meta Object Facility Gestion de «meta objets» & meta meta modélisation Xavier Le Pallec Plan 1 Auteur : MOF : généralités L OMG en 1997-1998. Acteur principal DSTC : Centre Recherche sur les Systèmes distribués

Plus en détail

Jean-Philippe VIOLET Solutions Architect

Jean-Philippe VIOLET Solutions Architect Jean-Philippe VIOLET Solutions Architect IBM Cognos: L' Expertise de la Gestion de la Performance Acquis par IBM en Janvier 08 Rattaché au Brand Information Management Couverture Globale 23,000 clients

Plus en détail

Architecture des systèmes d information

Architecture des systèmes d information Architecture des systèmes d information Table des matières 1 La décennie 70 1 2 Le modèle relationnel (les années 80) 1 3 Enrichissement du relationnel (les années 80/90) 2 4 Système d informations (les

Plus en détail

Gouvernance IT : par où commencer? Hubert Lalanne DE, Chief Architect for Industries IBM Software France

Gouvernance IT : par où commencer? Hubert Lalanne DE, Chief Architect for Industries IBM Software France Conférence IDC Gouvernance IT - Paris 6 Avril 2011 Gouvernance IT : par où commencer? Hubert Lalanne DE, Chief Architect for Industries IBM Software France 2011 IBM Corporation Quels sont les ingrédients

Plus en détail

Rappels. Génie logiciel. Implemented tactics. Oldest architecture: Batch-Sequential

Rappels. Génie logiciel. Implemented tactics. Oldest architecture: Batch-Sequential Rappels Génie logiciel Philippe Dugerdil Composants, packages Couches & dépendances Principes de structuration Réutilisation / responsabilité Réutilisation & composants 09.12.2010 Oldest architecture:

Plus en détail

Profiles UML et langage J : Contrôlez totalement le développement d applications avec UML

Profiles UML et langage J : Contrôlez totalement le développement d applications avec UML White Paper UML Profile Builder Softeam 1999 Page 1/12 Profiles UML et langage J : Contrôlez totalement le développement d applications avec UML White Paper Softeam 1999 Le profile UML est conçu pour structurer

Plus en détail

Auto-évaluation Aperçu de l architecture Java EE

Auto-évaluation Aperçu de l architecture Java EE Auto-évaluation Aperçu de l architecture Java EE Document: f1218test.fm 22/03/2012 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION APERÇU

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

Programmation objet. www.ziggourat.com - Tél : 01 44 61 96 00 N enregistrement formation : 11752861675

Programmation objet. www.ziggourat.com - Tél : 01 44 61 96 00 N enregistrement formation : 11752861675 Programmation objet www.ziggourat.com - Tél : 01 44 61 96 00 enregistrement formation : 11752861675 Modélisation L essentiel du monde Objet... 3 UML et processus méthodologique... 4 Expression du besoin

Plus en détail

Aide à la conception de Système d Information Collaboratif, support de l interopérabilité des entreprises

Aide à la conception de Système d Information Collaboratif, support de l interopérabilité des entreprises Aide à la conception de Système d Information Collaboratif, support de l interopérabilité des entreprises Jihed Touzi, Frédérick Bénaben, Hervé Pingaud Thèse soutenue au Centre de Génie Industriel - 9

Plus en détail

Groupe Eyrolles, 2004, ISBN : 2-212-11346-3

Groupe Eyrolles, 2004, ISBN : 2-212-11346-3 Groupe Eyrolles, 2004, ISBN : 2-212-11346-3 Table des matières Avant Propos................................................ 1 Pourquoi ce livre?........................................... 1 Structure de

Plus en détail

CC30 Certificat de compétence Conception, développement et animation de sites Web

CC30 Certificat de compétence Conception, développement et animation de sites Web CC30 Certificat de compétence Conception, développement et animation de sites Web UE RSX050 Bases de l informatique Séance 2 UERSX050 Bases de l informatique séance 2-30/10/2009 1 Table des matières Séance

Plus en détail

Méthodologies de développement de logiciels de gestion

Méthodologies de développement de logiciels de gestion Méthodologies de développement de logiciels de gestion Chapitre 5 Traits caractéristiques des deux approches de méthodologie Présentation réalisée par P.-A. Sunier Professeur à la HE-Arc de Neuchâtel http://lgl.isnetne.ch

Plus en détail

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware

Oracle Fusion Middleware Concepts Guide 11g Release 1 (11.1.1) Figure 1-1 Architecture Middleware 1 Introduction Ce chapitre décrit Oracle Fusion Middleware. Il comprend : o Qu'est-ce que Middleware o Les fonction de Middleware o L'architecture de conception Middleware o L'architecture orientée services

Plus en détail

DotNet. Plan. Les outils de développement

DotNet. Plan. Les outils de développement DotNet Les outils de développement Version 1.03 du 16/10/2006 par Jacky Renno Plan La machine virtuelle Le kit de développement Le kit de langage Le Visual Studio.NET Le serveur web IIS 6.0 Le modeleur

Plus en détail

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1

Urbanisation des SI. Des composants technologiques disponibles. Urbanisation des Systèmes d'information Henry Boccon Gibod 1 Urbanisation des SI Des composants technologiques disponibles Urbanisation des Systèmes d'information Henry Boccon Gibod 1 Plan de l'exposé Technologies à la mode disponibles. Bus de données, ETL et EAI

Plus en détail

Programmation Web Avancée Introduction aux services Web

Programmation Web Avancée Introduction aux services Web 1/21 Programmation Web Avancée Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017

Plus en détail

Analyse,, Conception des Systèmes Informatiques

Analyse,, Conception des Systèmes Informatiques Analyse,, Conception des Systèmes Informatiques Méthode Analyse Conception Introduction à UML Génie logiciel Définition «Ensemble de méthodes, techniques et outils pour la production et la maintenance

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Le cadre des Web Services Partie 1 : Introduction

Le cadre des Web Services Partie 1 : Introduction Sécurité en ingénierie du Logiciel Le cadre des Web Services Partie 1 : Introduction Alexandre Dulaunoy adulau@foo.be Sécurité en ingénierie du Logiciel p.1/21 Agenda (partie 1) 1/2 Introduction Services

Plus en détail

Configuration et Déploiement d Applications Réparties par Intégration de l Hétérogénéité des Implémentations dans un Langage de Description d

Configuration et Déploiement d Applications Réparties par Intégration de l Hétérogénéité des Implémentations dans un Langage de Description d Configuration et Déploiement d Applications Réparties par Intégration de l Hétérogénéité des Implémentations dans un Langage de Description d Architecture Doctorant: Directeurs de thèse: Bechir ZALILA

Plus en détail

Notre Catalogue des Formations IT / 2015

Notre Catalogue des Formations IT / 2015 Notre Catalogue des Formations IT / 2015 Id Intitulé Durée Gestion de projets et méthodes I1101 I1102 I1103 I1104 I1105 I1106 I1107 I1108 I1109 I1110 I1111 I1112 I1113 I1114 I1115 I1116 I1117 I1118 I1119

Plus en détail

UML est-il soluble dans les méthodes agiles?

UML est-il soluble dans les méthodes agiles? Pascal ROQUES Valtech Training UML est-il soluble dans les méthodes agiles? octobre 07 Résumé On entend beaucoup parler actuellement de deux approches ayant l'air fondamentalement opposées : l'approche

Plus en détail

Visual Paradigm Contraintes inter-associations

Visual Paradigm Contraintes inter-associations Visual Paradigm Contraintes inter-associations Travail de Bachelor d'informaticien de gestion Partie C Présentation de Visual Paradigm 1 Présentation de Visual Paradigm For UML L objet du travail de Bachelor

Plus en détail

Ingénierie et gestion des connaissances

Ingénierie et gestion des connaissances Master Web Intelligence ICM Option Informatique Ingénierie et gestion des connaissances Philippe BEAUNE Philippe.Beaune@emse.fr 18 novembre 2008 Passer en revue quelques idées fondatrices de l ingénierie

Plus en détail

PRODUCTS LIST (updated 11th January 2010)

PRODUCTS LIST (updated 11th January 2010) PRODUCTS LIST (updated 11th January 2010) OPERATING SYSTEMS SUN SOLARIS 10, 9, 10 B OP Application and database servers Red Hat Enterprise Linux Server 4.x and 5.x B OP Single Application Host Windows

Plus en détail

Application Form/ Formulaire de demande

Application Form/ Formulaire de demande Application Form/ Formulaire de demande Ecosystem Approaches to Health: Summer Workshop and Field school Approches écosystémiques de la santé: Atelier intensif et stage d été Please submit your application

Plus en détail

Conception Exécution Interopérabilité. Déploiement. Conception du service. Définition du SLA. Suivi du service. Réception des mesures

Conception Exécution Interopérabilité. Déploiement. Conception du service. Définition du SLA. Suivi du service. Réception des mesures Software propose une offre d intégration unique, qui apporte l équilibre parfait entre investissements et performances pour les entreprises qui doivent sans cesse améliorer leurs processus. Des caractéristiques

Plus en détail

Bibliographie de Master de Recherche Informatique "Logicielles et Méthodes Formelles" (ENST-Bretagne)

Bibliographie de Master de Recherche Informatique Logicielles et Méthodes Formelles (ENST-Bretagne) Bibliographie de Master de Recherche Informatique "Logicielles et Méthodes Formelles" (ENST-Bretagne) Sujet de stage Description de la vue applicative de l'urbanisation des services télécom Et élaboration

Plus en détail

Valorisez vos actifs logiciels avec Rational Asset Manager. Jean-Michel Athané, Certified IT Specialist IBM Rational Software

Valorisez vos actifs logiciels avec Rational Asset Manager. Jean-Michel Athané, Certified IT Specialist IBM Rational Software Valorisez vos actifs logiciels avec Rational Asset Manager Jean-Michel Athané, Certified IT Specialist IBM Rational Software 13 Qu est-ce qu un actif logiciel (Software Asset)? Un asset est une collection

Plus en détail

APX et VCE, Modèle d industrialisation de l intégration et du déploiement. Olivier BERNARD, VCE

APX et VCE, Modèle d industrialisation de l intégration et du déploiement. Olivier BERNARD, VCE APX et VCE, Modèle d industrialisation de l intégration et du déploiement Olivier BERNARD, VCE Généralisation des réseaux, suprématie d IP Consumérisation des terminaux informatiques Evolution vers une

Plus en détail

Java Aspect Components (JAC) http://jac.objectweb.org

Java Aspect Components (JAC) http://jac.objectweb.org Java Aspect Components (JAC) JAC http://jac.objectweb.org 2 Lionel Seinturier Lionel.Seinturier@lip6.fr Université Pierre & Marie Curie 23/2/06 Un framework de programmation par aspect pour Java Projet

Plus en détail

Editing and managing Systems engineering processes at Snecma

Editing and managing Systems engineering processes at Snecma Editing and managing Systems engineering processes at Snecma Atego workshop 2014-04-03 Ce document et les informations qu il contient sont la propriété de Ils ne doivent pas être copiés ni communiqués

Plus en détail

JOnAS 5. Serveur d application d

JOnAS 5. Serveur d application d JOnAS 5 Serveur d application d dynamique Agenda En quelques mots Caractéristiques essentielles Zoom sur le versioning 2 Bull, 2008 Serveur d application dynamique JOnAS - Serveur d application Open Source

Plus en détail

Outils d aide à la conception de bases de données une synthèse

Outils d aide à la conception de bases de données une synthèse Outils d aide à la conception de bases de données une synthèse Christian Soutou http://icare.iut-blagnac.fr/soutou Plan 1. Généralités 2. Quelques outils Designer, JDevelopper (Oracle) Rational Rose (IBM)

Plus en détail

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1

Iyad Alshabani SysCom - CReSTIC Université de Reims 17/02/2011 1 SysCom - CReSTIC Université de Reims 17/02/2011 1 Motivation Gestion des expérimentations Avec les workflows Simulation Simulation des Systèmes Distribués ANR USS SimGrid Campagne de Test et gestion de

Plus en détail

En vue de l obtention du. Discipline : Informatique. Présentée et soutenue par Mohamed HADJ KACEM. Le Jeudi 13 Novembre 2008

En vue de l obtention du. Discipline : Informatique. Présentée et soutenue par Mohamed HADJ KACEM. Le Jeudi 13 Novembre 2008 THÈSE En vue de l obtention du DOCTORAT DE L UNIVERSITÉ DE TOULOUSE ET DE L UNIVERSITÉ DE SFAX Délivré par l Université Toulouse III - Paul Sabatier et la Faculté des Sciences Économiques et de Gestion

Plus en détail

Formation Conception orientée objet

Formation Conception orientée objet Objectif La programmation orientée objet (POO) est un paradigme de programmation informatique qui consiste en la définition et l'interaction de briques logicielles appelées objets. Un objet représente

Plus en détail

Conception, architecture et urbanisation des systèmes d information

Conception, architecture et urbanisation des systèmes d information Conception, architecture et urbanisation des systèmes d information S. Servigne Maître de Conférences, LIRIS, INSA-Lyon, F-69621 Villeurbanne Cedex e-mail: sylvie.servigne@insa-lyon.fr 1. Introduction

Plus en détail

Le cadre de conception est présenté sous forme d une matrice 6x6 avec les interrogations en colonne et les éléments de réification en ligne.

Le cadre de conception est présenté sous forme d une matrice 6x6 avec les interrogations en colonne et les éléments de réification en ligne. Plan du chapitre 1 Au commencement ZACHMAN Master Informatique et Systèmes Urbanisation des Systèmes d Information Architecture d Entreprise 02 Panorama des démarches et cadres de référence 2 CIGREF 3

Plus en détail

Industrialisation des développements Spring dans Eclipse

Industrialisation des développements Spring dans Eclipse C Industrialisation des développements Spring dans Eclipse L objectif de cette annexe est de décrire comment mettre en œuvre une approche dirigée par les modèles afin d industrialiser les développements

Plus en détail

What s New. Sun ONE Application Server. Version 7, Enterprise Edition

What s New. Sun ONE Application Server. Version 7, Enterprise Edition What s New Sun ONE Application Server Version 7, Enterprise Edition 817-2142-10 September 2003 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. Copyright 2003 Sun Microsystems, Inc.

Plus en détail

Etat de l art sur le développement logiciel dirigé par les modèles.

Etat de l art sur le développement logiciel dirigé par les modèles. Etat de l art sur le développement logiciel dirigé par les modèles. Samba Diaw* Rédouane Lbath* Bernard Coulette* * Université de Toulouse Laboratoire IRIT Université de Toulouse 2-Le Mirail 5, allées

Plus en détail

ENTERPRISE MANAGER 12C TOTAL CLOUD CONTROL

ENTERPRISE MANAGER 12C TOTAL CLOUD CONTROL ENTERPRISE MANAGER 12C TOTAL CLOUD CONTROL Grand Tour Découverte de l offre Jean-Philippe PINTE jean.philippe.pinte@oracle.com 1 The following is intended to outline our general product direction. It is

Plus en détail

La S O A O pen S ource avec. Démos / Outils PEtALS

La S O A O pen S ource avec. Démos / Outils PEtALS La S O A O pen S ource avec Démos / Outils PEtALS Sept. 2007 La route vers la SOA Un ESB (Enterprise Service Bus) basé sur les standards Java, JBI et Web Services est une bonne technologie pour instancier

Plus en détail

FOSS Enterprise Integration Plattaform

FOSS Enterprise Integration Plattaform FOSS Enterprise Integration Plattaform 1 Modèle architectural Visual tools Human Activity Orchestr. Integration ESB Assembly 1 JBI BC e-form BPEL Server Assembly 2 SCA Assemly 3 Enterprise Monitor MetaDB

Plus en détail

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7 Sommaire 1-Introduction 2 1-1- BPM (Business Process Management)..2 1-2 J-Boss JBPM 2 2-Installation de JBPM 3 2-1 Architecture de JOBSS JBPM 3 2-2 Installation du moteur JBoss JBPM et le serveur d application

Plus en détail

Refonte front-office / back-office - Architecture & Conception -

Refonte front-office / back-office - Architecture & Conception - Refonte front-office / back-office - Architecture & Conception - GLG204 - Architectures Logicielles Java 2008/2009 Nom : Cédric Poisson Matricule : 06-49012 Version : 1.0 Jeudi 28 mai 2009 1 / 23 Table

Plus en détail

UML : Unified Modeling Language

UML : Unified Modeling Language UML : Unified Modeling Language Recommended: UML distilled A brief guide to the standard Object Modeling Language Addison Wesley based on Frank Maurer lecture, Univ. of Calgary in french : uml.free.fr/index.html

Plus en détail

UNIVERSITE D ANGERS. Habilitation à diriger des recherches. Spécialité Informatique

UNIVERSITE D ANGERS. Habilitation à diriger des recherches. Spécialité Informatique UNIVERSITE D ANGERS Habilitation à diriger des recherches Spécialité Informatique Contribution à l étude et à l application de l ingénierie dirigée par les modèles présentée et soutenue publiquement par

Plus en détail

CQP Développeur Nouvelles Technologies (DNT)

CQP Développeur Nouvelles Technologies (DNT) ORGANISME REFERENCE STAGE : 26572 20 rue de l Arcade 75 008 PARIS CONTACT Couverture géographique : M. Frédéric DIOLEZ Bordeaux, Rouen, Lyon, Toulouse, Marseille Tél. : 09 88 66 17 40 Nantes, Lille, Strasbourg,

Plus en détail

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI

objectif : plan : Java, CORBA et RMI A. Le Grand,1997 1 JAVA, CORBA et RMI JAVA, CORBA et RMI objectif : développer des applications client/serveur incluant des objets répartis Java / CORBA : client/serveur hétérogènes Java / RMI : client/serveur homogènes plan : l architecture

Plus en détail

Environnements de Développement

Environnements de Développement Institut Supérieur des Etudes Technologiques de Mahdia Unité d Enseignement: Environnements de Développement BEN ABDELJELIL HASSINE Mouna m.bnaj@yahoo.fr Développement des systèmes d Information Syllabus

Plus en détail

Architecture. Architecture CORBA. Architecture. Architecture. Object Request Broker (ORB) CORBA. Lionel Seinturier. Université Pierre & Marie Curie

Architecture. Architecture CORBA. Architecture. Architecture. Object Request Broker (ORB) CORBA. Lionel Seinturier. Université Pierre & Marie Curie Lionel Seinturier Université Pierre & Marie Curie Lionel.Seinturier@lip6.fr 02/03/04 Défini par l'object Management Group () www.omg.org - organisme de standardisation international depuis 1989 - groupe

Plus en détail

Annexe : La Programmation Informatique

Annexe : La Programmation Informatique GLOSSAIRE Table des matières La Programmation...2 Les langages de programmation...2 Java...2 La programmation orientée objet...2 Classe et Objet...3 API et Bibliothèque Logicielle...3 Environnement de

Plus en détail

Définition générale d'un Workflow :

Définition générale d'un Workflow : Workflow Table des matières Analyse... 3 Définition générale d'un Workflow :... 3 Avantages...4 Workflow Pattern...5 Forme Mathématique...7 Terminologie...8 Langages, Notations et Projets... 9 Les Notations:...9

Plus en détail

AADL. un langage pour la modélisation et la génération d applications. Thomas Vergnaud, thomas.vergnaud@enst.fr

AADL. un langage pour la modélisation et la génération d applications. Thomas Vergnaud, thomas.vergnaud@enst.fr AADL un langage pour la modélisation et la génération d applications, thomas.vergnaud@enst.fr Les langages de description d architecture la conception des systèmes devient complexe difficulté de compréhension

Plus en détail

OFFRE DE FORMATION L.M.D.

OFFRE DE FORMATION L.M.D. REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE MINISTERE DE L ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE OFFRE DE FORMATION L.M.D. MASTER PROFESSIONNEL ET ACADEMIQUE Systèmes d Information

Plus en détail

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE

INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE INGÉNIEUR LOGICIEL JAVAEE / GROOVY 8 ANS D EXPÉRIENCE Igor Rosenberg 30 ans DEA «Image-Vision» de l Université de Nice Sophia-Antipolis POSTES PRECEDENTS MMA: Développement Web/Grails sur démonstrateur

Plus en détail

4. SERVICES WEB REST 46

4. SERVICES WEB REST 46 4. SERVICES WEB REST 46 REST REST acronyme de REpresentational State Transfert Concept introduit en 2000 dans la thèse de Roy FIELDING Est un style d architecture inspiré de l architecture WEB En 2010,

Plus en détail