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 5.3 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 10. 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

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

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

de survie du chef de projet

de survie du chef de projet KIT de survie du chef de projet 01 1 2 3 4 5 6 04 03 07 07 03 03 LE SERVEUR LE CLIENT TECHNOLOGIE WEB CLIENT LE SERVEUR WEB TECHNIQUES & CADRE DE TRAVAIL APPLICATIONS 101 LE SERVEUR Un serveur informatique

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

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

Spring par la pratique

Spring par la pratique Spring par la pratique 2 e édition Spring 2.5 et 3.0 Arnaud Cogoluègnes Thierry Templier Julien Dubois Jean-Philippe Retaillé avec la contribution de Séverine Templier Roblou et de Olivier Salvatori Groupe

Plus en détail

SOA et Services Web. 23 octobre 2011. SOA: Concepts de base

SOA et Services Web. 23 octobre 2011. SOA: Concepts de base SOA et Services Web 23 octobre 2011 1 SOA: Concepts de base 2 Du client serveur à la SOA N est Nest pas une démarche entièrement nouvelle: années 1990 avec les solutions C/S Besoins d ouverture et d interopérabilité

Plus en détail

Systèmes d Information Avancés (et répartis)

Systèmes d Information Avancés (et répartis) Systèmes d Information Avancés (et répartis) Université Lyon 1 MIAGE L. Médini, mars 2005 Plan des cours Protocole HTTP et programmation serveur Architectures réparties Objets distribués Introduction aux

Plus en détail

Applications orientées données (NSY135)

Applications orientées données (NSY135) Applications orientées données (NSY135) 2 Applications Web Dynamiques Auteurs: Raphaël Fournier-S niehotta et Philippe Rigaux (philippe.rigaux@cnam.fr,fournier@cnam.fr) Département d informatique Conservatoire

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

Environnements de Développement

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

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

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

JASPERSOFT ET LE PAYSAGE ANALYTIQUE. Jaspersoft et le paysage analytique 1

JASPERSOFT ET LE PAYSAGE ANALYTIQUE. Jaspersoft et le paysage analytique 1 JASPERSOFT ET LE PAYSAGE ANALYTIQUE Jaspersoft et le paysage analytique 1 Ce texte est un résumé du Livre Blanc complet. N hésitez pas à vous inscrire sur Jaspersoft (http://www.jaspersoft.com/fr/analyticslandscape-jaspersoft)

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

Formation Webase 5. Formation Webase 5. Ses secrets, de l architecture MVC à l application Web. Adrien Grand 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

Gestion des immeubles

Gestion des immeubles RAPPORT DE CONCEPTION Gestion des immeubles BOUSSRHAN YOUSSEF & BENZITI WALID Email : Youssefboussrhan@gmail.com GSM : 0678510690, 0611347597 ISTA NTIC SYBA CRJJ GROUPE B Annexe : Figure 1: Diagramme de

Plus en détail

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. Méthode de Test Pour WIKIROUTE Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel. [Tapez le nom de l'auteur] 10/06/2009 Sommaire I. Introduction...

Plus en détail

CAHIER DES CHARGES D IMPLANTATION

CAHIER DES CHARGES D IMPLANTATION CAHIER DES CHARGES D IMPLANTATION Tableau de diffusion du document Document : Cahier des Charges d Implantation EVRP Version 6 Etabli par DCSI Vérifié par Validé par Destinataires Pour information Création

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

Architectures web pour la gestion de données

Architectures web pour la gestion de données Architectures web pour la gestion de données Dan VODISLAV Université de Cergy-Pontoise Plan Le Web Intégration de données Architectures distribuées Page 2 Le Web Internet = réseau physique d'ordinateurs

Plus en détail

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014

ARCHITECTURE REST & WEB SERVICES. Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 ARCHITECTURE REST & WEB SERVICES Exposé Informatique & Réseaux CHAMBON Florian 14 janvier 2014 1 Introduction Présentation de Rest Serveur Java JAX-RS Démonstration 2 Introduction Présentation de Rest

Plus en détail

Business Intelligence (BI) Stratégie de création d un outil BI

Business Intelligence (BI) Stratégie de création d un outil 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 indispensable, sous plusieurs

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

Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet

Cahier de charges (Source : Java EE - Guide de développement d'applications web en Java par Jérôme Lafosse) Module. Site Web dynamique JSP / Servlet Cahier de charges (Source : "Java EE - Guide de développement d'applications web en Java" par Jérôme Lafosse) Module Site Web dynamique JSP / Servlet Sujet : betaboutique Soutenance le 04 / 01 /2013 &

Plus en détail

Introduction au développement SharePoint. Version 1.0

Introduction au développement SharePoint. Version 1.0 Introduction au développement SharePoint Version 1.0 Z 2 Introduction au développement SharePoint 09/05/09 Sommaire 1 SharePoint : les bases... 3 1.1 Débuter sous SharePoint... 3 1.2 Connaissances Requises...

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 16 NFP111 Systèmes et Applications Réparties Cours 10 - Les Enterprise Java Beans ( aux serveurs ) Claude Duvallet Université du Havre UFR Sciences et Techniques

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 3 : Le web dans l entreprise Sommaire Introduction... 1 Intranet... 1 Extranet...

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

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

Chapitre I : Protocoles client serveur et architectures distribuées

Chapitre I : Protocoles client serveur et architectures distribuées Licence Pro Réseaux Télécom Systèmes Internet et Intranet pour l entreprise Chapitre I : Protocoles client serveur et architectures distribuées Département IEM / UB Eric.Leclercq@u-bourgogne.fr Bureau

Plus en détail

CONNECTEUR QLIKVIEW POUR INFORMATICA POWERCENTER

CONNECTEUR QLIKVIEW POUR INFORMATICA POWERCENTER CONNECTEUR QLIKVIEW POUR INFORMATICA POWERCENTER Tirer pleinement profit de l ETL d Informatica à l aide d une plate-forme de Business Discovery rapide et flexible De plus en plus d entreprises exploitent

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

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

Applications Internet riches fonctionnant en mode connecté et déconnecté

Applications Internet riches fonctionnant en mode connecté et déconnecté Applications Internet riches fonctionnant en mode connecté et déconnecté Success story client : développement d applications Web avec mode déconnecté Depuis quatre ans, les applications de guichet pour

Plus en détail

Introduction MOSS 2007

Introduction MOSS 2007 Introduction MOSS 2007 Z 2 Chapitre 01 Introduction à MOSS 2007 v. 1.0 Sommaire 1 SharePoint : Découverte... 3 1.1 Introduction... 3 1.2 Ce que vous gagnez à utiliser SharePoint... 3 1.3 Dans quel cas

Plus en détail

EXTENSION de Microsoft Dynamics CRM 2013. Réf FR 80452

EXTENSION de Microsoft Dynamics CRM 2013. Réf FR 80452 EXTENSION de Microsoft Dynamics CRM 2013 Réf FR 80452 Durée : 3 jours A propos de ce cours : Ce cours offre une information interactive et détaillée sur le développement d extensions pour Microsoft Dynamics

Plus en détail

Base de données. Objectifs du cours 2014-05-20 COURS 01 INTRODUCTION AUX BASES DE DONNÉES

Base de données. Objectifs du cours 2014-05-20 COURS 01 INTRODUCTION AUX BASES DE DONNÉES 1 Base de données COURS 01 INTRODUCTION AUX BASES DE DONNÉES Objectifs du cours 2 Introduction aux bases de données relationnelles (BDR). Trois volets seront couverts : la modélisation; le langage d exploitation;

Plus en détail

CONSEIL STRATÉGIQUE. Services professionnels. En bref

CONSEIL STRATÉGIQUE. Services professionnels. En bref Services professionnels CONSEIL STRATÉGIQUE En bref La bonne information, au bon moment, au bon endroit par l arrimage des technologies appropriées et des meilleures pratiques. Des solutions modernes adaptées

Plus en détail

IBM WebSphere ILOG JRules Business Rule Management System (BRMS) systèmes de gestion de règles métier

IBM WebSphere ILOG JRules Business Rule Management System (BRMS) systèmes de gestion de règles métier Automatisation des décisions métier et réduction du délai de lancement de nouvelles initiatives IBM WebSphere ILOG JRules Business Rule Management System (BRMS) systèmes de gestion de règles métier Gestion

Plus en détail

Projet : Plan Assurance Qualité

Projet : Plan Assurance Qualité Projet : Document : Plan Assurance Qualité 2UP_SPEC_DEV1 VERSION 1.00 Objet Ce document a pour objectif de définir la démarche d analyse et de conception objet ainsi les activités liées. Auteur Eric PAPET

Plus en détail

PHP/MYSQL. Web Dynamique

PHP/MYSQL. Web Dynamique PHP/MYSQL Web Dynamique ENSG Juin 2008 Qui suis-je? Guillaume Gautreau Responsable projets Systèmes d information à l ENPC guillaume@ghusse.com http://www.ghusse.com Ces 6 jours de formation Jour 1 : présentations,

Plus en détail

Référence Etnic Architecture des applications

Référence Etnic Architecture des applications Référence Etnic Architecture des applications Table des matières 1. Introduction... 2 2. Architecture... 2 2.1 Démarche générale... 2 2.2 Modèle d architecture... 3 2.3 Découpe d une architecture applicative...

Plus en détail

Guichet unique : Aperçu des nouvelles technologies au service du Citoyen (particulier et entreprise)

Guichet unique : Aperçu des nouvelles technologies au service du Citoyen (particulier et entreprise) Guichet unique : Aperçu des nouvelles technologies au service du Citoyen (particulier et entreprise) Développer la communication et le travail collaboratif pour mieux servir le citoyen Thomas Coustenoble

Plus en détail

Dossier de conception. Conception d un site E-learning

Dossier de conception. Conception d un site E-learning Conception d un site E-learning Encadré par : Mr. LACHGAR Mohamed Réalisé par : LECHQER Younesse ELEOUAD Abdelhadi SOMMAIRE I. PERIMETRE DU PROJET... 2 1.1. ENJEUX ET VISION DU PROJET... 3 1.2. ARCHITECTURE

Plus en détail

Services Professionnels Centre de Contacts Mitel

Services Professionnels Centre de Contacts Mitel Services Professionnels Centre de Contacts Mitel Débutez un voyage vers la modernisation et l évolutivité : Elevez le niveau de votre performance commerciale Pour moderniser votre centre de contact : Passez

Plus en détail

Architectures Java pour applications mobiles

Architectures Java pour applications mobiles Architectures Java pour applications mobiles L application mobile en phase de devenir incontournable. Début 2010, 200 000 applications mobiles. Fin 2011, le cap du million est franchi. Derrière cette croissance

Plus en détail

PROSOP : un système de gestion de bases de données prosopographiques

PROSOP : un système de gestion de bases de données prosopographiques PROSOP : un système de gestion de bases de données prosopographiques Introduction : Ce document présente l outil en développement PROSOP qui permet la gestion d'une base de donnée prosopographique de la

Plus en détail

Architectures et Web

Architectures et Web Architectures et Web Niveaux d'abstraction d'une application En règle générale, une application est découpée en 3 niveaux d'abstraction : La couche présentation ou IHM (Interface Homme/Machine) gère les

Plus en détail

Ecole Nationale Supérieure des Télécommunications Les outils XML

Ecole Nationale Supérieure des Télécommunications Les outils XML Ecole Nationale Supérieure des Télécommunications Les outils XML Page 1 sur 13 SOMMAIRE 1 Introduction 3 2 Parseur XML et processeur XSLT 4 2.1 Le Parseur XML v2 4 2.1.1 Les API DOM et SAX 4 2.1.2 Le parseur

Plus en détail

Architecture Constellio

Architecture Constellio Architecture Constellio Date : 12 novembre 2013 Version 3.0 Contact : Nicolas Bélisle nicolas.belisle@doculibre.com 5146555185 1 Table des matières Table des matières... 2 Présentation générale... 4 Couche

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

Rapport de Projet Vincent Sallé - Steven Thillier - Jeremy Torres Le deviseur Cs2icar Cs2i 9 avril 2012

Rapport de Projet Vincent Sallé - Steven Thillier - Jeremy Torres Le deviseur Cs2icar Cs2i 9 avril 2012 Rapport de Projet Vincent Sallé - Steven Thillier - Jeremy Torres Le deviseur Cs2icar Cs2i 9 avril 2012 VS - ST - JT Adresse électronique : jrmy.torres@gmail.com Cs2i Sommaire Étude préalable 2 Contexte

Plus en détail

Les serveurs applicatifs et les architectures Java

Les serveurs applicatifs et les architectures Java 03 Lucas Part 02 Page 179 Lundi, 20. août 2001 2:58 14 Chapitre 15 Les serveurs applicatifs et les architectures Java Nous avons vu jusqu ici, dans les chapitres précédents, que les utilisateurs accèdent

Plus en détail

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES DÉCOUVREZ DES POSSIBILITÉS ILLIMITÉES GRÂCE A L INTÉGRATION À DES SYSTÈMES D ENTREPRISE EXISTANTS FONCTIONNALITÉS Connectivité des systèmes

Plus en détail

Solutions Microsoft Identity and Access

Solutions Microsoft Identity and Access Solutions Microsoft Identity and Access 2 Solutions Microsoft Identity and Access Microsoft Identity and Access (IDA) permet aux entreprises d améliorer leur efficacité et leurs connexions internes et

Plus en détail

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret.

Bien programmer. en Java 7. 10 000 ex. couleur. Avec plus de 50 études de cas et des comparaisons avec C++ et C# Emmanuel Puybaret. Bien programmer en Java 7 Avec plus de 50 études de cas et des comparaisons avec C++ et C# Plus de 10 000 ex. vendus! Édition en couleur Emmanuel Puybaret, ISBN : 978-2-212-12974-8 chapitre1 Présentation

Plus en détail

Application Web de gestion des formations (T09006)

Application Web de gestion des formations (T09006) Application Web de gestion des formations (T09006) Au sein d une équipe assurant des formations métier pour l un de nos clients grand compte, l objectif consiste à analyser les besoins, concevoir et implémenter

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

Chapitre I : Protocoles client serveur et architectures distribuées

Chapitre I : Protocoles client serveur et architectures distribuées Chapitre I : Protocoles client serveur et architectures distribuées Eric Leclercq & Marinette Savonnet Département IEM / UB Eric.Leclercq@u-bourgogne.fr Bureau G212 Aile des Sciences de l Ingénieur Mise-à-jour

Plus en détail

Zend Framework 2 Industrialisez vos développements PHP

Zend Framework 2 Industrialisez vos développements PHP Avant-propos 1. Lectorat 15 2. Contenu du livre 15 3. Pré-requis 17 Introduction 1. Un peu d histoire 19 1.1 Petite histoire de l informatique 19 1.2 Petite histoire des langages informatiques 20 1.3 Petite

Plus en détail

Drive your success. «Un écosystème complexe implique une capacité de gestion temps réel des aléas» www.imagina-international.com

Drive your success. «Un écosystème complexe implique une capacité de gestion temps réel des aléas» www.imagina-international.com Drive your success «Un écosystème complexe implique une capacité de gestion temps réel des aléas» www.imagina-international.com ATEN, dix avantages au service de votre entreprise Qualité de mise en œuvre

Plus en détail

CAHIER DES CHARGES D IMPLANTATION D EvRP V3

CAHIER DES CHARGES D IMPLANTATION D EvRP V3 CAHIER DES CHARGES D IMPLANTATION D EvRP V3 Tableau de diffusion du document Document : Cahier des Charges d Implantation EVRP V3 Version 42 Etabli par Département Accompagnement des Logiciels Vérifié

Plus en détail

Les modèles technologiques de la localisation

Les modèles technologiques de la localisation Les modèles technologiques de la localisation Les modèles technologiques de la localisation Cécile Martin Université Rennes 2 Avant d entrer en détails dans les modèles technologiques de la localisation,

Plus en détail

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs.

Cours Serveurs d application. et Java avancé. Introduction au cours Serveurs d application. et Java avancé. Prérequis / Objectifs. Cours Serveurs d application et Java avancé Introduction au cours Serveurs d application et Java avancé ITU Université de Nice Richard Grin Version O 1.0.1 12/4/14 20 h de cours et TPs Richard Grin, université

Plus en détail

Sujet de veille technologique : Les langages de développement et leurs évolutions

Sujet de veille technologique : Les langages de développement et leurs évolutions 2014 Sujet de veille technologique : Les langages de développement et leurs évolutions Charly Rivière IIA SOMMAIRE : SOMMAIRE :... 0 1. Pourquoi ce sujet?... 2 2. Qu est-ce qu un langage de développement...

Plus en détail

Présentation générale des Web Services

Présentation générale des Web Services Présentation générale des Web Services Vue Globale Type d'architecture reposant sur les standards de l'internet Alternative aux architectures classiques : Client/serveur n/tiers Orientée services permettant

Plus en détail

Programmation du Web : Présentation du Web dynamique

Programmation du Web : Présentation du Web dynamique Programmation du Web : Présentation du Web dynamique Jean-Baptiste Vioix (Jean-Baptiste.Vioix@u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-8 Présentation Nécessité du web dynamique

Plus en détail

J2EE. A.-E. Ben Salem. 09 Octobre 2011. LRDE and LIP6 1 / 15

J2EE. A.-E. Ben Salem. 09 Octobre 2011. LRDE and LIP6 1 / 15 J2EE A.-E. Ben Salem LRDE and LIP6 09 Octobre 2011 1 / 15 Plan 1 J2EE 2 Architecture Client/Serveur HTTP 3 Différence entre Web Statique et Web Dynamique 4 Web Dynamique avec un Serveur d applications

Plus en détail

Introduction aux systèmes d exploitation

Introduction aux systèmes d exploitation Introduction aux systèmes d exploitation Le système d exploitation est un ensemble de logiciels qui pilotent la partie matérielle d un ordinateur. Les principales ressources gérées par un système d exploitation

Plus en détail

Dream Report. Dream Report vs Reporting Services

Dream Report. Dream Report vs Reporting Services Dream Report Dream Report vs Reporting Services Date : Mars 2015 A propos de Dream Report Dream Report est le 1 er logiciel d édition de rapport prêt à l emploi offrant aux utilisateurs la possibilité

Plus en détail

Le client/serveur repose sur une communication d égal à égal entre les applications.

Le client/serveur repose sur une communication d égal à égal entre les applications. Table des matières LES PRINCIPES DE BASE... 1 Présentation distribuée-revamping...2 Présentation distante...3 Traitements distribués...3 données distantes-rd...4 données distribuées-rda distribué...4 L'ARCHITECTURE

Plus en détail

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013

Visual Studio 2013 Concevoir et développer des projets Web, les gérer avec TFS 2013 Introduction 1. Présentation du cas d étude 13 1.1 Présentation générale 13 1.2 Présentation des applications 13 2. Déroulement du projet 14 3. Pré-requis et fondamentaux techniques à connaître 15 3.1

Plus en détail

Exercices Active Directory (Correction)

Exercices Active Directory (Correction) Exercices Active Directory (Correction) Exercice : Scénarios pour l'implémentation de composants logiques AD DS Lire les scénarios suivants et déterminer les composants logiques AD DS à déployer dans chaque

Plus en détail

Analyse des coûts projetés de la plate-forme SAP HANA

Analyse des coûts projetés de la plate-forme SAP HANA Étude Total Economic Impact réalisée par Forrester Pour SAP Directrice du projet : Shaheen Parks Avril 2014 Analyse des coûts projetés de SAP HANA Économies réalisables en migrant vers SAP HANA Synthèse

Plus en détail

La reconquête de vos marges de manœuvre

La reconquête de vos marges de manœuvre La reconquête de vos marges de manœuvre Libérez vos applications critiques Bull ouvre de nouvelles portes à votre patrimoine applicatif. Bull LiberTP fait passer simplement vos applications transactionnelles

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

CLOUD PUBLIC, PRIVÉ OU HYBRIDE : LEQUEL EST LE PLUS ADAPTÉ À VOS APPLICATIONS?

CLOUD PUBLIC, PRIVÉ OU HYBRIDE : LEQUEL EST LE PLUS ADAPTÉ À VOS APPLICATIONS? CLOUD PUBLIC, PRIVÉ OU HYBRIDE : LEQUEL EST LE PLUS ADAPTÉ À VOS APPLICATIONS? Les offres de Cloud public se sont multipliées et le Cloud privé se généralise. Désormais, toute la question est de savoir

Plus en détail

Gé nié Logiciél Livré Blanc

Gé nié Logiciél Livré Blanc Gé nié Logiciél Livré Blanc Version 0.2 26 Octobre 2011 Xavier Blanc Xavier.Blanc@labri.fr Partie I : Les Bases Sans donner des définitions trop rigoureuses, il faut bien commencer ce livre par énoncer

Plus en détail

*4D, quand c est la solution qui compte. 4D démocratise les services Web

*4D, quand c est la solution qui compte. 4D démocratise les services Web *4D, quand c est la solution qui compte. 4D démocratise les services Web Table des matières I. INTRODUCTION page 3 II. VERS UNE DEFINITION DES SERVICES WEB 1. Qu est ce que c est? page 3 2. A quoi ça sert?

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

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1

LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 LES NOUVEAUTES DE COST AND PROFITABILITY MANAGEMENT 8.1 SAS Cost and Profitability Management, également appelé CPM (ou C&P), est le nouveau nom de la solution SAS Activity-Based Management. Cette version

Plus en détail

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement

Fournir un accès rapide à nos données : agréger au préalable nos données permet de faire nos requêtes beaucoup plus rapidement Introduction Phases du projet Les principales phases du projet sont les suivantes : La mise à disposition des sources Des fichiers Excel sont utilisés pour récolter nos informations L extraction des données

Plus en détail

PLAN PROJET. Binôme ou monôme (B/M): M. : abdlhaqmilan@gmail.com GSM : 00212640108250. : Gestion d'une agence de location de voiture.

PLAN PROJET. Binôme ou monôme (B/M): M. : abdlhaqmilan@gmail.com GSM : 00212640108250. : Gestion d'une agence de location de voiture. Développement d une application JAVA EE PLAN PROJET Binôme ou monôme (B/M): M Nom & Prénom : AZRAGUE Abdelhaq Email : abdlhaqmilan@gmail.com GSM : 00212640108250 Organisme Scolaire : Gestion d'une agence

Plus en détail

Systèmes et réseaux d information et de communication

Systèmes et réseaux d information et de communication 233 DIRECTEUR DES SYSTÈMES ET RÉSEAUX D INFORMATION ET DE COMMUNICATION Code : SIC01A Responsable des systèmes et réseaux d information FPESIC01 Il conduit la mise en œuvre des orientations stratégiques

Plus en détail

REQUEA. v 1.0.0 PD 20 mars 2008. Mouvements d arrivée / départ de personnels Description produit

REQUEA. v 1.0.0 PD 20 mars 2008. Mouvements d arrivée / départ de personnels Description produit v 1.0.0 PD 20 mars 2008 Mouvements d arrivée / départ de personnels Description produit Fonctionnalités L application Gestion des mouvements d arrivée / départ de Requea permet la gestion collaborative

Plus en détail

5. Architecture et sécurité des systèmes informatiques Dimension Fonctionnelle du SI

5. Architecture et sécurité des systèmes informatiques Dimension Fonctionnelle du SI 5. Architecture et sécurité des systèmes informatiques Dimension Fonctionnelle du SI Un SI : et pour faire quoi? Permet de stocker de manière définitive des informations volatiles provenant d autre BD.

Plus en détail

PROJET D INTEGRATION DE DEVELOPPEMENT

PROJET D INTEGRATION DE DEVELOPPEMENT MINISTERE DE LA COMMUNAUTE FRANCAISE ADMINISTRATION GENERALE DE L ENSEIGNEMENT ET DE LA RECHERCHE SCIENTIFIQUE ENSEIGNEMENT DE PROMOTION SOCIALE DE REGIME 1 DOSSIER PEDAGOGIQUE UNITE DE FORMATION PROJET

Plus en détail

Dynamic Computing Services solution de backup. White Paper Stefan Ruckstuhl

Dynamic Computing Services solution de backup. White Paper Stefan Ruckstuhl Dynamic Computing Services solution de backup White Paper Stefan Ruckstuhl Résumé pour les décideurs Contenu de ce White Paper Description de solutions de backup faciles à réaliser pour des serveurs virtuels

Plus en détail

C4 Lien entre Gestion de projet et urbanisme

C4 Lien entre Gestion de projet et urbanisme 1 C4 Lien entre Gestion de projet et urbanisme 2 C3. Introduction L urbanisation est basée sur un certain nombre d axes stratégiques et donc d objectifs à atteindre à court et moyen terme. Pour ce faire

Plus en détail

Architecture technique

Architecture technique OPUS DRAC Architecture technique Projet OPUS DRAC Auteur Mathilde GUILLARME Chef de projet Klee Group «Créateurs de solutions e business» Centre d affaires de la Boursidière BP 5-92357 Le Plessis Robinson

Plus en détail

Programmation Avancée pour le Web

Programmation Avancée pour le Web L3 Informatique Option : ISIL Programmation Avancée pour le Web RAMDANI Med U Bouira 1 Contenu du module Introduction aux applications Web Rappels sur les sites Web Conception d une application Web Notion

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

Les serveurs d applications :une introduction

Les serveurs d applications :une introduction Les serveurs d applications : une introduction Université du Havre UFR Sciences et Techniques 25 rue Philippe Lebon - BP 540 76058 LE HAVRE CEDEX Claude.Duvallet@gmail.com Octobre 2006 Plan de la présentation

Plus en détail

Les évolutions des méthodes de développement de logiciels. Depuis Merise de l'eau est passée sous les ponts

Les évolutions des méthodes de développement de logiciels. Depuis Merise de l'eau est passée sous les ponts Les évolutions des méthodes de développement de logiciels Depuis Merise de l'eau est passée sous les ponts Programmation Orientée Objets Encapsulation des données et des traitements Polymorphisme Modularité

Plus en détail

ARCHITECTURE TECHNIQUE DU SYSTEME

ARCHITECTURE TECHNIQUE DU SYSTEME Vers. : 02 Date : 26/03/2014 Page : 1/13 Agence ou Service : I&S Projet : SAEM ARCHITECTURE TECHNIQUE DU SYSTEME Rédigé par : Benjamin CATINOT Diffusé à : SAEM Approuvé par : Willyam GUILLERON GROUPE AKKA

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

L INFORMATION GEOGRAPHIQUE

L INFORMATION GEOGRAPHIQUE Champs sur Marne ENSG/CERSIG Le 19-nove.-02 L INFORMATION GEOGRAPHIQUE Archivage Le Système d information géographique rassemble de l information afin de permettre son utilisation dans des applications

Plus en détail

WordPress : principes et fonctionnement

WordPress : principes et fonctionnement CHAPITRE 1 WordPress : principes et fonctionnement WordPress est à l origine un outil conçu pour tenir un blog, c est-à-dire un journal ou carnet de bord en ligne. Mais il a évolué pour devenir un système

Plus en détail

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux

Apache Tomcat 8 Guide d'administration du serveur Java EE 7 sous Windows et Linux Avant-propos 1. À qui s adresse ce livre? 11 2. Les pré-requis 12 Préambule 1. Rappel sur les architectures Internet/Intranet/Extranet 13 1.1 Le protocole HTTP 14 1.1.1 Les méthodes HTTP 16 1.1.2 Les codes

Plus en détail