Configuration Interface for MEssage ROuting



Documents pareils
L Orchestration de Services Web avec Orchestra. Goulven Le Jeune Orchestra Project Manager

FOSS Enterprise Integration Plattaform

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

Mineure Architectures Orientées Services SOA Exécution de processus. Mineure SOA. Exécution de processus

Exécution de processus

Le moteur de workflow JBPM

Exécution de processus

Architecture SOA Un Système d'information agile au service des entreprises et administrations

1 JBoss Entreprise Middleware

JOnAS Day 5.1. Outils de développements

Les nouvelles architectures des SI : Etat de l Art

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

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

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

Livre Blanc WebSphere Transcoding Publisher

Nouvelles technologies pour l intégration : les ESB

BPEL Orchestration de Web Services

SITE WEB E-COMMERCE ET VENTE A DISTANCE

Les tableaux de bord de pilotage de nouvelle génération. Copyright PRELYTIS

Qu'est-ce que le BPM?

Alfresco et TYPO3 Présenté par Yannick Pavard dans le cadre des rencontres WebEducation Février 2008

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Urbanisme du Système d Information et EAI

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Langage HTML (2 partie) <HyperText Markup Language> <tv>lt La Salle Avignon BTS IRIS</tv>

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG

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

Mineure Architectures Orientées Services SOA Business Process Modeling (BPM) Mineure SOA. Business Process Modeling (BPM)

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

TAGREROUT Seyf Allah TMRIM

2.1 Liferay en un clin d'oeil Forces, faiblesses, opportunités et menaces Résumé de notre évaluation... 5

CQP Développeur Nouvelles Technologies (DNT)

Installation et prise en main

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

ERP5. Gestion des Services Techniques des Collectivités Locales

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

Business Process Modeling (BPM)

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

Fiche de l'awt Intégration des applications

La démarche SOA et l interopérabilité applicative

Les Architectures Orientées Services (SOA)

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

Web Application Models

Formations 2015 JASPER, REDMINE, TABLEAU, TALEND, SPAGO BI ALTIC & SYNOTIS - TRAINING CENTER 24 RUE DE L EGLISE VINCENNES

Le 09 et 10 Décembre 09

Java pour le Web. Cours Java - F. Michel

Serveur de travail collaboratif Michaël Hoste -

JOnAS 5 Enterprise OSGi javaee compliant

Youssef LYHYAOUI Ingénieur Java/J2EE, SOA, ESB, Web services 31 ans Statut : Indépendant SITUATION ACTUELLE

Business & High Technology

Date de diffusion : Rédigé par : Version : Mars 2008 APEM 1.4. Sig-Artisanat : Guide de l'utilisateur 2 / 24

SITools2, un système d'accès aux données scientifiques web 2.0

Sage CRM. 7.2 Guide de Portail Client

Joomla! Création et administration d'un site web - Version numérique

Open Source Service Oriented Architecture with. Adrien LOUIS Chief architect EBM WebSourcing

Introduction MOSS 2007

Projet ESB - Retour d expérience

INDUSTRIALISATION ET RATIONALISATION

Rapport de veille technologique

ECLIPSE ET PDT (Php development tools)

Formations 2015 JASPER, REDMINE, TABLEAU, TALEND, SPAGO BI SYNALTIC 24 RUE DE L EGLISE VINCENNES

Prise en main du BusinessObjects XI R2 Service Pack 2/ Productivity Pack

Petite définition : Présentation :

IFIPS 5 / Nouvelles Architectures Logicielles Projet : Bus de web services avec «moteur» BPEL

Mettez les évolutions technologiques au service de vos objectifs métier

Exploitez la pleine puissance de l'architecture orientée services (SOA) en la combinant à la modélisation des processus d'affaires

Guide de la documentation des produits BusinessObjects XI

Administration du site (Back Office)

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

et Groupe Eyrolles, 2006, ISBN :

PROJET : ETNIC ESB JANUS. Guide technique : WS-Notification - Clustering. BULL Services et Solutions

Business Process Management 2010 : La Solution IBM Maximiser l agilité de l entreprise UNE ETUDE DE JEMM RESEARCH

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

MOTEUR DE WORKFLOW Mise en oeuvre d'openwfe Version septembre 2006

Direction des Technologies de l Information. Présentation OCDE. Contribution du Parlement européen. L utilisation de l OPEN SOURCE au PE

JOnAS 5. Serveur d application d

SOA Open Source Intégration des services et business process dans une architecture SOA Open Source. Bruno Georges JBoss, a Division of Red Hat

TD/TP 1 Introduction au SDK d Android

Catalogue Formations Jalios

FORMATION PcVue. Mise en œuvre de WEBVUE. Journées de formation au logiciel de supervision PcVue 8.1. Lieu : Lycée Pablo Neruda Saint Martin d hères

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)

BIRT (Business Intelligence and Reporting Tools)

Introduction à la plateforme J2EE

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

THEGREENBOW FIREWALL DISTRIBUE TGB::BOB! Pro. Spécifications techniques

M2 SIAW - Exemples de stages réalisés. Gabriella Salzano - Document de travail - 28/1/2015

NOUVEAUTES de Microsoft Dynamics CRM 2011 REF FR 80342A

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

Notre Catalogue des Formations IT / 2015

4. SERVICES WEB REST 46

Messagerie & Groupeware. augmentez l expertise de votre capital humain

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

Serveur Acronis Backup & Recovery 10 pour Linux. Update 5. Guide d'installation

IBM Business Process Manager

Transcription:

Configuration Interface for MEssage ROuting Cahier des Charges Date : 05/04/07 Version : 1.1 Statut : diffusable Auteurs : BAGNARD Natacha FOROT Julien 1/16

Table des révisions Version Date Modifications 0.1 17/01/07 Création du document 0.2 01/02/07 Modification du document suite à une lecture de Jérôme Camilleri 0.3 08/02/07 Modification du document suite à une lecture de Jérôme Camilleri (fiche CDC_Camilleri_08022007.odt) 0.4 01/03/07 Modification du document suite à une réunion (fiche reunion_01032007.odt) 0.5 14/03/07 Modification du document suite à une lecture de Jérôme Camilleri (fiche CDC_Camilleri_13032007.odt) 1.0 20/03/07 Validation du document par Jérôme Camilleri 1.1 05/04/2007 Modification suite au 1er audit avec Martine Tasset (fiche Audit1_04042007.odt) 2/16

Table des matières 1 Introduction...4 1.1 But du document......4 1.2 Portée du document......4 1.3 Définition, Acronymes et Abréviations...4 1.4 Organisation du document...7 2 Description générale...7 2.1 Contexte......7 2.2 Analyse de l'existant......8 2.2.1 Généralités...8 2.2.2 Fonctionnalités...9 2.2.3 Description technique...10 3 Analyse des besoins...10 3.1 Utilisateurs du futur système...10 3.2 Besoins fonctionnels......10 3.2.1 Acteur...11 3.2.2 Cas d'utilisation...11 3.3 Besoins non fonctionnels......13 3.3.1 Refonte de l'architecture...13 3.3.2 ESB supportés...13 3.3.3 Composants implémentés...14 4 Contraintes...15 4.1 Exigences de documentation....15 4.2 Exigences de qualité......15 4.3 Contraintes temporelles et ressources...16 4.4 Contraintes techniques....16 4.4.1 Environnement de développement...16 4.4.2 Environnement logiciel de l'application...16 4.4.3 Framework...16 5 Évolutions envisageables...16 3/16

1 Introduction 1.1 But du document Ce document a pour but de définir le problème soumis par le client et auquel le projet logiciel doit apporter une solution. Il devra décrire précisément les besoins (fonctionnels et non fonctionnels) et exigences des utilisateurs futurs, les fonctionnalités attendues ainsi que les contraintes techniques. Une série de discussions, de réunions et de réflexion avec le MOAd permettra de rédiger ce cahier des charges. 1.2 Portée du document Ce cahier des charges, une fois validé par le client, servira de base à la spécification et à la conception du produit à livrer. Ce document est destiné: au MOAd : Jérôme Camilleri à la consultante : Martine Tasset au jury du Master 2 Pro GI pour l'évaluation du stage à l'équipe projet : Natacha Bagnard et Julien Forot Ce document permettra d'avoir une définition unique et précise du produit/prototype. Il servira de base : à l'évaluation du produit final. à la rédaction des plans de tests d'acceptation. à la rédaction du plan de développement logiciel. 1.3 Définition, Acronymes et Abréviations projet. Le tableau suivant donne une définition des acronymes et abréviations spécifiques à ce Terme BC Définition Les Binding Components fournissent des connections pour des services externes à l'environnement JBI (protocoles de communications ftp, soap,..) grâce à un mécanisme de normalisation. Le BC normalise le message qui lui vient de l'extérieur sous format WSDL 1.1 ou WSDL 2.0. 4/16

Terme Eclipse EMF ESB Définition Eclipse est un environnement de développement (IDE) Open Source principalement destiné au langage JAVA et fonctionnant à base d'extensions (plugins). Eclipse Modeling Framework est un framework Eclipse qui permet de générer une partie du code d'un programme à partir de son modèle de données. L'Enterprise Service Bus ou ESB est une technologie informatique intergicielle permettant à des applications hétérogènes d'interagir au travers de services standards qu'elles mettent à disposition. Elle s'appuie sur les standards suivants : Services Web (SOAP, WSDL, etc.) Connecteurs d'applications JCA Langage XML. JBI Java Business Integration est une norme édictée dans la JSR 208 dans le cadre du Java Community Process. Le problème initial est l'intégration de données en provenance de sources différentes au sein d'un Système d'informations composé d'applications disparates. Les ESB font partie des solutions existantes. JBI est une spécification normalisant ces intégrations via un jeu d'api permettant à tout fournisseur les respectant, de pouvoir se connecter à un container JBI pour échanger des messages avec le reste du SI. GEF GMF Package JBI Petals Graphical Editing Framework est un framework Eclipse qui permet de générer une partie du code d'une interface graphique à partir du modèle de celle ci. Graphical Modeling Framework est un framework Eclipse fournissant un pont entre les frameworks EMF et GEF. Archive Zip contenant toutes les informations nécessaires au déploiement et au fonctionnement d'une application JBI. Petals (ObjectWeb) est un produit Open Source ESB qui implémente la norme JBI (Java Business Integration : cf spécification JSR 208). Petals est un serveur d'applications Java. Il fournit un support des composants suivants : SOAP Binding, JMS, Mail, FTP, XQuare, POJO, XSLT, CSV, Forward, BPEL Orchestra. Plugin Application étendant les capacités et les fonctionnalités d'une autre application. 5/16

Terme SA SE ServiceMix SOA Définition Service Assembly. Ensemble des Service Unit et des informations concernant les connexions entre les composants. Les Service Engine fournissent des services de transformations et de «logique business» aux autres composants. Ne sont pas directement en contact avec des composants extérieurs au JBI, contrairement aux BC. ServiceMix (Apache) est un produit Open Source ESB qui implémente de la norme JBI (Java Business Integration : cf spécification JSR 208). ServiceMix est un composant léger qui peut être intégré à n'importe quel serveur d'applications Java. Ses fonctionnalités se rapprochent de celles d'un broker ou d'un serveur d'intégration. Il fournit un support des composants suivants : BPEL, JCA, Transformation / XSLT, XSQL, FTP, HTTP, JMS, RSS, Email. SOA est le sigle de Service Oriented Architecture ou Architecture Orientée Services. La notion de SOA est un modèle d interaction applicative qui met en œuvre des services (composants logiciels). Le service est une action exécutée par un «fournisseur» (ou «producteur») à l attention d un «client» (ou «consommateur»). SOAP protocol Simple Object Acces Protocol. Il s'agit d'un modèle décrit par une recommandation du W3C. Celui ci permet l'appel de méthodes sur un objet distribué à travers le réseau Internet. Les paramètres nécessaires à l'appel sont transférés via le protocole HTTP par un message XML si bien qu'aucun problème de Firewall ou Proxy ne se pose. SU Service Unit. Ensemble des fichiers utilisés par une instance d'un composant : fichiers de configuration du composant et fichiers annexes utilisés par le composant ( feuille de style XSLT par exemple pour une transformation). 6/16

Terme Workflow XML XSL XSLT Définition Un workflow est un flux d'informations au sein d'une organisation, comme par exemple la transmission automatique de documents entre des personnes. On appelle «workflow» («flux de travail») la modélisation et la gestion informatique de l'ensemble des tâches à accomplir et des différents acteurs impliqués dans la réalisation d'un processus métier. Le terme de «workflow» pourrait donc être traduit en français par «gestion électronique des processus métier». De façon plus pratique, le workflow décrit le circuit de validation, les tâches à accomplir entre les différents acteurs d'un processus, les délais, les modes de validation, et fournit à chacun des acteurs les informations nécessaires pour la réalisation de sa tâche. Extensible Markup Language. Métalangage extensible dérivé de SGML permettant la structuration des données. Extensible Stylesheet Language. Spécifications du W3C en vue de permettre une création de documents HTML ou XML qui sépare le fond et la forme, pour une clarté et une maintenance des sites plus simples. C'est un descendant de CSS. XSL Transformations : Langage dédié à la transformation de données XML, faisant partie de XSL. 1.4 Organisation du document La suite de ce document donne une vue générale de l'application logicielle qui fait l'objet de ce travail. Il donne la description des besoins et fonctions du produit demandé. Le paragraphe 2 décrit le contexte dans lequel le projet se déroule et l'application existante. Il décrit également les utilisateurs visés par cette application. Le paragraphe 3 détaille les besoins fonctionnels et non fonctionnels de l'application. Le paragraphe 4 traite des contraintes de développement et de maintenance. Le paragraphe 5 dresse une liste non exhaustive des évolutions envisagées/envisageables pour l'application. 2 Description générale 2.1 Contexte Ce projet est réalisé dans le cadre du projet BSOA (Bull Service Oriented Architecture). BSOA est une plate forme middleware Open Source développée par Bull R&D. Celle ci devra 7/16

permettre la mise en oeuvre de systèmes d'informations flexibles grâce à l'approche SOA (Service Oriented Architecture). BSOA comprend entre autres un workflow de personnes (Bonita), un workflow de services Web inter applicatifs (Orchestra), une console d'administration, un IDE et un portail Web (ExoPlatforme) ; le tout étant déployé sur le serveur d'applications J2EE JonAS. BULL BULL service BULL R&D Equipe BSOA ( Projet cimero ) MOA MOE Illustration 1: Contexte du projet CIMERO Dans le cadre du projet BSOA, deux anciens Master2 Pro GI ont développé une solution logicielle, CIMERO (Configuration Interface for MEssage ROuting), permettant de faciliter l'utilisation de ServiceMix et la configuration graphique d'un flux de messages. Le but de ce stage est de réaliser une nouvelle version de CIMERO. 2.2 Analyse de l'existant 2.2.1 Généralités CIMERO se compose actuellement de 2 plugins distincts : l'éditeur graphique (editor) et le plugin ServiceMix. CIMERO editor offre à l'utilisateur la possibilité de générer un fichier de configuration sous format XML ou un package JBI sous forme d'archive, représentant tout deux le graphe créé par l'utilisateur mais sous une forme différente. Via un menu contextuel, il est possible de déployer le package JBI généré sur un serveur ServiceMix, si celui ci est lancé. CIMERO ServiceMix permet de lancer à partir de l'environnement Eclipse un serveur ServiceMix. L'utilisateur peut ainsi démarrer ou arrêter ServiceMix. 2.2.2 Fonctionnalités Le projet CIMERO développé par deux anciens étudiants Master2 Pro Génie Informatique possède déjà de nombreuses fonctionnalités. Le diagramme de cas d'utilisation suivant présente les 8/16

fonctionnalités proposées par Cimero 1. Illustration 2: Use Case général de CIMERO version 1 a)acteurs Le développeur représente tous les utilisateurs qui désirent créer ou éditer un graphe destiné à la configuration de ServiceMix. Toutes les actions présentées ci dessus lui sont accessibles. b)cas d'utilisation Créer un graphe et modifier un graphe L'utilisateur peut créer une nouvelle représentation du flux sous la forme d'un graphe. Il peut ensuite le modifier en y ajoutant, paramétrant ou supprimant des composants. Il peut ajouter des composants disponibles dans une boîte à outils, modifier les propriétés d'un composant précédemment inséré ou choisir de le supprimer. Charger / sauvegarder un graphe Il est possible de sauvegarder un graphe. Son état actuel (les composants, la configuration, etc...) est sauvegardé et il est possible, par la suite, de charger ce graphe et ainsi retrouver son état au moment de la sauvegarde. Créer un fichier de configuration/package JBI L'utilisateur, après avoir édité un graphe, peut décider de créer le fichier de configuration ou un package JBI correspondant à ce graphe. Les fichiers générés sont spécifiques à ServiceMix. Démarrer / arrêter ServiceMix 1 Voir Cahier des charges de la version précédente : CahierDesChargesV2.5.sxw. 9/16

L'utilisateur peut démarrer (et arrêter) ServiceMix sans quitter son environnement de développement (Eclipse). Une fois ServiceMix démarré, il est possible de déployer des fichiers de configuration. Déployer un fichier de configuration/package JBI L'utilisateur peut déployer un fichier de configuration ou un package JBI qu'il a généré au préalable pour un flux donné. Les services déployés sont alors actifs. 2.2.3 Description technique Ce logiciel fonctionne sous l'ide Eclipse 3.1. Il est écrit en langage JAVA à l'aide du JDK 1.4. Il fonctionne quelque soit l'os utilisé : Windows, Debian... 3 Analyse des besoins 3.1 Utilisateurs du futur système Les utilisateurs finaux de CIMERO sont des designers de flux. On distingue 2 catégories principales d'utilisateurs cibles pour le logiciel : Les utilisateurs novices : Ils utilisent un outil comme CIMERO pour découvrir JBI. Ils n'utilisent pas les fonctions avancées du logiciel. Les utilisateurs expérimentés : Ils utilisent un outil comme CIMERO pour produire des applications JBI qu'ils modifieront ensuite manuellement si besoin. Des fonctionnalités avancés décrites dans la partie suivante seront mises à leur disposition. 3.2 Besoins fonctionnels La nouvelle version de CIMERO propose de nouvelles fonctionnalités. Le diagramme des cas d'utilisation suivant présente l'ensemble des fonctions qui seront accessibles à l'utilisateur, les décorations précisent le niveau minimum de compétence des utilisateurs cibles. Les fonctionnalités concernant les fichiers de configurations (déployer et générer) ne seront plus disponibles car ces fichiers ne sont pas standards. 10/16

Illustration 3: Use Case général de CIMERO version 2 3.2.1 Acteur Le type d'acteur concerné ne change pas. Voir section 2.2.1, page 9 de ce document. 3.2.2 Cas d'utilisation Les cas d'utilisation conservé de la version précédente sont décrits section 2.2.2, page 9 de ce document. Ajouter/Éditer un composant L'utilisateur pourra ajouter de nouveaux composants standards en décrivant ses propriétés, grâce à un outil graphique, inclus dans CIMERO. Ces propriétés permettront de construire un modèle du composant. Ceux ci seront ensuite inclus dans la palette et utilisables dans un graphe. 11/16

Lors de l'utilisation d'un de ces composants dans un graphe, les valeurs des propriétés du modèle devront être définies. L'utilisateur aura également la possibilité d'éditer un composant déjà présent dans la palette via cet outil graphique, ceci afin de permettre au logiciel de gérer l'évolution des composants existants comme l'ajout de nouvelles propriétés, la suppression de propriétés, etc... Une livraison partielle de cette fonctionnalité pourra être proposée dans la mesure où les aspects techniques ne sont pas totalement maîtrisés. Migrer un fichier de CIMERO Version 1 vers CIMERO Version 2 L'utilisateur pourra importer un fichier XML correspondant à la traduction d'un fichier CIMERO Version 1 (.cimero) dont il souhaite générer le.cimero2 associé. Le fichier XML devra être de la forme attendue et utiliser des composants disponibles dans CIMERO, sous peine de ne pas pouvoir être importé. Si ces conditions sont vérifiées l'utilisateur pourra alors visualiser le graphe correspondant et l'éditer. Le logiciel proposera un mode dégradé dans le cas où le fichier est correct mais que des composants ne sont pas supportés par CIMERO : Représentation graphique commune à tous les composants non reconnus, aucune visualisation des propriétés et donc pas d'édition de leurs valeurs possible. Générer une tâche Ant pour un flux L'utilisateur pourra choisir de générer une tâche Ant. Voici un exemple de la tâche ant qui devra être générée pour le graphe suivant : Graphe CIMERO Tâche Ant Composant1 Générer SA unique Générer SA Composant 1 Générer SA Composant 2 Composant2 Générer SA Composant 3 Déployer SA unique Déployer SAs distincts Composant3 Illustration 4: Exemple de tâche Ant pour un graphe donné Générer SA unique Cette cible permet de créer un package JBI correspondant à un SA unique, contenant les Sus 12/16

des différents composants. Générer SA Composant n Cette cible permet de créer un package JBI correspondant à un SA contenant un SU, qui instancie le composant n. Les packages sont indépendants les uns des autres. Déployer SA unique Cette cible permet de déployer le package JBI généré grâce à la cible «Générer SA unique». Déployer SAs distincts Cette cible permet de déployer les packages JBI générés grâce aux cibles «Générer SA Composant n». L'utilisateur devra modifier manuellement la tâche Ant, si il souhaite préciser sur quel serveur chaque package doit être déployé, sinon tous les packages seront déployées sur l'esb défini par défaut. Monitorer un flux L'utilisateur aura la possibilité de passer en mode test. Il pourra alors visualiser, sur le graphe CIMERO, les échanges de messages dans l'application JBI déployée sur le bus grâce à des capteurs intégrés à l'esb ServiceMix. Pour rendre cette fonction accessible aux autres ESB, il faudra implémenter des capteurs spécifiques pour chacun d'eux. Les tests et la mise au point des applications JBI développées grâce à CIMERO seront donc facilités par cet outil, car il permettra de suivre le parcours des messages et leurs contenus, et donc de repérer les composants qui posent problème. 3.3 Besoins non fonctionnels 3.3.1 Refonte de l'architecture Une refonte de l'architecture globale du logiciel est nécessaire, pour des questions de maintenabilité et d'évolutivité. Le framework GMF devra être utilisé dans le cadre de cette refonte. 3.3.2 ESB supportés La première version de CIMERO est entièrement dépendante de l'esb ServiceMix. Bull souhaite pour la deuxième version de l'application être le plus indépendant possible de l'esb, pour des raisons d'évolutivité et de standardisation, et pour avoir, par exemple, la possibilité d'utiliser un autre conteneur JBI, comme PETALS. La nouvelle version de CIMERO doit permettre de supporter un nouvel ESB avec un coût minimum de développement : simple ajout d'un nouveau module. Le logiciel sera donc le plus générique possible, il s'appuiera sur les spécifications JBI 1. 1 JBI 1.0 JSR 208 13/16

3.3.3 Composants implémentés a)composants standards ServiceMix Les composants ServiceMix suivants seront supportés par CIMERO : Binding Components Nom du composant servicemix http servicemix jms servicemix ftp servicemix quartz Description Nécessaire pour la communication avec les Services Web Nécessaire pour la communication avec les destinations JMS Utilisé pour accéder à un serveur ftp (lire/écrire) ou surveiller un répertoire ftp Permet de planifier des actions dans le temps Service Engines Nom du composant servicemix saxon servicemix drools servicemix eip:content based router servicemix eip:wire tap servicemix eip:content enricher servicemix eip:split aggregator servicemix eip:xpath splitter servicemix eip:message filter Description Permet de transformer un document XML suivant les règles du fichier de transformation XSLT Routeur utilisant un fichier de règles Drools Routeur sur le contenu (règles XPATH) Envoie une copie du flot sur une deuxième sortie Enrichit le message à partir d'une source (par exemple un WS) Collecte les messages qu'il reçoit et renvoi l'agrégation en fonction d'une propriété définie Reçoit un message et le renvoi en plusieurs parties (grâce à des règles XPATH) Filtre les messages reçus grâce à un prédicat XPATH b)composants non-supportés dans le futur CIMERO Les composants non standards ne seront pas supportés dans la nouvelle version de 14/16

CIMERO. Voici la liste des composants supportés par ServiceMix mais qui ne seront plus supportés par CIMERO : RSS flow Email Cependant, si une version standard de ces composants est proposée par la suite, ils pourront être ajoutés grâce à l'outil d'ajout de composants. c) Packaging du produit final Le plugin developpé devra être disponible sous deux packaging différents : plugin Eclipse classique version standalone 4 Contraintes 4.1 Exigences de documentation Dans l'optique d'une maintenabilité facilitée, une documentation aussi complète et précise que possible sera rédigée et permettra à une future équipe de développeurs de reprendre et d'améliorer ce projet. Liste des documents qui seront attachés à ce projet : Cahier des charges Plan d'assurance qualité logicielle Plan de développement logiciel Dossier de spécifications externes Dossier de conception globale Dossier de conception détaillée Plan de tests Jeu de tests Manuel utilisateur 4.2 Exigences de qualité L'application sera développée en suivant les recommandations faites dans le Plan d'assurance Qualité Logicielle. Les principaux facteurs requis sont : Portabilité Maintenabilité 15/16

4.3 Contraintes temporelles et ressources Le projet durera 9 mois. Il sera composé de deux périodes : une période à mi temps (3 mois) : le mardi, mercredi et jeudi de début janvier à fin mars une période à plein temps (6 mois) : de début avril à fin septembre. L'équipe de développement sera composée de deux personnes et le projet devra être terminé avant le 30 septembre. 4.4 Contraintes techniques 4.4.1 Environnement de développement Le plugin sera écrit en langage JAVA à l'aide du JDK 1.5, avec l'ide Eclipse. 4.4.2 Environnement logiciel de l'application Ce logiciel devra fonctionner sous l'ide Eclipse 3.3. Le fonctionnement du logiciel sera indépendant de l'os. 4.4.3 Framework L'application sera développée en utilisant le framework GMF d'eclipse. 5 Évolutions envisageables Le module de support de l'esb Petals pourra être implémenté pour permettre également à l'utilisateur de créer des applications JBI pour Petals avec CIMERO. Grâce à l'architecture mise en place pendant le développement du logiciel, le module s'intégrera facilement à l'application. 16/16