Ebauche -- Ebauche -- Ebauche -- Ebauche -- Ebauche - Architecture cible. Louis Martin Chaire de logiciel libre Finance sociale et solidaire UQAM

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

Download "Ebauche -- Ebauche -- Ebauche -- Ebauche -- Ebauche - Architecture cible. Louis Martin Chaire de logiciel libre Finance sociale et solidaire UQAM"

Transcription

1 Architecture cible Louis Martin Chaire de logiciel libre Finance sociale et solidaire UQAM 28 novembre 2010

2 Table des matières 1 Introduction Un guide pragmatique avant tout Un guide en évolution L architecture vue comme une plateforme de développement Une architecture à géométrie variable Domaines d application visés Spécifications désirées Indépendance face aux systèmes d exploitation Alphabet latin Internationalisation I18N et la localisation L10N Multidevise Sécurité Répondant aux normes du domaine Scénarios d exploitation Utilisation à faible volume Utilisation à fort volume Utilisation par un prestataire de services d infogérance Utilisation mixte interne et services d infogérance Virtualisation Caractéristiques recherchées Homogène Indépendante du système d exploitation SE Adaptable Ouverte Sécurisée Pérenne Répondant aux normes du domaine Avec un couplage faible Simple

3 TABLE DES MATIÈRES 2 4 Le choix d une plateforme de développement de référence Le besoin d une preuve de concept La JVM comme plateforme de développement Architecture multi-niveau L architecture proposée Niveau présentation Effervescence du domaine Facteurs considérés Approches recommandées Défis particuliers Utilisation d un coordonnateur d application Niveau métier Approche service Validation des données Moteur de flux de travaux et moteur de règles Niveau persistance Bases de données Mappage objet-relationnel ORM Production des rapports et l intelligence d affaires Modèles universels de données Services transversaux Authentification et autorisation Journalisation Surveillance et supervision des services Configuration des services Ordonnanceur Messagerie Gestion électronique des documents Conclusion Validation du présent document par des pairs Réalisation d une preuve de concept Rédactions de guides d utilisation Annexe 28

4 Table des figures 5.1 Relations entre les principaux niveaux de l architecture cible Dépendance envers le package «objets métier» Déploiement minimum de l architecture cible

5 Chapitre 1 Introduction «Noussommesdesratsquiconstruisenteux-mêmeslelabyrinthe dont ils se proposent de sortir» 1 Le présent document décrit l architecture système cible d une famille de logiciels libres pour l économie sociale et solidaire. Cette architecture devra être validée par une série de consultations auprès des contributeurs de la Chaire et par une preuve de concept. Néanmoins, il est àremarquerquelescomposantssuggérésont été testés et, dans la majorité des cas, ont été utilisés pour des systèmes en production. Le document s adresse aux concepteurs de logiciels désirant participer à la réalisation des logiciels de l AI2L. 1.1 Un guide pragmatique avant tout L architecture décrite dans ce document est une architecture cible. Elle ne doit pas être interprétée comme un absolu. Des dérogations seront possibles et, dans certains cas, même requises en fonction des impératifs du moment. À titre d exemple, nous pouvons citer l intégration de progiciels existants remplissant de façon adéquate une fonction critique pour l organisation utilisatrice. En fait, l architecture proposée tente de faciliter ce genre d intégration. Il faut cependant garder à l esprit de ne pas mettre en péril l intégrité de l ensemble, en particulier au niveau de la sécurité, par l introduction d un maillon plus faible. 1.2 Un guide en évolution Le domaine de l informatique évolue rapidement. Les manières de faire et les meilleures pratiques se modifient au gré des usages et de l expérience acquise. Bien malin celui qui peut établir une architecture ne nécessitant aucune mise à 1. définition des membres de l OuLiPo Ouvroir de littérature potentielle prêtée à Raymond Queneau 4

6 CHAPITRE 1. INTRODUCTION 5 niveau régulière. La présente architecture ne fait pas exception. En conséquence, elle devra faire l objet d une mise à niveau annuelle formelle pour y intégrer les nouveaux développements dans le domaine et prendre en compte les commentaires des utilisateurs suite à l expérience acquise. Les changements proposés devront être accompagnés, le cas échéant, de recommandations pour faciliter la migration vers la nouvelle cible. 1.3 L architecture vue comme une plateforme de développement L architecture cible est vue comme une plateforme de développement. Elle sert d assise pour les développeurs désirant contribuer au projet par l ajout de fonction sous la forme de services. En fonction de l évolution des besoins et des contributions, certains outils pourront s ajouter pour faciliter le travail des développeurs. 1.4 Une architecture à géométrie variable Le point de vue adopté pour le présent document étant celui des développeurs, l architecture y est décrite d un point de vue logique. Cependant, prenant en considération les différents scénarios d exploitation, nous nous sommes assurés que l architecture physique puisse se décliner sous plusieurs formes sans impacter le modèle logique utilisé pour le développement.

7 Chapitre 2 Domaines d application visés Les applications visés par l architecture cible couvrent, à terme, l ensemble du domaine de l économie sociale. Ce vaste domaine couvrent plusieurs champs, citons à titre d exemple, sans exclure les autres secteurs : l assurancedespersonnesetdesbiens; l épargnecollective; lefinancement,enparticulierlesinstitutionsfinancièressocialementresponsables IFSR ; etplusieursautresinitiativesreliéesaudomainedel économiesociale,par exemple, les structures d insertion par l activité économique SIAE. Les organisations ciblées par la famille de logiciels se caractérisent par un volume d opérations relativement faible : de quelques dizaines à quelques milliers d opérations quotidiennes. 2.1 Spécifications désirées Indépendance face aux systèmes d exploitation L architecture cible doit pouvoir fonctionner sous les systèmes d exploitation courants, en particulier sous les systèmes d exploitation sous licence libre Alphabet latin Pour l instant, seul l alphabet latin sera pris en charge Internationalisation I18N et la localisation L10N Les logiciels devront permettre l internationalisation et la localisation selon les pratiques usuelles. 6

8 CHAPITRE 2. DOMAINES D APPLICATION VISÉS Multidevise Les logiciels devront permettre l utilisation de plusieurs devises. La conversion d une devise à l autre ne sera pas automatique. Nous soulignons ce dernier point car lorsque le multidevise est mentionné, plusieurs personnes croient que cela inclut une conversion automatique Sécurité Le domaine de la sécurité des systèmes informatiques est immense et évolue rapidement au gré des attaques et des parades à ces attaques. L approche privilégiée du point de vue des développeurs est une architecture prenant en considération la sécurité d une façon la moins intrusive possible au niveau du code applicatif. Cet objectif est atteint si la sécurité est orthogonale transversale relativement au code applicatif. De cette façon, la sécurité peut être implémentée : Àplusieursniveaux: auniveauphysique; auniveauéquipement; auniveauréseau; auniveaulogiciel. Aveclapossibilitéd activerdescontrôlesounon,selonlescontextesparticuliers, sans impacter les applications elles-mêmes Répondant aux normes du domaine Les applications développées devront répondre aux normes reconnues du domaines. Plusieurs normes sont indépendantes d un domaine spécifique et d autres ne s appliquent qu à un domaine précis. Au fur et à mesure de l avancement des travaux, les normes auxquelles les applications répondront seront identifiées de façon plus précise. Parmi les cibles souhaitées, nous pouvons citer, à titre indicatif et préliminaire : ContentManagementInteroperabilityServices CMIS del organisation OASIS pour l accès aux systèmes de gestion électronique des documents ; LesguidesdelaGlobalReportingInitiative GRI et la récente norme ISO pour faciliter la triple reddition de compte financière, sociale et environnementale ; Lesdifférentesréglementationsnationales. 2.2 Scénarios d exploitation L architecture présentée cherche à répondre aux scénarios d exploitation suivants :

9 CHAPITRE 2. DOMAINES D APPLICATION VISÉS Utilisation à faible volume Ce cadre d utilisation se caractérise par : unfaiblevolumedetransactions; unnombrelimitéd utilisateurs souventmoinsdedix; uneconnaissancelimitéedel informatique; uneexpertiserudimentairedessainespratiquesd exploitationdessystèmes opérationnels critiques ; unparcd équipementminimal Utilisation à fort volume Ce cadre d utilisation se caractérise par : unvolumedetransactionsdemoyenàélevé; unnombred utilisateursallantdeplusieursdizainesàquelquescentaines; unebonneconnaissancedel informatique souventparuneéquipede développement interne ; une bonne expertise de l exploitation des systèmes opérationnels critiques souventparuneéquiped exploitationinterne; unparcd équipementsrelativementimportant Utilisation par un prestataire de services d infogérance Ce cadre d utilisation se caractérise par : unepriseenchargedessystèmesdeplusieursdizainesdeclientsetplus; uneutilisationintensivedesbandespassantes; uneexigenced untauxderéponserapide; unvolumedetransactionsélevé; unetrèsbonneconnaissancedel informatique; uneexcellenteexpertisedel exploitationdessystèmesopérationnelscritiques ; unparcd équipementsimportant; des normes de qualité rigoureuses ; desauditsexternesfréquents Utilisation mixte interne et services d infogérance Ce cadre d utilisation semble devenir de plus en plus populaire en particulier avec l offre grandissante de services s appuyant sur l informatique dans les nuages cloud computing. Dans ce cadre, une organisation choisit d exploiter àl internequelquesservicesetd enconfierd autreseninfogérance.l ensemble doit fonctionner de façon transparente pour les utilisateurs finaux.

10 CHAPITRE 2. DOMAINES D APPLICATION VISÉS Virtualisation L architecture cible doit pouvoir être exploitée en virtualisation 1.Lavirtualisation permet de diminuer les besoins en serveur physique, de favoriser une plus grande utilisation des équipements Green IT 2 etdefaciliterlamiseen place des mécanismes de sécurité. 1. La virtualisation consiste à faire fonctionner sur un seul ordinateur plusieurs systèmes d exploitation comme s ils fonctionnaient sur des ordinateurs distincts. Tiré de 2. Green computing (en français informatique verte) ou encore green information technology (abréviation green IT) est un concept consistant à tenir compte des contraintes et des coûts en énergie (alimentation électrique et climatisation) des matériels informatiques. Tiré de

11 Chapitre 3 Caractéristiques recherchées L architecture logique cible vise les caractéristiques suivantes : 3.1 Homogène Si possible, une seule architecture logique pour l ensemble des modes d exploitation prévus voir la section 2.2 pour une description plus détaillée de ces modes d exploitation. 3.2 Indépendante du système d exploitation SE Cette indépendance permet d utiliser les équipements déjà en place s ils répondent aux autres exigences : performance, capacité de mémoire vive, etc. Cette indépendance rend possible une migration d un SE vers un autre. Cependant pour faciliter une telle migration, il est important que les ajouts apportés àlaprésentearchitecture,pourrépondre,parexemple,àdesbesoinsspécifiques d un utilisateur donné, respectent les mêmes principes d indépendance face au SE. L indépendance face aux SE nous amène à recommander UTF-8 Universal Character Set transformation format 8 bits pour l encodage de tous les différents types de fichiers : sources, configurations, HTML, CSS, JavaScript, XML, etc. 3.3 Adaptable Plusieurs utilisateurs voudront intégrer à l architecture des modules qui leurs sont propres ou encore donner une signature visuelle distinctive aux logiciels. 10

12 CHAPITRE 3. CARACTÉRISTIQUES RECHERCHÉES Ouverte L architecture logique cible devrait pouvoir accommoder, dans la mesure du possible, des modules externes pouvant répondre adéquatement à des besoins ciblés. Ces modules externes sont susceptibles d avoir été réalisés dans plusieurs langages de programmation. L architecture cible doit donc pouvoir accommoder des modules polyglottes. 3.5 Sécurisée L architecture cible doit permettre la mise en place des mécanismes de sécurité exigés par la nature des applications visées et par les meilleures pratiques du domaine. Voir la section sur les différents volets de la sécurité. Idéalement, nous visons que la sécurité soit orthogonale 1 au modèle logique utilisé pour le développement. 3.6 Pérenne L architecture cible doit offrir une base solide pour les prochaines dix à quinze années. Personne ne peut prédire le futur avec précision, les choix devant être faits seront basés sur l expérience de l équipe et leur vision du futur méthode Delphi informelle Répondant aux normes du domaine L architecture cible doit respecter au maximum les normes du domaine. Ces normes peuvent être des normes de facto normesétabliesparlapratiqueet non par un organisme de réglementation. 3.8 Avec un couplage faible La notion de couplage représente, dans le présent contexte, le degré d indépendance relative entre les services d un système. Nous dirons que le couplage est faible si un changement dans un service demande peu de changement au niveaux des autres services du systèmes. Uncouplageseraqualifiédefortsiun 1. In geometry, orthogonal means "involving right angles" (from Greek ortho, meaning right, and gon meaning angled). The term has been extended to general use, meaning the characteristic of being independent (relative to something else). It also can mean : nonredundant, non-overlapping, or irrelevant. In computer terminology, something such as a programming language or a data object is orthogonal if it can be used without consideration as to how its use will affect something else. Tiré de 2. La méthode Delphi est une méthode de prévision, utilisée en particulier en gestion de projet ou en prévision économique. Le principe de cette méthode est que des prévisions réalisées par un groupe d expert structuré sont généralement plus fiables que celles faites par des groupes non structurés ou des individus. Tiré de

13 CHAPITRE 3. CARACTÉRISTIQUES RECHERCHÉES 12 changement dans un service impacte plusieurs autres services et demande en conséquence des modifications à ces derniers. 3.9 Simple «Entianonsuntmultiplicandapraeternecessitatem» Guillaume d Ockham «Lasimplicitéestlasophisticationsuprême» Léonard de Vinci «Il semble que la perfection soit atteinte non quand il n y a plus rien à ajouter, mais quand il n y a plus rien à retrancher» Antoine de Saint-Exupéry Lorsque l ensemble des caractéristiques décrites plus haut sont prises en compte dans une architecture, il reste un dernier tour de manivelle à donner : celui de simplifier l architecture résultante par un réusinage 3 refactoring.cette simplification rend plus facile la compréhension de l architecture cible par les développeurs et exige moins d effort pour être implémentée.l architecture cible doit pouvoir se moduler de différentes façons tout en offrant un modèle unique pour les développeurs. 3. La refactorisation (anglicisme venant de refactoring) est une opération de maintenance du code informatique. Elle consiste à retravailler le code source non pas pour ajouter une fonctionnalité supplémentaire au logiciel mais pour améliorer sa lisibilité, simplifier sa maintenance, ou changer sa généricité (on parle aussi de remaniement). Une traduction plus appropriée serait réusinage. C est donc une technique qui s approche de l optimisation du code, même si les objectifs sont radicalement différents. Tiré de

14 Chapitre 4 Le choix d une plateforme de développement de référence 4.1 Le besoin d une preuve de concept La description d une architecture cible est importante, principalement pour comprendre les motifs pris en compte dans son élaboration. Cependant l architecture seule ne suffit pas. Pour illustrer son fonctionnement et aider les développeurs à participer au projet, il faut pouvoir disposer d une plateforme de développement de référence permettant d illustrer en pratique le fonctionnement de l architecture cible. Cette plateforme de développement de référence n exclut pas l apport éventuel de services implémentés sous une autre plateforme de développement. Ces services devront toutefois pouvoir cohabiter avec la plateforme de développement de référence. 4.2 La JVM comme plateforme de développement Le choix de la JVM Java Virtual Machine s est imposé rapidement. Les principaux facteurs justifiant ce choix sont : PlusieursimplémentationsdelaJVMexistentsurlemarché. L implémentationlaplusconnue celledesun/oracle estdisponible sous les principaux systèmes d exploitation : Unix/Linux, Windows, Mac OS X, etc. D autres implémentations, certaines disponibles en libre, fonctionnent sous l un ou plusieurs de ces systèmes d exploitation. LaplateformeJavaestbienrépandueetestconnuedenombreuxdéveloppeurs. Plusieursbibliothèques,cadresd application frameworks etlogiciels complets sont disponibles en libre sous cette plateforme. Plusieurslangagesdeprogrammationfonctionnentsouscetteplateforme 1 1. Le site donne une liste de plus de 13

15 CHAPITRE 4. LE CHOIX D UNE PLATEFORME DE DÉVELOPPEMENT DE RÉFÉRENCE14 rendant possible une programmation polyglotte plus optimale dans certains contextes. Parmicesnombreuxlangages,plusieurssontdeslangagesdynamiques,en particulier Groovy. L utilisation des langages dynamiques est populaire. Certains auteurs indiquent que les langages dynamiques permettent des gains de productivité de 2,5 à 3 fois par rapport à un langage comme Java ou C#. D autres auteurs critiquent l utilisation des langages dynamiques soulignant qu avec ces derniers des erreurs, captées à la compilation par les langages traditionnels, causent des erreurs à l exécution. LelangageScala 2 permettant une programmation orientée objet et aussi une programmation fonctionnelle est également disponible sous la plateforme. Enfin,ladisponibilitédelangagestelsqueGroovyetScalaoffrelapossibilité de développer des langages applicatifs domain specific language 3 (DSL).Ceslangagesapplicatifspeuvents avérerunoutilprécieuxpour permettre l adaptation rapide des programmes à un contexte d utilisation particulier. 200 langages fonctionnant sous la JVM. 2. Scala is a general purpose programming language designed to express common programming patterns in a concise, elegant, and type-safe way. It smoothly integrates features of object-oriented and functional languages, enabling Java and other programmers to be more productive. Code sizes are typically reduced by a factor of two to three when compared to an equivalent Java application. Tiré de 3. In software development and domain engineering, a domain-specific language (DSL) is a programming language or specification language dedicated to a particular problem domain, a particular problem representation technique, and/or a particular solution technique. The concept isn t new special-purpose programming languages and all kinds of modeling/specification languages have always existed, but the term has become more popular due to the rise of domain-specific modeling. Tiré de

16 Chapitre 5 Architecture multi-niveau 5.1 L architecture proposée L architecture logique proposée est courante. Elle est composée d une structure à quatre niveaux : Leniveauprésentation Leniveaulogiquemétier Leniveaupersistance Leniveaudesservicestransversaux La figure 5.1 illustre la visibilité directe des niveaux proposés. Les sections suivantes décrivent plus en détail chacun de ces niveaux. 5.2 Niveau présentation Effervescence du domaine Depuis ces dernières années, le niveau présentation connaît plusieurs changements et offre plusieurs cadres d application frameworks. La grande diffusion d appareils mobiles téléphones dits intelligents, tablettes, etc. génère le besoin d accéder aux applications patrimoniales depuis ces dispositifs. L utilisation de ces dispositifs pour des applications multi-niveaux s appuie sur Internet et en particulier sur le protocole HTTP/HTTPS Facteurs considérés Les points pris en compte dans notre réflexion pour le niveau présentation sont : Laproportionimportantedeseffortspour développer ce niveau. Certains vont jusqu à avancer que le niveau présentation demande de 40 à 60 % de l effort total d un projet. 1. Respectivement HyperText Transfer Protocol et HyperText Transfer Protocol Secured 15

17 CHAPITRE 5. ARCHITECTURE MULTI-NIVEAU 16 Figure 5.1 Relations entre les principaux niveaux de l architecture cible La flexibilité requise par les différentes organisations susceptibles d utiliser nos logiciels. Le niveau présentation est une vitrine, on veut pouvoir y mettre un logo, des couleurs propres à sa signature corporative, etc. L adhésionauxnormesouvertesetlargementutilisées. Lasimplicitéetlaflexibilitédeséchangesentreleclientetleserveur. Lapossibilitéd utiliserlamêmemanièredefaireautantpourlesapplications grand public que pour les applications réservées au personnel de l organisation. Lafacilitéd installeretdemettreàjourlesapplicationsduniveauprésentation. L indépendanceduniveauprésentationenregarddestechnologiesutilisées pour le niveau métier. Laréductiondel utilisationdelabandepassante Approches recommandées Le fureteur comme plateforme privilégiée L utilisationdehtml4 etbientôthtml5 L utilisationdecss etbientôtcss3 L utilisationdesbibliothèquesjquery incluantajax L utilisationd uncoordonnateurauniveauserveur Défis particuliers La sécurité Lacompatibilitéentrelesdifférentsfureteurs Firefox3.6+,Chrome, Opera, Safari 5+, IE 9+ Ladisciplinededéveloppement:développementd unmanueldestyleet des meilleures pratiques

18 CHAPITRE 5. ARCHITECTURE MULTI-NIVEAU 17 Ladifficultédestests Ladisponibilitédeplateformesdedéveloppement Utilisation d un coordonnateur d application Le coordonnateur d application 2 agit comme un intermédiaire entre le client fureteur et le niveau métier. Son rôle principale est de recevoir les requêtes Ajax 3 émises par le client fureteur et, le cas échéant, de faire appel aux services métier pour y répondre. Le coordonnateur d application est le premier et le plus important bastion de protection entre un client fureteur considéré comme vulnérable et le niveau métier. Le coordonnateur doit s assurer de prendre en charge les meilleurs pratiques de protection 4.Leséchangesentrelefureteuretlecoordonnateurdoiventêtre établis de telle sorte que quelqu un de l extérieur ne puisse pas, dans la mesure du possible, induire le fonctionnement interne du système. Nous favorisons une API 5 entre le fureteur et le coordonnateur s éloignant du patron de conception REST 6 et s approchant plus d une API classique de style RPC 7.Ilexisteun couplage fort entre le fureteur et le coordonnateur, il est donc conséquent de l utiliser une API propre aux deux partenaires. L approche proposée permet d implémenter le coordonnateur dans n importe quel langage car le coordonnateur communique avec les services métier en utilisant le patron de conception REST. De plus le coordonnateur n est pas dépendant d un cadre d application donné par exemple, Struts, GWT, etc. Le format recommandé des échanges entre le fureteur et le coordonnateur est JSON. Les essais réalisés tendent à démontrer que le format JSON 8 facilite 2. Le patron de conception «coordonnateur d application» est aussi connu sous le nom de «contrôleur» ou «contrôleur façade». Dans le présent contexte, nous nous référons à l approche de Craig Larman décrite en particulier dans UML 2 et les Design Patterns 3e éd. chez Pearson France 2005 ISBN13 : Asynchronous Javascript and XML 4. Voir le site dédié à la sécurité des applications de type WEB et en particulier, leur dernière édition des «Dix risques de sécurité applicatifs WEB les plus critiques». 5. Une interface de programmation (Application Programming Interface ou API) est une interface fournie par un programme informatique. Elle permet l interaction des programmes les uns avec les autres de manière analogue à une interface homme-machine rend possible l interaction entre un homme et une machine. Tiré de 6. REST Representational State Transfer est une manière de construire une application pour les systèmes distribués comme le World Wide Web. Le terme a été inventé par Roy Fielding en REST n est pas un protocole ou un format, c est un style d architecture, c est le style architectural original du Web. Tiré de 7. En informatique et en télécommunication, RPC (Remote Procedure Call) est un protocole réseau permettant de faire des appels de procédures sur un ordinateur distant à l aide d un serveur d applications. Ce protocole est utilisé dans le modèle client-serveur et permet de gérer les différents messages entre ces entités. Tiré de 8. JSON JavaScript Object Notation est un format de données textuel, générique, dérivé de la notation des objets du langage ECMAScript. Il permet de représenter de l infor-

19 CHAPITRE 5. ARCHITECTURE MULTI-NIVEAU 18 la programmation JavaScript au niveau du fureteur. Du côté coordonnateur, des bibliothèques existent pour tous les langages courants permettant de créer des représentations JSON facilement. En Java, nous avons utilisé JSON-LIB Niveau métier Concernant les échanges entre les coordonnateurs du niveau présentation et les services du niveau métier, le patron de conception REST est favorisé. La même approche est également favorisée pour les échanges entre les services métier. Cette approche est plus simple d utilisation que les nombreux standards 9 associés à SOAP 10 et ses différentes déclinaisons. Le cadre d application recommandé pour REST est Jersey qui est l implémentation de référence de la norme JAX-RS. Concernant les échanges entre les coordonnateurs et les services REST, plusieurs choix sont possibles, parmi les plus courants mentionnons XML, JSON et la sérialisation des objets. Les tests effectués démontrent que la sérialisation d objet et le format JSON offrent une performance de près de huit fois supérieure relativement à l utilisation d un format XML. Un service REST peut supporter plusieurs formats différents, le client transmet avec sa requête les formats qu il préfère et le service y répond dans la mesure du possible par ordre de préférence indiqué par le client. Dans un environnement homogène de type JAVA incluant le dialecte Groovy la sérialisation des objets offre une simplicité et des performances intéressantes. Bien entendu, les classes échangées doivent être accessibles au niveau du client et au niveau du service. La figure 5.2 illustre cette dépendance. De plus cette approche permet d utiliser Hibernate-Validator pour annoter les objets métier permettant ainsi d avoir à un endroit unique les spécifications de validation et de pouvoir exécuter ces validations autant au niveau du coordonnateur qu au niveau du service et même,à certains égards, au niveau de mation structurée. Créé par Douglas Crockford, il est décrit par la RFC 4627 de l IETF. Tiré de 9. Pour vous convaincre de ce point, consultez le site SOAP ancien acronyme de Simple Object Access Protocol est un protocole de RPC orienté objet bâti sur XML. Il permet la transmission de messages entre objets distants, ce qui veut dire qu il autorise un objet à invoquer des méthodes d objets physiquement situés sur un autre serveur. Le transfert se fait le plus souvent à l aide du protocole HTTP, mais peut également se faire par un autre protocole, comme SMTP. Le protocole SOAP est composé de deux parties : une enveloppe, contenant des informations sur le message lui-même afin de permettre son acheminement et son traitement, un modèle de données, définissant le format du message, c est-à-dire les informations àtransmettre. SOAP a été initialement défini par Microsoft et IBM, mais est devenu une référence depuis une recommandation du W3C, utilisée notamment dans le cadre d architectures de type SOA Service Oriented Architecture pour les Services Web WS-*. Tiré de

20 CHAPITRE 5. ARCHITECTURE MULTI-NIVEAU 19 Figure 5.2 Dépendance envers le package «objets métier» la persistance. Le diagramme suivant illustre la dépendance entre les différents types de package espaces de nommage en Java dans un tel contexte Approche service L approche service utilisant le patron de conception REST est retenue. Cette façon de faire permet d accueillir dans l architecture cible des services réalisés dans des langages de programmation autres que Java, Groovy ou Scala. Les services sont représentés, avec le patron de conception REST, sous la forme de ressources. Les ressources sont identifiées par un URI 11. Un catalogue des ressources sera utilisé pour centraliser les informations sur celles-ci et pour indiquer les méthodes OPTIONS GET HEAD POST PUT DELETE permises pour chacune d elles et les formats supportés pour les représenter Validation des données Pour la validation des données, tel que décrit plus haut, nous favorisons Hibernate Validator l implémentation de référence pour la JSR Moteur de flux de travaux et moteur de règles Au niveau des processus et des règles d affaires, nous considérons que la majorité des applications à réaliser auront une complexité de faible à moyenne. 11. Un URI, de l anglais Uniform Resource Identifier, soit littéralement identifiant uniforme de ressource, est une courte chaîne de caractères identifiant une ressource sur un réseau (par exemple une ressource Web) physique ou abstraite, et dont la syntaxe respecte une norme d Internet mise en place pour le World Wide Web (voir RFC 3986). Tiré de

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand <jpountz@via.ecp.fr> Centrale Réseaux Formation Webase 5 Ses secrets, de l architecture MVC à l application Web Adrien Grand Centrale Réseaux Sommaire 1 Obtenir des informations sur Webase 5 2 Composants de Webase 5 Un

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

Mise en œuvre des serveurs d application

Mise en œuvre des serveurs d application Nancy-Université Mise en œuvre des serveurs d application UE 203d Master 1 IST-IE Printemps 2008 Master 1 IST-IE : Mise en œuvre des serveurs d application 1/54 Ces transparents, ainsi que les énoncés

Plus en détail

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur goulwen.lefur@obeo.fr. Le 23 novembre 2012

DSL. Domain Specific Language. À l'aide des technologies Eclipse Modeling. Goulwen Le Fur goulwen.lefur@obeo.fr. Le 23 novembre 2012 DSL Domain Specific Language À l'aide des technologies Eclipse Modeling Le 23 novembre 2012 Goulwen Le Fur goulwen.lefur@obeo.fr Le but de cette session Montrer : Ce qu'est-un DSL/DSM Comment implémenter

Plus en détail

Architecture Orientée Service, JSON et API REST

Architecture Orientée Service, JSON et API REST UPMC 3 février 2015 Précedemment, en LI328 Architecture générale du projet Programmation serveur Servlet/TOMCAT Aujourd hui Quelques mots sur les SOA API - REST Le format JSON API - REST et Servlet API

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

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 Architectures Orientées Services (SOA)

Les Architectures Orientées Services (SOA) Les Architectures Orientées Services (SOA) Ulrich Duvent Guillaume Ansel Université du Littoral Côte d Opale 50, Rue Ferdinand Buisson BP 699 62228 Calais Cedex Téléphone (33) 03.21.46.36.92 Télécopie

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

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

Intégration de systèmes

Intégration de systèmes Intégration de systèmes Préparé par: Marc Barassi, Michel Fraser, Louis Martin, Martin Simoneau Collaboration spéciale: François Boucher et Richard Boutin 3/18/14 Intégration de systèmes «L ensemble des

Plus en détail

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5 ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5 Informations juridiques Copyright 2010 Adobe Systems Incorporated and its licensors. All rights reserved. Administration d Adobe LiveCycle Mosaic 9.5 13 octobre

Plus en détail

Introduction aux «Services Web»

Introduction aux «Services Web» Introduction aux «Services Web» Sana Sellami sana.sellami@univ-amu.fr 2014-2015 Modalité de contrôle de connaissances Note de contrôle de continu Note projet Evaluation du projet la semaine du 17 novembre

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

Solutions de gestion de la sécurité Livre blanc

Solutions de gestion de la sécurité Livre blanc Solutions de gestion de la sécurité Livre blanc L intégration de la gestion des identités et des accès avec l authentification unique Objectif : Renforcer la politique de sécurité et améliorer la productivité

Plus en détail

18 TCP Les protocoles de domaines d applications

18 TCP Les protocoles de domaines d applications 18 TCP Les protocoles de domaines d applications Objectifs 18.1 Introduction Connaître les différentes catégories d applications et de protocoles de domaines d applications. Connaître les principaux protocoles

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

Urbanisme du Système d Information et EAI

Urbanisme du Système d Information et EAI Urbanisme du Système d Information et EAI 1 Sommaire Les besoins des entreprises Élément de solution : l urbanisme EAI : des outils au service de l urbanisme 2 Les besoins des entreprises 3 Le constat

Plus en détail

Le Cloud Computing et le SI : Offre et différentiateurs Microsoft

Le Cloud Computing et le SI : Offre et différentiateurs Microsoft Le Cloud Computing désigne ces giga-ressources matérielles et logicielles situées «dans les nuages» dans le sens où elles sont accessibles via Internet. Alors pourquoi recourir à ces centres serveurs en

Plus en détail

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage

Technologies du Web. Créer et héberger un site Web. Pierre Senellart. Page 1 / 26 Licence de droits d usage Technologies du Web Créer et héberger un site Web Page 1 / 26 Plan Planification Choisir une solution d hébergement Administration Développement du site Page 2 / 26 Cahier des charges Objectifs du site

Plus en détail

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D

NOVA BPM. «Première solution BPM intégr. Pierre Vignéras Bull R&D NOVA BPM «Première solution BPM intégr grée» Pierre Vignéras Bull R&D Définitions Business Process Pratiques existantes qui permettent aux personnes et systèmes de travailler ensemble Business Process

Plus en détail

Expert technique J2EE

Expert technique J2EE EHRET Guillaume 25, rue de la Richelandiere 42100 SAINT ETIENNE 32 ans - Célibataire Expert technique J2EE Domaines de compétences Environnement et langages Expertise en programmation Java et en architecture

Plus en détail

Architectures d'intégration de données

Architectures d'intégration de données Architectures d'intégration de données Dan VODISLAV Université de Cergy-ontoise Master Informatique M1 Cours IED lan Intégration de données Objectifs, principes, caractéristiques Architectures type d'intégration

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

les techniques d'extraction, les formulaires et intégration dans un site WEB

les techniques d'extraction, les formulaires et intégration dans un site WEB les techniques d'extraction, les formulaires et intégration dans un site WEB Edyta Bellouni MSHS-T, UMS838 Plan L extraction des données pour un site en ligne Architecture et techniques Les différents

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

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information.

D une part, elles ne peuvent faire table rase de la richesse contenue dans leur système d information. PACBASE «Interrogez le passé, il répondra présent.». Le Module e-business Les entreprises doivent aujourd hui relever un triple défi. D une part, elles ne peuvent faire table rase de la richesse contenue

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

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application

Architecture N-Tier. Ces données peuvent être saisies interactivement via l interface ou lues depuis un disque. Application Architecture Multi-Tier Traditionnellement une application informatique est un programme exécutable sur une machine qui représente la logique de traitement des données manipulées par l application. Ces

Plus en détail

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

Urbanisation des Systèmes d'information

Urbanisation des Systèmes d'information Urbanisation des Systèmes d'information Des composants technologiques disponibles Urbanisation des Systèmes d'information - Henry Boccon-Gibod 1 Plan de l'exposé Technologies à la mode disponibles. Bus

Plus en détail

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki

Institut Supérieur de Gestion. Cours pour 3 ème LFIG. Java Enterprise Edition Introduction Bayoudhi Chaouki Institut Supérieur de Gestion Cours pour 3 ème LFIG Java Enterprise Edition Introduction Bayoudhi Chaouki 1 Java EE - Objectifs Faciliter le développement de nouvelles applications à base de composants

Plus en détail

Master Informatique et Systèmes. Architecture des Systèmes d Information. 03 Architecture Logicielle et Technique

Master Informatique et Systèmes. Architecture des Systèmes d Information. 03 Architecture Logicielle et Technique Master Informatique et Systèmes Architecture des Systèmes d Information 03 Architecture Logicielle et Technique Damien Ploix 2014-2015 Démarche d architecture SI : structuration en vues Quels métiers?

Plus en détail

Nos Solutions PME VIPDev sont les Atouts Business de votre entreprise.

Nos Solutions PME VIPDev sont les Atouts Business de votre entreprise. Solutions PME VIPDev Nos Solutions PME VIPDev sont les Atouts Business de votre entreprise. Cette offre est basée sur la mise à disposition de l ensemble de nos compétences techniques et créatives au service

Plus en détail

LES SOLUTIONS OPEN SOURCE RED HAT

LES SOLUTIONS OPEN SOURCE RED HAT LES SOLUTIONS OPEN SOURCE RED HAT Red Hat, le fournisseur leader Linux et de l open source mondial a son siège à Raleigh, en Caroline du Nord, avec des bureaux dans le monde entier. Red Hat propose les

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

Stage Ingénieur en développement logiciel/modélisation 3D

Stage Ingénieur en développement logiciel/modélisation 3D Ingénieur en développement logiciel/modélisation 3D Schlumberger recrute un(e) stagiaire ingénieur en modélisation 3D pour la plate-forme Petrel. Vous serez intégré(e) au sein d une équipe innovante, Petrel

Plus en détail

Sécurité des entrepôts de données dans le Cloud Un SaaS pour le cryptage des données issues d un ETL

Sécurité des entrepôts de données dans le Cloud Un SaaS pour le cryptage des données issues d un ETL Sécurité des entrepôts de données dans le Cloud Un SaaS pour le cryptage des données issues d un ETL Présenté par Hana Gara Kort Sous la direction de Dr Jalel Akaichi Maître de conférences 1 1.Introduction

Plus en détail

Tom Pertsekos. Sécurité applicative Web : gare aux fraudes et aux pirates!

Tom Pertsekos. Sécurité applicative Web : gare aux fraudes et aux pirates! Tom Pertsekos Sécurité applicative Web : gare aux fraudes et aux pirates! Sécurité Le mythe : «Notre site est sûr» Nous avons des Nous auditons nos Firewalls en place applications périodiquement par des

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

SITE WEB E-COMMERCE ET VENTE A DISTANCE

SITE WEB E-COMMERCE ET VENTE A DISTANCE Développement d une application JAVA EE SITE WEB E-COMMERCE ET VENTE A DISTANCE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AIT NASSER Btissam Email : aitnasser.btissam123@gmail.com GSM : Organisme

Plus en détail

Famille IBM WebSphere Application Server

Famille IBM WebSphere Application Server IBM Famille IBM Le socle applicatif qui répond à vos besoins métier Points clés Bâtir un socle solide et réduire les coûts avec un serveur d applications répondant à vos besoins métier Gagner en agilité

Plus en détail

Technologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC

Technologies du Web. Ludovic DENOYER - ludovic.denoyer@lip6.fr. Février 2014 UPMC Technologies du Web Ludovic DENOYER - ludovic.denoyer@lip6.fr UPMC Février 2014 Ludovic DENOYER - ludovic.denoyer@lip6.fr Technologies du Web Plan Retour sur les BDs Le service Search Un peu plus sur les

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

1 JBoss Entreprise Middleware

1 JBoss Entreprise Middleware 1 JBoss Entreprise Middleware Les produits de la gamme JBoss Entreprise Middleware forment une suite de logiciels open source permettant de construire, déployer, intégrer, gérer et présenter des applications

Plus en détail

Un serveur d'archivage

Un serveur d'archivage Un serveur d'archivage destiné au Service Commun de Documentation de l'université de la Méditerranée Encadrement : Noël Novelli Représentants client (S.C.D.) : Axelle Clarisse Ronan Lagadic Equipe Projet

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

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles

Types d applications pour la persistance. Outils de développement. Base de données préexistante? 3 modèles. Variantes avec passerelles Types d applications pour la persistance Université de Nice Sophia-Antipolis Version 0.9 28/8/07 Richard Grin Toutes les applications n ont pas une complexité qui nécessite une architecture n- tiers Ce

Plus en détail

Assurances & Mutuelles, Industrie, Santé, Énergie, Transport, Médias / Multimédias, Télécoms, Services

Assurances & Mutuelles, Industrie, Santé, Énergie, Transport, Médias / Multimédias, Télécoms, Services Société de conseil et d ingénierie en informatique SEELANDE Consulting, société de conseil et d ingénierie en informatique spécialisée dans les NTIC, se positionne dans différents secteurs d activités

Plus en détail

Travail collaboratif. Glossaire

Travail collaboratif. Glossaire Glossaire Ajax Traduction anglaise : Ajax (Asynchronous JavaScript And XML) AJAX est un combiné de différents langages de développement Web comme XHTML, JavaScript ou XML, il est fréquemment utilisé pour

Plus en détail

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM)

Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM) LA BOITE A OUTILS DE L ACHETEUR DE BPM Modèle de cahier des charges pour un appel d offres relatif à une solution de gestion des processus métier (BPM) La boîte à outils de l acheteur de solution BPM -

Plus en détail

Catalogue des Formations Techniques

Catalogue des Formations Techniques Catalogue des Formations Techniques Items Média Concept 4, allées Pierre-Gilles de Gennes - 33700 Mérignac Téléphone : 05.57.35.73.73 Télécopie : 05.57.35.73.70 Courriel : contact@imc-fr.com 2 Préambule

Plus en détail

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million

XML, PMML, SOAP. Rapport. EPITA SCIA Promo 2004 16 janvier 2003. Julien Lemoine Alexandre Thibault Nicolas Wiest-Million XML, PMML, SOAP Rapport EPITA SCIA Promo 2004 16 janvier 2003 Julien Lemoine Alexandre Thibault Nicolas Wiest-Million i TABLE DES MATIÈRES Table des matières 1 XML 1 1.1 Présentation de XML.................................

Plus en détail

Petit Déjeuner Pépinière du Logiciel Libre. 25 juin 2008

Petit Déjeuner Pépinière du Logiciel Libre. 25 juin 2008 Petit Déjeuner Pépinière du Logiciel Libre 25 juin 2008 1 / 37 Agenda Définition & Principes Les différents outils & composants Les Solutions intégrés Open-Source Vos Questions 2 / 37 Agenda Définition

Plus en détail

IBM Business Process Manager

IBM Business Process Manager IBM Software WebSphere Livre blanc sur le leadership en matière d innovation IBM Business Process Manager Une plateforme de BPM complète, unifiée et facilement adaptable aux projets et aux programmes d

Plus en détail

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web»

Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Cours Master Recherche RI 7 Extraction et Intégration d'information du Web «Services Web» Sana Sellami sana.sellami@lsis.org 2014-2015 Plan Partie 1: Introduction aux Services Web (SW) Partie 2: Vers une

Plus en détail

FOURNIR UN SERVICE DE BASE DE DONNÉES FLEXIBLE. Database as a Service (DBaaS)

FOURNIR UN SERVICE DE BASE DE DONNÉES FLEXIBLE. Database as a Service (DBaaS) FOURNIR UN SERVICE DE BASE DE DONNÉES FLEXIBLE Database as a Service (DBaaS) 1 The following is intended to outline our general product direction. It is intended for information purposes only, and may

Plus en détail

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean. Plan du cours 2 Introduction générale : fondamentaux : les fondamentaux Michel Buffa (buffa@unice.fr), UNSA 2002, modifié par Richard Grin (version 1.1, 21/11/11), avec emprunts aux supports de Maxime

Plus en détail

Introduction à la plateforme J2EE

Introduction à la plateforme J2EE Introduction à la plateforme J2EE Auteur : Oussama Essefi Directeur technique Expert Consulting Oussama.essefi@expert-consulting.biz Copyright 2010 Expert Consulting Page 1 1. Introduction 1.1. Pourquoi

Plus en détail

Cours Bases de données

Cours Bases de données Informations sur le cours Cours Bases de données 9 (10) séances de 3h Polycopié (Cours + TD/TP) 3 année (MISI) Antoine Cornuéjols www.lri.fr/~antoine antoine.cornuejols@agroparistech.fr Transparents Disponibles

Plus en détail

Applications et Services WEB: Architecture REST

Applications et Services WEB: Architecture REST Applications et : Erick Stattner Laboratoire LAMIA Université des Antilles et de la Guyane France erick.stattner@univ-ag.fr Guadeloupe 2014-2015 Erick Stattner Applications et : 1 / 90 Description du cours

Plus en détail

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4

Avant-propos 1. Avant-propos...3 2. Organisation du guide...3 3. À qui s'adresse ce guide?...4 Les exemples cités tout au long de cet ouvrage sont téléchargeables à l'adresse suivante : http://www.editions-eni.fr. Saisissez la référence ENI de l'ouvrage EP5EJAV dans la zone de recherche et validez.

Plus en détail

Présentation du module Base de données spatio-temporelles

Présentation du module Base de données spatio-temporelles Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes

Plus en détail

Petite définition : Présentation :

Petite définition : Présentation : Petite définition : Le Web 2.0 est une technologie qui permet la création de réseaux sociaux, de communautés, via divers produits (des sites communautaires, des blogs, des forums, des wiki ), qui vise

Plus en détail

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie 1 / 22 Technologies Web Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya Université Pierre et Marie Curie Rappel 2 / 22 Problématique Quelles technologies utiliser

Plus en détail

Semarchy Convergence for Data Integration La Plate-Forme d Intégration pour le MDM Évolutionnaire

Semarchy Convergence for Data Integration La Plate-Forme d Intégration pour le MDM Évolutionnaire FICHE PRODUIT Semarchy Convergence for Data Integration La Plate-Forme d Intégration pour le MDM Évolutionnaire BENEFICES Des projets réussis dans les délais et les budgets La bonne donnée disponible au

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

Business & High Technology

Business & High Technology UNIVERSITE DE TUNIS INSTITUT SUPERIEUR DE GESTION DE TUNIS Département : Informatique Business & High Technology Chapitre 8 : ID : Informatique Décisionnelle BI : Business Intelligence Sommaire Introduction...

Plus en détail

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture

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

Le modèle client-serveur

Le modèle client-serveur Le modèle client-serveur Olivier Aubert 1/24 Sources http://www.info.uqam.ca/~obaid/inf4481/a01/plan.htm 2/24 Historique architecture centralisée terminaux passifs (un seul OS, systèmes propriétaires)

Plus en détail

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN

PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN PROGRAMME DU CONCOURS DE RÉDACTEUR INFORMATICIEN 1. DÉVELOPPEMENT D'APPLICATION (CONCEPTEUR ANALYSTE) 1.1 ARCHITECTURE MATÉRIELLE DU SYSTÈME INFORMATIQUE 1.1.1 Architecture d'un ordinateur Processeur,

Plus en détail

BABEL LEXIS : UN SYSTÈME ÉVOLUTIF PERMETTANT LA CRÉATION, LE STOCKAGE ET LA CONSULTATION D OBJETS HYPERMÉDIAS

BABEL LEXIS : UN SYSTÈME ÉVOLUTIF PERMETTANT LA CRÉATION, LE STOCKAGE ET LA CONSULTATION D OBJETS HYPERMÉDIAS Quatrième colloque hypermédias et apprentissages 275 BABEL LEXIS : UN SYSTÈME ÉVOLUTIF PERMETTANT LA CRÉATION, LE STOCKAGE ET LA CONSULTATION D OBJETS HYPERMÉDIAS Anne-Olivia LE CORNEC, Jean-Marc FARINONE,

Plus en détail

Groupe Eyrolles, 2004, ISBN : 2-212-11274-2

Groupe Eyrolles, 2004, ISBN : 2-212-11274-2 Groupe Eyrolles, 2004, ISBN : 2-212-11274-2 Table des matières Remerciements.................................................. Avant-propos.................................................... Structure

Plus en détail

Méthodologie de conceptualisation BI

Méthodologie de conceptualisation BI Méthodologie de conceptualisation BI Business Intelligence (BI) La Business intelligence est un outil décisionnel incontournable à la gestion stratégique et quotidienne des entités. Il fournit de l information

Plus en détail

Cycle Innovation & Connaissance 12 petit déjeuner Mardi 15 mai 2012. Cloud Computing & Green IT : nuages ou éclaircies?

Cycle Innovation & Connaissance 12 petit déjeuner Mardi 15 mai 2012. Cloud Computing & Green IT : nuages ou éclaircies? Cycle Innovation & Connaissance 12 petit déjeuner Mardi 15 mai 2012 Cloud Computing & Green IT : nuages ou éclaircies? Christophe CORNE, CEO de Systancia et dotgreen Marchés, technologies Une promesse

Plus en détail

DEMANDE D INFORMATION RFI (Request for information)

DEMANDE D INFORMATION RFI (Request for information) DOD SEICAM RFI Demande d information EVDEC Réf. : RFI_EVDEC- GT5_Outil_reporting_BI_v4.doc Page 1/11 DEMANDE D INFORMATION RFI (Request for information) OUTIL INTÉGRÉ DE REPORTING ET D ANALYSE DÉCISIONNELLE

Plus en détail

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui

Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui Formation PARTIE 1 : ARCHITECTURE APPLICATIVE DUREE : 5 h Objectif : Passer de l analyse métier et fonctionnelle à la définition des applications qui automatisent les fonctions Définir une architecture

Plus en détail

Introduction à. Oracle Application Express

Introduction à. Oracle Application Express Introduction à Oracle Application Express Sommaire Qu est-ce que Oracle Application Express (APEX)? Vue d ensemble des fonctionnalités et des différents composants d Oracle APEX Démonstration de création

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

Des solutions sur mesure à partir de modules fonctionnels & CRM associés à un studio de customisation.

Des solutions sur mesure à partir de modules fonctionnels & CRM associés à un studio de customisation. ( FDV Des solutions sur mesure à partir de modules fonctionnels & CRM associés à un studio de customisation. Constat S il est un secteur informatique où les progiciels ne répondent que partiellement aux

Plus en détail

en SCÈNE RATIONAL Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com

en SCÈNE RATIONAL Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com Rational Démonstration SDP : automatisation de la chaîne de développement Samira BATAOUCHE sbataouche@fr.ibm.com Fabrice GRELIER fabrice.grelier@fr.ibm.com RATIONAL en SCÈNE 2007 IBM Corporation Objectif

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

Forthcoming Database

Forthcoming Database DISS.ETH NO. 15802 Forthcoming Database A Framework Approach for Data Visualization Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH for the degree of Doctor of

Plus en détail

Architectures Web Services RESTful

Architectures Web Services RESTful Architectures Web Services RESTful Alexandre Denis Alexandre.Denis@inria.fr Inria Bordeaux Sud-Ouest France ENSEIRB PG306 REST REST Representational State Transfer Roy Fielding (2000) Décollage vers 2006-2007

Plus en détail

Suite Jedox La Business-Driven Intelligence avec Jedox

Suite Jedox La Business-Driven Intelligence avec Jedox Suite La Business-Driven Intelligence avec Une solution intégrée pour la simulation, l analyse et le reporting vous offre la possibilité d analyser vos données et de gérer votre planification selon vos

Plus en détail

Chapitre 9 : Informatique décisionnelle

Chapitre 9 : Informatique décisionnelle Chapitre 9 : Informatique décisionnelle Sommaire Introduction... 3 Définition... 3 Les domaines d application de l informatique décisionnelle... 4 Architecture d un système décisionnel... 5 L outil Oracle

Plus en détail

Présentation de SOFI 2.0

Présentation de SOFI 2.0 Présentation de SOFI 2.0 Version 2.0.3 Présentation SOFI 2.0 1 Agenda Historique Utilisation de SOFI Pourquoi SOFI? 3 Grands Axes Développement Accompagnement et formation Communauté Architecture Les nouveautés

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

MailStore Server 7 Caractéristiques techniques

MailStore Server 7 Caractéristiques techniques MailStore Server 7 Caractéristiques techniques MailStore Server La référence en matière d archivage d e-mails La solution MailStore Server permet aux entreprises de toutes tailles de bénéficier des avantages

Plus en détail

Point sur les solutions de développement d apps pour les périphériques mobiles

Point sur les solutions de développement d apps pour les périphériques mobiles Point sur les solutions de développement d apps pour les périphériques mobiles Par Hugues MEUNIER 1. INTRODUCTION a. Une notion importante : le responsive web design Nous sommes en train de vivre une nouvelle

Plus en détail

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i

Europa. Développement JEE 5. avec Eclipse. K a r i m D j a a f a r. A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i Développement JEE 5 avec Eclipse Europa K a r i m D j a a f a r A v e c l a c o n t r i b u t i o n d e O l i v i e r S a l v a t o r i Groupe Eyrolles, 2008, ISBN : 978-2-212-12061-5 5 Le projet WTP (Web

Plus en détail

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles)

SGBDR. Systèmes de Gestion de Bases de Données (Relationnelles) SGBDR Systèmes de Gestion de Bases de Données (Relationnelles) Plan Approches Les tâches du SGBD Les transactions Approche 1 Systèmes traditionnels basés sur des fichiers Application 1 Gestion clients

Plus en détail

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude INF 1250 INTRODUCTION AUX BASES DE DONNÉES Guide d étude Sous la direction de Olga Mariño Télé-université Montréal (Québec) 2011 INF 1250 Introduction aux bases de données 2 INTRODUCTION Le Guide d étude

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

Opérateur global de la performance IT

Opérateur global de la performance IT Opérateur global de la performance IT Pour une informatique performante et fiable, délivrant les services attendus par les Métiers, au moindre coût. Opérateur global de la performance IT depuis près d

Plus en détail

INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE

INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE I N T E RS Y S T E M S INTERSYSTEMS CACHÉ COMME ALTERNATIVE AUX BASES DE DONNÉES RÉSIDENTES EN MÉMOIRE David Kaaret InterSystems Corporation INTERSySTEMS CAChé CoMME ALTERNATIvE AUx BASES de données RéSIdENTES

Plus en détail

Développement d'un logiciel VoIP BlackBerry

Développement d'un logiciel VoIP BlackBerry UNIVERSITE DES SCIENCES, DES TECHNIQUES ET DES TECHNOLOGIES DE BAMAKO (USTTB) Développement d'un logiciel VoIP BlackBerry Par Mlle Kadidiatou Djibo Encadreurs : Mme Sogoba Jacqueline Konate, Maître-Assistant,

Plus en détail