<?xml version="1.0" encoding="UTF-8"?>
<document>
  <header>
    <authors>Noel Rocher, Laurent Le Grandois, Francois Le Droff <author><email>noel.rocher@jboss.com</email><name>Noel Rocher</name></author><author><email>Laurent.LeGrandois@atosorigin.com</email><name>Laurent Le Grandois</name></author><author><email>Francois.ledroff@atosorigin.com</email><name>Francois Le Droff</name></author></authors>
    <dates>
      <creation>30-oct-2006</creation>
      <validation></validation>
    </dates>
    <language>fr</language>
    <appname>XFire</appname>
    <release>1.2.2</release>
    <licenseid>MIT</licenseid>
    <licensedesc></licensedesc>
    <url>http://xfire.codehaus.org/</url>
    <desc>Framework de développement, déploiement et consommation de web services en environnement J2EE (partie Web)</desc>
    <demourl></demourl>
    <qsosformat>1.6</qsosformat>
    <qsosappfamily>j2ee-ws-stack</qsosappfamily>
    <qsosspecificformat></qsosspecificformat>
  </header>
  <section name="generic" title="Section générique">
    <desc>Les critères génériques de la méthode qsos version 1.6</desc>
    <element name="intrinsicdurability" title="Pérennité">
      <desc>Pérennité</desc>
      <element name="maturity" title="Maturité">
        <desc>Maturité</desc>
        <element name="age" title="Age">
          <desc0>moins de 3 mois</desc0>
          <desc1>entre 3 mois et 3 ans</desc1>
          <desc2>plus de 3 ans</desc2>
          <score>1</score>
          <comment>Projet démarré en 2004 (CVS Créé le 2004-03-14)</comment>
        </element>
        <element name="stability" title="Stabilité">
          <desc0>Logiciel instable avec de nombreuses versions et patches générant des effets de bords.</desc0>
          <desc1>Version de production stabilisée mais un peu vieille. Quelques difficultés à stabiliser les versions de développement.</desc1>
          <desc2>Logiciel stable. Les nouvelles versions corrigent des bugs, mais apportent de façon prépondérante de nouvelles fonctionnalités.</desc2>
          <score>0</score>
          <comment>Version 1.2.2 sortie le 03/10/2006. Les projets Xfire et Celtix ont décidé le 22/07/2006 de fusionner. Le nouveau projet s'appellera Apache CeltiXfire</comment>
        </element>
        <element name="historyknowproblems" title="Historique, problèmes connus">
          <desc0>Le logiciel connaît de nombreux problèmes qui peuvent être rédhibitoires.</desc0>
          <desc1>Pas de problèmes majeurs, ni de crise.</desc1>
          <desc2>Bon historique de gestion de projet et de crise.</desc2>
          <score>0</score>
          <comment>Fusion Xfire avec Celtix</comment>
        </element>
        <element name="forkprobability" title="Probabilité de FORK, provenance d'un FORK">
          <desc0>Forte probabilité de fork dans un futur proche.</desc0>
          <desc1>Le logiciel provient d'un fork mais a très peu de chances d'être forké dans un futur proche.</desc1>
          <desc2>Très faible probabilité de fork. Le logiciel ne provient pas d'un fork.</desc2>
          <score>0</score>
          <comment>Possibilité de changer la license</comment>
        </element>
      </element>
      <element name="adoption" title="Adoption">
        <desc>Adoption par la communauté et  l'industrie</desc>
        <element name="popularity" title="Popularité (à rapporter à la cible visée : grand public, niche, …)">
          <desc0>Très peu d'utilisateurs identifiés</desc0>
          <desc1>Usage détectable sur Internet</desc1>
          <desc2>Nombreux utilisateurs et références</desc2>
          <score>1</score>
          <comment>Peu connu</comment>
        </element>
        <element name="references" title="Références">
          <desc0>Aucune</desc0>
          <desc1>Peu de références, pas d'usage critique</desc1>
          <desc2>Souvent implémenté sur des applications critiques</desc2>
          <score>1</score>
          <comment>Peu de références ( inf 10)</comment>
        </element>
        <element name="contributingcommunity" title="Communauté des contributeurs">
          <desc0>Pas de communauté ou de réelle activité (forum, liste de diffusion, ...)</desc0>
          <desc1>Communauté existante avec une activité notable.</desc1>
          <desc2>Communauté forte: grosse activité sur les forums, de nombreux contributeurs et défenseurs.</desc2>
          <score>1</score>
          <comment>13 Commiters sur Xfire, mais communauté CodeHaus</comment>
        </element>
        <element name="books" title="Livres, Publications">
          <desc0>Aucun livre sur ce logiciel.</desc0>
          <desc1>Moins de 5 livres publiés sur ce logiciel.</desc1>
          <desc2>Plus de 5 livres publiés sur ce logiciel et dans différentes langues.</desc2>
          <score>0</score>
          <comment>Aucune publication trouvée</comment>
        </element>
      </element>
      <element name="developmentleadership" title="Direction des développements">
        <desc>Organisation et direction des développements</desc>
        <element name="leadingteam" title="Equipe dirigeante">
          <desc0>1 ou 2 individus engagés, pas clairement identifiés.</desc0>
          <desc1>Entre 2 et 5 personnes indépendantes.</desc1>
          <desc2>Plus de 5 personnes.</desc2>
          <score>1</score>
          <comment>Un développeur semble être le gardien du projet</comment>
        </element>
        <element name="managementstyle" title="Mode de direction">
          <desc0>Dictature complète.</desc0>
          <desc1>Despotisme éclairé.</desc1>
          <desc2>Conseil d'architectes avec un leader identifié (ex: KDE)</desc2>
          <score>1</score>
          <comment>Communauté</comment>
        </element>
      </element>
      <element name="activity" title="Activité">
        <desc>Activité du et autour du projet</desc>
        <element name="developersidentificationturnover" title="Nombre de développeurs, identification, turnover">
          <desc0>Moins de 3 développeurs, pas clairement identifiés.</desc0>
          <desc1>Entre 4 et 7 développeurs, ou plus, non identifiés, avec un "turnover" important.</desc1>
          <desc2>Plus de 7 développeurs, équipe très simple.</desc2>
          <score>1</score>
          <comment>Peu de développeurs référencés</comment>
        </element>
        <element name="activityonbugs" title="Activité autour des bugs">
          <desc0>Réactivité faible sur le forum ou sur la liste de diffusion, ou rien au sujet des corrections de bugs dans les notes de versions.</desc0>
          <desc1>Activité détectable mais sans processus clairement exposé, temps de résolution long</desc1>
          <desc2>Forte réactivité, basée sur des rôles et des assignations de tâches</desc2>
          <score>1</score>
          <comment>A ce jour, 200 bugs ouverts</comment>
        </element>
        <element name="activityonfunctionalities" title="Activité autour des fonctionnalités">
          <desc0>Pas ou peu de nouvelles fonctionnalités</desc0>
          <desc1>Évolution du produit conduite par une équipe dédiée ou par des utilisateurs, mais sans processus clairement exposé</desc1>
          <desc2>Les requêtes pour les nouvelles fonctionnalités sont clairement outillées, Feuille de route disponible</desc2>
          <score>2</score>
          <comment>Désir clairement exprimé d'obtenir une intéropérabilité maximale</comment>
        </element>
        <element name="activityonreleases" title="Activité sur les releases/versions">
          <desc0>Très faible activité que ce soit sur les versions de production ou beta/de développement</desc0>
          <desc1>Activité que ce soit sur les versions de production ou beta/de développement, avec des versions correctives mineures fréquentes.</desc1>
          <desc2>Activité importante avec des versions correctives fréquentes, et des versions majeures planifiées liées aux prévisions de la feuille de route</desc2>
          <score>1</score>
          <comment>Pas de visibilité</comment>
        </element>
      </element>
    </element>
    <element name="industrializedsolution" title="Industrialisation">
      <desc>Niveau d'industrialisation du projet</desc>
      <element name="independenceofdevelopments" title="Indépendance des développements">
        <desc0>Développements réalisés à plus de 60% par des employés d'une seule société.</desc0>
        <desc1>60% maximum</desc1>
        <desc2>20% maximum</desc2>
        <score>0</score>
        <comment></comment>
      </element>
      <element name="services" title="Services">
        <desc>Offres de services</desc>
        <element name="training" title="Formation">
          <desc0>Pas d'offre de formation identifiée</desc0>
          <desc1>Offre existante mais restreinte géographiquement ou à un seul langage ou fournie par un seul fournisseur</desc1>
          <desc2>Offre riche, plusieurs fournisseurs, plusieurs langages, divisée en modules et en niveaux</desc2>
          <score>0</score>
          <comment>Pas de formations référencées</comment>
        </element>
        <element name="support" title="Support">
          <desc0>Pas d'offre de support identifiée</desc0>
          <desc1>Offre existante mais restreinte géographiquement ou à un seul langage ou fournie par un seul fournisseur, ou sans garantie</desc1>
          <desc2>Offre riche, plusieurs fournisseurs, avec des garanties (sur les temps de résolution).</desc2>
          <score>1</score>
          <comment>1 offre de support commercial : http://envoisolutions.com</comment>
        </element>
        <element name="consulting" title="Conseil">
          <desc0>Pas d'offres de conseil identifiées</desc0>
          <desc1>Offre existante mais restreinte géographiquement ou à un seul langage ou fournie par un seul fournisseur</desc1>
          <desc2>Offre riche, plusieurs fournisseurs, plusieurs langages</desc2>
          <score>1</score>
          <comment>1 seule offre référencée</comment>
        </element>
      </element>
      <element name="documentation" title="Documentation">
        <desc0>Pas de documentation utilisateur</desc0>
        <desc1>La documentation existe mais est en partie obsolète, ou restreinte à un seul langage, ou peu détaillée</desc1>
        <desc2>Documentation à jour, traduite, et éventuellement adaptée à différentes cibles de lecteurs (end user, sysadmin, manager, ...)</desc2>
        <score>2</score>
        <comment>Nombreux guides disponibles sur le site</comment>
      </element>
      <element name="qualityassurance" title="Méthode qualité">
        <desc>Processus et méthode qualité</desc>
        <element name="quality" title="Assurance qualité">
          <desc0>Pas de processus Qualité identifié</desc0>
          <desc1>Processus Qualité existant, mais non formalisé ou non outillé</desc1>
          <desc2>Processus automatique de tests dans le cycle de vie du code et publication des résultats</desc2>
          <score>2</score>
          <comment></comment>
        </element>
        <element name="tools" title="Outillage">
          <desc0>Pas d'outils de gestion de bugs, ni d'outils de ticketing</desc0>
          <desc1>Outils standards fournis (une forge par exemple) mais peu utilisés</desc1>
          <desc2>Utilisation très active des outils</desc2>
          <score>1</score>
          <comment>Pas de méthodologie référencée</comment>
        </element>
      </element>
    </element>
    <element name="exploitability" title="Exploitabilité">
      <desc>Niveau d'exploitabilité</desc>
      <element name="easeofuseergonomics" title="Facilité d'utilisation, ergonomie">
        <desc0>Difficulté d'utilisation, demande une connaissance approfondie des fonctionnalités du logiciel</desc0>
        <desc1>Ergonomie austère et très technique</desc1>
        <desc2>Ergonomie élaborée et IHM comprenant des fonctions d'aide</desc2>
        <score>1</score>
        <comment></comment>
      </element>
      <element name="administrationmonitoring" title="Administration / Supervision">
        <desc0>Pas de fonctionnalités de contrôle, ni d'administration</desc0>
        <desc1>Fonctionnalités présentes mais incomplètes ou à améliorer</desc1>
        <desc2>Fonctionnalités complètes et faciles de contrôle, et d'administration. Intégration possible avec des outils tiers (ex: SNMP, syslog, ...)</desc2>
        <score>0</score>
        <comment></comment>
      </element>
    </element>
    <element name="technicaladaptability" title="Adaptabilité">
      <desc>Adaptabilité technique</desc>
      <element name="modularity" title="Modularité">
        <desc0>Logiciel monolithique</desc0>
        <desc1>Présence de modules haut niveau permettant un premier niveau d'adaptation</desc1>
        <desc2>Conception modulaire, permettant des adaptations faciles par sélection et/ou création de modules</desc2>
        <score>2</score>
        <comment>Fonctionnalités gérées par modules</comment>
      </element>
      <element name="codemodification" title="Facilité technique de modification du code existant">
        <desc0>Tout à la main</desc0>
        <desc1>Recompilation possible mais complexe, sans outils, ni documentation.</desc1>
        <desc2>Recompilation facile, outillée (ex: make, ANT, maven...), et documentée.</desc2>
        <score>1</score>
        <comment>Scripts Ant et Maven2</comment>
      </element>
      <element name="codeextension" title="Facilité d'extension du code">
        <desc0>Toute modification demande une recompilation du code</desc0>
        <desc1>Architecture conçue pour des extensions statiques mais exige une recompilation</desc1>
        <desc2>Architecture de plugins, conçue pour des extensions dynamiques et sans recompilation</desc2>
        <score>2</score>
        <comment>Possibilité de définir des handlers</comment>
      </element>
    </element>
    <element name="strategy" title="Stratégie">
      <desc>Stratégie du projet</desc>
      <element name="license" title="Licence">
        <desc>License</desc>
        <element name="permissiveness" title="Permissivité (NB : à pondérer uniquement si le client désire un jour devenir propriétaire du code)">
          <desc0>Licence très stricte, comme la GPL</desc0>
          <desc1>Licence modérée entre les deux extrêmes (GPL et BSD), licence duale dépendante du type d'utilisateur (personne, société, ...) ou de leur activité.</desc1>
          <desc2>Licence très permissive comme BSD et Apache</desc2>
          <score>2</score>
          <comment>MIT licence</comment>
        </element>
        <element name="protectionagainstproprietaryforks" title="Protection contre des forks commerciaux">
          <desc0>Licence très permissive comme BSD et Apache</desc0>
          <desc1>Licence modérée entre les deux extrêmes (GPL et BSD), licence duale dépendante du type d'utilisateur (personne, société, ...) ou de leur activité.</desc1>
          <desc2>Licence très stricte, comme la GPL</desc2>
          <score>0</score>
          <comment>MIT licence</comment>
        </element>
      </element>
      <element name="copyrightowners" title="Détenteur des droits">
        <desc0>Les droits sont détenus par quelques individus ou entités commerciales, facilitant le changement de licence</desc0>
        <desc1>Les droits sont détenus par de nombreux individus de façon homogène, rendant le changement de licence très difficile</desc1>
        <desc2>Les droits sont détenus par une entité légale, une fondation dans laquelle la communauté a confiance (ex: FSF, Apache, ObjectWeb)</desc2>
        <score>1</score>
        <comment>Quelques individus</comment>
      </element>
      <element name="modificationofsourcecode" title="Modification du code">
        <desc0>Pas de moyen pratique de proposer des modifications de code</desc0>
        <desc1>Des outils sont fournis pour accéder et modifier le code (ex: CVS, SVN) mais ne sont pas vraiment utilisés pour développer le produit</desc1>
        <desc2>Le processus de modification de code est bien défini, exposé, et respecté, basé sur des rôles bien définis.</desc2>
        <score>2</score>
        <comment>Code placé sous SVN/CVS</comment>
      </element>
      <element name="roadmap" title="Feuille de route">
        <desc0>Pas de feuille de route publiée</desc0>
        <desc1>Feuille de route sans planning</desc1>
        <desc2>Feuille de route versionnée, avec planning et mesures de retard</desc2>
        <score>1</score>
        <comment>Roadmap pas très bien définie (Fusion avec Celtix)</comment>
      </element>
      <element name="sponsor" title="Sponsor">
        <desc0>Le logiciel n'a pas de sponsors, l'équipe principale n'est pas rémunérée</desc0>
        <desc1>Le logiciel a un sponsor unique qui détermine sa stratégie</desc1>
        <desc2>Le logiciel est sponsorisé par l'industrie</desc2>
        <score>1</score>
        <comment>1 Société référencée</comment>
      </element>
      <element name="strategicalindependence" title="Indépendance stratégique">
        <desc0>Pas de stratégie détectable ou forte dépendance à un acteur unique (individu, société, sponsor)</desc0>
        <desc1>Vision stratégique partagée avec plusieurs autres projets open-source mais sans engagement fort des propriétaires des droits</desc1>
        <desc2>Indépendance forte de l'équipe de développement, droits détenus par une entité, fort engagement dans un processus de standardisation</desc2>
        <score>2</score>
        <comment></comment>
      </element>
    </element>
  </section>
  <section name="j2ee1_4" title="respects des standards J2EE1.4">
    <element name="jsr101" title="JSR 101 Java API for XML-Based RPC (JAX-RPC) 1.1">
      <desc> JAX-RPC supporte SOAP avec des attachements, vous pouvez employer JAX-RPC APIs pour envoyer des attachements MIME. 
        Mais les types MIME ne peuvent pas être décrits par l'interface WSDL.
      </desc>
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Non supporté. Possibilité de d'utiliser des clients Spring avec JaxRpcPortProxyFactoryBean</comment>
      <score>0</score>
    </element>
    <element name="jsr67_saaj-1_2" title="JSR  67 SOAP with Attachments API for Java Specification (SAAJ) 1.2">
      <desc> SAAJ fournit une manière standard d'envoyer des documents XML par Internet depuis la plateforme Java. 
      </desc>
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Support prévu pour la version 2.0</comment>
      <score>0</score>
    </element>
    <element name="jsr109" title="JSR 109 Web Services for EE (WS4EE) 1.0">
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Non supporté.</comment>
      <score>0</score>
    </element>
    <element name="jaxr" title="Java API for XML Registries Specification (JAXR) 1.0">
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Possibilité d'accès annuaires UDDI 2.0 via JAXR</comment>
      <score>2</score>
    </element>
  </section>
  <section name="jee5" title="respects des standards JEE5">
    <element name="jsr101-jee5" title="JSR 101 Java API for XML-Based RPC (JAX-RPC) 1.1">
      <desc> JAX-RPC supporte SOAP avec des attachements, vous pouvez employer JAX-RPC APIs pour envoyer des attachements MIME. 
        Mais les types MIME ne peuvent pas être décrits par l'interface WSDL.                
      </desc>
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Non supporté. </comment>
      <score>0</score>
    </element>
    <element name="jsr67_saaj-1_3" title="JSR  67 SOAP with Attachments API for Java (SAAJ) 1.3">
      <desc> SAAJ fournit une manière standard d'envoyer des documents XML par Internet depuis la plateforme de Java.
        SAAJ 1.3 supporte SOAP 1.2. Pour plus d'informations sur les spécifications de SAAJ. 
        SAAJ est souvent utilisée par des APIs de plus haut niveau comme JAXR et JAX-RPC.
        Mais, elle peut tout à fait être utilisée de manière indépendante.                 
      </desc>
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Support prévu pour la version 2.0</comment>
      <score>0</score>
    </element>
    <element name="jsr921-109" title="JSR 921/109 Implementing Enterprise Web Services (WS4EE 1.1 et 1.2)">
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment></comment>
      <score>0</score>
    </element>
    <element name="jaxr1_0" title="Java API for XML Registries Specification (JAXR) 1.0">
      <desc> Donne un moyen uniforme d'utiliser les registres basés sur des standards tels que ebXML ou UDDI.
        Permet l'accès à différents types de registres XML. 
        Ces registres XML sont une infrastructure permettant la construction, 
        le déploiement et la découverte de Web services. JAXR permet l'interaction avec plusieurs standards, 
        dont UDDI (Universal Description, Discovery, and Integration) et ebXML (Registry and Repository standard). 
      </desc>
      <desc0>API non implémentée</desc0>
      <desc1>API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>API implémentée, implémentation stable</desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="jsr224" title="JSR 224 Java API for XML-Based Web Services (JAX-WS) 2.0">
      <desc> JAX-WS est la pièce maitresse de la « pile intégrée » qui inclut JAX-WS 2.0, JAXB 2.0, et SAAJ 1.3.
        La pile intégrée représente une nouvelle architecture logique de la fonctionnalité des services Web.
      </desc>
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Incomplet</comment>
      <score>1</score>
    </element>
    <element name="jsr181" title="JSR 181 Web Service Metadata for the Java Platform">
      <desc>La JSR 181 définit un format d'annotations facilitant la définition des services WEB             
      </desc>
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment>Supporté sur JDK1.4 et JDK5</comment>
      <score>2</score>
    </element>
    <element name="jsr222" title="JSR 222 Java Architecture for XML Binding (JAXB) 2.0">
      <desc>La JSR 222 fournit une manière aisée de lier un schéma XML à une représentation en code Java. 
        JAXB utilise des schémas (W3C XML Schema) pour faire ces liens.
        Une fois ce lien créé (grâce à un compilateur qui va générer les packages correspondant à un schéma donné), 
        vous pouvez facilement sérialiser/desérialiser les objets Java sous un format XML.                
      </desc>
      <desc0>JSR/API non implémentée</desc0>
      <desc1>JSR/API partiellement implémentée, ou implémentation défectueuse</desc1>
      <desc2>JSR/API implémentée, implémentation stable</desc2>
      <comment></comment>
      <score>2</score>
    </element>
  </section>
  <section name="messaging" title="Messaging">
    <element name="xml-rpc" title="XML-RPC">
      <desc>XML-RPC est un protocole RPC (Remote procedure call), une spécification simple qui permet à des processus 
        s'exécutant dans des environnements différents de faire des appels de méthodes à travers un réseau 
        (protocole HTTP pour le transport des données et la norme XML pour le codage des données). 
        XML-RPC est conçu pour permettre à des structures de données complexes d'être transmises, exécutées et renvoyées très facilement.
        XML-RPC est l'ancêtre de SOAP
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>0</score>
    </element>
    <element name="soap" title="SOAP">
      <desc>Simple Object Access Protocol (SOAP): protocole RPC orienté objet bâti sur XML et recommandé par le W3C.
        Il permet la transmission de messages entre objets distants, ce qui signifie qu'il autorise un objet à invoquer
        des méthodes d'objets physiquement situés sur une machine distante (par protocole HTTP, SMTP, etc ...)                
      </desc>
      <element name="soap-1_1" title="SOAP 1.1">
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment>Support complet</comment>
        <score>2</score>
      </element>
      <element name="soap-1_2" title="SOAP 1.2">
        <desc>La version 1.2 de SOAP présente un certain nombre de modifications dans la syntaxe et
          fournit de la sémantique supplémentaire (ou clarifiée) par rapport à SOAP 1.1 
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment>Support complet</comment>
        <score>2</score>
      </element>
    </element>
  </section>
  <section name="attachements" title="Attachements">
    <element name="swa" title="SwA: MIME : Multipurpose Internet Mail Extensions">
      <desc>En 2000, la note du W3C sur SOAP Messages with Attachments (SwA) a expliqué comment continuer à utiliser MIME 
        (Multipurpose Internet Mail Extensions) pour des attachements référencés dans le header de SOAP.     
        Si MIME est toujours utilisable, d'autres protocoles ont vu le jour.           
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment>Support prévu pour la version 2.0</comment>
      <score>0</score>
    </element>
    <element name="mtom-xop" title="support de MTOM/XOP  ">
      <desc>XOP (XML-binary Optimized Packaging) : permet d'inclure dans le fichier XML des données binaires
        (par exemple pour des fichiers images, son, video) pour « améliorer l'efficacité ».                
        MTOM (pour Message Transmission Optimization Mechanism) est une description de la façon dont XOP est utilisé dans le transport SOAP HTTP.
        Il spécifie comment gérer les pièces attachées à un message Soap 1.2.
        Le message et la pièce attachée sont encapsulés dans une enveloppe  Mime Multipart.
        MTOM fournit un mécanisme de pointeur logique - l'élément xbinc:Include -, qui permet de créer des références internes aux pièces attachées - 
        directement dans le message Soap. Cette approche facilite le traitement des messages Soap et favorise leur atomicité.                 
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité à XOP</desc1>
      <desc2>MTOM complètement supporté</desc2>
      <comment></comment>
      <score>2</score>
    </element>
  </section>
  <section name="interop" title="Interopérabilité">
    <element name="ws-i" title="WS-I Basic Profile 1.1">
      <desc>Ensemble de spécifications et de règles facilitant l'intéropérabilité entre services web régis par les protocoles SOAP         
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="basic-profile" title="Attachment Profile 1.0">
      <desc>Complète Basic Profile 1.1. Fournit le support des messages SOAP à base de pièces jointes.      
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>0</score>
    </element>
  </section>
  <section name="transport" title="transport">
    <element name="http" title="SOAP over HTTP">
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="ftp" title="SOAP over FTP">
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>0</score>
    </element>
    <element name="vm" title="SOAP intra VM">
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>0</score>
    </element>
    <element name="jms" title="SOAP over JMS">
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="xmpp" title="SOAP over XMPP (jabber)">
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment>Experimental</comment>
      <score>1</score>
    </element>
    <element name="tcp" title="SOAP over TCP">
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment></comment>
      <score>0</score>
    </element>
  </section>
  <section name="registry" title="Les registres et services de recherche">
    <element name="uddi" title="le support UDDI">
      <desc>UDDI : acronyme de Universal Description Discovery and Integration,
        est une  norme édictée par l'OASIS définissant une technologie d'annuaire basée sur XML 
        et plus particulièrement destinée aux services Web, 
        notamment dans le cadre d'architectures de type SOA (Service Oriented Architecture).
        Un annuaire UDDI permet de localiser sur le réseau le service Web recherché. 
        Il repose sur le protocole de transport SOAP.
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment>Possibilité d'accès annuaires UDDI 2.0 via JAXR</comment>
      <score>2</score>
    </element>
    <element name="ebXML" title="ebXML">
      <desc>abréviation de l'anglais Electronic Business using eXtensible Markup Language signifiant commerce électronique en utilisant XML,
        est une suite de spécifications basées sur le langage XML et définissant un standard pour le commerce électronique. 
        Ce standard est édité par l'OASIS. 
        ebXML s'adresse aux entreprises de toutes tailles, en permettant de définir les échanges électroniques 
        entre l'entreprise et ses divers partenaires, comme les catalogues électroniques                
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté</desc2>
      <comment>Possibilité d'accès annuaires UDDI 2.0 via JAXR</comment>
      <score>2</score>
    </element>
  </section>
  <section name="metaData" title="MetaData">
    <element name="wsdl-1_1" title="support de WSDL 1.1">
      <desc>Le WSDL décrit une Interface publique d'accès à un Service Web :
        C'est une description basée sur XML qui indique « comment communiquer pour utiliser le service »; 
        le protocole de communication, et le format de messages requis pour communiquer avec ce service.                 
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté : le WSDL est exposé automatiquement</desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="wsdl-2_0" title="support de WSDL 2.0">
      <desc>La version 1.1 n'est pas approuvée par le W3C, 
        la version 2.0 a pour ambition de devenir un standard officiel approuvé par le W3C.                
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité</desc1>
      <desc2>supporté : le WSDL est exposé automatiquement</desc2>
      <comment>Support prévu pour la version 2.0</comment>
      <score>0</score>
    </element>
  </section>
  <section name="ws-star" title="support des spécifications WS-*">
    <element name="meta-data" title="Meta-données">
      <element name="ws-policy" title="WS-Policy">
        <desc>WS-Policy permet de spécifier et de prendre en charge les pré-requis et
          capacités des fournisseurs et consommateurs de services web.        
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>0</score>
      </element>
      <element name="ws-metadata-exchange" title="WS-MetadataExchange">
        <desc>"WS-MEX" permet d'obtenir les informations décrivant le service  (WSDL, XSD et policies)   
          Il vise la standardisation des opérations de récupération des "policies d’un endpoint" 
          mais aussi son WSDL et son schéma de données (GetPolicy, GetWSDL, GetSchema).
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté: exposition des WSDLs, XSDs et policies</desc2>
        <comment></comment>
        <score>0</score>
      </element>
    </element>
    <element name="security" title="sécurité">
      <element name="ws-security" title="WS-Security">
        <desc>WS-Security permet d'assurer l'intégrité et la confidentialité du contenu des messages 
          et ce même en présence d'intermédiaires                   
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>2</score>
      </element>
      <element name="ws-security-policy" title="WS-SecurityPolicy">
        <desc>WS-SecurityPolicy: Définition d'assertions décrivant la manière dont est sécurisé un message.                 
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment>Prevu pour version 2.0</comment>
        <score>0</score>
      </element>
      <element name="ws-trust" title="WS-Trust">
        <desc>WS-Trust: offre des méthodes permettant d'obtenir, de renouveler et de valider les jetons de sécurité utilisés par WS-Security              
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>0</score>
      </element>
      <element name="ws-secure-conversation" title="WS-SecureConversation">
        <desc>WS-SecureConversation: peut être vu comme une optimisation du framework de sécurité.  </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>0</score>
      </element>
    </element>
    <element name="qos" title="Qualité de service">
      <element name="ws-addressing" title="WS-Addressing">
        <desc>WS-Addressing : maintient une session entre plusieurs invocations   </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>2</score>
      </element>
      <element name="ws-reliable-messaging" title="WS-ReliableMessaging">
        <desc>WS-ReliableMessaging : permet à un système de messages la gestion des pannes et de la perte ou désorganisation des messages.   </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>0</score>
      </element>
      <element name="ws-coordination" title="WS-Coordination">
        <desc>WS-Coordination : Un framework permettant la coordination des actions au sein d'applications distribuées.
          Utilisé par WS-AtomicTransactions. 
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>0</score>
      </element>
      <element name="ws-atomic-transaction" title="WS-AtomicTransaction">
        <desc> WS-AtomicTransaction : Prise en charge du "commit à deux phases". Toutes les opérations participant à une transaction atomique sont toutes exécutées avec succès ou toutes annulées.
        </desc>
        <desc0>non supporté</desc0>
        <desc1>support limité</desc1>
        <desc2>supporté</desc2>
        <comment></comment>
        <score>0</score>
      </element>
    </element>
  </section>
  <section name="ws_tools" title="Outillage Web Service">
    <element name="wsdl2java" title="génération top-down ou WSDL2Java">
      <desc>Outil permettant de créer automatiquement les classes Java sur la base d'un WSDL.                
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité, instable ou incomplet (ne génère que la partie cliente ou serveur)</desc1>
      <desc2>bon support (client et serveur), l'outil a une granularité fine de génération</desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="java2wsdl" title="génération bottom-up ou Java2WSDL">
      <desc>outil permettant de créer automatiquement les WSDLs correspondant à des classes Java.             
      </desc>
      <desc0>non supporté</desc0>
      <desc1>support limité, instable ou incomplet (ne génère que la partie cliente ou serveur)</desc1>
      <desc2>bon support (client et serveur), l'outil a une granularité fine de génération</desc2>
      <comment></comment>
      <score>0</score>
    </element>
    <element name="build-integration" title="facilité d'intégration au build">
      <desc>Facilité pour créer des livrables ou archives. Facilité d'intégration au build de génération de code       
      </desc>
      <desc0>non supporté: génération en ligne de commande</desc0>
      <desc1>support limité: tâche ant uniquement</desc1>
      <desc2>bonne intégration: tâche ant et plugin Maven1 et/ou Maven2</desc2>
      <comment></comment>
      <score>1</score>
    </element>
    <element name="IDE-support" title="supports IDE">
      <desc>Fourniture de plugins pour les environnements de développement intégrés (IDEs)
        (plugins intégrant les fonctionnalités de génération de code et la création de livrables ou archives).    
      </desc>
      <element name="idea-support" title="support IDEA">
        <desc0>aucun plugin</desc0>
        <desc1>plugin aux fonctionnalités limitées ou défectueuses</desc1>
        <desc2>bon plugin, bonne ergonomie</desc2>
        <comment></comment>
        <score>0</score>
      </element>
      <element name="eclipse-support" title="support Eclipse">
        <desc0>aucun plugin</desc0>
        <desc1>plugin aux fonctionnalités limitées ou défectueuses</desc1>
        <desc2>bon plugin, bonne ergonomie</desc2>
        <comment>Plugin Eclipse permettant la génération de code à partir d »un WSDL</comment>
        <score>1</score>
      </element>
      <element name="netbeans-support" title="support NetBeans">
        <desc0>aucun plugin</desc0>
        <desc1>plugin aux fonctionnalités limitées ou défectueuses</desc1>
        <desc2>bon plugin, bonne ergonomie</desc2>
        <comment></comment>
        <score>0</score>
      </element>
    </element>
  </section>
  <section name="programming" title="Programmation et extensibilité">
    <element name="marshalling-unmarshalling-java-soap" title="Sérialisation/désérialisation automatique d'objets Java depuis et vers des messages SOAP       ">
      <desc0>non supporté</desc0>
      <desc1>supporté mais limité ou réalisé par un data binding obsolète ou non standard</desc1>
      <desc2>supporté et réalisé par un data binding standard et extensible (ex: JAXB)</desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="handlers" title="support pour intercepteurs (handlers)">
      <desc>Intercepteurs qui peuvent être facilement branchés dans l'environnement d'exécution du service pour réaliser des tâches avant l'arrivée des messages au service et/ou après le traitement du service, avant le renvoi au client.
      </desc>
      <desc0>aucun handler/intercepteur supporté</desc0>
      <desc1>support pour handlers/intercepteurs logiques uniquement: capables de modifier le message du service</desc1>
      <desc2>support pour handlers/intercepteurs logiques et protocolaires : 
        c'est à dire capables de modifier le message mais aussi son enveloppe
        associée au protocole (ex: SOAPHandler et LogicalHandler de JAX-WS 2.0)
      </desc2>
      <comment></comment>
      <score>2</score>
    </element>
    <element name="soap-header-parameter-implicit-explicit-contexts-support" title="support pour paramètres d'entête SOAP">
      <desc>Gestion des paramètres en entête de requête SOAP ? 
        Ces paramètres sont invisibles, par défaut, pour le client ainsi que pour l'implémentation du service. 
        C'est un contexte implicite pour le service web utilisé par le système de services web ainsi que 
        les Handlers permettant de gérer des problématiques liées à l'environnement d'exécution du service (la sécurité par exemple).  
        Si ces paramètres d'entête SOAP sont "bindés" dans la WSDL à une opération, 
        ils sont ajoutés à la signature de l'opération et seront donc accessibles dans le code du service web. 
        C'est ce qui forme le contexte explicite. </desc>
      <desc0>paramètres d'entête non gérés</desc0>
      <desc1>support pour contexte implicite: les paramètres d'entête peuvent être connus des handlers</desc1>
      <desc2>support pour contexte implicite et explicite</desc2>
      <comment></comment>
      <score>1</score>
    </element>
    <element name="asynchronous-callback" title="support pour appels asynchrones et callback"><desc>Cette solution de mise en oeuvre de web-services fournit-elle un moyen de gérer les appels asynchrones ? </desc><desc0>appels asynchrones non supportés</desc0><desc1>les appels asynchrones ont un support limité (au polling). 
        Le client est capable d'envoyer une requête SOAP sans être bloqué, en attente de réponse. 
        Mais le callback n'est pas supporté, seul un mécanisme de polling (boucle de rappel basée sur un temporisateur) 
        est éventuellement prévu.
      </desc1><desc2>appels asynchrones supportés par les mécanismes de polling mais aussi de callbacks: la conversation est supportée. 
        Le client fournit une adresse de retour, un intercepteur: un "callback handler/end-point". 
        Cette fonctionnalité est intégrée à JAX-WS 2.0.
        Les notions dérivées de session et conversation sont contenues dans la spécification WS-Addressing.
      </desc2>Polling et Callbacks supportés
      <comment></comment><score>0</score></element>
  </section>
  <section name="ws_admin" title="Fonctionnalités d'administration des web-services">
    <element name="deploy" title="Déploiement de nouveaux services">
      <desc0>Déploiement difficile, ou nécessitant un outillage non standard, ou de nombreuses étapes ou un reboot du serveur</desc0>
      <desc1>Déploiement aisé, mais nécessitant un arrêt du service</desc1>
      <desc2>Déploiement aisé et à chaud (hot deploy)</desc2>
      <comment>Déploiement de webapps via console du serveur d'Applicatiosn J2EE</comment>
      <score>2</score>
    </element>
    <element name="lifecycleManagement" title="Gestion du cycle de vie (arrêt/démarrage/...)">
      <desc0>pas d'interface ni de fonctionnalité d'administration de gestion du cycle de vie des services</desc0>
      <desc1>fonctionnalités d'arrêt de redémarrage à chaud des services</desc1>
      <desc2>fonctionnalités avancées de gestion du cycle de vie des services et/ou interface d'administration associées</desc2>
      <comment>Via la console d'admin du serveur d'applications</comment>
      <score>1</score>
    </element>
  </section>
  <section name="supervision" title="Fonctionnalités de supervision">
    <element name="stats" title="Module de production de statistiques">
      <desc0>pas d'interface ni de fonctionnalité de production de statistiques d'accès aux services</desc0>
      <desc1>statistiques disponibles uniquement en temps réel, en snapshots ou rapports succints</desc1>
      <desc2>statistiques disponibles sur une période. Génération de rapports évolués</desc2>
      <comment>Via la console d'admin du serveur d'applications</comment>
      <score>1</score>
    </element>
  </section>
</document>

