Recherches et Développements autour des middlewares

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

Download "Recherches et Développements autour des middlewares"

Transcription

1 Recherches et Développements autour des middlewares Michel RIVEILL, Université de Nice Projet RAINBOW, Laboratoire I3S (CNRS UNSA) ESSI 930 route des Colles - BP Sophia Antipolis CEDEX 1 Middleware bus logiciel : mode d'emploi Logiciels d'application Développement Administration Langages méthodes et outils de développement Bus logiciel - middleware (CORBA, J2EE,.Net, etc.) Logiciel de base (système, télécommucation, SGBD, etc.) 2 Michel RIVEILL, Université de Nice 1

2 Quelques problèmes «chauds» Plan Méthodes et outils de développement quels outils pour quels développeurs? Logiciel de base : infrastructures pour applications réparties impact de l'internet et du Web informatique nomadique (mobile computing) informatique individuelle omniprésente (ubiquitous computing) Comparaison (très rapide/partielle/partiale) de bus logiciels di sponibles et quelques travaux en cours Modes de développement des middlewares Quelle place pour le logiciel libre? 3 Programmation : mode d'emploi Quel langage pour quel usage? Nb. de personnes (échelle log.) Programmeurs occasionnels 100 M entreprises utilisant l'informatique 10M 1M entreprises d'informatique Aujourd'hui 2010 Temps département d'informatique 4 Michel RIVEILL, Université de Nice 2

3 langages de programmation : la querelle des anciens et des modernes Langages à objet vertus et limites... des objets... aux composants Langages de script Programmation occasionnelle programmation à gros grain («programming in the large») intégration de composants logiciels Quel langage pour quel usage? Occasionnel ou fréquent Programmation de modules Assemblage de composants, description de configuration Mise en œuvre d une application répartie à grande échelle 5 De la programmation usuelle A la programmation par composition «programming in the small» construire l application mais tout est à la charge du programmeur construction des différents modules définition des instances interconnexions des modules structure de l application peu visible ensemble des fichiers de codes nécessaire installation / évolution / modification difficile changement du mode de communication évolution, ajout, suppression de fonctionnalités modification du placement --> construction des briques de base «programming in the large» réutiliser du logiciel intégration de modules logiciels existants construction de l'application par assemblage de modules description de l'architecture de l'application spécification des briques de base : interfaces, implémentation attributs de spécialisation, spécification comportementale description des interactions entre composants (connecteurs) description de variables d'environnement (placement, regroupement, sécurité, etc.) à l'aide d'un langage déclaratif ou d un langage de script --> assemblage de briques existantes 6 Michel RIVEILL, Université de Nice 3

4 Programmation orientée-objet Les "avantages" reconnus encapsulation, typage fort, héritage, polymorphisme avantages du typage "fort" détection des erreurs et optimisations à la compilation réduction du temps de développement OO favorise la réutilisation un seul langage pour : contrôle, accès aux données, IHM, communi cations, etc. (exemple : Java) Quelques limitations/interrogations l'héritage de classes pose des problèmes d'évolution le typage fort n'a pas que des avantages Le gain en temps de développement est-il réel (20-30%?) quid de la réutilisation? granularité des objets trop faible? 7 Programmation par composants Composant : objet (ou groupe d'objets) qui exporte différents attributs, propriétés ou méthodes, capable de s auto-décrire, qui peut être configuré et assemblé avec d'autres composants capable de réagir à des conditions de son environnement d'exécution Objectif briques de base configurables et adaptables pour permettre la construction d une application par composition Différents points de vue Programmation d un composant : langage à objets? Description de l assemblage : A.D.L, langage de script, interaction Mais aussi Configuration / adaptabilité des composants : A.O.P, méta-protocole, Exemples COM / DCOM / COM+ /.Net Java Beans Enterprise Java Beans Composants CORBA 8 Michel RIVEILL, Université de Nice 4

5 Structure d'un composant Comment (co-)opère un composant interface fonctionnelle dépendances mode de communication des ports E/S (synchrone, asynchrone, flots) description du comportement Propriétés configurables du composant interface d'introspection Propriétés non-fonctionnelles cycle de vie persistance, sécurité, transactions contraintes environnementales comportement (QoS, etc.) Interfaces fonctionnelles Fournit s y n c a s y n c f l U x Interface d'introspection Propriétés configurables Code fonctionnel Code et propriétés non-fonctionnelles Interface d'administration Dépendances s y n c a s y n c f l U x Utilise 9 Plate-forme à composants Composant = unité de réutilisation Assemblage de composants = unité d administration comportement comportement comportement Serveur de composants Création/destruction persistance, transactions réplication, migration, Serveur de composants Serveur de composants Bus logiciel A Bus logiciel B Système d'exploitation Système d'exploitation Système d'exploitation 10 Michel RIVEILL, Université de Nice 5

6 Vie (et mort) des applications Pourquoi les applications ne fonctionnent pas correctement? Développeurs ne tiennent pas compte du cycle de vie complet Équipes sont mal équipées pour gérer la complexité Incapacité de déployer en réparti, de manière simple, ce qui a été développé Le prototype fonctionne mais l application échoue lors de la montée en charge La fiabilité ou la performance requise n est pas au Rendez-vous Nécessité d administrer les applications Loi de l entropie Chaque système tend vers un état de désordre et requiert une certaine énergie pour le stopper Appliquez-la à une société... À une manifestation lors du sommet de Nice Grand nombre d objets personnes Maintenant pensez à un réseau d ordinateurs... Le coût de gestion d une application répartie dépasse très largement le coût initial de son développement. L administration doit être pris en compte dès la conception Afin de permettre l évolution, la reconfiguration de l applicati on Résistance aux pannes, évolution du nombre d utilisateurs, évolution des besoins 11 Modéliser la Complexité MODELISE Décrire et comprendre la complexité de l application distribuée 12 Michel RIVEILL, Université de Nice 6

7 Surveiller pour Contrôler Modéliser la Complexité décrire l architecture MODELISE SURVEILLE Garantir : - les niveaux de service en accord avec les utilisateurs - les besoins des composants - l état du système 13 Administrer pour Changer MODELISE Modéliser la Complexité Surveiller pour Contrôler SURVEILLE Assurer que les services demandés sont maintenues alors que les applications évoluent (nouveaux utilisateurs, nouveaux besoins) ADMINISTRE 14 Michel RIVEILL, Université de Nice 7

8 Bénéfices attendu d un outils d administration MODELISE Gestion et surveillance des applications objets distribuées Tolérance de panne et recouvrement Surveillance des performances Définition des dépendances et ordre de démarrage des objets Démarrage et arrêt des objets individuels ou en groupe Intégration avec les environnements opérationnels Exécution d actions basées sur des événements Mécanisme hiérarchique de filtres d événements Interface graphique intuitive, simple à utiliser Possibilité de ligne de commande (langage de script) Connaître le fonctionnement de l application - tunning Statistiques détaillées - jusqu au niveau méthode Statistiques combinables pour affichage optimum Instrumentation à travers les intercepteurs SURVEILLE ADMINISTRE 15 Programmation par assemblage ADL client.lookup(clé, , pays) => coll.lookup(clé, ) where pays == coll.pays using randsynccall; coll coll : : collection collection [0..N] [0..N] of of of Annuaire Annuaire; Client Client Lance Admin Admin Recherche (in string clé, out string , in string pays) LanceAnnuaire (in CODE pays) Recherche (in string clé, out string ) Initialise (in CODE pays) Annuaire pays pays = = CH CH Annuaire pays pays = = FR FR Annuaire pays pays = = UK UK admin.lanceannuaire(code) => coll.init(code) using createincollection(); 16 Michel RIVEILL, Université de Nice 8

9 Programmation par assemblage ADL Caractéristiques Peu, pas de «succes story» Qui connaît Darwin, OCL, Polilyth, Bonne vision de l architecture de l application Description des aspects essentiellement statique, régulier Description configurable Peu servir de tableau de bord pour «visualiser» le fonctionnement de l application Aide à l observation Outils pour la reconfiguration dynamique Usage Description d une version «d installation» de l application Support pour faire de la validation, de la preuve 17 Langages de scripts Caractéristiques Exemples : shell Unix, Perl, Tcl, Python,... langages non typés représentation des informations banalisée (ex. "string") sémantique déterminée par l'usage expressivité rapidité de développement langages interprétés perte d'efficacité intégration des concepts OO (Python, Perl 5.0) Usages utilisation moins efficace des machines mais plus efficace des programmeurs intérêt pour : la programmation occasionnelle les tâches d'intégration 18 Michel RIVEILL, Université de Nice 9

10 Typage Nb. d'instructions "machines" / instruction du langage Tcl / Perl Visual Basic ADL 1 aucun assembleur Niveau de typage C Java / C# C++ fort 19 Différents outils pour différentes tâches Complémentarité construction de composants avec les langages OO assemblage de composants avec les langages de script Exemples : Plate-forme langage langage programmation de script OS/360 BAL,PL/1 JCL Unix C, C++ sh, csh, Perl, Tcl PC C++ Visual Basic Internet Java / C# CorbaScript? Quels critères de choix Plate-forme, langage de programmation, langage d assemblage, etc. 20 Michel RIVEILL, Université de Nice 10

11 Choisir un langage Si Manipulation d'algorithmes et de structures de données complexes manipulation de grands volumes de données applications "stabilisées Alors choisir un langage de programmation "classique" Sinon Si manipulation de données de nature très différente gestion d'interfaces homme-machine manipulation de chaînes de caractères interconnexion de composants logiciels application évolutive Alors choisir un langage de script Sinon?? 21 Quelques problèmes «chauds» Plan Méthodes et outils de développement Logiciel de base : infrastructures pour applications réparties impact de l'internet et du Web informatique nomadique (mobile computing) informatique individuelle omniprésente (ubiquitous computing) Comparaison (très rapide/partielle/partiale) de bus logiciels di sponibles et quelques travaux en cours Modes de développement du middleware Quelle place pour le logiciel libre? 22 Michel RIVEILL, Université de Nice 11

12 Infrastructures pour applications réparties "à grande échelle" L'Internet comme environnement d'exécution d'applications réparties le Web : un middleware à grande échelle L'Informatique nomade (mobile computing) L'Informatique personnelle omniprésente (ubiquitous computing) Passage à l'échelle nb. d'utilisateurs et de sites hétérogénéité des réseaux et des stations hétérogénéité des systèmes Hétérogénéité des langages 23 WWW : un support pour l accès à l information (1) un protocole client-serveur (mis en œuvre sur TCP/IP) : HTTP un système de désignation universelle : URL une représentation de documents hypertextes : HTML des navigateurs ( browser ) évolués Station browser browser Client HTTP Http requête HTTP pages HTML Serveur HTTP Serveur page HTML URL (id. documents) environnement de développement de documents HTML documents HTML 24 Michel RIVEILL, Université de Nice 12

13 WWW : un support pour l accès à l information (2) Accès à des serveurs externes utilisation de l interface CGI (Common Gateway Interface) et/ou de "servlets" et/ou ASP requêtes à un serveur de données transformation des résultats en pages HTML Station browser page HTML Client HTTP requête HTTP pages HTML (construites dynamiquement) Serveur HTTP Serveur CGI ASP / Servlets Serveur de données URL base de données 25 WWW : un support d applications client serveur (1) Utilisation du protocole HTTP pour le dialogue client-serveur Station Serveur Browser client universel Application partie -cliente (GET, POST) Client HTTP requêtes HTTP Données (html / autres formats) Serveur HTTP CGI Servlets / ASP Application partie-serveur + avantages : support universel de communication (http) simplicité de la mise en œuvre mise en œuvre aisée depuis n importe quelle station cliente - inconvénients : primitives élémentaires (GET, POST,...) serveur HTTP non adapté difficulté de gérer des sessions 26 Michel RIVEILL, Université de Nice 13

14 WWW : un support d applications client serveur (2) Utilisation du protocole SOAP (ou XML-RPC) pour le dialogue clientserveur SOAP = HTTP + XML Station Serveur Browser client universel Application partie -cliente Client HTTP requêtes SOAP (XML) Réponses SOAP (XML) Serveur HTTP ASP ISAPI CGI Servlets Application partie-serveur + avantages : + support universel de communication + simplicité de la mise en œuvre + requêtes et réponses lisible + serveur + sophistiqué (état) + réponse adaptée selon le poste client - inconvénients : - peu efficace (par rapport à RPC) 27 WWW : des documents actifs Séquences exécutables ("applets", "contrôles") dans les pages HTML Station Serveur interprète browser Client HTTP requête HTTP pages HTML "applet" Serveur HTTP page HTML URL (id. documents) documents HTML "actifs" "applet sécurité : contrôle des actions exécutées par le code importé 28 Michel RIVEILL, Université de Nice 14

15 Applications réparties sur l'internet Deux visions architecturales opposées/complémentaires Le Web sémantique Web : espace (illimité?) d'informations structurées partagées bus logiciel : Http+ et URL intégration par les données : XML, RDF, DOM,... L'Internet comme environnement d'exécution d'applications réparties 29 Le Web sémantique Web : espace (illimité?) d'informations structurées partagées bus logiciel : Http+ et URL intégration par les données : XML, RDF, DOM,... Browser html/xml Client http Application A Serveur http Document XML Application B Serveur http 30 Michel RIVEILL, Université de Nice 15

16 L'Internet : environnement d'exécution d'applications réparties Le Web : système d'exploitation réparti (à objets) une désignation uniforme via les URLs des objets persistants via les démons HTTP et leurs systèmes de fichiers hôtes un méta -protocole d invocation via HTTP et les opérations de base (GET, POST, ) ou SOAP l extensibilité via le protocole CGI, les servlets et le code mobile (applets) Deux approches Environnements Java sur le web un langage à objet ("pour tout faire") une machine virtuelle universelle (JVM) une désignation uniforme via les URLs un protocole d'invocation via RMI passerelles vers des environnements Corba et Com/Dcom/.Net Framework.Net Tout composant peut être accéder par le Web ASP : programmation de «servlet» dans différents langages ADO : accès aux données 31 Informatique nomadique/mobile mobile computing utilisateurs nomades et équipements portables réseaux sans fil connectivité à l'internet Wireless WAN (GSM, CDPD, UMTS...) Wired or Wireless LAN (WaveLAN, HiperLAN,..) Picocellular MAN home 32 Michel RIVEILL, Université de Nice 16

17 Informatique personnelle omniprésente Ubiquitous computing Fournisseur de service Fournisseur d infrastructure logicielle 33 Évolution de la capacité de calcul Ventes par an Mainframe (N personnes, 1 calculateur) PC (1 personne, 1 calculateur) Ubiquitous computing (1 personne, N calculateurs) Michel RIVEILL, Université de Nice 17

18 Quelques problèmes «chauds» Plan Méthodes et outils de développement Logiciel de base : infrastructures pour applications réparties Comparaison (très rapide/partielle/partiale) de bus logiciels disponibles et quelques travaux en cours EJB, CORBA,.Net Adaptabilité, Interaction Modes de développement du middleware Quelle place pour le logiciel libre? 35 Principaux apports du modèle EJB Mise en évidence de plusieurs catégories de «programmeurs» Fournisseur d EB Assembleur d application Enterprise Bean (EB) Application Développement de l application L installateur Déploiement et exécution Fournisseur de conteneur EJB Fournisseur de serveur EJB Produit Utilise Conteneur Serveur Développement du serveur EJB 36 Michel RIVEILL, Université de Nice 18

19 Principaux apports du modèle EJB Préciser plusieurs niveaux d interfaces Fournir un modèle de développement uniforme pour les applications qui utilisent les composants EB Contrat coté client fournir une vue uniforme du bean au client. En particulier cette vue est indépendante de la plate-forme de déploiement Contrat coté conteneur permettre la portabilité des beans sur différents serveurs EJB Contrat coté packaging (ejb-jar file) fournir un format de fichier standard pour packager les beans. Ce format doit être supporter par tous les outils liés aux EJB client Contrat client EBJ conteneur EJB serveur Enterprise Bean Contrat conteneur Contrat parckaging Fichier ejb-jar 37 Principaux apports du modèle EJB Spécifier les propriétés du composants de manière externe Persistance JDBC Call back : ejbcreate, ejbstore, ejbload, ejbfind Bean managed ou container managed Transaction Modèle XA (transactions plates) de l X/OPEN Définition d attributs dans le descripteur du bean : TX_NOT_SUPPORTED, TX_REQUIRED, TX_SUPPORTS,TX_REQUIRES_NEW, TX_MANDATORY, TX_BEAN_MANAGED Sécurité Basé sur l API sécurité de Java (javax.security) Délégué au conteneur (javax.ejb.ejbcontextinterface) Utilisation d attributs de sécurité défini dans le descripteur du bean utilisé lors de la phase de déploiement runasmode, RunAsIdentity 38 Michel RIVEILL, Université de Nice 19

20 Principaux apports du modèle EJB Mise en place d un mécanisme d interposition Create(...) newinstance() Account Home setentitycontext() Client Account Ref setbalance() ejbcreate(...) Begin Account Bean Base De Données Relationelles Account EJB Object setbalance() commit JDBC / XA 39 Principaux apports du modèle EJB Mécanisme d interposition Basé sur un descripteur de déploiement Account Deployment Descriptor Home interface Remote interface Enterprise Bean BeanHomeName ControlDescriptors Env. properties AccountHome Account AccountBean AccountHome1 TX_SUPPORTS DataSource name... ContainerManagedFields accno, customer, balance 40 Michel RIVEILL, Université de Nice 20

21 Principaux apports du modèle J2EE Une architecture complète pour «programmer» Web Conteneur Web Conteneur EJB Sevlet JSP EJB Services transactions messages mail connecteurs Java 2 SDK édition standard RMI JDBC JNDI CORBA Plate-forme : J2EE 41 Principaux apports du modèle J2EE Une architecture complète pour «programmer» Web Client-side Presentation Navigateur Server-side Presentation Serveur Web Server-side Business Logic Conteneur EJB Enterprise Information System HTML JSP EJB Java applet JSP EJB Station Application Java Java Servlet EJB Autres terminaux Client J2EE J2EE plate-forme J2EE plate-forme 42 Michel RIVEILL, Université de Nice 21

22 Principaux apports du modèle J2EE Une multitude d acteurs réelle interopérabilité Navigateur Serveur Web Serveur métier Connecteurs Ressources SGBD Fichier Legacy system Navigateur Applet Java Application Java PDA Téléphones WAP HTML statique HTML dynamique JSP Serveur de script WML, XHTML, WML, Servlet BEA Weblogic IBM WebSphere Sun iplanet EJBs Workflow Engine JDBC OBDC CICS Gateway JNDI Corba Base de données S.G.F E.R.P 43 Principaux apports des composants CORBA Une extension au modèle EJB Un modèle de composants interopérant avec EJB On n ignore pas/plus le passé Modèle proche qui étend le modèle EJB La structure d accueil et les conteneurs gèrent les composants et leurs propriétés non fonctionnelles Description des services fournis, mais aussi de ceux utilisés (synchrones, asynchrones, ) Utilisation de différents langages, choix plus large de services Décrire le déploiement, la configuration et la composition Description d un assemblage de composants (architecture logicielle) Prise en charge IMPLICITE par description des propriétés non fonctionnelles Les composants et assemblages sont déployés sur une architecture physique Technologie de packaging pour déployer des binaires issus de différents langages de différents fournisseurs Propriétés recherchées interopérabilité entre les produits portabilité des composants 44 Michel RIVEILL, Université de Nice 22

23 Distributeur de boisson Référence de base Composant Distributeur Réceptable Client Prise de courant FOURNIT Facettes Fournisseur Dépanneur Implantation Prise d eau * Source d événements UTILISE Plus de monnaie Température Puit d événements Attribut on/off Vide * 45 Evaluation du modèle de composants Capturer ce qui est fourni : propriétés configurables (attributs) facettes (modularité) puits d événements (asynchrone) opérations (synchrone) Capturer ce qui est utilisé : réceptacles simples ou multiples (synchrone) sources d événements (asynchrone) Introspection fonctionnelle (IFR) structurelle (API de navigation) Co-localisation de toutes les ports d un composant facettes, puits, sources d événements Pas d agrégation pas de «design pattern» contenant - contenu un composant peut référencer des objets / composants distants mais alors ils ne font pas parties du composant Faible expression de la cardinalité des ports plusieurs instances pour une facette (ex. 1 par client) réceptacles multiples => fixé à l exécution Les ports sont décrits statiquement! impossible d en ajouter dynamiquement Sûrement d autres critiques? 46 Michel RIVEILL, Université de Nice 23

24 Principaux apports du CCM Déploiement Le langage OSD = Open Software Description introduit au W3C par Marimba et Microsoft une DTD XML Étendu par l OMG pour prendre en compte les besoins pour les composants CORBA Utilisé pour les descripteurs, 4 DTD XML pour le Software Package Descriptor le CORBA Component Descriptor le Component Assembly Descriptor le Property File Descriptor Un assemblage de composants est déployé par un outil de déploiement fourni par les vendeurs L outil de déploiement interagit avec l utilisateur pour choisir les machines et les processus L application de déploiement interagit avec des structures d accueil sur chacune des machines Installation, AssemblyFactory, Assembly, ServerActivator, ComponentServer, Container 47 descripteur de package logiciel Décrit un package de manière globale Inclut des informations générales sur le composant et des spécifiques sur les implantations <softpkg> avec name et version, <pkgtype> général : <title>, <author>, <description>, <license> interface : <idl> propriétés : <propertyfile> dépendances : <dependency> implantation : <implementation>, <os>, <processor>, <compiler>, <code>,... informations spécifiques au composant <descriptor> 48 Michel RIVEILL, Université de Nice 24

25 Le descripteur de composant En grande partie généré à partir du CIDL informations techniques sur la structure de l implantation Complété par l utilisateur pour fixer : <persistentstoreinfo> <transaction> <eventpolicy> <threading> <configurationcomplete> <poapolicy> 49 Le descripteur d assemblage Décrit la configuration initiale (mais virtuelle) des maisons, des instances de composants et des connexions Incluant des sections pour décrire : la liste des archives de composants le partitionnement des instances de composants les connexions entre ces instances uses et provides emits / publishes et consumes 50 Michel RIVEILL, Université de Nice 25

26 Évaluation du modèle de déploiement Les points forts : format de diffusion de packages logiciels plusieurs implantations d un même composant description des connecteurs (architecture) configuration des propriétés non fonctionnelles Les points faibles : un assemblage ne peut pas être un composant! pas de notion de connecteurs d adaptation pour gérer l impédance entre des composants non compatibles peu d API pour l interopérabilité entre outils de déploiement et structures d accueil le même fournisseur pour tous les outils! -) 51 Apport du dernier né la plate-forme.net Open Internet Protocols Web Service Rendre accessible depuis l Internet tous les composants Interrogation/Recherche des services Web disponibles sur ce site Chaque service est défini par son interface exprimée en XML N importe quel client peut appeler le service (utilisation du protocole SOAP) Seul les protocoles de l Internet sont utilisés SOAP Discovery SOAP Contract Language SOAP XML, XSD HTTP, SMTP 52 Michel RIVEILL, Université de Nice 26

27 Apport du petit dernier.net Programmer un composant avec plusieurs langages système de type commun C# VB C++ C# JScript Base Class Library Support Common Language Specification Web Services Data and XML User Interface Base Class Library Common Language Runtime Visual Studio.NET Thread Support Type Checker Security Engine IL to Native Compilers Code Manager Class Loader COM Marshaler Exception Manager Debug Engine Garbage Collector 53 L évolution (révolution) dans le monde Microsoft Avec.Net, tous les composants sont construits sur le même substrat Il n est pas nécessaire de leur ajouter quelque chose pour les rendre interopérable COM / DCOM.Net 54 Michel RIVEILL, Université de Nice 27

28 Apport du petit dernier.net Simplifier le déploiement et l administration Assemblages Unité de déploiement, de gestion de version et de sécurité Proche d une DLLs, mais auto-descriptible (manifeste) Installation sans «effet de bord» Applications et composants peuvent être partagés ou privés Exécution Side-by-side Plusieurs versions du même composants peuvent co-exister, éventuellement dans le même processus 55 Apport du petit dernier.net ASP+ Applications : Accès depuis un navigateur Web Control = formulaires / ASP = servlet / ADO = base de données HTTP IIS ASP+ Application Web Controls ADO+ app.aspx <HTML> <script> <<langage << au << choix </script> </HTML> Common Language Runtime Windows DBMS 56 Michel RIVEILL, Université de Nice 28

29 Apport du petit dernier.net ASP+ Applications : utilisation d un service Web SOAP IIS ASP+ Application ADO+ app.asmx class X { [WebMethod] public int } Method1() { } Common Language Runtime Windows DBMS 57 Apport du petit dernier.net ADO+ : accès aux systèmes d information Une interface pour accéder aux services de persistances Implémentation fournie par Microsoft ou par les fournisseurs de base de données Classes de base dans ADO+ Connection, Command, DataSet.NET Application ADO+ Managed Provider Common Language Runtime DBMS 58 Michel RIVEILL, Université de Nice 29

30 Un point de vue personnel Je suis à la bourre Chaque plate-forme apporte son lot «d innovation» en particulier sur l interopérabilité E.J.B : mono-langage multi-plate-forme MV CCM : multi-langage multi-plate-forme intégration au niveau IDL.Net : multi-langage (mono)-plate-forme intégration par un système de type commun + MV pour ce système de type Mais c est plus une évolution qu une véritable révolution On aura du mal à concurrencer les grosses machines On == les équipes de recherche universitaires Impossibilité d évaluer en permanence des plates-formes qui évoluent nécessité d un véritable partenariat avec des industriels Pour comprendre les problèmes et les enjeux Trouver les fondements et préparer nos enseignements Difficulté de retrouver le «signal» à l intérieur du «bruit» Difficulté de surfer sur la vague Mais il reste de très nombreuses niches Comment étendre le middleware et les composants qui s exécutent? Comment faire interagir des composants? Comment décrire le comportement d un composant, d un assemblage, on peut en trouver de nombreux autres mais celles -ci concernent les activités de RAINBOW 59 Objectifs Construire simplement des Applications Réparties dans de nombreux domaines d'application de l'informatique répartie, on constate une évolution de plus en plus rapide des besoins et des conditions d'utilisation. Les applications et le système qui supportent son exécution doivent être adaptable : Par rapport aux besoins exprimés par les différents acteurs (concepteurs, intégrateurs, utilisateurs finals, administrateurs), tant en ce qui concerne les fonctions de l'applications que ses propriétés non-fonctionnelles (sécurité, disponibilité, qualité de service, persistance des données, etc.). Par rapport à l'environnement de l'application (disponibilité de ressources, qualité des connexions et des transmissions, etc.). L'adaptation peut prendre différentes formes (changement de structure, de contenu, de localisation des programmes ou des données, etc.), et peut être statique ou dynamique. L adaptation peut concerner : les composants, les interactions, le middleware, Des exigences de réactivité imposent souvent une adaptation dynamique. 60 Michel RIVEILL, Université de Nice 30

31 Observations... Ecrire efficacement des applications réparties est difficile Le «contour» de l application est mal défini Un domaine particulier nécessite un environnement approprié (OS+langage) La plupart des OS sont rigides et évoluent difficilement Evolution des besoins applicatifs Les environnements d'exécution existants sont peu appropriés aux applications modernes : travail coopératif, multimédia, mondes virtuels systèmes embarqués, cartes à puce, téléphonie mobile réseaux actifs etc Caractéristiques de ces applications : répartition géographique des utilisateurs et des ressources, nombres et localisations non connus a priori -non stables forte contrainte de sécurité (données sensibles, copyright, droits d'accès), modèles de données complexes configurations dynamiques de partenaires hétérogènes Evolution du «support matériel»... Les performances augmentent, les prix et la taille diminuent et les OS "classiques" n'ont pas le temps de suivre 61 Construction d'applications réparties Middleware extensible Extensible pour le spécialiser par domaine d applications, par type de matériels (stations, portables, PDA, téléphones, ) parce qu il est impossible de prévoir à l'avance tous les usages et les évolutions technologiques ex : utilisation du téléphone cellulaire pour surfer sur la toile, passer des commandes Extensible à la volée il est parfois impossible d arrêter un système pour le modifier : application de télécommunication, applications embarquées (satellites) Interopérabilité entre divers domaines/applications pour la réutilisation des logiciels existants pour l'échange de données entre applications pour permettre la mobilité (code et/ou donnée) sécurité, efficacité, panne Même ensemble d outils et de services au-dessus de systèmes existants ou pouvant exister sur des machines nues 62 Michel RIVEILL, Université de Nice 31

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

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

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

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

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

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/bases de données

Architectures web/bases de données Architectures web/bases de données I - Page web simple : HTML statique Le code HTML est le langage de base pour concevoir des pages destinées à être publiées sur le réseau Internet ou intranet. Ce n'est

Plus en détail

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

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

Plus en détail

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

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

Plus en détail

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

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

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

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

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

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

Présentation de l architecture COM Compinent Object Model DCOM/ACTIVEX

Présentation de l architecture COM Compinent Object Model DCOM/ACTIVEX Présentation de l architecture COM Compinent Object Model DCOM/ACTIVEX Yves LALOUM Conseil Audit de Systèmes d information CISA ylaloum@advisehr.com 29/04/2003 1 1.Introduction Les services de composant

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

Urbanisme du Système d Information et EAI

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

Plus en détail

CORBA. (Common Request Broker Architecture)

CORBA. (Common Request Broker Architecture) CORBA (Common Request Broker Architecture) Projet MIAGe Toulouse Groupe 2 1 CORBA, introduction (1/4) Les systèmes répartis permettent de créer des applications basées sur des composants auto-gérables,

Plus en détail

Nouvelles Plateformes Technologiques

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

Plus en détail

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

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 scientifique Majeure ARCHITECTURE DES SYSTEMES D INFORMATION. Mentions Ingénierie des Systèmes d Information Business Intelligence

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

Plus en détail

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

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

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

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau)

INTERNET est un RESEAU D ORDINATEURS RELIES ENTRE EUX A L ECHELLE PLANETAIRE. Internet : interconnexion de réseaux (anglais : net = réseau) CS WEB Ch 1 Introduction I. INTRODUCTION... 1 A. INTERNET INTERCONNEXION DE RESEAUX... 1 B. LE «WEB» LA TOILE, INTERCONNEXION DE SITES WEB... 2 C. L URL : LOCALISER DES RESSOURCES SUR L INTERNET... 2 D.

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

Composants logiciels Exemples : Java Beans, Enterprise Java Beans

Composants logiciels Exemples : Java Beans, Enterprise Java Beans Composants logiciels Exemples : Java Beans, Enterprise Java Beans Sacha Krakowiak Université Joseph Fourier Projet Sardes (INRIA et IMAG-LSR) http://sardes.inrialpes.fr/~krakowia Introduction : évolution

Plus en détail

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

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

Plus en détail

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

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

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

Les nouvelles architectures des SI : Etat de l Art

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

Plus en détail

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

NFP111 Systèmes et Applications Réparties

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

Plus en détail

Software Engineering and Middleware A Roadmap

Software Engineering and Middleware A Roadmap Software Engineering and Middleware A Roadmap Ecrit par: Dr. Wolfgang Emmerich Présenté par : Mustapha Boushaba Cours : IFT6251 Wolfgang Emmerich Enseignant à University College London: Distributed Systems

Plus en détail

Architectures d'intégration de données

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

Plus en détail

Prise en compte des ressources dans les composants logiciels parallèles

Prise en compte des ressources dans les composants logiciels parallèles Prise en compte des ressources dans les composants logiciels parallèles Aperçus de l action RASC et du projet Concerto F. Guidec Frederic.Guidec@univ-ubs.fr Action RASC Plan de cet exposé Contexte Motivations

Plus en détail

Notre Catalogue des Formations IT / 2015

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

Plus en détail

Intégration de systèmes client - serveur Des approches client-serveur à l urbanisation Quelques transparents introductifs

Intégration de systèmes client - serveur Des approches client-serveur à l urbanisation Quelques transparents introductifs Intégration de systèmes client - serveur Des approches client-serveur à l urbanisation Quelques transparents introductifs Jean-Pierre Meinadier Professeur du CNAM, meinadier@cnam.fr Révolution CS : l utilisateur

Plus en détail

Introduction aux applications réparties

Introduction aux applications réparties Introduction aux applications réparties Noël De Palma Projet SARDES INRIA Rhône-Alpes http://sardes.inrialpes.fr/~depalma Noel.depalma@inrialpes.fr Applications réparties Def : Application s exécutant

Plus en détail

ETUDE COMPARATIVE DES SERVICES DE RECHERCHE SUR PROPRIETES

ETUDE COMPARATIVE DES SERVICES DE RECHERCHE SUR PROPRIETES ETUDE COMPARATIVE DES SERVICES DE RECHERCHE SUR PROPRIETES Dhouha Ayed, Chantal Taconet et Guy Bernard GET / INT, CNRS Samovar 9 rue Charles Fourier, 91011 Évry, France {Dhouha.Ayed, Chantal.Taconet, Guy.Bernard}@int-evry.fr

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

Plan. Department of Informatics

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

Plus en détail

Veritas Storage Foundation par Symantec

Veritas Storage Foundation par Symantec Veritas Storage Foundation par Symantec Gestion en ligne de ressources de stockage hétérogènes Veritas Storage Foundation offre une solution complète pour la gestion en ligne de ressources de stockage

Plus en détail

Annuaires LDAP et méta-annuaires

Annuaires LDAP et méta-annuaires Annuaires LDAP et méta-annuaires Laurent Mynard Yphise 6 rue Beaubourg - 75004 PARIS yphise@yphise.com - http://yphise.fr T 01 44 59 93 00 F 01 44 59 93 09 LDAP020314-1 Agenda A propos d Yphise Les annuaires

Plus en détail

WEA Un Gérant d'objets Persistants pour des environnements distribués

WEA Un Gérant d'objets Persistants pour des environnements distribués Thèse de Doctorat de l'université P & M Curie WEA Un Gérant d'objets Persistants pour des environnements distribués Didier Donsez Université Pierre et Marie Curie Paris VI Laboratoire de Méthodologie et

Plus en détail

Patrons de Conception (Design Patterns)

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

Plus en détail

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

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

Plus en détail

Introduction aux Systèmes Distribués. Introduction générale

Introduction aux Systèmes Distribués. Introduction générale Introduction aux Systèmes Distribués Licence Informatique 3 ème année Introduction générale Eric Cariou Université de Pau et des Pays de l'adour Département Informatique Eric.Cariou@univ-pau.fr 1 Plan

Plus en détail

Présentation de l architecture CORBA

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

Plus en détail

Introduction au Déploiement

Introduction au Déploiement Introduction au Déploiement Noël De Palma - Projet SARDES - INRIA - IMAG LSR Remerciement à d. donsez 03/03/06 PLAN Définition et problématique OSGI FRACTAL JADE Conclusion 03/03/06 2 Définition Environnement

Plus en détail

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

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

Plus en détail

2 Chapitre 1 Introduction

2 Chapitre 1 Introduction 1 Introduction Ce livre présente les Enterprise JavaBeans 2.0 et 1.1 qui constituent la troisième et la deuxième version de la spécification des Enterprise JavaBeans. Tout comme la plate-forme Java a révolutionné

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

Systèmes répartis. Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine. Systèmes répartis p.1/49

Systèmes répartis. Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine. Systèmes répartis p.1/49 Systèmes répartis Fabrice Rossi http://apiacoa.org/contact.html. Université Paris-IX Dauphine Systèmes répartis p.1/49 Systèmes répartis Définition très large : un système réparti est système informatique

Plus en détail

Groupe Eyrolles, 2004 ISBN : 2-212-11504-0

Groupe Eyrolles, 2004 ISBN : 2-212-11504-0 Groupe Eyrolles, 2004 ISBN : 2-212-11504-0 Table des matières Avant-propos................................................ 1 Quel est l objectif de cet ouvrage?............................. 4 La structure

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

Agents Mobiles/Code Mobile

Agents Mobiles/Code Mobile Systèmes Répartis Agents Mobiles Agents Mobiles/Code Mobile Modèles d exécution répartie et agents mobiles Infrastructure pour les agents mobiles Expérimentations Conclusion 1 Modèles d exécution répartie

Plus en détail

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France Développement d applications Internet et réseaux avec LabVIEW Alexandre STANURSKI National Instruments France Quelles sont les possibilités? Publication de données Génération de rapports et de documents

Plus en détail

Des solutions J2EE open source professionnelles adaptées à votre système d information d entreprise

Des solutions J2EE open source professionnelles adaptées à votre système d information d entreprise Des solutions J2EE open source professionnelles adaptées à votre système d information d entreprise Vendredi 26 Novembre 2004 9h.00 Espace Batignolles 18 rue de la Condamine 75017 Paris www.espace-batignolles.com

Plus en détail

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige. : JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL

Plus en détail

Introduction. Réalisation d'une application répartie (fournissant un ou plusieurs services)

Introduction. Réalisation d'une application répartie (fournissant un ou plusieurs services) Intergiciels Introduction Réalisation d'une application répartie (fournissant un ou plusieurs services) Bas niveau : Sockets Haut niveau : Intergiciels (Middleware) Appel de procédure à distance (RPC),

Plus en détail

Systèmes d'informations historique et mutations

Systèmes d'informations historique et mutations Systèmes d'informations historique et mutations Christophe Turbout SAIC-CERTIC Université de Caen Basse-Normandie Systèmes d'informations : Historique et mutations - Christophe Turbout SAIC-CERTIC UCBN

Plus en détail

Cours Bases de données

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

Plus en détail

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

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

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

Plus en détail

JOnAS 5. Serveur d application d

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

Plus en détail

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

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

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

CORBA haute performance

CORBA haute performance CORBA haute performance «CORBA à 730Mb/s!» Alexandre DENIS PARIS/IRISA, Rennes Alexandre.Denis@irisa.fr Plan Motivations : concept de grille de calcul CORBA : concepts fondamentaux Vers un ORB haute performance

Plus en détail

Programmation Web. Introduction

Programmation Web. Introduction Programmation Web Introduction 1 Introduction 10 séances 1 h cours + 1h TD Notes : contrôle continu DS 1 TP : note de groupe : rapport + code source + démo TD : note personnelle (=0 si 2 absences non justifiées)

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

1. QCM (40 points) (1h)

1. QCM (40 points) (1h) Examen 1ère session 2012-2013 page 1 NSY 102 - AISL IPST-CNAM Intranet et Designs patterns NSY 102 Vendredi 26 Avril 2013 Durée : 3 heures Enseignants : LAFORGUE Jacques 1. QCM (40 points) (1h) Mode d'emploi

Plus en détail

DotNet. Plan. Les outils de développement

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

Plus en détail

Nouveautés dans Crystal Reports XI version 2

Nouveautés dans Crystal Reports XI version 2 Nouveautés dans Crystal Reports XI version 2 Introduction Introduction Cette section fournit un aperçu détaillé des composants, fonctionnalités et avantages de la dernière version de Crystal Reports :

Plus en détail

Introduction aux «Services Web»

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

Plus en détail

Programmation Web Avancée Introduction aux services Web

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

Plus en détail

Annexe : La Programmation Informatique

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

Plus en détail

Vulgarisation Java EE Java EE, c est quoi?

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

Plus en détail

Extension de passerelles OSGi pour les domaines de la distribution électrique: Modèles et outils

Extension de passerelles OSGi pour les domaines de la distribution électrique: Modèles et outils Extension de passerelles OSGi pour les domaines de la distribution électrique: Modèles et outils F. Baude, A. Bottaro, J.M. Brun, A. Chazalet, A. Constancin, D. Donsez; L. Gurgen, Ph. Lalanda, V. Legrand,

Plus en détail

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

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

Plus en détail

Développer avec les technologies ESRI. ESRI Developer Network (EDN) Gaëtan LAVENU ESRI France Jérémie MAJEROWICZ ESRI France

Développer avec les technologies ESRI. ESRI Developer Network (EDN) Gaëtan LAVENU ESRI France Jérémie MAJEROWICZ ESRI France Développer avec les technologies ESRI ESRI Developer Network (EDN) Gaëtan LAVENU ESRI France Jérémie MAJEROWICZ ESRI France Le système ArcGIS Desktop Client mobile Client léger ArcReader ArcView ArcEditor

Plus en détail

Le cadre des Web Services Partie 1 : Introduction

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

Plus en détail

Logiciels libres et Open source

Logiciels libres et Open source Logiciels libres et Open source ANDSI 13/04/2004 NGO Can Chieu Plan Les concepts Linux Système d'exploitation Linux pour serveurs Linux pour stations Serveurs d applications Développement Applications

Plus en détail

Gestion du serveur WHS 2011

Gestion du serveur WHS 2011 Chapitre 15 Gestion du serveur WHS 2011 Les principales commandes Windows Home Server 2011 reprend l ergonomie de Windows 7 et intègre les principales commandes de Windows Server 2008 R2. Les commandes

Plus en détail

Le passage à l échelle de serveur J2EE : le cas des EJB

Le passage à l échelle de serveur J2EE : le cas des EJB Le passage à l échelle de serveur J2EE : le cas des EJB Sylvain Sicard, Noël De Palma, Daniel Hagimont CFSE 4 5-8 Avril 2005 LSR 1 Plan de la présentation 1. Architecture de serveur J2EE en grappe 2. Problématique

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

Architectures n-tiers Intergiciels à objets et services web

Architectures n-tiers Intergiciels à objets et services web Plan pour aujourd hui Architectures n-tiers Intergiciels à objets et services web Clémentine Nebut Nebut LIRMM / Université de Montpellier 2 Clementine.nebut@lirmm.fr Introduction Architectures classiques

Plus en détail

IBM DB2 Alphablox. d administration GC11-2170-00

IBM DB2 Alphablox. d administration GC11-2170-00 IBM DB2 Alphablox Guide d administration Version 8.4 GC11-2170-00 IBM DB2 Alphablox Guide d administration Version 8.4 GC11-2170-00 ii IBM DB2 Alphablox - Guide d administration Table des matières Avis

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

FileMaker Server 14. Guide de démarrage

FileMaker Server 14. Guide de démarrage FileMaker Server 14 Guide de démarrage 2007-2015 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, Californie 95054 FileMaker et FileMaker Go sont des marques

Plus en détail

JOnAS Day 5.1. Outils de développements

JOnAS Day 5.1. Outils de développements JOnAS Day 5.1 Outils de développements Agenda Introduction Plugin Eclipse (JOPE) Plugin NetBeans (JOnbAS) Cargo 2 Bull, 2009 JOnAS Day 5.1 Objectifs - Réduire les temps de développement - Construction

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

Evidian IAM Suite 8.0 Identity Management

Evidian IAM Suite 8.0 Identity Management Evidian IAM Suite 8.0 Identity Management Un livre blanc Evidian Summary Evidian ID synchronization. Evidian User Provisioning. 2013 Evidian Les informations contenues dans ce document reflètent l'opinion

Plus en détail

Présentation du module. Base de données spatio-temporelles. Exemple. Introduction Exemple. Plan. Plan

Présentation du module. Base de données spatio-temporelles. Exemple. Introduction Exemple. Plan. Plan Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Partie 1 : Notion de bases de données (Conception

Plus en détail