[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qsos-commits] qsos/sheet/dependency-injection Guice/Guice-3.0...
From: |
Raphaël Semeteys |
Subject: |
[Qsos-commits] qsos/sheet/dependency-injection Guice/Guice-3.0... |
Date: |
Tue, 29 May 2012 12:33:55 +0000 |
CVSROOT: /sources/qsos
Module name: qsos
Changes by: Raphaël Semeteys <rsemeteys> 12/05/29 12:33:55
Added files:
sheet/dependency-injection/Guice: Guice-3.0_fr.qsos
sheet/dependency-injection/KouInject: KouInject-1.2_fr.qsos
sheet/dependency-injection/SpringIOC: SpringIOC-3.0_fr.qsos
sheet/dependency-injection/template: DI_Framework_fr.mm
DI_Framework_fr.qtpl
Log message:
Dependency injection framework
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qsos/sheet/dependency-injection/Guice/Guice-3.0_fr.qsos?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/sheet/dependency-injection/KouInject/KouInject-1.2_fr.qsos?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/sheet/dependency-injection/SpringIOC/SpringIOC-3.0_fr.qsos?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/sheet/dependency-injection/template/DI_Framework_fr.mm?cvsroot=qsos&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qsos/sheet/dependency-injection/template/DI_Framework_fr.qtpl?cvsroot=qsos&rev=1.1
Patches:
Index: Guice/Guice-3.0_fr.qsos
===================================================================
RCS file: Guice/Guice-3.0_fr.qsos
diff -N Guice/Guice-3.0_fr.qsos
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ Guice/Guice-3.0_fr.qsos 29 May 2012 12:33:28 -0000 1.1
@@ -0,0 +1,546 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <header>
+ <authors>
+ <author>
+ <name>Raphaël Semeteys</name>
+ <email>address@hidden</email>
+ </author>
+ </authors>
+ <dates>
+ <creation></creation>
+ <validation></validation>
+ </dates>
+ <appname>Google Guice</appname>
+ <desc>Framework léger d'injection de dépendance distribué par
Google</desc>
+ <release>3.0</release>
+ <licenseid>23</licenseid>
+ <licensedesc>The Apache License 2.0</licensedesc>
+ <url>http://code.google.com/p/google-guice/</url>
+ <demourl>http://code.google.com/p/google-guice/</demourl>
+ <language>fr</language>
+ <qsosappname></qsosappname>
+ <qsosformat>1.0</qsosformat>
+ <qsosspecificformat></qsosspecificformat>
+ <qsosappfamily>DI Framework</qsosappfamily>
+ </header>
+ <section name="generic" title="Section générique">
+ <desc>Les critères génériques de l'évaluation Presto de QSOS</desc>
+ <element name="intrinsicdurability" title="Pérennité">
+ <desc>Pérennité</desc>
+ <element name="maturite" title="Maturité">
+ <desc></desc>
+ <desc0>Logiciel provenant d'un fork ou avec une forte probabilité
de fork dans un futur proche.</desc0>
+ <desc1>Projet jeune (moins de 3 ans) ou connaissant des
difficultés àstabiliser les versions de développement.</desc1>
+ <desc2>Projet stable ou ayant un bon historique de gestion de
crise. Les nouvelles versions apportent de façon prépondérante de nouvelles
fonctionnalités.</desc2>
+ <score>2</score>
+ <comment>Projet libéré par Google en 2008 mais utilisé en
interne depuis 2006.</comment>
+ </element>
+ <element name="adoption1" title="Adoption">
+ <desc></desc>
+ <desc0>Usage détectable sur Internet sans véritable activité
communautaire</desc0>
+ <desc1>Utilisation communautaire prépondérante</desc1>
+ <desc2>Nombreuse références industrielles</desc2>
+ <score>1</score>
+ <comment>Quelques références connues :
http://code.google.com/p/google-guice/wiki/AppsThatUseGuice
+Les plus importantes sont celles de Google, notamment pour l'application
AdWords.</comment>
+ </element>
+ <element name="developpement" title="Développement">
+ <desc></desc>
+ <desc0>Deux ou moins de deux développeurs clairement
identifiés.</desc0>
+ <desc1>Équipe de développement réduite avec un turn-over
important ou sans équipe de direction identifiée.</desc1>
+ <desc2>Équipe de développement structurée comportant plus de 5
développeurs actifs.</desc2>
+ <score>2</score>
+ <comment>23 développeurs sont identifiés :
http://code.google.com/p/google-guice/people/list</comment>
+ </element>
+ <element name="activite" title="Activité">
+ <desc></desc>
+ <desc0>Très faible activité, que ce soit sur les résolutions de
bugs, les releases, l'ajout de nouvelles fonctions ou sur les espaces
communautaires (wiki, forum, mailing list...)</desc0>
+ <desc1>Activité détectable mais anarchique (pas feuille de route
accessible facilement, pas de prévisions de nouvelles fonctionnalités ou de
prévisions de nouvelles versions visible)</desc1>
+ <desc2>Activité importante et visible via la mise en place de
feuilles de routes traçant les requêtes de nouvelles fonctionnalités et/ou
les prévisions de sortie des nouvelles version</desc2>
+ <score>2</score>
+ <comment>Activité détectable sur le code source et le wiki
(http://code.google.com/p/google-guice/updates/list), ainsi que sur les listes
de discussion (http://groups.google.com/group/google-guice-dev et
http://groups.google.com/group/google-guice)</comment>
+ </element>
+ <element name="strategicalindependence" title="Indépendance
stratégique">
+ <desc0>Pas de stratégie détectable ou stratégie dictée par une
société commerciale, un sponsor ou un individu unique.</desc0>
+ <desc1>Stratégie décidée par l'équipe de developpement.</desc1>
+ <desc2>Indépendance forte de l'équipe de développement, fort
engagement du projet dans un processus de standardisation.</desc2>
+ <score>0</score>
+ <comment>Le projet est dirigé par l'entreprise Google.</comment>
+ </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>0</score>
+ <comment>Google détient les droits sur le code.</comment>
+ </element>
+ <element name="license" title="Licence">
+ <desc>Licence, àpondérer uniquement si le client désire un
jour devenir propriétaire du code</desc>
+ <element name="permissiveness" title="Permissivité">
+ <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>Apache version 2.</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>Apache version 2.</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>Développements réalisés à60% maximum par des employés
d'une seule société</desc1>
+ <desc2>Développements réalisés à20% maximum par des employés
d'une seule société</desc2>
+ <score>0</score>
+ <comment>Le projet est dirigé par Google.</comment>
+ </element>
+ <element name="services1" title="Services">
+ <desc></desc>
+ <desc0>Pas d'offres de services identifiée</desc0>
+ <desc1>Offre existante mais restreinte géographiquement ou en une
seule langue ou fournie par un seul fournisseur</desc1>
+ <desc2>Offre riche : plusieurs fournisseurs ou plusieurs
langages</desc2>
+ <score>1</score>
+ <comment>Plusieurs offres d'expertise et de formation sont
identifiées mais pas de support.</comment>
+ </element>
+ <element name="documentation" title="Documentation">
+ <desc0>Pas de documentation utilisateur</desc0>
+ <desc1>La documentation existe mais est en partie obsolète ou
restreinte àune seule langue 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>1</score>
+ <comment>La documentation disponible est celle du wiki du projet,
en langue anglais. Il existe par ailleurs de nombreux tutoriaux sur le
framework.</comment>
+ </element>
+ <element name="methodequalite" title="Méthode qualité">
+ <desc></desc>
+ <desc0>Pas de processus de qualité identifié ni d'outils de
gestions de bugs</desc0>
+ <desc1>Processus qualité non formalisé ou non outillé ou
comportant des outils qui sont très peu utilisés</desc1>
+ <desc2>Utilisation très active d'outils standards (tests
unitaires, outils de gestion de build, outils de mesure de qualité du
code)</desc2>
+ <score>2</score>
+ <comment>Le projet est industrialisé avec l'utilisation d'outils
tels que Fisheye (https://fisheye2.atlassian.com/browse/google-guice/), Maven,
Ant et JUnit.
+Il est par ailleurs hébergé sur la forge Google code.</comment>
+ </element>
+ </element>
+ <element name="packaging" title="Packaging">
+ <desc>Packaging pour les différents systèmes d'exploitation</desc>
+ <element name="packagingbsd" title="BSD">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour la famille BSD</desc0>
+ <desc1>Packaging existant pour quelques distributions de la
famille BSD</desc1>
+ <desc2>Packaging complet pour les distributions de la famille BSD
suivantes : FreeBSD, OpenBSD, NetBSD et Mac OS X</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="packaginglinux" title="GNU/Linux">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour les systèmes
d'exploitations GNU/Linux</desc0>
+ <desc1>Packaging existant pour quelques distributions
GNU/Linux</desc1>
+ <desc2>Packaging complet les systèmes de packaging .deb et
.rpm</desc2>
+ <score>0</score>
+ <comment>Le packaging est prévu dans des distributions telles que
Ubuntu ou Fedora mais n'est pas encore réalisé.</comment>
+ </element>
+ <element name="unix" title="Unix">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour les systèmes de la famille
Unix</desc0>
+ <desc1>Packaging existant sur quelques systèmes de la famille
Unix</desc1>
+ <desc2>Packaging existant sur au moins ces 3 systèmes : AIX,
HP-UX, Solaris</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="packagingwindows" title="Windows">
+ <desc0>Le logiciel n'est pas disponible sur un système
Windows.</desc0>
+ <desc1>Le logiciel existe sous forme d'archive tout en un.</desc1>
+ <desc2>Le logiciel dispose d'un installeur.</desc2>
+ <score>1</score>
+ <comment></comment>
+ </element>
+ <element name="packagingsource" title="Sources">
+ <desc0>L'installation depuis les sources est hasardeuse et
risquée</desc0>
+ <desc1>L'installation depuis les sources est difficile ou limité
(seulement àun OS, une architecture, la résolution de l'écran...)</desc1>
+ <desc2>L'installation depuis les sources est outillée
(vérification des dépencances, verification de l'installation, gestion de
build)</desc2>
+ <score>2</score>
+ <comment></comment>
+ </element>
+ <element name="packagingtar" title="Archive compressée">
+ <desc0>Pas d'archive disponible</desc0>
+ <desc1>Archive globale</desc1>
+ <desc2>Archive séparée pour chaque module installable</desc2>
+ <score>2</score>
+
<comment>http://code.google.com/p/google-guice/downloads/list</comment>
+ </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>0</score>
+ <comment>Requiert de maîtriser les concepts liés àl'injection
de dépendances. Le fait de supportées trois méthodes de configuration (XML,
Annotations te classses Java) peut dérouter certains développeurs.</comment>
+ </element>
+ <element name="administrationmonitoring" title="Administration et
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>Non appliquable àun framework de bas niveau.</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>La conception du framework est modulaire avec des
fonctionnalités activables via la présence ou non de JAR (Servlet,
persistance...).</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>2</score>
+ <comment></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>L'architecture de Guice est conçue pour être étendue :
http://code.google.com/p/google-guice/wiki/ExtendingGuice</comment>
+ </element>
+ </element>
+ </section>
+ <section name="ID_1733341988" title="Injection">
+ <desc>Types d'injection supportés par le framework.</desc>
+ <element name="ID_804069956" title="Injection tardive">
+ <desc>Possibiblité de configurer la création des instances
dépendantes lorsqu'elles sont nécessaire te non àl'initialisation du
framework.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Le documentation propose de passer par un Provider</comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1885235433" title="Injection optionnelle">
+ <desc>Possibilité de rendre un injection optionnelle.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Via l'annotation @Inject(optional=true)</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_701245882" title="Injection àla demande">
+ <desc>Possibilité de réaliser des injection dans des objets non
crées par le framework.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Via l'API Injector.injectMembers</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_460930415" title="Injection par profils">
+ <desc>Possibilité d'activer/désactiver certains Beans en fonction
de profiles passés en paramètre àl'initialisatio nde l'injecteur.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Guice utilise l'énumération Stage pour différencier les
environnement d'exécution (développement, production et embarqué dans un
IDE)</comment>
+ <score>1</score>
+ </element>
+ </section>
+ <section name="ID_703298031" title="Configuration">
+ <desc>Configurations spécifiques au framework d'injection.</desc>
+ <element name="ID_95812423" title="Types d'associations supportés">
+ <desc>Types d'associations (bindings) possibles entre une injection
et l'objet réellement injecté.</desc>
+ <element name="ID_991109595" title="Association directe àune
instance">
+ <desc>Possibiblité d'associer une injection directement àune
instance donnée.</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Syntaxe du type :
bind(String.class).annotatedWith(Names.named('JDBC
URL')).toInstance('jdbc:mysql://localhost/pizza');
+</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_844423049" title="Association par identifiant">
+ <desc>L'instance àinjecter est sélectionnée via un identifiant
textuel non typé (@Named dans JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Configuration du type :
bind(CreditCardProcessor.class).annotatedWith(Names.named('Checkout')).to(CheckoutCreditCardProcessor.class);</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1722556385" title="Association par annotation">
+ <desc>L'instance àinjecter est sélectionnée via une annotation
àcréer et associée àun type (@Qualifier dans JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Il faut déclarer l'annotation via un interface annoté
avec @BindingAnnotation.
+Puis la configuration est du type :
bind(CreditCardProcessor.class).annotatedWith(PayPal.class).to(PayPalCreditCardProcessor.class);</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_331671268" title="Association par type de Managed
Bean">
+ <desc>L'instance àinjecter est sélectionnée en fonction d'un
de ses types de Managed Bean (au sens JSR-299). </desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1603894662" title="Association via Factory">
+ <desc>Possibiblité d'utiliser une Factory pour récupérer
l'instance àinjecter.</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Via l'annotation @Provides qui permet de déclarer une
méthode retournant un type donné.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1296339357" title="Association via Provider">
+ <desc>Possibiblité d'utiliser une Factory évoluée respectant le
typage pour récupérer l'instance àinjecter (notio nde Provider de
JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Type d'association conforme àla spécification
JSR-330.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1996917015" title="Association automatique">
+ <desc>Le framework propose un mécanisme pour automatiquement
identifier les instances àinjecter sans configuration spécifique</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Guice introduit la notion de Just-in-time Binding qui se
base sur le type du constructeur du Bean àinjecter.</comment>
+ <score>1</score>
+ </element>
+ </element>
+ <element name="ID_800110472" title="Initialisation">
+ <desc>Possibilités liées àl'initialisation du framework et des
instances.</desc>
+ <element name="ID_1654604626" title="Scan des packages">
+ <desc>Le framework analyse les packages Java pour initialiser les
instances.</desc>
+ <desc0>Le framework ne propose pas ce type d'initialisation</desc0>
+ <desc1>Le framework propose ce type d'initialisation mais ne
permet pas de filtrer les packages àanalyser</desc1>
+ <desc2>Le framework propose ce type d'initialisation et permet de
filtrer les packages àanalyser</desc2>
+ <comment>La configuration est réalisée de manière
programmatique, en Java, dans des classes spéciales appelées Modules.
+Il existe une extension externe pour implémenter de la configuration par scan
: https://github.com/manzke/guice-automatic-injection</comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1939593246" title="Web">
+ <desc>Possibilité d'initialiser les instances depuis le conteneur
Web.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Possibilité de créer des filtres pour associer
l'injecteur aux Servlets </desc1>
+ <desc2>Possibilité de créer des filtres avec des possibilités
avancées d'association (expressions régulières) et la possibilité de passer
des paramètres aux Servlets</desc2>
+ <comment>Guice propose de remplacer l'utilisation du web.xml par
une servlet spécifique (guice-servlet) adaptée au framework qui permet de
faire bénéficier les Servlets et le Filtres de l'injection, du typage et de
l'AOP.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1218948251" title="Priorisation de l'ordre
d'initialisation">
+ <desc>Possibilité d'affecter des ordres de priorité pour
l'initialisation des instances.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment>Guice utilise les notions de eager et lazy singletons
pour prioriser les créations d'instances.</comment>
+ <score>1</score>
+ </element>
+ </element>
+ </section>
+ <section name="ID_1252934230" title="Scopes">
+ <desc>Portées supportées pra les injections, définissant le
périmètre de réutilisation d'instances.</desc>
+ <element name="ID_767623077" title="Singleton">
+ <desc>Instance unique àtoute l'application.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment>Annotation @Singleton)</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1385354377" title="Session globale (portlet)">
+ <desc>Instance unique àla session globale partagées par les
portlets d'une même application.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_576561136" title="Session">
+ <desc>Instance unique àla session HTTP de l'utilisateur.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment>Annotation @SessionScoped</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_267393881" title="Conversation">
+ <desc>Conversation au sens JSF du terme.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_31416302" title="Requête">
+ <desc>Instance unique àune requête HTTP.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment>Annotation @RequestScoped</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1190194258" title="Prototype">
+ <desc>Chaque appel entraîne la création d'une nouvelle instance, il
n'y a donc pas de réutilisation d'instances existantes.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment>C'est le scope par défaut : no-scope.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_89115513" title="Thread">
+ <desc>Instance unique àun thread Java.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_573116436" title="Scopes personnalisés">
+ <desc>Possibilité de définir et utiliser ses propres scopes.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+
<comment>http://code.google.com/p/google-guice/wiki/CustomScopes</comment>
+ <score>2</score>
+ </element>
+ </section>
+ <section name="ID_1174759714" title="Intégration avec d'autres frameworks">
+ <element name="ID_1083534082" title="Persistance et transaction">
+ <desc>Possibilité de s'intégrer avec des frameworks de persistance
et de gestion des transaction.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun framework
spécifique</desc1>
+ <desc2>Intégration avec tout framework respectant l'API JPA</desc2>
+ <comment>Le greffon Guice Persist permettant l'abstraction d'une
implémentation JPA et est capable d'utiliser plusieurs implémentations ne
même temps.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_919914417" title="Présentation">
+ <desc>Possibilité de s'intégrer avec des frameworks Web de
présentation.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun framework
spécifique</desc1>
+ <desc2>Intégration avec plusieurs frameworks Web majeurs</desc2>
+ <comment>Un greffon permet de supporter l'injection d'objets Struts2
dont les actions et les intercepteurs.
+Des extensions externes existent pour s'intégrer avec d'autres frameworks de
présentation tels que GWT, JSF, Wicket ou JBoss Seam</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_906824099" title="OSGi">
+ <desc>Possibilité de s'intégrer avec le système OSGi de gestion
dynamique de modules.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle</desc1>
+ <desc2>Intégration fine avec OSGi</desc2>
+ <comment>L'extension peaberry (http://code.google.com/p/peaberry/)
permet de s'intégrer finement avec OSGi.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_504378332" title="Mécanisme générique">
+ <desc>Existence de mécanismes génériques pour intégrer
l'injecteur avec d'autres frameworks.</desc>
+ <desc0>Pas de mécanisme d'intégration générique avec des
frameworks externes</desc0>
+ <desc1>Mécanisme existant d'intégration avec certains types de
frameworks externes</desc1>
+ <desc2>Mécanisme générique d'intégration avec tous types de
frameworks externes</desc2>
+ <comment>SpringIntegration permet d'injecter des Beans Spring via
leurs noms.
+Des hooks sont fournis pour réaliser de l'injection personnalisée, dans le
but de s'intégrer (via des exetensions) avec d'autres injecteurs.</comment>
+ <score>2</score>
+ </element>
+ </section>
+ <section name="ID_1383577911" title="Autres fonctionnalités">
+ <element name="ID_423295449" title="Composition d'annotations">
+ <desc>Possibilité de regrouper plusieurs annotations au sein d'une
annotation de plus haut niveau de modélisation (concept de Stereotype de
JSR-299).</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1365189022" title="Gestion des évènements">
+ <desc>Existence d'un mécanisme de production et de consommation
d'évènements par les Beans.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Quelques évènements prédéfinis sont utilisables sans
possibilité d'en créer de nouveaux</desc1>
+ <desc2>Des évènements prédéfinis sont utilisables avec
possibilité d'en créer de nouveaux</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1176932165" title="Interception">
+ <element name="ID_1910329937" title="Interception de méthodes
métier">
+ <desc>Possibilité d'intercepter des appels de méthodes dans le
code métier des applications (concept de Decorators de JSR-299).</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1463150778" title="Interception de méthodes
techniques">
+ <desc>Possibilité d'intercepter des appels de méthodes dans le
code technique des applications (concepts d'Interceptors de JavaEE et
d'Interceptors typés de JSR-299)</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Les Interceptors de JavaEE sont supportés</desc1>
+ <desc2>Les Interceptors de JavaEE et les Interceptors typés de
JSR-299 sont supportés</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1209366808" title="Callbacks (initialisation et
destruction)">
+ <desc>Possibilité d'intercepter via des fonctions de rappel
l'initialisation et la destruction des Beans.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment>Il existe des notifications (via listeners) sur le
reconnaissance d'un nouveau type et les injections.</comment>
+ <score>2</score>
+ </element>
+ </element>
+ <element name="ID_1804725606" title="Internationalisation">
+ <desc>Fonctionnalité offerte en standard par l'injecteur pour gérer
l'internationalisation.</desc>
+ <desc0>Aucune fonctionnalité d'internationalisation offerte en
standard</desc0>
+ <desc1>Fonctionnalité disponible mais de manière partielle ou
limitée</desc1>
+ <desc2>Fonctionnalité complètement standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </section>
+ <section name="ID_1815689005" title="Assistance au développement">
+ <element name="ID_925232886" title="Extensibilité">
+ <element name="ID_1295092297" title="Extensibilité du code
applicatif">
+ <desc>Existence de mécanismes pour faciliter la modularité des
applications utilisant le framework d'injection.</desc>
+ <desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+ <desc1>Quelques fonctionnalités sont utilisables pour rendre les
applications extensibles</desc1>
+ <desc2>Le framework propose un mécanisme générique pour rendre
les applications extensibles</desc2>
+ <comment>Guice propose des extensions de Multibinding pour
facilement mettre ne oeuvre une mécanisme de greffon dans les applications :
http://code.google.com/p/google-guice/wiki/Multibindings</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_261103891" title="Extensibilité du framework">
+ <desc>Possibilité d'extension du framework d'injection.</desc>
+ <desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+ <desc1>Le framework propose quelques point d'extension</desc1>
+ <desc2>Le framework propose un mécanisme générique de
greffons</desc2>
+ <comment>L'architecture de Guice est préviues pour accueillir des
greffons.</comment>
+ <score>2</score>
+ </element>
+ </element>
+ <element name="ID_17223463" title="Génération de code">
+ <desc>Fonctionnalités offertes par le framework pour automatiquement
générer du code</desc>
+ <desc0>Aucun mécanisme de génération de code (hors injection pure)
n'est disponible</desc0>
+ <desc1>Le framework propose àla marge quelques fonctionnalités de
génération de code</desc1>
+ <desc2>La génération de code est un des pans fonctionnels couvert
par le framework</desc2>
+ <comment>Guice permet de générer des Factories hybrides pour
instancier des instances injectées par le framework et d'autres fournies lors
de la construction (notion de AssistedInject).</comment>
+ <score>1</score>
+ </element>
+ <element name="ID_1680469059" title="Visualisation graphique">
+ <desc>Fonctionnalités offertes par le framework pour visualiser les
dépendances injectées.</desc>
+ <desc0>Aucun mécanisme de visualisation des dépendances n'est
disponible</desc0>
+ <desc1>Un mécanisme de visualisation des dépendances est disponible
mais est limité</desc1>
+ <desc2>Un mécanisme complet de visualisation des dépendances est
disponible</desc2>
+ <comment>Guice sait générer un fichier .dot pouvant être utilisé
par Graphviz pour visualiser les dépendances :
http://code.google.com/p/google-guice/wiki/Grapher.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_643365482" title="Intégration dans les IDE">
+ <desc>Support de l'injecteur dans les environnements de
développement intégré (IDE)</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun IDE
spécifique</desc1>
+ <desc2>Intégration avec plusieurs IDE majeurs</desc2>
+ <comment>Un greffon existe pour Eclipse :
http://code.google.com/p/guice-plugin/</comment>
+ <score>1</score>
+ </element>
+ </section>
+</document>
\ No newline at end of file
Index: KouInject/KouInject-1.2_fr.qsos
===================================================================
RCS file: KouInject/KouInject-1.2_fr.qsos
diff -N KouInject/KouInject-1.2_fr.qsos
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ KouInject/KouInject-1.2_fr.qsos 29 May 2012 12:33:50 -0000 1.1
@@ -0,0 +1,541 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <header>
+ <authors>
+ <author>
+ <name>Raphaël Semeteys</name>
+ <email>address@hidden</email>
+ </author>
+ </authors>
+ <dates>
+ <creation></creation>
+ <validation></validation>
+ </dates>
+ <appname>KouInject</appname>
+ <desc>Framework simple d'injection de dépendances.</desc>
+ <release>1.2</release>
+ <licenseid>31</licenseid>
+ <licensedesc>GNU GPL</licensedesc>
+ <url>http://code.google.com/p/kouinject/</url>
+ <demourl>http://code.google.com/p/kouinject/</demourl>
+ <language>fr</language>
+ <qsosappname></qsosappname>
+ <qsosformat>1.0</qsosformat>
+ <qsosspecificformat></qsosspecificformat>
+ <qsosappfamily>DI Framework</qsosappfamily>
+ </header>
+ <section name="generic" title="Section générique">
+ <desc>Les critères génériques de l'évaluation Presto de QSOS</desc>
+ <element name="intrinsicdurability" title="Pérennité">
+ <desc>Pérennité</desc>
+ <element name="maturite" title="Maturité">
+ <desc></desc>
+ <desc0>Logiciel provenant d'un fork ou avec une forte probabilité
de fork dans un futur proche.</desc0>
+ <desc1>Projet jeune (moins de 3 ans) ou connaissant des
difficultés àstabiliser les versions de développement.</desc1>
+ <desc2>Projet stable ou ayant un bon historique de gestion de
crise. Les nouvelles versions apportent de façon prépondérante de nouvelles
fonctionnalités.</desc2>
+ <score>1</score>
+ <comment>La première version publique date de fin 2009.</comment>
+ </element>
+ <element name="adoption1" title="Adoption">
+ <desc></desc>
+ <desc0>Usage détectable sur Internet sans véritable activité
communautaire</desc0>
+ <desc1>Utilisation communautaire prépondérante</desc1>
+ <desc2>Nombreuse références industrielles</desc2>
+ <score>0</score>
+ <comment>Le framework semble encore peu adopté.</comment>
+ </element>
+ <element name="developpement" title="Développement">
+ <desc></desc>
+ <desc0>Deux ou moins de deux développeurs clairement
identifiés.</desc0>
+ <desc1>Équipe de développement réduite avec un turn-over
important ou sans équipe de direction identifiée.</desc1>
+ <desc2>Équipe de développement structurée comportant plus de 5
développeurs actifs.</desc2>
+ <score>0</score>
+ <comment>Un seu let unique développeur :
http://code.google.com/p/kouinject/people/list</comment>
+ </element>
+ <element name="activite" title="Activité">
+ <desc></desc>
+ <desc0>Très faible activité, que ce soit sur les résolutions de
bugs, les releases, l'ajout de nouvelles fonctions ou sur les espaces
communautaires (wiki, forum, mailing list...)</desc0>
+ <desc1>Activité détectable mais anarchique (pas feuille de route
accessible facilement, pas de prévisions de nouvelles fonctionnalités ou de
prévisions de nouvelles versions visible)</desc1>
+ <desc2>Activité importante et visible via la mise en place de
feuilles de routes traçant les requêtes de nouvelles fonctionnalités et/ou
les prévisions de sortie des nouvelles version</desc2>
+ <score>2</score>
+ <comment>Le projet est dynamique te publie régulièrement de
nouvelles versions. La dernière en date (1.2) date d'avril 2011.
+http://code.google.com/p/kouinject/updates/list
+Les demandes d'évolutiosn font office de feuille de route :
http://code.google.com/p/kouinject/issues/list</comment>
+ </element>
+ <element name="strategicalindependence" title="Indépendance
stratégique">
+ <desc0>Pas de stratégie détectable ou stratégie dictée par une
société commerciale, un sponsor ou un individu unique.</desc0>
+ <desc1>Stratégie décidée par l'équipe de developpement.</desc1>
+ <desc2>Indépendance forte de l'équipe de développement, fort
engagement du projet dans un processus de standardisation.</desc2>
+ <score>0</score>
+ <comment>L'orientation du projet est décidée par l'unique
développeur.</comment>
+ </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>0</score>
+ <comment></comment>
+ </element>
+ <element name="license" title="Licence">
+ <desc>Licence, àpondérer uniquement si le client désire un
jour devenir propriétaire du code</desc>
+ <element name="permissiveness" title="Permissivité">
+ <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>0</score>
+ <comment></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>2</score>
+ <comment></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>Développements réalisés à60% maximum par des employés
d'une seule société</desc1>
+ <desc2>Développements réalisés à20% maximum par des employés
d'une seule société</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="services1" title="Services">
+ <desc></desc>
+ <desc0>Pas d'offres de services identifiée</desc0>
+ <desc1>Offre existante mais restreinte géographiquement ou en une
seule langue ou fournie par un seul fournisseur</desc1>
+ <desc2>Offre riche : plusieurs fournisseurs ou plusieurs
langages</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="documentation" title="Documentation">
+ <desc0>Pas de documentation utilisateur</desc0>
+ <desc1>La documentation existe mais est en partie obsolète ou
restreinte àune seule langue 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>1</score>
+ <comment>La documentation du wiki est simple et concise. elle est
uniquement disponible ne anglais.</comment>
+ </element>
+ <element name="methodequalite" title="Méthode qualité">
+ <desc></desc>
+ <desc0>Pas de processus de qualité identifié ni d'outils de
gestions de bugs</desc0>
+ <desc1>Processus qualité non formalisé ou non outillé ou
comportant des outils qui sont très peu utilisés</desc1>
+ <desc2>Utilisation très active d'outils standards (tests
unitaires, outils de gestion de build, outils de mesure de qualité du
code)</desc2>
+ <score>2</score>
+ <comment>Utilisation de Maven, de JUnit et de la forge Google
Code.</comment>
+ </element>
+ </element>
+ <element name="packaging" title="Packaging">
+ <desc>Packaging pour les différents systèmes d'exploitation</desc>
+ <element name="packagingbsd" title="BSD">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour la famille BSD</desc0>
+ <desc1>Packaging existant pour quelques distributions de la
famille BSD</desc1>
+ <desc2>Packaging complet pour les distributions de la famille BSD
suivantes : FreeBSD, OpenBSD, NetBSD et Mac OS X</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="packaginglinux" title="GNU/Linux">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour les systèmes
d'exploitations GNU/Linux</desc0>
+ <desc1>Packaging existant pour quelques distributions
GNU/Linux</desc1>
+ <desc2>Packaging complet les systèmes de packaging .deb et
.rpm</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="unix" title="Unix">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour les systèmes de la famille
Unix</desc0>
+ <desc1>Packaging existant sur quelques systèmes de la famille
Unix</desc1>
+ <desc2>Packaging existant sur au moins ces 3 systèmes : AIX,
HP-UX, Solaris</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="packagingwindows" title="Windows">
+ <desc0>Le logiciel n'est pas disponible sur un système
Windows.</desc0>
+ <desc1>Le logiciel existe sous forme d'archive tout en un.</desc1>
+ <desc2>Le logiciel dispose d'un installeur.</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="packagingsource" title="Sources">
+ <desc0>L'installation depuis les sources est hasardeuse et
risquée</desc0>
+ <desc1>L'installation depuis les sources est difficile ou limité
(seulement àun OS, une architecture, la résolution de l'écran...)</desc1>
+ <desc2>L'installation depuis les sources est outillée
(vérification des dépencances, verification de l'installation, gestion de
build)</desc2>
+ <score>2</score>
+ <comment></comment>
+ </element>
+ <element name="packagingtar" title="Archive compressée">
+ <desc0>Pas d'archive disponible</desc0>
+ <desc1>Archive globale</desc1>
+ <desc2>Archive séparée pour chaque module installable</desc2>
+ <score>1</score>
+ <comment></comment>
+ </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>0</score>
+ <comment>Requiert de maîtriser les concepts liés àl'injection
de dépendances. Le fait de supportées trois méthodes de configuration (XML,
Annotations te classses Java) peut dérouter certains développeurs.</comment>
+ </element>
+ <element name="administrationmonitoring" title="Administration et
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>Non appliquable àun framework de bas niveau.</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></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>2</score>
+ <comment></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>1</score>
+ <comment></comment>
+ </element>
+ </element>
+ </section>
+ <section name="ID_1733341988" title="Injection">
+ <desc>Types d'injection supportés par le framework.</desc>
+ <element name="ID_804069956" title="Injection tardive">
+ <desc>Possibiblité de configurer la création des instances
dépendantes lorsqu'elles sont nécessaire te non àl'initialisation du
framework.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>C'est le fonctionnement par défaut du framework.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1885235433" title="Injection optionnelle">
+ <desc>Possibilité de rendre un injection optionnelle.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_701245882" title="Injection àla demande">
+ <desc>Possibilité de réaliser des injection dans des objets non
crées par le framework.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_460930415" title="Injection par profils">
+ <desc>Possibilité d'activer/désactiver certains Beans en fonction
de profiles passés en paramètre àl'initialisatio nde l'injecteur.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Le framework implémente @Profile, inspiré de Spring
Framework.</comment>
+ <score>2</score>
+ </element>
+ </section>
+ <section name="ID_703298031" title="Configuration">
+ <desc>Configurations spécifiques au framework d'injection.</desc>
+ <element name="ID_95812423" title="Types d'associations supportés">
+ <desc>Types d'associations (bindings) possibles entre une injection
et l'objet réellement injecté.</desc>
+ <element name="ID_991109595" title="Association directe àune
instance">
+ <desc>Possibiblité d'associer une injection directement àune
instance donnée.</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Via : injector.getBean(MonBean.class);</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_844423049" title="Association par identifiant">
+ <desc>L'instance àinjecter est sélectionnée via un identifiant
textuel non typé (@Named dans JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>@Named est implémenté.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1722556385" title="Association par annotation">
+ <desc>L'instance àinjecter est sélectionnée via une annotation
àcréer et associée àun type (@Qualifier dans JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>@Quaifier est implémenté.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_331671268" title="Association par type de Managed
Bean">
+ <desc>L'instance àinjecter est sélectionnée en fonction d'un
de ses types de Managed Bean (au sens JSR-299). </desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1603894662" title="Association via Factory">
+ <desc>Possibiblité d'utiliser une Factory pour récupérer
l'instance àinjecter.</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Utilisation de l'annotation @Produces pour marquer les
Factory (inspiré de la JSR-299).</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1296339357" title="Association via Provider">
+ <desc>Possibiblité d'utiliser une Factory évoluée respectant le
typage pour récupérer l'instance àinjecter (notio nde Provider de
JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>La notion de Provider de la JSR-330 est implémentée. Le
framework propose également la notion de CollectionProvider pour faciliter
l'injection de collections de Beans.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1996917015" title="Association automatique">
+ <desc>Le framework propose un mécanisme pour automatiquement
identifier les instances àinjecter sans configuration spécifique</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>C'est le principe de fonctionnement du framework.
L'assignation se fait via le type (classe et sous-classe), l'interface
implémentée ou via l'utilisation d'une Factory.</comment>
+ <score>2</score>
+ </element>
+ </element>
+ <element name="ID_800110472" title="Initialisation">
+ <desc>Possibilités liées àl'initialisation du framework et des
instances.</desc>
+ <element name="ID_1654604626" title="Scan des packages">
+ <desc>Le framework analyse les packages Java pour initialiser les
instances.</desc>
+ <desc0>Le framework ne propose pas ce type d'initialisation</desc0>
+ <desc1>Le framework propose ce type d'initialisation mais ne
permet pas de filtrer les packages àanalyser</desc1>
+ <desc2>Le framework propose ce type d'initialisation et permet de
filtrer les packages àanalyser</desc2>
+ <comment>new
DefaultInjector("Package1","Package2","Package3");</comment>
+ <score>1</score>
+ </element>
+ <element name="ID_1939593246" title="Web">
+ <desc>Possibilité d'initialiser les instances depuis le conteneur
Web.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Possibilité de créer des filtres pour associer
l'injecteur aux Servlets </desc1>
+ <desc2>Possibilité de créer des filtres avec des possibilités
avancées d'association (expressions régulières) et la possibilité de passer
des paramètres aux Servlets</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1218948251" title="Priorisation de l'ordre
d'initialisation">
+ <desc>Possibilité d'affecter des ordres de priorité pour
l'initialisation des instances.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </element>
+ </section>
+ <section name="ID_1252934230" title="Scopes">
+ <desc>Portées supportées pra les injections, définissant le
périmètre de réutilisation d'instances.</desc>
+ <element name="ID_767623077" title="Singleton">
+ <desc>Instance unique àtoute l'application.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1385354377" title="Session globale (portlet)">
+ <desc>Instance unique àla session globale partagées par les
portlets d'une même application.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_576561136" title="Session">
+ <desc>Instance unique àla session HTTP de l'utilisateur.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_267393881" title="Conversation">
+ <desc>Conversation au sens JSF du terme.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_31416302" title="Requête">
+ <desc>Instance unique àune requête HTTP.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1190194258" title="Prototype">
+ <desc>Chaque appel entraîne la création d'une nouvelle instance, il
n'y a donc pas de réutilisation d'instances existantes.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment>Scope par défaut.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_89115513" title="Thread">
+ <desc>Instance unique àun thread Java.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_573116436" title="Scopes personnalisés">
+ <desc>Possibilité de définir et utiliser ses propres scopes.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </section>
+ <section name="ID_1174759714" title="Intégration avec d'autres frameworks">
+ <element name="ID_1083534082" title="Persistance et transaction">
+ <desc>Possibilité de s'intégrer avec des frameworks de persistance
et de gestion des transaction.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun framework
spécifique</desc1>
+ <desc2>Intégration avec tout framework respectant l'API JPA</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_919914417" title="Présentation">
+ <desc>Possibilité de s'intégrer avec des frameworks Web de
présentation.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun framework
spécifique</desc1>
+ <desc2>Intégration avec plusieurs frameworks Web majeurs</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_906824099" title="OSGi">
+ <desc>Possibilité de s'intégrer avec le système OSGi de gestion
dynamique de modules.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle</desc1>
+ <desc2>Intégration fine avec OSGi</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_504378332" title="Mécanisme générique">
+ <desc>Existence de mécanismes génériques pour intégrer
l'injecteur avec d'autres frameworks.</desc>
+ <desc0>Pas de mécanisme d'intégration générique avec des
frameworks externes</desc0>
+ <desc1>Mécanisme existant d'intégration avec certains types de
frameworks externes</desc1>
+ <desc2>Mécanisme générique d'intégration avec tous types de
frameworks externes</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </section>
+ <section name="ID_1383577911" title="Autres fonctionnalités">
+ <element name="ID_423295449" title="Composition d'annotations">
+ <desc>Possibilité de regrouper plusieurs annotations au sein d'une
annotation de plus haut niveau de modélisation (concept de Stereotype de
JSR-299).</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1365189022" title="Gestion des évènements">
+ <desc>Existence d'un mécanisme de production et de consommation
d'évènements par les Beans.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Quelques évènements prédéfinis sont utilisables sans
possibilité d'en créer de nouveaux</desc1>
+ <desc2>Des évènements prédéfinis sont utilisables avec
possibilité d'en créer de nouveaux</desc2>
+ <comment>L'implémentation d'une gestion d'évènements similaire ÃÂ
celle de la JSR-299 est prévue pour la version 1.3.</comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1176932165" title="Interception">
+ <element name="ID_1910329937" title="Interception de méthodes
métier">
+ <desc>Possibilité d'intercepter des appels de méthodes dans le
code métier des applications (concept de Decorators de JSR-299).</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1463150778" title="Interception de méthodes
techniques">
+ <desc>Possibilité d'intercepter des appels de méthodes dans le
code technique des applications (concepts d'Interceptors de JavaEE et
d'Interceptors typés de JSR-299)</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Les Interceptors de JavaEE sont supportés</desc1>
+ <desc2>Les Interceptors de JavaEE et les Interceptors typés de
JSR-299 sont supportés</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1209366808" title="Callbacks (initialisation et
destruction)">
+ <desc>Possibilité d'intercepter via des fonctions de rappel
l'initialisation et la destruction des Beans.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </element>
+ <element name="ID_1804725606" title="Internationalisation">
+ <desc>Fonctionnalité offerte en standard par l'injecteur pour gérer
l'internationalisation.</desc>
+ <desc0>Aucune fonctionnalité d'internationalisation offerte en
standard</desc0>
+ <desc1>Fonctionnalité disponible mais de manière partielle ou
limitée</desc1>
+ <desc2>Fonctionnalité complètement standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </section>
+ <section name="ID_1815689005" title="Assistance au développement">
+ <element name="ID_925232886" title="Extensibilité">
+ <element name="ID_1295092297" title="Extensibilité du code
applicatif">
+ <desc>Existence de mécanismes pour faciliter la modularité des
applications utilisant le framework d'injection.</desc>
+ <desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+ <desc1>Quelques fonctionnalités sont utilisables pour rendre les
applications extensibles</desc1>
+ <desc2>Le framework propose un mécanisme générique pour rendre
les applications extensibles</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_261103891" title="Extensibilité du framework">
+ <desc>Possibilité d'extension du framework d'injection.</desc>
+ <desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+ <desc1>Le framework propose quelques point d'extension</desc1>
+ <desc2>Le framework propose un mécanisme générique de
greffons</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </element>
+ <element name="ID_17223463" title="Génération de code">
+ <desc>Fonctionnalités offertes par le framework pour automatiquement
générer du code</desc>
+ <desc0>Aucun mécanisme de génération de code (hors injection pure)
n'est disponible</desc0>
+ <desc1>Le framework propose àla marge quelques fonctionnalités de
génération de code</desc1>
+ <desc2>La génération de code est un des pans fonctionnels couvert
par le framework</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1680469059" title="Visualisation graphique">
+ <desc>Fonctionnalités offertes par le framework pour visualiser les
dépendances injectées.</desc>
+ <desc0>Aucun mécanisme de visualisation des dépendances n'est
disponible</desc0>
+ <desc1>Un mécanisme de visualisation des dépendances est disponible
mais est limité</desc1>
+ <desc2>Un mécanisme complet de visualisation des dépendances est
disponible</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_643365482" title="Intégration dans les IDE">
+ <desc>Support de l'injecteur dans les environnements de
développement intégré (IDE)</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun IDE
spécifique</desc1>
+ <desc2>Intégration avec plusieurs IDE majeurs</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ </section>
+</document>
\ No newline at end of file
Index: SpringIOC/SpringIOC-3.0_fr.qsos
===================================================================
RCS file: SpringIOC/SpringIOC-3.0_fr.qsos
diff -N SpringIOC/SpringIOC-3.0_fr.qsos
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ SpringIOC/SpringIOC-3.0_fr.qsos 29 May 2012 12:33:51 -0000 1.1
@@ -0,0 +1,546 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+ <header>
+ <authors>
+ <author>
+ <name>Raphaël Semeteys</name>
+ <email>address@hidden</email>
+ </author>
+ </authors>
+ <dates>
+ <creation></creation>
+ <validation></validation>
+ </dates>
+ <appname>Spring Framework IOC</appname>
+ <desc>IOC : composant de la suite Spring Framework, en charge de
l'injection de dépendances.</desc>
+ <release>3.0</release>
+ <licenseid>23</licenseid>
+ <licensedesc>The Apache License 2.0</licensedesc>
+ <url>http://www.springsource.org</url>
+ <demourl>http://www.springsource.org</demourl>
+ <language>fr</language>
+ <qsosappname></qsosappname>
+ <qsosformat>1.0</qsosformat>
+ <qsosspecificformat></qsosspecificformat>
+ <qsosappfamily>DI Framework</qsosappfamily>
+ </header>
+ <section name="generic" title="Section générique">
+ <desc>Les critères génériques de l'évaluation Presto de QSOS</desc>
+ <element name="intrinsicdurability" title="Pérennité">
+ <desc>Pérennité</desc>
+ <element name="maturite" title="Maturité">
+ <desc></desc>
+ <desc0>Logiciel provenant d'un fork ou avec une forte probabilité
de fork dans un futur proche.</desc0>
+ <desc1>Projet jeune (moins de 3 ans) ou connaissant des
difficultés àstabiliser les versions de développement.</desc1>
+ <desc2>Projet stable ou ayant un bon historique de gestion de
crise. Les nouvelles versions apportent de façon prépondérante de nouvelles
fonctionnalités.</desc2>
+ <score>2</score>
+ <comment>Projet ancien (2003) et mature.</comment>
+ </element>
+ <element name="adoption1" title="Adoption">
+ <desc></desc>
+ <desc0>Usage détectable sur Internet sans véritable activité
communautaire</desc0>
+ <desc1>Utilisation communautaire prépondérante</desc1>
+ <desc2>Nombreuse références industrielles</desc2>
+ <score>2</score>
+ <comment>Spring de par son antériorité a été très largement
adopté. L'injection de dépendance et au coeur du framework.
+La version 3.0 qui supporte la JSR-330 ets cependant plus récente.</comment>
+ </element>
+ <element name="developpement" title="Développement">
+ <desc></desc>
+ <desc0>Deux ou moins de deux développeurs clairement
identifiés.</desc0>
+ <desc1>Équipe de développement réduite avec un turn-over
important ou sans équipe de direction identifiée.</desc1>
+ <desc2>Équipe de développement structurée comportant plus de 5
développeurs actifs.</desc2>
+ <score>2</score>
+ <comment></comment>
+ </element>
+ <element name="activite" title="Activité">
+ <desc></desc>
+ <desc0>Très faible activité, que ce soit sur les résolutions de
bugs, les releases, l'ajout de nouvelles fonctions ou sur les espaces
communautaires (wiki, forum, mailing list...)</desc0>
+ <desc1>Activité détectable mais anarchique (pas feuille de route
accessible facilement, pas de prévisions de nouvelles fonctionnalités ou de
prévisions de nouvelles versions visible)</desc1>
+ <desc2>Activité importante et visible via la mise en place de
feuilles de routes traçant les requêtes de nouvelles fonctionnalités et/ou
les prévisions de sortie des nouvelles version</desc2>
+ <score>2</score>
+ <comment>Le projet est actif et dynamique.</comment>
+ </element>
+ <element name="strategicalindependence" title="Indépendance
stratégique">
+ <desc0>Pas de stratégie détectable ou stratégie dictée par une
société commerciale, un sponsor ou un individu unique.</desc0>
+ <desc1>Stratégie décidée par l'équipe de developpement.</desc1>
+ <desc2>Indépendance forte de l'équipe de développement, fort
engagement du projet dans un processus de standardisation.</desc2>
+ <score>0</score>
+ <comment>SpringSource, une division de VMWare, emploie les
développeur coeur du projet.</comment>
+ </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>SpringSource, une division de VMWare, emploie les
développeur coeur du projet qui détienne les droits àtitre personnel. EN
outre, la licence apache est permissive.</comment>
+ </element>
+ <element name="license" title="Licence">
+ <desc>Licence, àpondérer uniquement si le client désire un
jour devenir propriétaire du code</desc>
+ <element name="permissiveness" title="Permissivité">
+ <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></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></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>Développements réalisés à60% maximum par des employés
d'une seule société</desc1>
+ <desc2>Développements réalisés à20% maximum par des employés
d'une seule société</desc2>
+ <score>0</score>
+ <comment>SpringSource, une division de VMWare, emploie les
développeur coeur du projet.</comment>
+ </element>
+ <element name="services1" title="Services">
+ <desc></desc>
+ <desc0>Pas d'offres de services identifiée</desc0>
+ <desc1>Offre existante mais restreinte géographiquement ou en une
seule langue ou fournie par un seul fournisseur</desc1>
+ <desc2>Offre riche : plusieurs fournisseurs ou plusieurs
langages</desc2>
+ <score>2</score>
+ <comment>Spring est un framework reconnu bénéficiant de nombreux
services offerts par SpringSource ou d'autres acteurs de par le monde.</comment>
+ </element>
+ <element name="documentation" title="Documentation">
+ <desc0>Pas de documentation utilisateur</desc0>
+ <desc1>La documentation existe mais est en partie obsolète ou
restreinte àune seule langue 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>1</score>
+ <comment>Documentation officielle très détaillée en anglais. Il
existe de nombreux tutoriels et quelques livres.</comment>
+ </element>
+ <element name="methodequalite" title="Méthode qualité">
+ <desc></desc>
+ <desc0>Pas de processus de qualité identifié ni d'outils de
gestions de bugs</desc0>
+ <desc1>Processus qualité non formalisé ou non outillé ou
comportant des outils qui sont très peu utilisés</desc1>
+ <desc2>Utilisation très active d'outils standards (tests
unitaires, outils de gestion de build, outils de mesure de qualité du
code)</desc2>
+ <score>2</score>
+ <comment>Le projet est industrialisé vi des tests unitaires
JUnit, la construction Maven/Ant/Ivy.</comment>
+ </element>
+ </element>
+ <element name="packaging" title="Packaging">
+ <desc>Packaging pour les différents systèmes d'exploitation</desc>
+ <element name="packagingbsd" title="BSD">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour la famille BSD</desc0>
+ <desc1>Packaging existant pour quelques distributions de la
famille BSD</desc1>
+ <desc2>Packaging complet pour les distributions de la famille BSD
suivantes : FreeBSD, OpenBSD, NetBSD et Mac OS X</desc2>
+ <score>1</score>
+ <comment>Packaging existant dans FreeBSD.</comment>
+ </element>
+ <element name="packaginglinux" title="GNU/Linux">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour les systèmes
d'exploitations GNU/Linux</desc0>
+ <desc1>Packaging existant pour quelques distributions
GNU/Linux</desc1>
+ <desc2>Packaging complet les systèmes de packaging .deb et
.rpm</desc2>
+ <score>1</score>
+ <comment>Certaines distribution packagent le framework, comme
Debian par exemple.</comment>
+ </element>
+ <element name="unix" title="Unix">
+ <desc></desc>
+ <desc0>Pas de packaging officiel pour les systèmes de la famille
Unix</desc0>
+ <desc1>Packaging existant sur quelques systèmes de la famille
Unix</desc1>
+ <desc2>Packaging existant sur au moins ces 3 systèmes : AIX,
HP-UX, Solaris</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="packagingwindows" title="Windows">
+ <desc0>Le logiciel n'est pas disponible sur un système
Windows.</desc0>
+ <desc1>Le logiciel existe sous forme d'archive tout en un.</desc1>
+ <desc2>Le logiciel dispose d'un installeur.</desc2>
+ <score>0</score>
+ <comment></comment>
+ </element>
+ <element name="packagingsource" title="Sources">
+ <desc0>L'installation depuis les sources est hasardeuse et
risquée</desc0>
+ <desc1>L'installation depuis les sources est difficile ou limité
(seulement àun OS, une architecture, la résolution de l'écran...)</desc1>
+ <desc2>L'installation depuis les sources est outillée
(vérification des dépencances, verification de l'installation, gestion de
build)</desc2>
+ <score>2</score>
+ <comment></comment>
+ </element>
+ <element name="packagingtar" title="Archive compressée">
+ <desc0>Pas d'archive disponible</desc0>
+ <desc1>Archive globale</desc1>
+ <desc2>Archive séparée pour chaque module installable</desc2>
+ <score>1</score>
+ <comment></comment>
+ </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>0</score>
+ <comment>Requiert de maîtriser les concepts liés àl'injection
de dépendances. Le fait de supportées trois méthodes de configuration (XML,
Annotations te classses Java) peut dérouter certains développeurs.</comment>
+ </element>
+ <element name="administrationmonitoring" title="Administration et
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>Non appliquable àun framework de bas niveau.</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></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>2</score>
+ <comment></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>1</score>
+ <comment></comment>
+ </element>
+ </element>
+ </section>
+ <section name="ID_1733341988" title="Injection">
+ <desc>Types d'injection supportés par le framework.</desc>
+ <element name="ID_804069956" title="Injection tardive">
+ <desc>Possibiblité de configurer la création des instances
dépendantes lorsqu'elles sont nécessaire te non àl'initialisation du
framework.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Par défaut les Beans n'étant pas du Scope Singleton sont
instanciés tardivement. Il est possible de forcer l'injection tardice via
lazy-init ou default-lazy-init (XML) ou @Lazy (annotation).</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1885235433" title="Injection optionnelle">
+ <desc>Possibilité de rendre un injection optionnelle.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>En configuration XML, il est possible d'indiquer le statut
obligatoire ou optionel des association automatiques :
@Autowired(required=false). Il existe également l'annotation @Required mais
qui indique uniquement les injections obligatoires àvérifier ÃÂ
l'initialisation.
+</comment>
+ <score>1</score>
+ </element>
+ <element name="ID_701245882" title="Injection àla demande">
+ <desc>Possibilité de réaliser des injection dans des objets non
crées par le framework.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Il est possible de passer par une Factory en charge de
retourner les objets non créés par Spring. Il est également possible
d'utiliser l'AOP pour pouvoir injecter des objets annotés avec @Configurable.
</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_460930415" title="Injection par profils">
+ <desc>Possibilité d'activer/désactiver certains Beans en fonction
de profiles passés en paramètre àl'initialisatio nde l'injecteur.</desc>
+ <desc0>Type d'injection non supporté</desc0>
+ <desc1>Type d'injection supporté mais de manière limitée</desc1>
+ <desc2>Type d'injection complètement supporté</desc2>
+ <comment>Fonctionnalité prévue pour la version 3.1.
+http://blog.springsource.com/2011/02/14/spring-3-1-m1-introducing-profile/</comment>
+ <score>1</score>
+ </element>
+ </section>
+ <section name="ID_703298031" title="Configuration">
+ <desc>Configurations spécifiques au framework d'injection.</desc>
+ <element name="ID_95812423" title="Types d'associations supportés">
+ <desc>Types d'associations (bindings) possibles entre une injection
et l'objet réellement injecté.</desc>
+ <element name="ID_991109595" title="Association directe àune
instance">
+ <desc>Possibiblité d'associer une injection directement àune
instance donnée.</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_844423049" title="Association par identifiant">
+ <desc>L'instance àinjecter est sélectionnée via un identifiant
textuel non typé (@Named dans JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1722556385" title="Association par annotation">
+ <desc>L'instance àinjecter est sélectionnée via une annotation
àcréer et associée àun type (@Qualifier dans JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_331671268" title="Association par type de Managed
Bean">
+ <desc>L'instance àinjecter est sélectionnée en fonction d'un
de ses types de Managed Bean (au sens JSR-299). </desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1603894662" title="Association via Factory">
+ <desc>Possibiblité d'utiliser une Factory pour récupérer
l'instance àinjecter.</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1296339357" title="Association via Provider">
+ <desc>Possibiblité d'utiliser une Factory évoluée respectant le
typage pour récupérer l'instance àinjecter (notio nde Provider de
JSR-330).</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1996917015" title="Association automatique">
+ <desc>Le framework propose un mécanisme pour automatiquement
identifier les instances àinjecter sans configuration spécifique</desc>
+ <desc0>Type d'association non supporté</desc0>
+ <desc1>Type d'association supporté mais de manière
limitée</desc1>
+ <desc2>Type d'association complètement supporté</desc2>
+ <comment>Fonctionnalité d'autowiring de Spring.</comment>
+ <score>2</score>
+ </element>
+ </element>
+ <element name="ID_800110472" title="Initialisation">
+ <desc>Possibilités liées àl'initialisation du framework et des
instances.</desc>
+ <element name="ID_1654604626" title="Scan des packages">
+ <desc>Le framework analyse les packages Java pour initialiser les
instances.</desc>
+ <desc0>Le framework ne propose pas ce type d'initialisation</desc0>
+ <desc1>Le framework propose ce type d'initialisation mais ne
permet pas de filtrer les packages àanalyser</desc1>
+ <desc2>Le framework propose ce type d'initialisation et permet de
filtrer les packages àanalyser</desc2>
+ <comment>En mode de configuration non XML, les Beans injectables
sont détectés via les annotations @Component ou liées àdes stéréotypes
(@Controller, @Service).
+Spring propose des mécanismes avancés de filtrage pour personnalisre
l'analyse (annotations, AOP, expressions régulières...).</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1939593246" title="Web">
+ <desc>Possibilité d'initialiser les instances depuis le conteneur
Web.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Possibilité de créer des filtres pour associer
l'injecteur aux Servlets </desc1>
+ <desc2>Possibilité de créer des filtres avec des possibilités
avancées d'association (expressions régulières) et la possibilité de passer
des paramètres aux Servlets</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1218948251" title="Priorisation de l'ordre
d'initialisation">
+ <desc>Possibilité d'affecter des ordres de priorité pour
l'initialisation des instances.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment>Spring propose la notion de phase pour gérer l'odre de
démarrage et d'arrêt des objets.</comment>
+ <score>2</score>
+ </element>
+ </element>
+ </section>
+ <section name="ID_1252934230" title="Scopes">
+ <desc>Portées supportées pra les injections, définissant le
périmètre de réutilisation d'instances.</desc>
+ <element name="ID_767623077" title="Singleton">
+ <desc>Instance unique àtoute l'application.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment>Scope par défaut des Beans dans Spring.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1385354377" title="Session globale (portlet)">
+ <desc>Instance unique àla session globale partagées par les
portlets d'une même application.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_576561136" title="Session">
+ <desc>Instance unique àla session HTTP de l'utilisateur.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_267393881" title="Conversation">
+ <desc>Conversation au sens JSF du terme.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_31416302" title="Requête">
+ <desc>Instance unique àune requête HTTP.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1190194258" title="Prototype">
+ <desc>Chaque appel entraîne la création d'une nouvelle instance, il
n'y a donc pas de réutilisation d'instances existantes.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ <element name="ID_89115513" title="Thread">
+ <desc>Instance unique àun thread Java.</desc>
+ <desc0>Scope non supporté en standard</desc0>
+ <desc1>Scope supporté de manière partielle</desc1>
+ <desc2>Scope complètement supporté en standard</desc2>
+ <comment>Disponible en standard depuis la version 3.0 mais ne gère
pas le nettoyage des objets. Un module externe gérant ce dernier point est
disponible :
http://www.springbyexample.org/twiki/bin/view/Example/CustomThreadScopeModule</comment>
+ <score>1</score>
+ </element>
+ <element name="ID_573116436" title="Scopes personnalisés">
+ <desc>Possibilité de définir et utiliser ses propres scopes.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>2</score>
+ </element>
+ </section>
+ <section name="ID_1174759714" title="Intégration avec d'autres frameworks">
+ <element name="ID_1083534082" title="Persistance et transaction">
+ <desc>Possibilité de s'intégrer avec des frameworks de persistance
et de gestion des transaction.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun framework
spécifique</desc1>
+ <desc2>Intégration avec tout framework respectant l'API JPA</desc2>
+ <comment>Le framework supporte l'intégration avec Hibernate, Java
Persistence API (JPA), Java Data Objects (JDO) et iBATIS SQL Maps.
+Spring propose une couche d'abstraction par rapport aux gestionnaires de
transaction.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_919914417" title="Présentation">
+ <desc>Possibilité de s'intégrer avec des frameworks Web de
présentation.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun framework
spécifique</desc1>
+ <desc2>Intégration avec plusieurs frameworks Web majeurs</desc2>
+ <comment>Spring propose son propre framework MVC mais sais également
s'intégrer avec JSF, Struts, WebWork et Tapestry.
+http://static.springsource.org/spring/docs/3.0.x/reference/web-integration.html</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_906824099" title="OSGi">
+ <desc>Possibilité de s'intégrer avec le système OSGi de gestion
dynamique de modules.</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle</desc1>
+ <desc2>Intégration fine avec OSGi</desc2>
+ <comment>Il est possible d'exporter un Bean comme un service OSGi et
d'injecter des références àdes services OSGi dans les Beans. Ceci est
réalisé via le sous-projet Spring Dynamic Modules for OSGi, désormais en
incubation àla fondation Apache.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_504378332" title="Mécanisme générique">
+ <desc>Existence de mécanismes génériques pour intégrer
l'injecteur avec d'autres frameworks.</desc>
+ <desc0>Pas de mécanisme d'intégration générique avec des
frameworks externes</desc0>
+ <desc1>Mécanisme existant d'intégration avec certains types de
frameworks externes</desc1>
+ <desc2>Mécanisme générique d'intégration avec tous types de
frameworks externes</desc2>
+ <comment>Le mécanisme AOP proposé par Spring permet d'envisager
l'intégration avec d'autres frameworks.</comment>
+ <score>2</score>
+ </element>
+ </section>
+ <section name="ID_1383577911" title="Autres fonctionnalités">
+ <element name="ID_423295449" title="Composition d'annotations">
+ <desc>Possibilité de regrouper plusieurs annotations au sein d'une
annotation de plus haut niveau de modélisation (concept de Stereotype de
JSR-299).</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment>Spring propose des stereotypes par défaut (@Repository,
@Service et @Controller) mais il ne peuvent être modifiés et on ne peux en
créer de nouveaux.</comment>
+ <score>1</score>
+ </element>
+ <element name="ID_1365189022" title="Gestion des évènements">
+ <desc>Existence d'un mécanisme de production et de consommation
d'évènements par les Beans.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Quelques évènements prédéfinis sont utilisables sans
possibilité d'en créer de nouveaux</desc1>
+ <desc2>Des évènements prédéfinis sont utilisables avec
possibilité d'en créer de nouveaux</desc2>
+ <comment>Spring propose des évènements pra défaut ainsi que la
possibilité de créer de nouveaux évènements. Les évènements sont
notifiés de manière synchrone ou asynchrone.</comment>
+ <score>2</score>
+ </element>
+ <element name="ID_1176932165" title="Interception">
+ <element name="ID_1910329937" title="Interception de méthodes
métier">
+ <desc>Possibilité d'intercepter des appels de méthodes dans le
code métier des applications (concept de Decorators de JSR-299).</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1463150778" title="Interception de méthodes
techniques">
+ <desc>Possibilité d'intercepter des appels de méthodes dans le
code technique des applications (concepts d'Interceptors de JavaEE et
d'Interceptors typés de JSR-299)</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Les Interceptors de JavaEE sont supportés</desc1>
+ <desc2>Les Interceptors de JavaEE et les Interceptors typés de
JSR-299 sont supportés</desc2>
+ <comment></comment>
+ <score>1</score>
+ </element>
+ <element name="ID_1209366808" title="Callbacks (initialisation et
destruction)">
+ <desc>Possibilité d'intercepter via des fonctions de rappel
l'initialisation et la destruction des Beans.</desc>
+ <desc0>Fonctionnalité non supportée</desc0>
+ <desc1>Fonctionnalité supportée de manière partielle</desc1>
+ <desc2>Fonctionnalité complètement supportée</desc2>
+ <comment>Spring propose des fonctions callback avant
initialisation et après destruction des Beans.</comment>
+ <score>2</score>
+ </element>
+ </element>
+ <element name="ID_1804725606" title="Internationalisation">
+ <desc>Fonctionnalité offerte en standard par l'injecteur pour gérer
l'internationalisation.</desc>
+ <desc0>Aucune fonctionnalité d'internationalisation offerte en
standard</desc0>
+ <desc1>Fonctionnalité disponible mais de manière partielle ou
limitée</desc1>
+ <desc2>Fonctionnalité complètement standard</desc2>
+ <comment>L'injecteur étend une implémentation de type
ResourceLoader, ce qui rend aisé la récupération de ressources en fonction
de paramètres passés àl'initialisation de l'injecteur.</comment>
+ <score>2</score>
+ </element>
+ </section>
+ <section name="ID_1815689005" title="Assistance au développement">
+ <element name="ID_925232886" title="Extensibilité">
+ <element name="ID_1295092297" title="Extensibilité du code
applicatif">
+ <desc>Existence de mécanismes pour faciliter la modularité des
applications utilisant le framework d'injection.</desc>
+ <desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+ <desc1>Quelques fonctionnalités sont utilisables pour rendre les
applications extensibles</desc1>
+ <desc2>Le framework propose un mécanisme générique pour rendre
les applications extensibles</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_261103891" title="Extensibilité du framework">
+ <desc>Possibilité d'extension du framework d'injection.</desc>
+ <desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+ <desc1>Le framework propose quelques point d'extension</desc1>
+ <desc2>Le framework propose un mécanisme générique de
greffons</desc2>
+ <comment>Spring Core IoC fait partie d'un framework plus large.
+En outre il existe plusieurs points d'extension permettant de modifer la
logique d'injection et de résolution des dépendances ainsi que le gestion des
metadonnées de configuration.</comment>
+ <score>1</score>
+ </element>
+ </element>
+ <element name="ID_17223463" title="Génération de code">
+ <desc>Fonctionnalités offertes par le framework pour automatiquement
générer du code</desc>
+ <desc0>Aucun mécanisme de génération de code (hors injection pure)
n'est disponible</desc0>
+ <desc1>Le framework propose àla marge quelques fonctionnalités de
génération de code</desc1>
+ <desc2>La génération de code est un des pans fonctionnels couvert
par le framework</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_1680469059" title="Visualisation graphique">
+ <desc>Fonctionnalités offertes par le framework pour visualiser les
dépendances injectées.</desc>
+ <desc0>Aucun mécanisme de visualisation des dépendances n'est
disponible</desc0>
+ <desc1>Un mécanisme de visualisation des dépendances est disponible
mais est limité</desc1>
+ <desc2>Un mécanisme complet de visualisation des dépendances est
disponible</desc2>
+ <comment></comment>
+ <score>0</score>
+ </element>
+ <element name="ID_643365482" title="Intégration dans les IDE">
+ <desc>Support de l'injecteur dans les environnements de
développement intégré (IDE)</desc>
+ <desc0>Intégration non supportée</desc0>
+ <desc1>Intégration partielle ou limitée àun IDE
spécifique</desc1>
+ <desc2>Intégration avec plusieurs IDE majeurs</desc2>
+ <comment>Spring IDE est un greffon libre pour Eclipse. SpringSource
intègre ce greffon dans sa propre suite gratuite SpringSource Tool Suite for
Java. IntelliJ IDEA supporte également le framwork Spring.</comment>
+ <score>2</score>
+ </element>
+ </section>
+</document>
\ No newline at end of file
Index: template/DI_Framework_fr.mm
===================================================================
RCS file: template/DI_Framework_fr.mm
diff -N template/DI_Framework_fr.mm
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ template/DI_Framework_fr.mm 29 May 2012 12:33:52 -0000 1.1
@@ -0,0 +1,559 @@
+<map version="0.9.0">
+<!-- To view this file, download free mind mapping software FreeMind from
http://freemind.sourceforge.net -->
+<node CREATED="1305792667515" ID="ID_805170471" MODIFIED="1306140903605"
TEXT="DI Framework">
+<node CREATED="1306102938856" FOLDED="true" ID="ID_1733341988"
MODIFIED="1306140918205" POSITION="right" TEXT="Injection">
+<node CREATED="1306138730044" ID="ID_1881659746" MODIFIED="1306138769236"
STYLE="bubble" TEXT="Types d'injection supportés par le framework.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306103905029" FOLDED="true" ID="ID_804069956"
MODIFIED="1306140759517" TEXT="Injection tardive">
+<node CREATED="1306137836973" ID="ID_824440069" MODIFIED="1306138181582"
STYLE="bubble" TEXT="Possibiblité de configurer la création des
instances dépendantes lorsqu'elles sont nécessaire te non à
l'initialisation du framework.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_15408971" MODIFIED="1306137801333"
TEXT="Type d'injection non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_1121610535" MODIFIED="1306137807037"
TEXT="Type d'injection supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_429020261" MODIFIED="1306137810524"
TEXT="Type d'injection complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103947611" FOLDED="true" ID="ID_1885235433"
MODIFIED="1306140760717" TEXT="Injection optionnelle">
+<node CREATED="1306138248179" ID="ID_1983453479" MODIFIED="1306138721869"
STYLE="bubble" TEXT="Possibilité de rendre un injection optionnelle.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_1205758379" MODIFIED="1306137818092"
TEXT="Type d'injection non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_1610139413" MODIFIED="1306137821508"
TEXT="Type d'injection supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_1240420154" MODIFIED="1306137825293"
TEXT="Type d'injection complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103958125" FOLDED="true" ID="ID_701245882"
MODIFIED="1306140761357" TEXT="Injection à la demande">
+<node CREATED="1306138524951" ID="ID_1180711291" MODIFIED="1306138715517"
STYLE="bubble" TEXT="Possibilité de réaliser des injection dans des
objets non crées par le framework.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_357618787" MODIFIED="1306137818092"
TEXT="Type d'injection non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_28389158" MODIFIED="1306137821508"
TEXT="Type d'injection supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_955672264" MODIFIED="1306137825293"
TEXT="Type d'injection complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103970571" FOLDED="true" ID="ID_460930415"
MODIFIED="1306140762077" TEXT="Injection par profils">
+<node CREATED="1306138556594" ID="ID_1135143699" MODIFIED="1306138710781"
STYLE="bubble" TEXT="Possibilité d'activer/désactiver certains
Beans en fonction de profiles passés en paramètre à
l'initialisatio nde l'injecteur.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_658073259" MODIFIED="1306137818092"
TEXT="Type d'injection non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_1164105739" MODIFIED="1306137821508"
TEXT="Type d'injection supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_466330886" MODIFIED="1306137825293"
TEXT="Type d'injection complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+<node CREATED="1306102952710" ID="ID_703298031" MODIFIED="1306162078086"
POSITION="left" TEXT="Configuration">
+<node CREATED="1306139232433" ID="ID_1790807873" MODIFIED="1306139280581"
STYLE="bubble" TEXT="Configurations spécifiques au framework
d'injection.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306104039180" ID="ID_95812423" MODIFIED="1306160358675"
TEXT="Types d'associations supportés">
+<node CREATED="1306139289012" ID="ID_882021861" MODIFIED="1306139430813"
STYLE="bubble" TEXT="Types d'associations (bindings) possibles entre une
injection et l'objet réellement injecté.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306104052969" ID="ID_991109595" MODIFIED="1306139421771"
STYLE="fork" TEXT="Association directe à une instance">
+<font NAME="SansSerif" SIZE="12"/>
+<node CREATED="1306137836973" ID="ID_137161806" MODIFIED="1306139507245"
STYLE="bubble" TEXT="Possibiblité d'associer une injection
directement à une instance donnée.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_1735038052" MODIFIED="1306139457443"
TEXT="Type d'association non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_123805832" MODIFIED="1306139465083"
TEXT="Type d'association supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_325679008" MODIFIED="1306139470541"
TEXT="Type d'association complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104066007" ID="ID_844423049" MODIFIED="1306104074896"
TEXT="Association par identifiant">
+<node CREATED="1306137836973" ID="ID_1358359887" MODIFIED="1306139686065"
STYLE="bubble" TEXT="L'instance à injecter est sélectionnée
via un identifiant textuel non typé (@Named dans JSR-330).">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_651771917" MODIFIED="1306139457443"
TEXT="Type d'association non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_1263339256" MODIFIED="1306139465083"
TEXT="Type d'association supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_1749465160" MODIFIED="1306139470541"
TEXT="Type d'association complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104077343" ID="ID_1722556385" MODIFIED="1306104085406"
TEXT="Association par annotation">
+<node CREATED="1306137836973" ID="ID_1712213893" MODIFIED="1306139713401"
STYLE="bubble" TEXT="L'instance à injecter est sélectionnée
via une annotation à créer et associée à un type
(@Qualifier dans JSR-330).">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_1642521758" MODIFIED="1306139457443"
TEXT="Type d'association non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_267579673" MODIFIED="1306139465083"
TEXT="Type d'association supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_773983433" MODIFIED="1306139470541"
TEXT="Type d'association complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104087819" ID="ID_331671268" MODIFIED="1306139780865"
TEXT="Association par type de Managed Bean">
+<node CREATED="1306137836973" ID="ID_1372759595" MODIFIED="1306139770844"
STYLE="bubble" TEXT="L'instance à injecter est sélectionnée
en fonction d'un de ses types de Managed Bean (au sens JSR-299). ">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_1897529460" MODIFIED="1306139457443"
TEXT="Type d'association non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_1320968063" MODIFIED="1306139465083"
TEXT="Type d'association supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_1035444303" MODIFIED="1306139470541"
TEXT="Type d'association complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104098372" ID="ID_1603894662" MODIFIED="1306104146661"
TEXT="Association via Factory">
+<node CREATED="1306137836973" ID="ID_626729356" MODIFIED="1306139809105"
STYLE="bubble" TEXT="Possibiblité d'utiliser une Factory pour
récupérer l'instance à injecter.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_965783158" MODIFIED="1306139457443"
TEXT="Type d'association non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_1746978193" MODIFIED="1306139465083"
TEXT="Type d'association supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_1971083046" MODIFIED="1306139470541"
TEXT="Type d'association complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104167001" ID="ID_1296339357" MODIFIED="1306139527207"
TEXT="Association via Provider">
+<node CREATED="1306137836973" ID="ID_988802617" MODIFIED="1306139887801"
STYLE="bubble" TEXT="Possibiblité d'utiliser une Factory
évoluée respectant le typage pour récupérer l'instance
à injecter (notio nde Provider de JSR-330).">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_464801230" MODIFIED="1306139457443"
TEXT="Type d'association non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_585489497" MODIFIED="1306139465083"
TEXT="Type d'association supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_815434430" MODIFIED="1306139470541"
TEXT="Type d'association complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306160363621" ID="ID_1996917015" MODIFIED="1306160370906"
TEXT="Association automatique">
+<node CREATED="1306137836973" ID="ID_902308987" MODIFIED="1306160422395"
STYLE="bubble" TEXT="Le framework propose un mécanisme pour
automatiquement identifier les instances à injecter sans configuration
spécifique">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_755174185" MODIFIED="1306139457443"
TEXT="Type d'association non supporté">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_807049114" MODIFIED="1306139465083"
TEXT="Type d'association supporté mais de manière limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_629560902" MODIFIED="1306139470541"
TEXT="Type d'association complètement supporté">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+<node CREATED="1306104239796" ID="ID_800110472" MODIFIED="1306162080452"
TEXT="Initialisation">
+<node CREATED="1306139904867" ID="ID_150647476" MODIFIED="1306139945090"
STYLE="bubble" TEXT="Possibilités liées à l'initialisation
du framework et des instances.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306104299737" ID="ID_1654604626" MODIFIED="1306162083216"
TEXT="Scan des packages">
+<node CREATED="1306139991181" ID="ID_517347308" MODIFIED="1306140033531"
STYLE="bubble" TEXT="Le framework analyse les packages Java pour initialiser
les instances.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306137743826" ID="ID_903300046" MODIFIED="1306140066035"
TEXT="Le framework ne propose pas ce type d'initialisation">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306137762235" ID="ID_710255586" MODIFIED="1306140120531"
TEXT="Le framework propose ce type d'initialisation mais ne permet pas de
filtrer les packages à analyser">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306137779474" ID="ID_686838374" MODIFIED="1306140122763"
TEXT="Le framework propose ce type d'initialisation et permet de filtrer
les packages à analyser">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104276237" FOLDED="true" ID="ID_1939593246"
MODIFIED="1306140755829" TEXT="Web">
+<node CREATED="1306140222348" ID="ID_480823664" MODIFIED="1306140277626"
STYLE="bubble" TEXT="Possibilité d'initialiser les instances depuis
le conteneur Web.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306140491506" ID="ID_1899345045" MODIFIED="1306140666451"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306140681941" ID="ID_550239284" MODIFIED="1306140742381"
TEXT="Possibilité de créer des filtres pour associer l'injecteur
aux Servlets ">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306140515170" ID="ID_592465714" MODIFIED="1306140744477"
TEXT="Possibilité de créer des filtres avec des possibilités
avancées d'association (expressions régulières) et la
possibilité de passer des paramètres aux Servlets">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306105135348" FOLDED="true" ID="ID_1218948251"
MODIFIED="1306140896021" TEXT="Priorisation de l'ordre
d'initialisation">
+<node CREATED="1306105164153" ID="ID_1925934218" MODIFIED="1306140870517"
STYLE="bubble" TEXT="Possibilité d'affecter des ordres de
priorité pour l'initialisation des instances.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1757812687" MODIFIED="1306139121704"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_596170044" MODIFIED="1306139115220"
TEXT="Fonctionnalité supportée de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_835505225" MODIFIED="1306139134084"
TEXT="Fonctionnalité complètement supportée">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+</node>
+<node CREATED="1306103062620" FOLDED="true" ID="ID_1252934230"
MODIFIED="1306157449847" POSITION="right" TEXT="Scopes">
+<node CREATED="1306139161709" ID="ID_836048567" MODIFIED="1306139215795"
STYLE="bubble" TEXT="Portées supportées pra les injections,
définissant le périmètre de réutilisation
d'instances.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306103207492" FOLDED="true" ID="ID_767623077"
MODIFIED="1306140765285" TEXT="Singleton">
+<node CREATED="1306103219252" ID="ID_1824910037" MODIFIED="1306138814869"
STYLE="bubble" TEXT="Instance unique à toute l'application.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1819676106" MODIFIED="1306138883740"
TEXT="Scope non supporté en standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1509695225" MODIFIED="1306138886164"
TEXT="Scope supporté de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1555254802" MODIFIED="1306138888660"
TEXT="Scope complètement supporté en standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103247138" FOLDED="true" ID="ID_1385354377"
MODIFIED="1306140765877" TEXT="Session globale (portlet)">
+<node CREATED="1306103219252" ID="ID_1134572634" MODIFIED="1306139003654"
STYLE="bubble" TEXT="Instance unique à la session globale partagées
par les portlets d'une même application.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_19870498" MODIFIED="1306138883740"
TEXT="Scope non supporté en standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_157901616" MODIFIED="1306138886164"
TEXT="Scope supporté de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_864548829" MODIFIED="1306138888660"
TEXT="Scope complètement supporté en standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103269578" FOLDED="true" ID="ID_576561136"
MODIFIED="1306140766421" TEXT="Session">
+<node CREATED="1306103219252" ID="ID_656684637" MODIFIED="1306139025814"
STYLE="bubble" TEXT="Instance unique à la session HTTP de
l'utilisateur.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1790901723" MODIFIED="1306138883740"
TEXT="Scope non supporté en standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1242431384" MODIFIED="1306138886164"
TEXT="Scope supporté de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1581729568" MODIFIED="1306138888660"
TEXT="Scope complètement supporté en standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103275899" FOLDED="true" ID="ID_267393881"
MODIFIED="1306140767133" TEXT="Conversation">
+<node CREATED="1306103314312" ID="ID_785383906" MODIFIED="1306138968381"
STYLE="bubble" TEXT="Conversation au sens JSF du terme.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1596825295" MODIFIED="1306138883740"
TEXT="Scope non supporté en standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_999517260" MODIFIED="1306138886164"
TEXT="Scope supporté de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_680279479" MODIFIED="1306138888660"
TEXT="Scope complètement supporté en standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103302807" FOLDED="true" ID="ID_31416302"
MODIFIED="1306140767645" TEXT="Requête">
+<node CREATED="1306103219252" ID="ID_549623297" MODIFIED="1306139043662"
STYLE="bubble" TEXT="Instance unique à une requête HTTP.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1891411981" MODIFIED="1306138883740"
TEXT="Scope non supporté en standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1488943859" MODIFIED="1306138886164"
TEXT="Scope supporté de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1641805654" MODIFIED="1306138888660"
TEXT="Scope complètement supporté en standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103337296" FOLDED="true" ID="ID_1190194258"
MODIFIED="1306140768245" TEXT="Prototype">
+<node CREATED="1306103219252" ID="ID_602806703" MODIFIED="1306138936429"
STYLE="bubble" TEXT="Chaque appel entraîne la création d'une
nouvelle instance, il n'y a donc pas de réutilisation
d'instances existantes.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1631877483" MODIFIED="1306138883740"
TEXT="Scope non supporté en standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_71135027" MODIFIED="1306138886164"
TEXT="Scope supporté de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1628179832" MODIFIED="1306138888660"
TEXT="Scope complètement supporté en standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103417497" FOLDED="true" ID="ID_89115513"
MODIFIED="1306140768917" TEXT="Thread">
+<node CREATED="1306103219252" ID="ID_572554739" MODIFIED="1306139065623"
STYLE="bubble" TEXT="Instance unique à un thread Java.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1000107133" MODIFIED="1306138883740"
TEXT="Scope non supporté en standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1645426262" MODIFIED="1306138886164"
TEXT="Scope supporté de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1978191446" MODIFIED="1306138888660"
TEXT="Scope complètement supporté en standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103434111" ID="ID_573116436" MODIFIED="1306155605039"
TEXT="Scopes personnalisés">
+<node CREATED="1306103219252" ID="ID_1154994169" MODIFIED="1306157218545"
STYLE="bubble" TEXT="Possibilité de définir et utiliser ses propres
scopes.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1859366980" MODIFIED="1306139121704"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_511354491" MODIFIED="1306139115220"
TEXT="Fonctionnalité supportée de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1046158840" MODIFIED="1306139134084"
TEXT="Fonctionnalité complètement supportée">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+<node CREATED="1306103081084" FOLDED="true" ID="ID_1174759714"
MODIFIED="1306157113630" POSITION="left" TEXT="Intégration avec
d'autres frameworks">
+<node CREATED="1306104370146" ID="ID_1083534082" MODIFIED="1306104385156"
TEXT="Persistance et transaction">
+<node CREATED="1306103219252" ID="ID_455315" MODIFIED="1306155657125"
STYLE="bubble" TEXT="Possibilité de s'intégrer avec des
frameworks de persistance et de gestion des transaction.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1746510693" MODIFIED="1306155665718"
TEXT="Intégration non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_360267161" MODIFIED="1306155806272"
TEXT="Intégration partielle ou limitée à un framework
spécifique">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1684918964" MODIFIED="1306155831582"
TEXT="Intégration avec tout framework respectant l'API JPA">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104387137" ID="ID_919914417" MODIFIED="1306104394983"
TEXT="Présentation">
+<node CREATED="1306103219252" ID="ID_4461838" MODIFIED="1306155859343"
STYLE="bubble" TEXT="Possibilité de s'intégrer avec des
frameworks Web de présentation.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1367022458" MODIFIED="1306155665718"
TEXT="Intégration non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1959200961" MODIFIED="1306155806272"
TEXT="Intégration partielle ou limitée à un framework
spécifique">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_266820825" MODIFIED="1306155882925"
TEXT="Intégration avec plusieurs frameworks Web majeurs">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104396987" ID="ID_906824099" MODIFIED="1306104403671"
TEXT="OSGi">
+<node CREATED="1306103219252" ID="ID_472980670" MODIFIED="1306156278664"
STYLE="bubble" TEXT="Possibilité de s'intégrer avec le
système OSGi de gestion dynamique de modules.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1504985255" MODIFIED="1306155665718"
TEXT="Intégration non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1608365309" MODIFIED="1306156289824"
TEXT="Intégration partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1805503061" MODIFIED="1306156299920"
TEXT="Intégration fine avec OSGi">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104405720" ID="ID_504378332" MODIFIED="1306104412228"
TEXT="Mécanisme générique">
+<node CREATED="1306103219252" ID="ID_1492136139" MODIFIED="1306156340373"
STYLE="bubble" TEXT="Existence de mécanismes génériques pour
intégrer l'injecteur avec d'autres frameworks.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1710025402" MODIFIED="1306156686281"
TEXT="Pas de mécanisme d'intégration générique avec
des frameworks externes">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1514867560" MODIFIED="1306156683209"
TEXT="Mécanisme existant d'intégration avec certains types de
frameworks externes">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_759512904" MODIFIED="1306156681614"
TEXT="Mécanisme générique d'intégration avec tous
types de frameworks externes">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+<node CREATED="1306103116822" ID="ID_1383577911" MODIFIED="1306164365775"
POSITION="right" TEXT="Autres fonctionnalités">
+<node CREATED="1306103462279" ID="ID_423295449" MODIFIED="1306103472900"
TEXT="Composition d'annotations">
+<node CREATED="1306103219252" ID="ID_1221719035" MODIFIED="1306164376438"
STYLE="bubble" TEXT="Possibilité de regrouper plusieurs annotations au
sein d'une annotation de plus haut niveau de modélisation (concept de
Stereotype de JSR-299).">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_741634675" MODIFIED="1306139121704"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_248954581" MODIFIED="1306139115220"
TEXT="Fonctionnalité supportée de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_944152217" MODIFIED="1306139134084"
TEXT="Fonctionnalité complètement supportée">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103474627" ID="ID_1365189022" MODIFIED="1306103492715"
TEXT="Gestion des évènements">
+<node CREATED="1306103219252" ID="ID_1738727458" MODIFIED="1306158637271"
STYLE="bubble" TEXT="Existence d'un mécanisme de production et de
consommation d'évènements par les Beans.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_607422222" MODIFIED="1306139121704"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_376339196" MODIFIED="1306157539596"
TEXT="Quelques évènements prédéfinis sont utilisables sans
possibilité d'en créer de nouveaux">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_615287759" MODIFIED="1306157563004"
TEXT="Des évènements prédéfinis sont utilisables avec
possibilité d'en créer de nouveaux">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103495826" ID="ID_1176932165" MODIFIED="1306103523400"
TEXT="Interception">
+<node CREATED="1306103525302" ID="ID_1910329937" MODIFIED="1306158298337"
TEXT="Interception de méthodes métier">
+<node CREATED="1306103219252" ID="ID_118153654" MODIFIED="1306158642781"
STYLE="bubble" TEXT="Possibilité d'intercepter des appels de
méthodes dans le code métier des applications (concept de Decorators
de JSR-299).">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1860434872" MODIFIED="1306139121704"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1938446221" MODIFIED="1306139115220"
TEXT="Fonctionnalité supportée de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_473208396" MODIFIED="1306139134084"
TEXT="Fonctionnalité complètement supportée">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103579492" ID="ID_1463150778" MODIFIED="1306158299782"
TEXT="Interception de méthodes techniques">
+<node CREATED="1306103219252" ID="ID_134635999" MODIFIED="1306158544908"
STYLE="bubble" TEXT="Possibilité d'intercepter des appels de
méthodes dans le code technique des applications (concepts
d'Interceptors de JavaEE et d'Interceptors typés de JSR-299)">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1177429741" MODIFIED="1306139121704"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_494537475" MODIFIED="1306158510161"
TEXT="Les Interceptors de JavaEE sont supportés">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1006347770" MODIFIED="1306158539978"
TEXT="Les Interceptors de JavaEE et les Interceptors typés de JSR-299 sont
supportés">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306104918975" ID="ID_1209366808" MODIFIED="1306104951624"
TEXT="Callbacks (initialisation et destruction)">
+<node CREATED="1306103219252" ID="ID_1011764652" MODIFIED="1306158626897"
STYLE="bubble" TEXT="Possibilité d'intercepter via des fonctions de
rappel l'initialisation et la destruction des Beans.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_602086919" MODIFIED="1306139121704"
TEXT="Fonctionnalité non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1258515149" MODIFIED="1306139115220"
TEXT="Fonctionnalité supportée de manière partielle">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1910812586" MODIFIED="1306139134084"
TEXT="Fonctionnalité complètement supportée">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+<node CREATED="1306107281276" ID="ID_1804725606" MODIFIED="1306107292923"
TEXT="Internationalisation">
+<node CREATED="1306103219252" ID="ID_470743702" MODIFIED="1306158911677"
STYLE="bubble" TEXT="Fonctionnalité offerte en standard par
l'injecteur pour gérer l'internationalisation.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1722590131" MODIFIED="1306158917123"
TEXT="Aucune fonctionnalité d'internationalisation offerte en
standard">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1232781054" MODIFIED="1306158894944"
TEXT="Fonctionnalité disponible mais de manière partielle ou
limitée">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1933871188" MODIFIED="1306158932554"
TEXT="Fonctionnalité complètement standard">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+<node CREATED="1306103125440" FOLDED="true" ID="ID_1815689005"
MODIFIED="1306157446304" POSITION="left" TEXT="Assistance au
développement">
+<node CREATED="1306103665111" FOLDED="true" ID="ID_925232886"
MODIFIED="1306157116493" TEXT="Extensibilité">
+<node CREATED="1306103675713" ID="ID_1295092297" MODIFIED="1306103689318"
TEXT="Extensibilité du code applicatif">
+<node CREATED="1306103219252" ID="ID_313942099" MODIFIED="1306156571695"
STYLE="bubble" TEXT="Existence de mécanismes pour faciliter la
modularité des applications utilisant le framework d'injection.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1201280648" MODIFIED="1306156676292"
TEXT="Aucun mécanisme d'extensibilité n'est disponible">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1168632048" MODIFIED="1306156679154"
TEXT="Quelques fonctionnalités sont utilisables pour rendre les
applications extensibles">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_23675630" MODIFIED="1306156672808"
TEXT="Le framework propose un mécanisme générique pour rendre
les applications extensibles">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103691395" ID="ID_261103891" MODIFIED="1306103698906"
TEXT="Extensibilité du framework">
+<node CREATED="1306103219252" ID="ID_1258126331" MODIFIED="1306156720521"
STYLE="bubble" TEXT="Possibilité d'extension du framework
d'injection.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_1384996423" MODIFIED="1306156676292"
TEXT="Aucun mécanisme d'extensibilité n'est disponible">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1254624101" MODIFIED="1306156745327"
TEXT="Le framework propose quelques point d'extension">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1932370899" MODIFIED="1306156753593"
TEXT="Le framework propose un mécanisme générique de greffons">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+<node CREATED="1306103701867" ID="ID_17223463" MODIFIED="1306103713595"
TEXT="Génération de code">
+<node CREATED="1306103219252" ID="ID_562739121" MODIFIED="1306156858911"
STYLE="bubble" TEXT="Fonctionnalités offertes par le framework pour
automatiquement générer du code">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_757102039" MODIFIED="1306156875003"
TEXT="Aucun mécanisme de génération de code (hors injection
pure) n'est disponible">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1312416026" MODIFIED="1306156905218"
TEXT="Le framework propose à la marge quelques fonctionnalités de
génération de code">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_391280690" MODIFIED="1306156943481"
TEXT="La génération de code est un des pans fonctionnels couvert par
le framework">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103854048" ID="ID_1680469059" MODIFIED="1306103869195"
TEXT="Visualisation graphique">
+<node CREATED="1306103219252" ID="ID_138349395" MODIFIED="1306156977798"
STYLE="bubble" TEXT="Fonctionnalités offertes par le framework pour
visualiser les dépendances injectées.">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_291950853" MODIFIED="1306156990504"
TEXT="Aucun mécanisme de visualisation des dépendances n'est
disponible">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_1264889986" MODIFIED="1306157032799"
TEXT="Un mécanisme de visualisation des dépendances est disponible
mais est limité">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1456382256" MODIFIED="1306157030483"
TEXT="Un mécanisme complet de visualisation des dépendances est
disponible">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+<node CREATED="1306103873755" ID="ID_643365482" MODIFIED="1306103884418"
TEXT="Intégration dans les IDE">
+<node CREATED="1306103219252" ID="ID_267096327" MODIFIED="1306157085683"
STYLE="bubble" TEXT="Support de l'injecteur dans les environnements de
développement intégré (IDE)">
+<font ITALIC="true" NAME="SansSerif" SIZE="10"/>
+</node>
+<node CREATED="1306138827998" ID="ID_82048136" MODIFIED="1306155665718"
TEXT="Intégration non supportée">
+<icon BUILTIN="full-0"/>
+</node>
+<node CREATED="1306138841035" ID="ID_649353679" MODIFIED="1306157098837"
TEXT="Intégration partielle ou limitée à un IDE spécifique">
+<icon BUILTIN="full-1"/>
+</node>
+<node CREATED="1306138852372" ID="ID_1821283199" MODIFIED="1306157104168"
TEXT="Intégration avec plusieurs IDE majeurs">
+<icon BUILTIN="full-2"/>
+</node>
+</node>
+</node>
+</node>
+</map>
Index: template/DI_Framework_fr.qtpl
===================================================================
RCS file: template/DI_Framework_fr.qtpl
diff -N template/DI_Framework_fr.qtpl
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ template/DI_Framework_fr.qtpl 29 May 2012 12:33:54 -0000 1.1
@@ -0,0 +1,344 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<document>
+<header>
+<authors/>
+<dates>
+<creation/>
+<validation/>
+</dates>
+<appname/>
+<desc/>
+<release/>
+<licenseid/>
+<licensedesc/>
+<url/>
+<demourl/>
+<language>fr</language>
+<qsosappname/>
+<qsosformat>1.0</qsosformat>
+<qsosspecificformat/>
+<qsosappfamily>DI Framework</qsosappfamily>
+</header>
+<include section="Presto_generic_fr"/>
+<section name="ID_1733341988" title="Injection">
+<desc>Types d'injection supportés par le framework.</desc>
+<element name="ID_804069956" title="Injection tardive">
+<desc>Possibiblité de configurer la création des instances dépendantes
lorsqu'elles sont nécessaire te non àl'initialisation du framework.</desc>
+<desc0>Type d'injection non supporté</desc0>
+<desc1>Type d'injection supporté mais de manière limitée</desc1>
+<desc2>Type d'injection complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1885235433" title="Injection optionnelle">
+<desc>Possibilité de rendre un injection optionnelle.</desc>
+<desc0>Type d'injection non supporté</desc0>
+<desc1>Type d'injection supporté mais de manière limitée</desc1>
+<desc2>Type d'injection complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_701245882" title="Injection àla demande">
+<desc>Possibilité de réaliser des injection dans des objets non crées par
le framework.</desc>
+<desc0>Type d'injection non supporté</desc0>
+<desc1>Type d'injection supporté mais de manière limitée</desc1>
+<desc2>Type d'injection complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_460930415" title="Injection par profils">
+<desc>Possibilité d'activer/désactiver certains Beans en fonction de
profiles passés en paramètre àl'initialisatio nde l'injecteur.</desc>
+<desc0>Type d'injection non supporté</desc0>
+<desc1>Type d'injection supporté mais de manière limitée</desc1>
+<desc2>Type d'injection complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+</section>
+<section name="ID_703298031" title="Configuration">
+<desc>Configurations spécifiques au framework d'injection.</desc>
+<element name="ID_95812423" title="Types d'associations supportés">
+<desc>Types d'associations (bindings) possibles entre une injection et l'objet
réellement injecté.</desc>
+<element name="ID_991109595" title="Association directe àune instance">
+<desc>Possibiblité d'associer une injection directement àune instance
donnée.</desc>
+<desc0>Type d'association non supporté</desc0>
+<desc1>Type d'association supporté mais de manière limitée</desc1>
+<desc2>Type d'association complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_844423049" title="Association par identifiant">
+<desc>L'instance àinjecter est sélectionnée via un identifiant textuel non
typé (@Named dans JSR-330).</desc>
+<desc0>Type d'association non supporté</desc0>
+<desc1>Type d'association supporté mais de manière limitée</desc1>
+<desc2>Type d'association complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1722556385" title="Association par annotation">
+<desc>L'instance àinjecter est sélectionnée via une annotation àcréer
et associée àun type (@Qualifier dans JSR-330).</desc>
+<desc0>Type d'association non supporté</desc0>
+<desc1>Type d'association supporté mais de manière limitée</desc1>
+<desc2>Type d'association complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_331671268" title="Association par type de Managed Bean">
+<desc>L'instance àinjecter est sélectionnée en fonction d'un de ses types
de Managed Bean (au sens JSR-299). </desc>
+<desc0>Type d'association non supporté</desc0>
+<desc1>Type d'association supporté mais de manière limitée</desc1>
+<desc2>Type d'association complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1603894662" title="Association via Factory">
+<desc>Possibiblité d'utiliser une Factory pour récupérer l'instance ÃÂ
injecter.</desc>
+<desc0>Type d'association non supporté</desc0>
+<desc1>Type d'association supporté mais de manière limitée</desc1>
+<desc2>Type d'association complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1296339357" title="Association via Provider">
+<desc>Possibiblité d'utiliser une Factory évoluée respectant le typage pour
récupérer l'instance àinjecter (notio nde Provider de JSR-330).</desc>
+<desc0>Type d'association non supporté</desc0>
+<desc1>Type d'association supporté mais de manière limitée</desc1>
+<desc2>Type d'association complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1996917015" title="Association automatique">
+<desc>Le framework propose un mécanisme pour automatiquement identifier les
instances àinjecter sans configuration spécifique</desc>
+<desc0>Type d'association non supporté</desc0>
+<desc1>Type d'association supporté mais de manière limitée</desc1>
+<desc2>Type d'association complètement supporté</desc2>
+<comment/>
+<score/>
+</element>
+</element>
+<element name="ID_800110472" title="Initialisation">
+<desc>Possibilités liées àl'initialisation du framework et des
instances.</desc>
+<element name="ID_1654604626" title="Scan des packages">
+<desc>Le framework analyse les packages Java pour initialiser les
instances.</desc>
+<desc0>Le framework ne propose pas ce type d'initialisation</desc0>
+<desc1>Le framework propose ce type d'initialisation mais ne permet pas de
filtrer les packages àanalyser</desc1>
+<desc2>Le framework propose ce type d'initialisation et permet de filtrer les
packages àanalyser</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1939593246" title="Web">
+<desc>Possibilité d'initialiser les instances depuis le conteneur Web.</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Possibilité de créer des filtres pour associer l'injecteur aux
Servlets </desc1>
+<desc2>Possibilité de créer des filtres avec des possibilités avancées
d'association (expressions régulières) et la possibilité de passer des
paramètres aux Servlets</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1218948251" title="Priorisation de l'ordre d'initialisation">
+<desc>Possibilité d'affecter des ordres de priorité pour l'initialisation
des instances.</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Fonctionnalité supportée de manière partielle</desc1>
+<desc2>Fonctionnalité complètement supportée</desc2>
+<comment/>
+<score/>
+</element>
+</element>
+</section>
+<section name="ID_1252934230" title="Scopes">
+<desc>Portées supportées pra les injections, définissant le périmètre de
réutilisation d'instances.</desc>
+<element name="ID_767623077" title="Singleton">
+<desc>Instance unique àtoute l'application.</desc>
+<desc0>Scope non supporté en standard</desc0>
+<desc1>Scope supporté de manière partielle</desc1>
+<desc2>Scope complètement supporté en standard</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1385354377" title="Session globale (portlet)">
+<desc>Instance unique àla session globale partagées par les portlets d'une
même application.</desc>
+<desc0>Scope non supporté en standard</desc0>
+<desc1>Scope supporté de manière partielle</desc1>
+<desc2>Scope complètement supporté en standard</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_576561136" title="Session">
+<desc>Instance unique àla session HTTP de l'utilisateur.</desc>
+<desc0>Scope non supporté en standard</desc0>
+<desc1>Scope supporté de manière partielle</desc1>
+<desc2>Scope complètement supporté en standard</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_267393881" title="Conversation">
+<desc>Conversation au sens JSF du terme.</desc>
+<desc0>Scope non supporté en standard</desc0>
+<desc1>Scope supporté de manière partielle</desc1>
+<desc2>Scope complètement supporté en standard</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_31416302" title="Requête">
+<desc>Instance unique àune requête HTTP.</desc>
+<desc0>Scope non supporté en standard</desc0>
+<desc1>Scope supporté de manière partielle</desc1>
+<desc2>Scope complètement supporté en standard</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1190194258" title="Prototype">
+<desc>Chaque appel entraîne la création d'une nouvelle instance, il n'y a
donc pas de réutilisation d'instances existantes.</desc>
+<desc0>Scope non supporté en standard</desc0>
+<desc1>Scope supporté de manière partielle</desc1>
+<desc2>Scope complètement supporté en standard</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_89115513" title="Thread">
+<desc>Instance unique àun thread Java.</desc>
+<desc0>Scope non supporté en standard</desc0>
+<desc1>Scope supporté de manière partielle</desc1>
+<desc2>Scope complètement supporté en standard</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_573116436" title="Scopes personnalisés">
+<desc>Possibilité de définir et utiliser ses propres scopes.</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Fonctionnalité supportée de manière partielle</desc1>
+<desc2>Fonctionnalité complètement supportée</desc2>
+<comment/>
+<score/>
+</element>
+</section>
+<section name="ID_1174759714" title="Intégration avec d'autres frameworks">
+<element name="ID_1083534082" title="Persistance et transaction">
+<desc>Possibilité de s'intégrer avec des frameworks de persistance et de
gestion des transaction.</desc>
+<desc0>Intégration non supportée</desc0>
+<desc1>Intégration partielle ou limitée àun framework spécifique</desc1>
+<desc2>Intégration avec tout framework respectant l'API JPA</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_919914417" title="Présentation">
+<desc>Possibilité de s'intégrer avec des frameworks Web de
présentation.</desc>
+<desc0>Intégration non supportée</desc0>
+<desc1>Intégration partielle ou limitée àun framework spécifique</desc1>
+<desc2>Intégration avec plusieurs frameworks Web majeurs</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_906824099" title="OSGi">
+<desc>Possibilité de s'intégrer avec le système OSGi de gestion dynamique
de modules.</desc>
+<desc0>Intégration non supportée</desc0>
+<desc1>Intégration partielle</desc1>
+<desc2>Intégration fine avec OSGi</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_504378332" title="Mécanisme générique">
+<desc>Existence de mécanismes génériques pour intégrer l'injecteur avec
d'autres frameworks.</desc>
+<desc0>Pas de mécanisme d'intégration générique avec des frameworks
externes</desc0>
+<desc1>Mécanisme existant d'intégration avec certains types de frameworks
externes</desc1>
+<desc2>Mécanisme générique d'intégration avec tous types de frameworks
externes</desc2>
+<comment/>
+<score/>
+</element>
+</section>
+<section name="ID_1383577911" title="Autres fonctionnalités">
+<element name="ID_423295449" title="Composition d'annotations">
+<desc>Possibilité de regrouper plusieurs annotations au sein d'une annotation
de plus haut niveau de modélisation (concept de Stereotype de JSR-299).</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Fonctionnalité supportée de manière partielle</desc1>
+<desc2>Fonctionnalité complètement supportée</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1365189022" title="Gestion des évènements">
+<desc>Existence d'un mécanisme de production et de consommation
d'évènements par les Beans.</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Quelques évènements prédéfinis sont utilisables sans possibilité
d'en créer de nouveaux</desc1>
+<desc2>Des évènements prédéfinis sont utilisables avec possibilité d'en
créer de nouveaux</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1176932165" title="Interception">
+<element name="ID_1910329937" title="Interception de méthodes métier">
+<desc>Possibilité d'intercepter des appels de méthodes dans le code métier
des applications (concept de Decorators de JSR-299).</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Fonctionnalité supportée de manière partielle</desc1>
+<desc2>Fonctionnalité complètement supportée</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1463150778" title="Interception de méthodes techniques">
+<desc>Possibilité d'intercepter des appels de méthodes dans le code
technique des applications (concepts d'Interceptors de JavaEE et d'Interceptors
typés de JSR-299)</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Les Interceptors de JavaEE sont supportés</desc1>
+<desc2>Les Interceptors de JavaEE et les Interceptors typés de JSR-299 sont
supportés</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1209366808" title="Callbacks (initialisation et
destruction)">
+<desc>Possibilité d'intercepter via des fonctions de rappel l'initialisation
et la destruction des Beans.</desc>
+<desc0>Fonctionnalité non supportée</desc0>
+<desc1>Fonctionnalité supportée de manière partielle</desc1>
+<desc2>Fonctionnalité complètement supportée</desc2>
+<comment/>
+<score/>
+</element>
+</element>
+<element name="ID_1804725606" title="Internationalisation">
+<desc>Fonctionnalité offerte en standard par l'injecteur pour gérer
l'internationalisation.</desc>
+<desc0>Aucune fonctionnalité d'internationalisation offerte en
standard</desc0>
+<desc1>Fonctionnalité disponible mais de manière partielle ou
limitée</desc1>
+<desc2>Fonctionnalité complètement standard</desc2>
+<comment/>
+<score/>
+</element>
+</section>
+<section name="ID_1815689005" title="Assistance au développement">
+<element name="ID_925232886" title="Extensibilité">
+<element name="ID_1295092297" title="Extensibilité du code applicatif">
+<desc>Existence de mécanismes pour faciliter la modularité des applications
utilisant le framework d'injection.</desc>
+<desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+<desc1>Quelques fonctionnalités sont utilisables pour rendre les applications
extensibles</desc1>
+<desc2>Le framework propose un mécanisme générique pour rendre les
applications extensibles</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_261103891" title="Extensibilité du framework">
+<desc>Possibilité d'extension du framework d'injection.</desc>
+<desc0>Aucun mécanisme d'extensibilité n'est disponible</desc0>
+<desc1>Le framework propose quelques point d'extension</desc1>
+<desc2>Le framework propose un mécanisme générique de greffons</desc2>
+<comment/>
+<score/>
+</element>
+</element>
+<element name="ID_17223463" title="Génération de code">
+<desc>Fonctionnalités offertes par le framework pour automatiquement
générer du code</desc>
+<desc0>Aucun mécanisme de génération de code (hors injection pure) n'est
disponible</desc0>
+<desc1>Le framework propose àla marge quelques fonctionnalités de
génération de code</desc1>
+<desc2>La génération de code est un des pans fonctionnels couvert par le
framework</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_1680469059" title="Visualisation graphique">
+<desc>Fonctionnalités offertes par le framework pour visualiser les
dépendances injectées.</desc>
+<desc0>Aucun mécanisme de visualisation des dépendances n'est
disponible</desc0>
+<desc1>Un mécanisme de visualisation des dépendances est disponible mais est
limité</desc1>
+<desc2>Un mécanisme complet de visualisation des dépendances est
disponible</desc2>
+<comment/>
+<score/>
+</element>
+<element name="ID_643365482" title="Intégration dans les IDE">
+<desc>Support de l'injecteur dans les environnements de développement
intégré (IDE)</desc>
+<desc0>Intégration non supportée</desc0>
+<desc1>Intégration partielle ou limitée àun IDE spécifique</desc1>
+<desc2>Intégration avec plusieurs IDE majeurs</desc2>
+<comment/>
+<score/>
+</element>
+</section>
+</document>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qsos-commits] qsos/sheet/dependency-injection Guice/Guice-3.0...,
Raphaël Semeteys <=