Evaluation Idéopass Cahier d analyse technique

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

Download "Evaluation Idéopass Cahier d analyse technique"

Transcription

1 Evaluation Idéopass Cahier d analyse technique Version 1 GMSIH 374, rue de Vaugirard Paris. Tel : Fax :

2 Auteur(s) du document : Contrôle Qualité GMSIH Date : 17/03/2005 Statut : Validé Par : GMSIH Date Version Commentaires Statut 17/03/ Publication Validé 17/03/05 2/32 Pr143CAH_ANT_IDEO_V1.doc

3 TABLE DES MATIÈRES 1. Introduction Description des concepts et des technologies associés à Idéopass Architecture multi-niveaux La plate-forme J2EE Modélisation et conception UML Design Pattern EJB JSP Le protocole SOAP La technologie RMI-IIOP Architecture et composition d Idéopass Architecture fonctionnelle d Idéopass Architecture technique d Idéopass Modélisation et conception Les composants logiciels fonctionnels J2EE Moyens de communication et points d entrée Mécanismes de stockage et de persistance des données Synthèse et analyse critique Avantages et inconvénients de la solution Idéopass Analyse SWOT Conclusion de l analyse /03/05 3/32 Pr143CAH_ANT_IDEO_V1.doc

4 LISTE DES FIGURES Figure 1 Architecture multi-niveaux...7 Figure 2 Composants de l architecture J2EE...8 Figure 3 Invocation d un EJB par RMI-IIOP...14 Figure 4 Architecture applicative de la solution Idéopass...17 Figure 5 Architecture fonctionnelle Idéopass...18 Figure 6 Cinématique d accès à Idéopass par les web services /03/05 4/32 Pr143CAH_ANT_IDEO_V1.doc

5 1. Introduction Ce document constitue un cahier d analyse technique de la solution logicielle Idéopass, développée par les établissements de santé de la région Franche-Comté. Le logiciel Idéopass propose une solution globale aux établissements de santé sur leurs problématiques d identification des patients. Le produit résultant est dénommé «Serveur d Identification Patient (SIP)», et assure le service d identification des patients et le rapprochement des identités en provenance de différents domaines d identification. La solution respecte le modèle OSS (Open Source Software) et repose ainsi sur des produits et technologies apparentés à l Open Source. L objectif de cette analyse est de présenter, de manière exhaustive et intelligible, le contexte technique, la composition et le fonctionnement de la solution Idéopass, ainsi qu un avis critique sur cette dernière. Cette analyse s appuie, d une part, sur l étude des documents et des codes «source» référencés ciaprès fournis par l équipe projet Idéopass, et d autre part sur notre expertise et nos retours d expérience en matière de conception et de développement logiciel. Le présent cahier d analyse technique s articulera donc autour des axes suivants: La description des concepts et des technologies associées et utilisées par Idéopass L architecture et la composition de la solution d Idéopass La synthèse de l étude et l analyse critique du produit Idéopass Documents de référence [DR1] SIP- Document de cadrage 1.0, Idéopass, 23/12/02 [DR2] SIP- Présentation 1.0, Idéopass, 30/04/03 [DR3] SIP- Description générale 1.1, Idéopass, 22/07/03 [DR4] SIP- Spécifications fonctionnelles 2.0, Idéopass, 28/06/04 [DR5] SIP- Cahier de recette 0.3, Idéopass, 10/03/03 [DR6] SIP- Spécifications techniques 1.0, Idéopass, 30/04/03 [DR7] SIP- Spécifications des messages 1.2, Idéopass, 25/03/04 [DR8] SIP- Description des messages 1.0, Idéopass, 15/07/03 [DR9] SIP- Spécifications techniques Connecteur CPAGE 1.0, Idéopass, 17/01/03 [DR10] SIP- Manuel utilisateur 1.0, Idéopass, 17/06/03 [DR11] SIP- Notice d installation 1.0, Idéopass, 28/06/04 [DR12] Rapport de stage - Réalisation d un outil de prise en main du Serveur d Identité Patient, Jordi Barrère, 28/06/04 [DR13] Identification du patient Services d identificcation du patient Tome1- [DR14] Spécifications fonctionnelles générales version 1, GMSIH, 28/02/02 Identification du patient Services d identificcation du patient Tome2- Spécifications détaillées des services d idnetification et de rapprochement version 1, GMSIH, 18/02/02 [DR15] Evaluation Idéopass - Catalogue des fonctionnalités - Synthèse 1.0 [DR16] Code source et exécutables Idéopass v2, Idéopass 17/03/05 5/32 Pr143CAH_ANT_IDEO_V1.doc

6 2. Description des concepts et des technologies associés à Idéopass Les principaux concepts et technologies associés et employés par Idéopass sont : L architecture multi-niveaux ; La plate-forme J2EE ; L outil de modélisation UML ; Les composants techniques Enterprise Java Bean (EJB) ; Les pages Web dynamiques JSP (Java Server Pages) ; Le protocole SOAP ; La technologie RMI-IIOP. Afin de permettre au lecteur de mieux appréhender les rouages et arcanes de la solution Idéopass, nous proposons dans ce chapitre une description sommaire des sujets susmentionnés, accompagnée d un encart présentant les intérêts de la notion expliquée Architecture multi-niveaux La représentation de l architecture multi niveaux situe les différents services fonctionnels de l architecture client/serveur multi-tiers. L architecture multi-tiers met en œuvre un serveur contenant toute la logique applicative (serveur d applications) et des clients dits «légers» ne se chargeant que de la présentation des données. L architecture multi-niveaux répartit les composants logiciels suivant cinq couches : L interface utilisateur, chargée de gérer les interactions entre l'utilisateur et l'application (application de bureau, navigateur Internet,...) ; La logique de présentation, permettant de définir le contenu de l'interface utilisateur et la manière dont les requêtes utilisateur doivent être traitées ; La logique métier, qui modélise les règles métiers de l'entreprise ; Les services d'infrastructure, qui fournit un ensemble fonctionnalités techniques, à savoir : o o o o o la connexion au réseau des terminaux et des serveurs ("Connexion et hébergement"), la désignation et la localisation des ressources disponibles ("Adressage et nommage" et "Annuaires"), la sécurisation des communications et des informations ("Sécurité"), la maîtrise des informations par l'utilisateur ("Protection de la vie privée et des données personnelles"), la classification des informations accessibles ("Etiquetage du contenu"). Les données, couche contenant les données de l'entreprise. 17/03/05 6/32 Pr143CAH_ANT_IDEO_V1.doc

7 Le schéma ci-après illustre la segmentation des couches du modèle sus décrit, dans le cas particulier d un environnement Java: Clients WEB (navigateur) Requêtes HTTP Niveau Client Conteneur de Servlet/JSP Serveur WEB Routeur Web Service Niveau Présentation Appels services métier Appels services métier API Session Conteneur d objets métier Entité Message Niveau Métier Appels services techniques Accès BD Accès Annuaire Infrastructure technique Accès Messagerie Communications Intégration Niveau Infrastructure Requêtes SOAP Invocation API Applications Base de données Figure 1 Architecture multi-niveaux 2.2. La plate-forme J2EE L architecture J2EE est basée sur le langage Java qui permet le déploiement de composants sur diverses plateformes indépendamment de leur langage de programmation. Elle propose essentiellement un environnement fournissant : une infrastructure d'exécution d applications ; un ensemble de services techniques accessibles via les API J2EE. Le serveur d application J2EE constitue une implémentation de la norme J2EE. Il apporte un environnement complet de développement et d exécution aux applications écrites sous forme de composants objets ainsi que le support des interconnexions, normalisées, avec le monde extérieur (bases de données, annuaires, messageries, services réseaux, etc ). Ce serveur gère les applications distribuées en multi-processing et multi-threading, la sécurité des applications ainsi que l équilibrage de charge et la haute disponibilité. 17/03/05 7/32 Pr143CAH_ANT_IDEO_V1.doc

8 Son infrastructure orientée objet permet la réalisation de composants réutilisables et la factorisation de services applicatifs ou de services systèmes techniques et/ou fonctionnels pour de multiples applications. La plateforme J2EE introduit la notion de conteneur qui correspond à un environnement d exécution chargé de gérer des composants applicatifs et de donner accès aux API (Application Programming Interface) J2EE. L architecture J2EE rend disponible deux types de conteneur : un conteneur Web hébergeant les JSP (Java Servlet pages) et les servlets ; un conteneur EJB recueillant les composants EJB (Enterprise Java Bean) et offrant à ces composants des services tels que la gestion des transactions, des autorisations et de la persistance. Figure 2 Composants de l architecture J2EE 17/03/05 8/32 Pr143CAH_ANT_IDEO_V1.doc

9 La spécification J2EE définit un ensemble d API standard et plusieurs modèles de programmation pour le développement des applications, dont : Enterprise JavaBeans (EJB), composants Java pour les applications distribuées multi-niveaux. Cette extension fournit un moyen standard pour définir les composants côté serveur et définit une vaste infrastructure d exécution pour l hébergement de ces composants ; JDBC (Java DataBase Connectivity) qui fournit un accès transparent aux bases de données ; Java Server Pages (JSP) qui permet de valoriser davantage les applications Web J2EE en générant des pages HTML dynamiquement ; Java Messaging Service (JMS) qui permet d accéder à un service de messages, et de publier et de souscrire à divers types de middleware orientés message (MOM) ; Java RMI-IIOP (Remote Method Invocation over Internet Inter-ORB Protocol). L emploi de ce protocole permet l appel de fonctionnalités à distance ; Java API for XML Parsing (JAXP) qui permet d analyser des documents XML. La plate-forme J2EE est extensible et dispose d API complémentaires pour certains traitements spécifiques. Les APIs JAXM (Java API for XML Messaging) et HAPI (HL7 Application Programming Interface) constituent des extensions de la plateforme, respectivement dédié au traitement des messages XML et des messages HL7. L API JAXM est basée sur le protocole SOAP 1.1 et les spécifications SOAP with Attachments. Elle repose sur le service JMS (Java Messaging Service) proposé en standard par le framework J2EE. L API JAXM supporte notamment les fonctions suivantes : One-way asynchronous messaging, qui correspond à l envoi de messages asynchrones utilisé par les fonctionnalités d abonnement ; Routage des messages vers plus d une partie ; Messagerie fiable avec des mécanismes tels que la livraison garantie. Intérêts La complétude de cette plateforme et son respect des normes, des langages et protocoles Internet standards (HTTP, SSL, RMI, Corba, JMS, XML, ) permettent au développeur de se concentrer exclusivement sur les composants métier de son application sans se préoccuper de la gestion du système, et ainsi de : réduire les coûts de développement et de déploiement en centralisant les développements sur le serveur, faciliter les évolutions fonctionnelles et techniques grâce à la réutilisation de composants (capitalisation) dans le cadre d une architecture multi niveaux, permettre une montée en charge progressive du nombre d utilisateurs et une augmentation par étapes du nombre de serveurs. 17/03/05 9/32 Pr143CAH_ANT_IDEO_V1.doc

10 2.3. Modélisation et conception La solution utilise les outils de conception suivants : UML ; Design Pattern UML Le langage UML (Unified Modelisation Language) permet d élaborer des modèles objet indépendamment du langage de programmation utilisé. Il constitue un langage de modélisation objet et définit une norme et un cadre méthodologique pour les développements de programmes objet. Son support formel, le métamodèle UML, décrit de manière très précise tous les éléments de modélisation (les concepts véhiculés et manipulés par le langage) et la sémantique de ces éléments (leur définition et le sens de leur utilisation). De cette manière UML normalise les concepts objet. Intérêts Le langage UML offre aux développeurs un gain de précision et un gage de stabilité quant aux applications engendrées. Il représente un support de communication performant qui facilite la compréhension de représentations abstraites complexes et cadre l analyse. En effet, un autre avantage d UML est qu il offre une approche visuelle de la modélisation qui facilite la représentation et la compréhension de solutions objet. Sa notation graphique permet ainsi d'exprimer visuellement une solution objet, ce qui facilite la comparaison et l'évaluation de solutions. Les graphiques UML se déclinent en différentes vues complémentaires appelées diagrammes, qui permettent d inspecter un modèle selon différentes perspectives et guident l utilisation des éléments de modélisation. Ces différentes figurations présentent une vue complète des aspects statiques et dynamiques du système. De plus, l'aspect formel de la notation UML limite les ambiguïtés et les incompréhensions Design Pattern Dans le domaine de l'analyse et de la conception orientée-objet, un design pattern est une manière de construire la structure d'une classe. Plus généralement, un motif de conception est un document qui décrit une solution générale à un problème qui revient souvent. Les motifs sont basés sur des expériences passées avec les mêmes structures. Intérêts Constituant un catalogue de méthodes de résolution de problèmes récurrents, les design patterns sont ainsi des techniques permettant d'augmenter la productivité en adoptant certaines structures établies et réutilisables. Le recours à ces modèles prédéfinis réduit la complexité du code et rend la construction du code de meilleure qualité 17/03/05 10/32 Pr143CAH_ANT_IDEO_V1.doc

11 2.4. EJB Les Enterprise JavaBeans (EJB) sont des composants Java portables et réutilisables s'exécutant dans un conteneur d EJB coté serveur. Ils constituent des briques applicatives écrites en Java formant la logique métier de l architecture multi-niveaux J2EE, et relient ainsi la couche de présentation d'une application aux systèmes d'informations dorsaux d'une entreprise, tels que les bases de données ou les mainframes. Leur utilité s avère généralement lors la mise en place de transactions sécurisées et le stockage d objets Java. Ces composants simplifient les processus en prenant à sa charge la gestion des transactions, de la sécurité et des accès aux bases de données Les EJB se déclinent en trois catégories, chacune ayant ses propres caractéristiques et étant adaptée à une situation particulière : Les EJB «Session», utilisés pour représenter les données d un client et les comportements qui leur sont associés. Ils fonctionnent de façon éphémère en ne laissant aucun enregistrement a posteriori de la session terminée. Cette catégorie d EJB est elle-même divisée en deux classes : o o Stateless session bean, ou EJB session «sans état», qui n'ont aucune connaissance du client ou d'un semblant de contexte concernant la requête et sont de ce fait appropriés pour une utilisation unique. Par exemple, ils peuvent être employés dans un système de suivi des bugs où l'utilisateur recherche tous les bugs ouverts. L'application cliente contacte un Stateless Session Bean, lui transmettant les paramètres de recherche. Le bean accède alors à une base de données, sélectionne les entrées correspondant aux critères et retransmet les enregistrements au client. Lorsque la communication s'achève, le bean ne conserve aucun souvenir de l'interaction. Statefull session bean, ou EJB session «avec état», associent les requêtes à un client spécifique en maintenant les informations relatives à ce dernier en mémoire. Le bean «panier d achat» d un site de vente en ligne illustre parfaitement l emploi de ce type de composant. L'utilisateur effectue les tâches standards en ajoutant des produits au panier, en saisissant son adresse et en émettant la commande. Le bean du panier conserve l'état et, par conséquent, la connaissance de toutes ces variables, les associant à un client unique. Les EJB "Entity" (en français «entité») représentent des données ou des objets métier persistants ayant une existence au niveau d un support de stockage telle une base de données relationnelle. Ils perdurent après la fin d'une session en prenant la forme d'enregistrements uniques dans une base de données, mais peuvent être stockés dans un autre support, tel qu'un fichier. Un objet représentant un utilisateur (nom, coordonnées, choix de la langue) illustre l utilisation typique d un EJB «entity». Les EJB "Message-Driven" permettent la mise en œuvre d applications basées sur un traitement asynchrone de messages. Pour ce faire, l application utilisant ce type d EJB devra s appuyer sur le service de messagerie Java JMS (Java Message Service). Typiquement, en utilisant JMS, un client produit un message et le publie dans une file d attente de messages. L EJB «Message-Driven» extrait ensuite le message et exécute son contenu. Ainsi la communication des évènements ou des données a lieu de manière asynchrone, ni le client ni le bean ne dépend de la réponse directe de son interlocuteur. 17/03/05 11/32 Pr143CAH_ANT_IDEO_V1.doc

12 Intérêts Les composants EJB ont pour mission d'encapsuler des objets et concepts métier, permettant aux développeurs de se concentrer sur les détails des solutions. Ils contiennent la logique applicative, ce qui allège et assouplit les applications clientes, en les affranchissant de l implémentation de routines contenant les règles métiers ou les accès aux bases de données. Ils définissent un standard facilitant la réutilisation et l interopérabilité des composants middleware, et par conséquent le développement et l intégration d applications distribuées. Session Stateless bean : Avec ce comportement, plusieurs clients distincts peuvent accéder simultanément à un Stateless Session Bean sans impact négatif JSP JSP (Java Server Pages) est un standard permettant de développer des applications Web interactives (i.e. dont le contenu est dynamique). Une page web JSP a un contenu pouvant être différent selon certains paramètres (des informations stockées dans une base de données, les préférences de l'utilisateur,...) tandis que page web "classique" affichera continuellement la même information. Il s'agit en réalité d'un langage de script puissant exécuté du côté du serveur (langage de «server-side scripting» comme CGI, PHP, ASP,...) à la différence du JavaScript et de l applet qui s exécutent coté client. Les JSP sont intégrables au sein d'une page Web en HTML à l'aide de balises spéciales. Le serveur Web détecte ces balises et déclenche l interprétation du code compris à l'intérieur de celles-ci afin de renvoyer le code HTML résultant au navigateur du client. Intérêts Les principes retenus ont deux avantages principaux : Ils évitent de créer, et donc de maintenir, un formulaire HTML pour chaque étape, Ils permettent de séparer les règles de gestion et de faciliter par la même, l évolutivité du système Le protocole SOAP SOAP (Simple Object AccessProtocol) est un protocole de communication inter-applicatif transportant des messages via HTTP pour assurer des appels de procédures à distance (RPC). Il définit une enveloppe dans laquelle sont placées les données en édictant un certain nombre de règles pour structurer ces messages. En outre, il assure l interaction entre les services web en transportant des données structurées au format XML au sein d architectures distribuées orientées objet. Ces données structurées formant des messages SOAP peuvent être véhiculées soit en mode RPC soit en mode messagerie. 17/03/05 12/32 Pr143CAH_ANT_IDEO_V1.doc

13 Le message SOAP transitant sur Internet est codé en XML et encapsulé dans un flux HTTP. Il transporte à la fois des données métiers échangées entre les deux objets distants et les données techniques nécessaires à la bonne exécution de l appel : nom de la méthode appelée, type des données métier transportées, etc. Intérêts L objectif premier de SOAP est de normaliser les échanges de données en fournissant un framework de messagerie, un standard d encodage (XML) et un mécanisme d invocation de procédures à distance (RPC). Il permet la mise en place de web services et par conséquent vise à : Automatiser facilement les processus métiers, Faciliter l interopérabilité entre les systèmes et les plateformes hétérogènes, Aider l intégration d applications et de nouveaux services. Par ailleurs, l encapsulation des données XML dans un flux HTTP permet à SOAP de traverser les firewalls et autres équipements réseaux La technologie RMI-IIOP Les clients légers traditionnels tels que les applets ou les applications Java se connectent à la couche EJB à travers le protocole Internet Inter-ORB Protocol (IIOP) plutôt qu avec les services web, car généralement les clients légers peuvent être écrits dans la même organisation que l application J2EE, et par conséquent, le recours aux services web n est plus nécessaire. La technologie RMI-IIOP permet aux applications de provoquer l'exécution de procédures appartenant à des applications Java distantes et ce, de façon transparente. Les transactions mettent en jeu des objets qui sont transférés d'une application à une autre en conservant leur intégrité. La transmission de données se fait à travers un système de couches, basées sur le modèle OSI afin de garantir une interopérabilité entre les programmes et les versions de Java. 17/03/05 13/32 Pr143CAH_ANT_IDEO_V1.doc

14 Figure 3 Invocation d un EJB par RMI-IIOP Le stub (traduisez souche) et le skeleton (traduisez squelette), respectivement sur l application cliente et le serveur Idéopass, assurent la conversion des communications avec l'objet distant. La couche de référence (RRL, remote Reference Layer) est chargée du système de localisation afin de fournir un moyen aux objets d'obtenir une référence à l'objet distant. Elle est assurée par le package java.rmi.naming. On l'appelle généralement registre RMI car elle référence les objets. La couche de transport permet d'écouter les appels entrants ainsi que d'établir les connexions et le transport des données sur le réseau par l'intermédiaire du protocole TCP. Les packages java.net.socket et java.net.socketserver assurent implicitement cette fonction. Ainsi, l invocation d EJB Idéopass basée sur RMI met ainsi en oeuvre trois composantes : une application cliente implémentant le stub ; Idéopass implémentant le skeleton (squelette) ; une application médiatrice (le registre RMI) servie par un processus tiers (rmiregistry). Lorsque l application cliente souhaite accéder à des méthodes des EJB Idéopass, elle effectue les opérations suivantes : il localise l'objet distant grâce à un service de désignation : le registre RMI 17/03/05 14/32 Pr143CAH_ANT_IDEO_V1.doc

15 il obtient dynamiquement une image virtuelle de l'objet distant (appelée stub ou souche en français). Le stub possède exactement la même interface que l'objet distant ; Le stub transforme l'appel de la méthode distante en une suite d'octets, c'est ce que l'on appelle la sérialisation, puis les transmet au serveur instanciant l'objet sous forme de flot de données. On dit que le stub "marshalise" les arguments de la méthode distante ; Le squelette instancié sur le serveur "désérialise" les données envoyées par le stub (on dit qu'il les "démarshalise"), puis appelle la méthode en local ; Le squelette récupère les données renvoyées par la méthode (type de base, objet ou exception) puis les marshalise ; le stub démarshalise les données provenant du squelette et les transmet à l'objet faisant l'appel de méthode à distance. Intérêts L utilisation de RMI-IIOP est sécuritaire (les classes de gestion de la sécurité sont disponibles et le programmeur peut, s'il le désire, programmer les siennes) et la création d applications Java utilisant les classes RMI est relativement simple et rapide. En outre, ce protocole rend possible l interopérabilité entre les applications RMI et CORBA (autre framewrok de distribution des applications), de par le support des spécifications IIOP. Son utilisation permet la déportation des traitements système et une meilleure répartition des charges, mais les appels aux méthodes sont plus «coûteux» que traditionnellement. Le transfert de comportements (objets) d'une application à une autre permet d'exploiter toute la force des Design Patterns, puisque ces derniers s appuient généralement sur des comportements. Après ces brèves explications techniques des concepts et technologies ayant trait à Idéopass, la partie suivante s attachera à présenter la mise en oeuvre de ces technologies dans la conception et le développement de la solution. 17/03/05 15/32 Pr143CAH_ANT_IDEO_V1.doc

16 3. Architecture et composition d Idéopass L application Idéopass respecte le modèle d architecture client/serveur «multi-tiers» en obéissant au modèle de découpage des couches présenté précédemment au chapitre 2.1. La solution Idéopass a été conceptualisée à l aide du langage de modélisation UML et à partir de Design Pattern. Le choix de l environnement d exécution d Idéopass respecte les contraintes du modèle de développement Open Source. La solution est hébergée sur une plateforme J2EE et les tests menés par l équipe Idéopass permettent de garantir le fonctionnement de la solution sur les serveurs d application JBOSS et JONAS (excepté pour les fonctionnalités d abonnement qui n ont pas été testées sur cette dernière), couplé au moteur de servlet Tomcat. La couche présentation de la solution s appuie sur le serveur Web Open Source Apache. Le noyau fonctionnel d Idéopass, constitué de composants logiciels EJB, est accessible de quatre façons différentes, et accroît ainsi son interopérabilité avec les applications tierces : L interface utilisant Gidéopass développée en JSP (Java Server Pages). Les Web services reposant sur le protocole SOAP et utilisant le format de message HL7 préconisé par l initiative IHE. L appel aux EJB via des fonctionnalités d appel de méthodes à distance s appuyant sur le mécanisme Java RMI-IIOP (Remote Method Invocation over Internet Inter-ORB Protocol). L accès au noyau Idéopass directement au niveau de la couche transport grâce au support du protocole MLLP (Minimal Lower Layer Protocol). Ce protocole permet l acheminement de messages au format HL7. L emploi de messages au format HL7 dans les échanges SOAP et MLLP, et l implémentation qui en est faite, a permis à la solution Idéopass de réussir les tests de conformité à l initiative IHE appelés Connectathon et de prétendre à la conformité au profil PIX IHE à travers un «Integration Statement» (déclaration de conformité faite par l éditeur). Les données accédées et/ou enregistrées par les EJB fonctionnels d Idéopass sont stockées dans une base de données relationnelle. Les fonctionnalités de persistance de données d Idéopass supportent les bases Oracle, MySQL, PostGrèSQL et Caché. L ensemble des éléments logiciels Idéopass énoncés ci-dessus sont présentés ci-après dans l architecture multi-couches. 17/03/05 16/32 Pr143CAH_ANT_IDEO_V1.doc

17 Applications Applications Applications Browser Client Browser Client Routeur MLLP RMI- IIOP HTTP/SOAP Conteneur Java Web Service HTTP/HTTPS Conteneur JSP/Servlet Web Services Conteneur EJB Session Beans Session Beans Message-Driven Beans Logique Métier Accès Base Erreur Trace MLLP HL7 SOAP HL7 Infrastructure technique M M M JMS Base de données Log File d attente Figure 4 Architecture applicative de la solution Idéopass 3.1. Architecture fonctionnelle d Idéopass La solution Idéopass a été développée sur un modèle multi-couches à partir des spécifications fonctionnelles relatives à l identification du patient et publiées par le Groupement pour la Modernisation du Système d Information Hospitalier (GMSIH). Les orientations prises par les concepteurs du système Idéopass ont abouti à l architecture logicielle ciaprès, exposant la répartition des briques fonctionnelles de la solution : 17/03/05 17/32 Pr143CAH_ANT_IDEO_V1.doc

18 Sous-système INTERFACES Interface Client Interface Client léger léger Interface SOAP Interface SOAP Interface Interface RMI-IIOP RMI-IIOP Interface Interface MLLP MLLP Sous-système METIER Sous-système ADMINISTRATION Services Gestion Gestion Identité Identité Données Identité Identité Rapprochement Rapprochement Domaines de Domaines de Rapprochement Rapprochement Domaines Domaines d'identité d'identité Gestion Gestion Rapprochement Rapprochement Abonnement Abonnement Code Code HL7 HL7 Profil Profil Référentiel Référentiel Utilisateur Utilisateur Applications Applications Sous-système SERVICES Abonnement Abonnement Trace Trace Connecteur Connecteur DAO DAO Recherche Recherche Figure 5 Architecture fonctionnelle Idéopass Le système Idéopass est découpé en plusieurs sous-systèmes : Sous-système INTERFACES Ce sous-système se compose d interfaces d accès à l application Idéopass : l interface permettant la consultation et la mise à jour via un client léger (navigateur Web) par un utilisateur : «Interface client léger» ; l interface d accès aux données au travers de Web Services : «Interface SOAP» grâce aux API JAXM ; l interface d accès aux données au travers du protocole RMI-IIOP «Interface RMI-IIOP» ; l interface d accès aux données au travers du protocole MLLP «Interface MLLP» grâce aux HAPI. Sous-système METIER Ce sous-système donne accès aux services métier offerts par les composants métier. Ce sont la gestion de l identité et le rapprochement. Ce sous-système permet la manipulation des concepts suivants : 17/03/05 18/32 Pr143CAH_ANT_IDEO_V1.doc

19 L identité ; Le rapprochement ; L abonnement des applications ; Le codage HL7 grâce aux HAPI ; Le référentiel de données ; Les utilisateurs du système. Sous-système ADMINISTRATION Ce sous-système permet la gestion des éléments suivants à travers une interface (IHM) Web de consultation et de modification : Les domaines d identités ; Les domaines de rapprochements ; Les profils ; Les applications. Sous-système SERVICES Ce sous-système fournit des fonctionnalités techniques suivantes: La gestion des abonnements aux travers de files de messages (Abonnement aux identités, liens et rapprochements) ; La gestion des traces applicatives à travers une file de messages ; Les communications basées sur des connecteurs MLLP, SOAP ; Les algorithmes de recherche ; La persistance et l accès uniformisé aux données applicatives. L intérêt d une telle architecture est de séparer les couches entre elles. Dans la solution Idéopass, chaque composant distribué situé dans la couche de service implémente une logique métier bien particulière. Plus précisément, chaque EJB Session correspond à un contrôleur de Use Case UML. 17/03/05 19/32 Pr143CAH_ANT_IDEO_V1.doc

20 3.2. Architecture technique d Idéopass Modélisation et conception UML Les diagrammes utilisés pour la conception n ayant pas été fournis, l étude de la modélisation peut se faire uniquement sur la base des diagrammes présentés dans les différents documents (cf [DR3], [DR4], [DR5], [DR6], [DR9]). Les documents de spécifications fonctionnelles [DR4] contiennent les diagrammes de cas d utilisation utilisés pour modéliser la solution Idéopass. Ces derniers, plus communément appelés «usecase», se doivent de représenter l ensemble des fonctionnalités requises par le cahier des charges de la solution. En effet, la complétude des diagrammes des cas d utilisation UML est directement liée à la couverture fonctionnelle du produit résultant. Ainsi, au vu du schéma de couverture fonctionnelles p.7 du document [DR15] et de la matrice p.55 du document [DR3], il semblerait, par extrapolation (puisque nous ne disposons probablement pas de tous les diagrammes dans la documentation fournie) que les diagrammes de cas d utilisation sont globalement exhaustifs et conformes aux spécifications fonctionnelles du GMSIH ([DR13] [DR14]), base du cahier des charges d Idéopass. En outre, conformément aux paradigmes de modélisation UML, les «usecase» Idéopass ont servi de support à l élaboration des scénarii de tests du cahier de recette [DR5]. Présentant les aspects dynamiques du système à un niveau assez général, les diagrammes d activité d Idéopass apparaissent dans de nombreux documents et viennent généralement appuyer les diagrammes de cas d utilisation. Le document de spécifications techniques d Idéopass [DR6], riche en supports graphiques hérités de la modélisation UML d Idéopass, présente : les diagrammes de séquence de certains cas d utilisation considérés comme «type «par l équipe de développement Idéopass. Ces diagrammes fournissent ainsi une représentation temporelle des objets métier et de leurs interactions pour les fonctionnalités suivantes : o Recherche multi-critère d une identité ; o Modification d une identité ; o Création d un rapprochement. un modèle de package présentant les liens entre les différents packages (groupement de classes) de la solution ; des diagrammes de classes constituant des représentations statiques, de bas niveau, en terme de classes et de relations entre ces classes ; le modèle conceptuel de données (MCD) des éléments persistants d Idéopass (enregistrements) qui représente la structure du référentiel de données. La multitude des vues conçues lors de l élaboration d Idéopass laisse à penser qu Idéopass a bénéficié d un cadre d analyse solide, intégrant tous les aspects statiques et dynamiques du système, engendrant ainsi un modèle UML plutôt complet. 17/03/05 20/32 Pr143CAH_ANT_IDEO_V1.doc

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 38 NFP111 Systèmes et Applications Réparties Cours 11 - Les Enterprise Java Beans (Introduction aux Enterprise Claude Duvallet Université du Havre UFR Sciences

Plus en détail

SOA et Services Web. 23 octobre 2011. Evolution des Systèmes d Information

SOA et Services Web. 23 octobre 2011. Evolution des Systèmes d Information SOA et Services Web 23 octobre 2011 1 Evolution des Systèmes d Information 2 Qu est ce qu une application répartie? Il s agit d une application découpée en plusieurs unités Chaque unité peut être placée

Plus en détail

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web

JAVA PROGRAMMATION. Programme. 1. Java, HTML et World Wide Web PROGRAMMATION PUBLIC Professionnels informatiques qui souhaitent développer des applications et «applets» Java DUREE 4 jours 28 heures OBJECTIF Créer divers «applets» à intégrer dans un site Web dynamique,

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

Environnements de Développement

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

Plus en détail

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

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

Plus en détail

Les 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

NFP111 Systèmes et Applications Réparties

NFP111 Systèmes et Applications Réparties NFP111 Systèmes et Applications Réparties 1 de 46 NFP111 Systèmes et Applications Réparties Cours 2 - Les appels de procédure distants (Partie 1) Claude Duvallet Université du Havre UFR Sciences et Techniques

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

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

JEE - Cours et TP. Mickaël Montassier. 15 février 2007. Institut Universitaire de Technologie Département Informatique

JEE - Cours et TP. Mickaël Montassier. 15 février 2007. Institut Universitaire de Technologie Département Informatique et TP Institut Universitaire de Technologie Département Informatique 15 février 2007 J2EE? J2EE : Java 2 Enterprise Edition Norme prosposée par SUN visant à définir un standard de développement d applications

Plus en détail

Technologies distribuées

Technologies distribuées Technologies distribuées Java EE 5 Introduction! L entreprise et le Java EE Définition Les de type EJB Les de type services 1 2 Introduction! Compétences acquises " Compréhension " Interventions " Affranchir

Plus en détail

Les architectures N-tiers

Les architectures N-tiers Les architectures N-tiers 1 SOMMAIRE DU COURS XML ET LES ARCHITECTURES N-TIER Introduction aux architectures N-tier Serveurs d applications Déploiement d applications J2EE Tiers applicatif : servlets Tiers

Plus en détail

Programmation d applications distribuées

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

Plus en détail

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

Conception d Applications Réparties

Conception d Applications Réparties Jean-François Roos LIFL - équipe GOAL- bâtiment M3 Extension - bureau 206 -Jean-Francois.Roos@lifl.fr 1 Objectifs du Cours Appréhender la conception d applications réparties motivations et concepts architectures

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

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/8 Titre professionnel : Inscrit au RNCP de Niveau III (Bac + 2) (J.O. du 19/02/13) 24 semaines + 8 semaines de stage (uniquement en formation continue) Développer une application orientée objet

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

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

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

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz

Dr. Djamel Benmerzoug. Email : djamel.benmerzoug@univ-constantine2.dz Master 2 SITW Les services Web Dr. Djamel Benmerzoug Email : djamel.benmerzoug@univ-constantine2.dz Maitre de Conférences A, Département TLSI Faculté des NTIC Université Constantine 2 Abdelhamid Mehri

Plus en détail

Messagerie asynchrone et Services Web

Messagerie asynchrone et Services Web Article Messagerie asynchrone et Services Web 1 / 10 Messagerie asynchrone et Services Web SOAP, WSDL SONT DES STANDARDS EMERGEANT DES SERVICES WEB, LES IMPLEMENTATIONS DE CEUX-CI SONT ENCORE EN COURS

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

Architecture Logicielle

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

Plus en détail

Unité de formation 1 : Structurer une application. Durée : 3 semaines

Unité de formation 1 : Structurer une application. Durée : 3 semaines PROGRAMME «DEVELOPPEUR LOGICIEL» Titre professionnel : «Développeur Logiciel» Inscrit au RNCP de niveau III (Bac+2) (JO du 23 Octobre 2007) (32 semaines) Unité de formation 1 : Structurer une application

Plus en détail

par Philippe Poulard Web services 0 Philippe.Poulard@sophia.inria.fr Philippe Poulard

par Philippe Poulard Web services 0 Philippe.Poulard@sophia.inria.fr Philippe Poulard 0 Philippe.Poulard@sophia.inria.fr Philippe Poulard Sommaire Qu est-ce? Middleware XML Web Services in situ Couches de services Architecture des Web Services avec Java JAX-RPC JAXR JAXM Outils 1 Présentation

Plus en détail

Tour d horizon de Java EE 6

Tour d horizon de Java EE 6 1 Tour d horizon de Java EE 6 De nos jours, les entreprises évoluent dans une compétition à l échelle mondiale. Elles ont besoin pour résoudre leurs besoins métiers d applications qui deviennent de plus

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

Exécution des applications réparties

Exécution des applications réparties Exécution des applications réparties Programmation des Applications Réparties Olivier Flauzac URCA Master STIC-Informatique première année Olivier Flauzac (URCA) PAR : Exécution des applications réparties

Plus en détail

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42

Java et Objet. Amélie Lambert 2014-2015. Amélie Lambert 2014-2015 1 / 42 Java et Objet Amélie Lambert 2014-2015 Amélie Lambert 2014-2015 1 / 42 Chapitre 8 Développement d applications Web Amélie Lambert 2014-2015 2 / 42 Plan du cours Typologie des applications Web Architecture

Plus en détail

Les formations. Développeur Logiciel. ENI Ecole Informatique

Les formations. Développeur Logiciel. ENI Ecole Informatique page 1/5 Titre professionnel : Reconnu par l Etat de niveau III (Bac), inscrit au RNCP (arrêté du 12/10/07, J.O. n 246 du 23/10/07) (32 semaines) Unité 1 : Structurer une application 6 semaines Module

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

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

Architectures à composants

Architectures à composants Interaction requête/réponse Architectures à composants!communication par requête/réponse client requête réponse serveur Gaël Thomas gael.thomas@lip6.fr Université Pierre et Marie Curie Master Informatique

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

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

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

LANGAGES & DéVELOPPEMENT. Une équipe à vos côtés pour toutes vos montées en compétences

LANGAGES & DéVELOPPEMENT. Une équipe à vos côtés pour toutes vos montées en compétences LANGAGES & DéVELOPPEMENT Une équipe à vos côtés pour toutes vos montées en compétences ASP.NET OPTION VB.NET OU C# 5 jours Permettre aux participants de mieux appréhender ce qu est la programmation pour

Plus en détail

Figure 1. Structure répartie

Figure 1. Structure répartie Chapitre I: Applications Réparties et Middleware 1. Définition d une application répartie Une application répartie est constituée d un ensemble de processus (d objets, d agents, d acteurs) s exécutant

Plus en détail

VisualAge Pacbase 3.0 et WebSphere

VisualAge Pacbase 3.0 et WebSphere VisualAge Pacbase 3.0 et WebSphere Conférence VisualAge Pacbase 13 décembre 2001 Fernand Bonaguidi Jean-François Lévi 1 La plateforme logicielle WebSphere Applications de s et de Partenaires Accélérateurs

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

Architecture d'entreprise : Guide Pratique de l'architecture Logique

Architecture d'entreprise : Guide Pratique de l'architecture Logique Guides Pratiques Objecteering Architecture d'entreprise : Guide Pratique de l'architecture Logique Auteur : Version : 1.0 Copyright : Softeam Equipe Conseil Softeam Supervisée par Philippe Desfray Softeam

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

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

CHAPITRE 1. Introduction aux web services. 1.1 Définition. Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C#

CHAPITRE 1. Introduction aux web services. 1.1 Définition. Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C# CHAPITRE 1 Introduction aux web services Contenu du chapitre : Env. De dev. Langage Visual Studio Java EE Qt Creator C# NetBeans JavaScript Eclipse Objective C Xcode PHP HTML Objectifs du chapitre : Ce

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

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

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

Plus en détail

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

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. Programmer avec Java EE. Besoins des développeurs. Prérequis / Objectifs

24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. Programmer avec Java EE. Besoins des développeurs. Prérequis / Objectifs Plan du cours 2 Introduction générale EJB : les fondamentaux Programmer avec Java EE Introduction générale Michel Buffa (buffa@unice.fr), UNSA 2011, modifié par Richard Grin (version 1.0), avec emprunts

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

Objectifs. Maîtriser. Pratiquer

Objectifs. Maîtriser. Pratiquer 1 Bases de Données Objectifs Maîtriser les concepts d un SGBD relationnel Les modèles de représentations de données Les modèles de représentations de données La conception d une base de données Pratiquer

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

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr

Java EE. Grégory Cuellar, Julien Goullon. 1 er octobre 2007. gregory.cuellar@bull.net. julien.goullon@9business.fr Grégory Cuellar Julien Goullon gregory.cuellar@bull.net julien.goullon@9business.fr 1 er octobre 2007 1 Généralité 2 / 54 Pourquoi? Historique Les alternatives Les composants 2 Architecture n-tiers 3 JEE

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

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI

DUT Informatique Module JAVA Apprentis Département Informatique 2008 / 2009. Travaux Pratiques n o 7 : RMI iut ORSAY DUT Informatique Département Informatique 2008 / 2009 Travaux Pratiques n o 7 : RMI Nom(s) : Groupe : Date : Objectifs : savoir créer des applications client-serveur mettant en jeu des machines

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

Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java

Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java Systèmes Distribués Des protocoles client serveur au paradigme objets distribués avec Java (application avec Java RMI) Éric Leclercq Département IEM / Laboratoire LE2i Décembre 2010 émail : Eric.Leclercq@u-bourgogne.fr

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

Architectures n tiers Intergiciels à objets et services web

Architectures n tiers Intergiciels à objets et services web UMIN406 : thèmes abordés Architectures n tiers Intergiciels à objets et services web Clémentine Nebut LIRMM / Université de Montpellier 2 LIRMM Clementine.nebut@lirmm.fr 1 Distribution d objets Java RMI,.net

Plus en détail

INDUSTRIALISATION ET RATIONALISATION

INDUSTRIALISATION ET RATIONALISATION INDUSTRIALISATION ET RATIONALISATION A. LA PROBLEMATIQUE La mission de toute production informatique est de délivrer le service attendu par les utilisateurs. Ce service se compose de résultats de traitements

Plus en détail

UML Mise en œuvre dans un projet. Emmanuel Pichon 2013

UML Mise en œuvre dans un projet. Emmanuel Pichon 2013 UML Mise en œuvre dans un projet 2013 Introduction Rôles et activités dans un projet Définir la méthode de votre projet Adapter la modélisation à la méthode de votre projet Conseils de mise en œuvre de

Plus en détail

Site Web de paris sportifs

Site Web de paris sportifs Conception Nom HENAUD Benoît Numéro d auditeur 05-39166 Version V1.1 Date de mise à jour 15/05/2008 1/18 Table des matières 1. Objectif du document... 3 2. Architecture... 4 2.1. Contraintes techniques...

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

10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr]

10. Base de données et Web. OlivierCuré [ocure@univ-mlv.fr] 10. Base de données et Web 313 Evolution de l'information Ordre de grandeur : 314 1Mo : 1 gros roman 200Mo : ce que mémorise un être humain dans sa vie. 900Mo : information contenue dans le génome d'une

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

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

Java EE Cours 1. Présentation Générale. Cours de 2 e année ingénieur

Java EE Cours 1. Présentation Générale. Cours de 2 e année ingénieur Java EE Cours 1 Présentation Générale Cours de 2 e année ingénieur 1 Présentation du cours Objectifs Développement d applications Web robustes «Ne pas réinventer la roue» utilisation d un framework 1 Apprentissage

Plus en détail

Hébergement de sites Web

Hébergement de sites Web Hébergement de Solutions complètes et évolutives pour l hébergement de sites Web dynamiques et de services Web sécurisés. Fonctionnalités Serveur Web Apache hautes performances Apache 1. et.0 1 avec prise

Plus en détail

Introduction aux systèmes répartis

Introduction aux systèmes répartis Introduction aux systèmes répartis Grappes de stations Applications réparties à grande échelle Systèmes multicalculateurs (1) Recherche de puissance par assemblage de calculateurs standard Liaison par

Plus en détail

Technologies du Multimédia et du Web

Technologies du Multimédia et du Web 3 ème Année Licence appliquée Technologies du Multimédia et du Web MoezBEN HAJ HMIDA ISSAT Sousse 2009/2010 Plan Les systèmes e-services Évolution des architectures d applications Les architectures client/serveur

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

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

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

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

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

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

Dossier de conception

Dossier de conception Dossier de conception Sujet : Gestion de Stock-Pharma Réaliser par : FADIL Ghizlane ECH CHARFAOUY Abdelouahad Encadré par : M. LACHGAR Mohammed Développement d une application JAVA EE Cadre réservé à l

Plus en détail

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source Jérôme Petit, Serge Petit & Serli Informatique, ITMatic Jérôme Petit, Serge Petit & SERLI & ITMatic Serli : SSII

Plus en détail

Qu'est-ce qu'un Web Service?

Qu'est-ce qu'un Web Service? WEB SERVICES Qu'est-ce qu'un Web Service? Un Web Service est un composant implémenté dans n'importe quel langage, déployé sur n'importe quelle plate-forme et enveloppé dans une couche de standards dérivés

Plus en détail

Développement J2EE. avec Eclipse. et WSAD. Karim Djaafar. Olivier Salvatori. avec la contribution de. Groupe Eyrolles, 2003, ISBN 2-212-11285-8

Développement J2EE. avec Eclipse. et WSAD. Karim Djaafar. Olivier Salvatori. avec la contribution de. Groupe Eyrolles, 2003, ISBN 2-212-11285-8 Développement J2EE avec Eclipse et WSAD Karim Djaafar avec la contribution de Olivier Salvatori Groupe Eyrolles, 2003, ISBN 2-212-11285-8 Avant-propos Depuis la sortie de la plate-forme J2EE (Java 2 Entreprise

Plus en détail

Concepteur Développeur Informatique Option Nomade

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

Plus en détail

BES WEBDEVELOPER ACTIVITÉ RÔLE

BES WEBDEVELOPER ACTIVITÉ RÔLE BES WEBDEVELOPER ACTIVITÉ Le web developer participe aux activités concernant la conception, la réalisation, la mise à jour, la maintenance et l évolution d applications internet/intranet statiques et

Plus en détail

Spécification du profil UML d assemblage cible EJB (version 1)

Spécification du profil UML d assemblage cible EJB (version 1) Spécification du profil UML d assemblage cible EJB (version 1) Auteur : Projet ACCORD (Assemblage de composants par contrats en environnement ouvert et réparti) Référence : Livrable 2.2 Date : 31 mai 2002

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

Web (Persistance) Andrea G. B. Tettamanzi. Université de Nice Sophia Antipolis Département Informatique andrea.tettamanzi@unice.fr

Web (Persistance) Andrea G. B. Tettamanzi. Université de Nice Sophia Antipolis Département Informatique andrea.tettamanzi@unice.fr Web (Persistance) Andrea G. B. Tettamanzi Université de Nice Sophia Antipolis Département Informatique andrea.tettamanzi@unice.fr Andrea G. B. Tettamanzi, 2014 1 CM - Séance 8 Organisation logicielle d'une

Plus en détail

Systèmes d information documentaires distribués

Systèmes d information documentaires distribués Systèmes d information documentaires distribués Yannick Prié UFR Informatique Université Claude Bernard Lyon 004-005 Master SIB M UE 3 / Bloc 4 Cours 6-7 Systèmes d information documentaires distribués

Plus en détail

Urbanisation et architecture des systèmes d information

Urbanisation et architecture des systèmes d information Urbanisation et architecture des systèmes d information Plate forme pour le composant logiciel 2/2 JAVA, JEE et les EJB David Eudeline eudeline.david@free.fr JAVA Qu'est ce que JAVA? Un langage très jeune

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

WWW - Intérêts du Web

WWW - Intérêts du Web WWW - Intérêts du Web client universel facilité d'emploi standards ouverts intégration des autres services Internet extensibilité du système faibles coûts logiciel et réseau utilisation au sein d'une entreprise

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

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

Architecture J2EE. Thierry Lecroq (merci à Alexandre Pauchet (INSA Rouen)) Université de Rouen FRANCE. Thierry Lecroq (Univ. Rouen) J2EE 1 / 16

Architecture J2EE. Thierry Lecroq (merci à Alexandre Pauchet (INSA Rouen)) Université de Rouen FRANCE. Thierry Lecroq (Univ. Rouen) J2EE 1 / 16 Architecture J2EE Thierry Lecroq (merci à Alexandre Pauchet (INSA Rouen)) Université de Rouen FRANCE Thierry Lecroq (Univ. Rouen) J2EE 1 / 16 Plan 1 Historique 2 Architecture J2EE 3 J2EE et applications

Plus en détail

Ré-architecture et migration d une application standalone vers un serveur applicatif multi-tiers dans un contexte JAVA-SAP

Ré-architecture et migration d une application standalone vers un serveur applicatif multi-tiers dans un contexte JAVA-SAP Ré-architecture et migration d une application standalone vers un serveur applicatif multi-tiers dans un contexte JAVA-SAP Ionel Dembski Sous la direction de Peter Daehne, Professeur HES Département d

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

Formation en Logiciels Libres. Fiche d inscription

Formation en Logiciels Libres. Fiche d inscription République Tunisienne Ministère de l'industrie et la Technologie - Secrétariat d'état de la Technologie Unité des Logiciels Libres Formation en Logiciels Libres Fiche d inscription (Une fiche par candidat)

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

Formation développement Java, Spring et Hibernate

Formation développement Java, Spring et Hibernate L institut de formation continue des professionnels du Web Formation développement Java, Spring et Hibernate Référence formation : Durée : Prix conseillé : DJSH 10 jours (70 heures) 4 500 HT (hors promotion

Plus en détail