Arismore
Dossier d'étude
Stage
-
Portail d'Architecture
Référence
Version
1 du
2
/0
9
/2008
Statut
Document de travail
Fichier
Portail d’architecture dossier_etude
J
sㄮ摯c
k潭扲攠e
攠灡ge
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
2
/
33
Historique des révisions
Version
Date
Auteurs
Approuvé par
Contenu
0.1
27/08/2008
BP
Première version du document
0.2
02/09/2008
BP
Amélioration de la structure
du
document suite au conseil d’
O.T.
1.0
05/09/2008
BP
Reprise et a
jout de quelqu
es
points
suite à la lecture de J.B.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
3
/
33
Table des matières
Historique des révisions
................................
................................
................................
..........
2
1
Objectif du document
................................
................................
................................
........
5
2
Description du projet
................................
................................
................................
........
6
3
Contexte
................................
................................
................................
.............................
7
3.1
Les acteurs impliqués
................................
................................
................................
7
1.
Les fondamentaux
................................
................................
................................
.............
8
3.2
Le concept
de portail
................................
................................
................................
.
8
3.2.1
Définition
................................
................................
................................
..............................
8
3.2.2
Choix du portail
................................
................................
................................
....................
8
3.3
Le client riche
................................
................................
................................
...........
10
3.3.1
Description des princ
ipales technologies
................................
................................
...........
10
3.3.1.1
XUL
................................
................................
................................
................................
....
10
3.3.1.2
FLEX et AJAX
................................
................................
................................
...................
11
4
Analyse des différentes études mis en place pendant la phase de test
......................
12
4.1
Bandeau de navigation
................................
................................
............................
12
4.2
Communication inter
-
Por
tlet
................................
................................
...................
12
4.3
Java Content Repository (JCR)
................................
................................
...............
12
5
Principaux besoins attendus
................................
................................
..........................
14
5.1
Saisie documentaire
................................
................................
................................
14
5.1.1
Description fonctionnelle
................................
................................
................................
...
14
5.1.2
Description technique
................................
................................
................................
.........
15
5.2
Section explorateur et catalogue
................................
................................
............
15
5.2.1
Description fonctionnelle
................................
................................
................................
...
15
5.2.2
Desc
ription technique
................................
................................
................................
.........
16
5.3
Bandeau de navigation au sein d’un processus
................................
....................
16
5.3.1
Description fonctionnelle
................................
................................
................................
...
16
5.3.2
Description technique
................................
................................
................................
.........
17
5.4
Blog et wiki
................................
................................
................................
...............
17
5.5
Demande d’annotation et deman
de de collaboration à un travail (check
-
list et
matrice rôle/utilisateur)
................................
................................
................................
......
17
5.6
Autres fonctionnalités
................................
................................
.............................
18
5.6.1
Corbeille d’act
ion
................................
................................
................................
...............
18
5.6.2
Section travail actif (permettant de changer de travail de façon instantanée)
....................
18
6
Solutions techniques apportées a
ux demandes de besoins
................................
.......
19
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
4
/
33
6.1
Utilisation d’un JCR pour le management des données
................................
.......
19
6.2
Utilisation d’Hibernate
................................
................................
.............................
19
6.3
Utilisation de Flex pour dynamiser le bandeau
................................
......................
19
6.4
Utilisation d’un moteur de formulaire
: Velocity
................................
....................
19
7
Annexes
................................
................................
................................
...........................
20
7.1
Grilles d’évaluation des différents portails
................................
............................
20
7.1.1
Annotation des fonctionn
alités
................................
................................
...........................
20
7.1.2
Liferay
................................
................................
................................
................................
20
7.1.3
JBoss Portal
................................
................................
................................
........................
23
7.1.4
Jetspeed
................................
................................
................................
..............................
25
7.2
Différence Flex/Ajax
................................
................................
................................
.
27
7.2.1
Présentation
................................
................................
................................
........................
27
7.2.1.1
Fle
x
................................
................................
................................
................................
.....
27
7.2.1.2
Ajax
................................
................................
................................
................................
....
28
7.2.1.3
Laszlo
................................
................................
................................
................................
.
28
7.2.2
Description Ajax
................................
................................
................................
.................
29
7.2.2.1
Framework
................................
................................
................................
..........................
29
7.2.2.2
Librairies
................................
................................
................................
............................
29
7.2.3
Description Fl
ex
................................
................................
................................
.................
32
7.2.3.1
Langages
................................
................................
................................
.............................
32
7.2.3.2
Bibliothèque de classes et services applicatifs
................................
................................
...
32
7.2.3.3
Composants (Optimisation Flex 3)
................................
................................
.....................
32
Glossaire
:
................................
................................
................................
...............................
33
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
5
/
33
1
Objectif
du document
L’objectif de ce présent document est de présenter l’étu
de du projet Portail d’architecture. Il
va permettre d’avoir une vue d’ensemble du projet et comprendre les besoins
attendus
. Nous
détaillerons par la suite les différentes études et tests réalisés durant la phase d’étude préliminaire, afin
de montrer et d
’expliquer les solutions choisies.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
6
/
33
2
Description du projet
Ce projet consiste à la mise en place d’un portail d’architecture.
Ce portail permettra
la
mise à
disposition d’un ensemble de document
s
relatif à l’architecture au sein d
’un
m
ême et unique socle.
Ce
portail a
pour but la collaboration, la mise à disposition et le partage d’information
s
.
Il a pour objectif de simplifier la production de document
s
et surtout d’
éviter leurs
redondance
s
et d’assurer la pérennité
des documents
via des mis
es
à jour
bid
irectionnelle
s
avec le
référentiel d’architecture.
Comme nous l’avons expliqué précédemment, nous utilisons la base du portail JBoss Portal.
Ce portail s’appuie sur la technologie J2EE et sur le serveur d’application JBoss. Notre objectif sera
donc de réa
liser les différentes portlets nécessaires au bon fonctionnement de notre solution.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
7
/
33
3
Contexte
Ce projet se situe
dans un contexte d’innovation. E
n effet
,
aucun produit semblable n’existe
encore sur le marché. Certains groupes sont en train de réfléchir à
de telle
s
solution
s
mais nous nous
différentions d’eux par notre approche qui est plus basé
e
processus et objectifs que ressources.
En effet, le but de ce portail n’est pas l’accumulation de document
s
ou de comités mais plutôt
de
permettre de mettre en r
egard les contributions avec les capacités humaines déployé
e
s et d’offrir un
environnement de travail facilitant le support de l’activité et le travail au quotidien.
De plus, le but de
ce portail est d
’être
utile par un usage par intérêt
des utilisateurs e
t non par une obligation de travail.
De nos jours
,
le marché des solutions informatiques est en perpétuel
le
évolution
, c’est
pourquoi il faut avoir une vision assez lointaine (environ 2 ans) des futures technologies, méthodes et
solutions qui inonderont l
e marché afin de pouvoir dès maintenant les incorporer à notre solution.
3.1
Les acteurs impliqués
On peut distinguer 3 principaux acteurs impliqué
s dans ce projet
:
Benjamin Petitprez, Johan
Brelet et Olivier Tonnelier.
Benjamin Petitprez s’occupe de l’étud
e et de la conception du projet, il est
supervisé par Johan Brelet qui l’appuie sur un point de vue technique. Olivier Tonnelier
, quant à lui,
est responsable du projet, c'est
-
à
-
dire qu’il coordonne le travail, apporte les exigences lié
e
s au projet
ainsi q
ue les fonctionnalités attendues.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
8
/
33
1.
Les fondamentaux
Le but de ce projet est la réalisation d’un portail d’architecture. Ce nouvel outil vise à
regrouper et structurer toutes les informations utiles du métier de l’architecte. Ce socle commun de
l’informat
ion de l’architecte suivra des normes et des standards comme (TOGAF, ITIL). Il devra tenir
compte de l’existant dans un premier temps puis s’ouvrir à l’ajout et la modification de données. Ceci
sera réalisé sur la base d’un portail Open Source qui devra êt
re compréhensible par tous types
d’acteur
s
(production, commercial, fonctionnel, technique). Pour cela, il devra s’articuler autour de
différentes vues ou méta
-
modèles compréhensible
s
par chacun.
3.2
Le
concept
de portail
Le portail est la base principale de
notre projet
. C
’est autour de ce concept que nous allons
construire notre solution finale. Il existe aujourd’hui une multitude d’offre
s
de portail Web sur le
marché de l’Open Source. Il existe plusieurs types de portail
: les portails web et les portails
d
’entreprise. Le portail d’entreprise doit pouvoir offrir un bureau virtuel aux utilisateurs afin qu’ils
puissent avoir accès à différentes informations sur l’entreprise, un domaine ou un projet.
Nous allons par la suite donner définition détaillé
e
d’un po
rtail d’
architecture, qui est un sous
-
ensemble d’un portail d’entreprise. P
uis
,
nous détaillerons
par la suite,
le choix du portail utilisé et les
raisons qui nous ont poussé à choisir ce dernier.
3.2.1
Définition
Le portail d’entreprise peut être assimilé à u
ne plate
-
forme intranet donnant accès à des
do
nnées de l’entreprise ainsi qu’à
différentes ressources du système d’information au sein d’une
interface unique. Il se décompose souvent en deux parties. La première est une partie information qui
permet de reg
rouper les différentes données de l’entreprise comme la charte graphique, le règlement,
… La seconde partie est plus orienté
e
gestion de contenu ce qui permet au
x
utilisateur
s
d’interagir au
sein du portail et ainsi de publier, modifier ou supprimer de l’i
nformation. La jonction de ces deux
éléments permet de rendre un portail très interactif et bidirectionnel.
Un portail est un environnement de travail qui se compose d’une partie commune à tous les
utilisateurs et d’une partie privé
e
qui permet de se crée
r son propre espace perso de travail. Ces deux
parties sont composées de Portlet.
Les
Portlets peuvent être considéré
s
comme des blocs qui traite
nt
des requêtes d’une tâche ou
d’un service et génèrent dynamiquement un contenu. Ces portlets sont soumises
à la norme JSR
-
168,
que nous détaillerons par la suite. Cette norme permet de qualifier les actions possibles de la Portlet et
surtout de les construire selon un modèle qui permettra de les déployer sur n’importe quel portail.
Un portail dispose égaleme
nt d’une partie administration qui permet de définir les droits des
différents utilisateurs et d’administrer le portail général. Le choix des portlets disponible
s
sur l
e portail
commun est géré
par l’administrateur. Il donne ainsi l’accès à différentes res
sources en fonction du
profil de l’utilisateur connecté.
3.2.2
Choix du portail
Il a fallut retenir un portail Open Source pour la réalisation de notre portail d’architecture.
Pour cela, nous avons dans un premier temps regardé les différentes offres que nous
offrait le marché
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
9
/
33
de l’Open Source. Nous avons pu ainsi élaborer une liste des différentes possibilités, après une
première étude de documentation, nous avons pu effec
tuer une première short list
.
Les 5 portails qui nous
ont particulièrement intéressé
et
donc qui ont été retenu
s
sont les
portails Liferay, Uportal, Exo Plateform, Jetspeed et JBoss portal. Nous avons donc mené une étude
détaillée de ces différents portails.
Les différents points, fonctionnalités que nous avons étudiés sont les suivants
:
A
uthentification
Gestion de contenu
Outils collaboratif
s
Administration fonctionnelle
Administration
Technique
Personnalisation
Installation
Intégration
Business Intelligence
Développement (OS, Base de données, Environnement, Normes respectées, Serveurs
d’a
pplication)
Point
faible
/ Point fort
Cette première étude, nous a permis de mieux comprendre les technologies de portails. On
s’aperçoit qu’il
s
respecte
nt
dans l’ense
mble les normes standard comme JSR
-
168, WRSP, JSF. D
e
plus
,
ils sont tous les cinq dével
oppés sur l’environnement JAVA. D’un point de vue Base de données,
ils acceptent en grande
majorité les principales comme MySQL, Oracle, Postgres SQL,…
.
Nous avons d
û
choisir des critères, pour nous permettre de restreindre cette liste. Pour cela,
nous av
ons regardé l’étendu et le fonctionnement des portlets disponible
s
de base.
On a pu ainsi éliminer Uportal qui proposait peu de portlets et surtout qui n’était pas très
adapté à notre utilisation. Ce portail est plus destiné à une communauté étudiante qu
e professionnel
le
,
par suite les outils dont il dispose sont orienté
s
presque exclusivement affichage d’information et
promotion d’évènement.
Ensuite, nous nous sommes posé la question de la facilité de prise en main de la future
solution. Sur ce point, E
xo Platef
orm nous est
apparu
e
très complexe. En effet, il dispose de beaucoup
de bon
s
élément
s
comme Exo Web OS, Exo ECM et Exo CS mais tous ces éléments très complets
technologiquement et graphiquement nous seront très durs à modifier. Par conséquent, nou
s avons du
supprimer de notre liste ce portail également.
En résumé, après cette première phase notre short list ne contient plus que 3 portails
:
Liferay
Jetspeed
JBoss Portal
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
10
/
33
Une seconde étude est donc nécessaire afin de choisir un seul portail pour n
otre solution
finale. Pour cela, nous avons porté attention à d’autres critères comme
:
La communauté qui soutient le portail
La documentation technique et fonctionnelle qui est disponible
La partie administration
La gestion des droits utilisateurs
La fac
ilité de prise en main
Exigences demandées
On s’aperçoit ainsi que le portail Liferay, est très complexe dans la gestion de l’administration
et la gestion des utilisateurs. En effet, contrairement au
x
portail
s
dit «
classique
s
», il ne dispose pas
uniquem
ent d’un socle commun et d’un socle privé mais aussi 3 autres types de socle (location, guest,
…) qui ne nous seront pas utile
s
.
Ensuite, d’un point de vue
esthétique
,
le portail
Jetspeed reste très
sobre et ancestral. C’est pourquoi, nous l’avons égalemen
t supprimé.
Pour conclure, nous avons choisi d’utiliser le portail JBoss.
3.3
Le client
riche
Aujourd’hui
,
il existe de plus en plus d’application
s
web qui utilise
nt
les technologies riches.
On
peut distinguer deux principaux
éditeur
s
Microsoft et Adobe av
ec respectivement Silverlight et
Flex. On peut voir ensuite des solutions comme Mozilla avec XUL, Google avec la gestion de l’AJAX
et Open Laszlo.
De nos jours, la grande majorité des sites internet essayent de se convertir à ce
s
nouvelle
s
technologie
s
.
E
lles
permettent d’embarquer les nouveaux modes de communication comme l’écoute
ou la
vidéo
de façon assez simple
.
Ensuite, on souhaite que les sites web soi
en
t le plus intuitif
s
possible et qu
’il n’y ait
pas de perte de temps
pour
chercher
les
info
rmations
souhaitées, grâce à ces
technologies, client riche, il est possible d’y arriver.
En contre partie de ces atouts, une application client riche reste plus lourde en temps de
chargement qu’une application basique. De plus, quelques problèmes de compatibilit
é d’affichage
suivant le navigateur utilisé peu
vent être ressentis
.
3.3.1
Description des principales technologies
3.3.1.1
XUL
Le XUL est un langage XML, édité par Mozilla. Il a été créé afin d’avoir un développement
du navigateur Mozilla plus simple et plus rapide.
Il
permet de réaliser des interfaces de types
:
Champs de saisie tels que des boîtes de textes et des cases à cocher
Barres d'outils avec boutons et autres contenus
Menus dans des barres de menus ou des menus sous forme de pop
-
up
Boîtes de dialogues à onglet
s
Arbres de données hiérarchiques ou tabulaires
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
11
/
33
Raccourcis claviers
Il est également très adapté aux multiplateformes, ce qui lui vaut un certain intérêt.
3.3.1.2
FLEX et AJAX
Une étude détaillée des caractéristiques de chacune de ces 2 technologies est présente
en
annexe.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
12
/
33
4
Analyse des
différentes études
mis
e
s
en place pendant
la
phase de test
4.1
Bandeau
de navigation
Durant notre phase de test, nous avons commencé à mettre en place le bandeau de navigation.
Cette premiè
re esquisse, nous a permis de nous
mettre en r
elation avec une base de donnée
s
et
d’utiliser Hibernate afin de faire la relation
entre
la base de donnée
s
et nos objets
.
Le bandeau est en fait
la lecture d’un fichier
XML
qui représente les différentes phases,
activités et tâches d’un processus.
Dans
notre première version test, nous n’avons pas poussé la
visualisation graphique de ce dernier. Il faudra donc essayer de le rendre attrayant à la vue par l
a
suite
car il sert de pièce maitresse à la navigation dans notre processus. De plus, cette Portlet s
era dans la
majorité des cas présente, c’est pourquoi la rendre l
a
plus dynamique possible pourrait être un atout à
notre solution.
Il a été envisagé par la suite de l’animer grâce à du Flex et ainsi pouvoir créer du dynamisme.
Ce bandeau a été assez rap
idement réalisé (3 jours).
La complexité résidait dans
la
mise en
place d’Hibernate.
4.2
Communication inter
-
Portlet
Afin d’appréhender
cette notion de communication inter
-
Portlet, nous l’avons mis
e
en place
au sein de la Portlet bandeau
. Pour cela nous avon
s créé 2 portlets, la première gère l’ajout, la
modification et la suppression d’un travail pendant que la seconde gère l’affichage des phases d’un
projet sélectionné dans la première Portlet.
Cette communication a été expérimentée en mode 1
-
1 pour l’inst
ant
. L’ajout d’un broker
d’évènement sera la solution la plus fiable à cette communication, ainsi nous gérerons que de la
communication 1
-
1 et le broker dispatchera l’information en 1
-
n vers la ou les portlets visées.
4.3
J
ava
C
ontent
R
epository (JCR)
Dans
le cadre de ce projet, la principale fonction
est la gestion de document. Pour cela, nous
allons nous servir d’un JCR qui s’appuie sur la spécification JSR
-
170. Le JCR nous permettra d
e
manager nos documents, q
ue ce soit
pour l’ajout, la modification, le v
ersioning ou la suppression.
Le JCR pe
rmet à l’utilisateur de ne pas s
e soucier de la façon dont est stocké
e
en base de
donnée l’information. L’utilisation du JCR est équivalente à la gestion d’arbre
s
qui comporte un
ensemble de nœuds qui peuvent eux
-
même
s posséder un ensemble de propriétés.
Notre JCR s’appuie sur l’implémentation JackRabbit, qui est la solution open
-
source de
référence.
Le stockage s’effectue au sein d’une base MySQL 5.
Le projet portail d’architecture
possédera
2 voir 3 registre
s
JSR
-
1
70 d
ifférents de façon à bien
séparer
les différentes informations.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
13
/
33
Le premier servira pour le portail, il contiendra les documents relatifs à la section
documentaire et sera hiérarchisé de la façon suivante
:
Root
o
Entreprise
Domaine
Travail
o
Phase
Act
ivités
Tâches
o
Document
Différentes propriétés du
document (fichier, lien
,
entrants, travaux, contenus
aboutis, contenu
s publiés
)
Cette hiérarchisation à été réfléchi
e
de façon à pouvoir accéder au document de la plus facile
des manières
et d’avoir une coh
érence entre ces derniers.
Le second servira pour le référentiel, il contiendra les documents relatifs au référentiel
(modèle, description, ..) et sera hiérarchisé de la façon suivante
:
Root
o
Entreprise
Domaines
Fichier EADML,
PNG
,
XMI
o
Nomenclatures
Le
cture seule
Lecture écriture
Un troisième référentiel pourrait être mis en place afin d’accueillir les informations provenant
du wiki et du blog thématique. Il faudra donc réfléchir si on incorpore ces informations au sein du
registre du portail ou dans
ce nouveau registre.
Nous n’avons pas encore réalisé la navigation au sein de ces référentiels. A l’aide des
arborescences prédéfinies ci
-
dessus, nous pourrons nous
diriger
directement via les path
s
(/Root/entreprise/domaine/…) au sein des nœuds.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
14
/
33
5
Princi
pa
ux
besoins attendu
s
5.1
Saisie documentaire
5.1.1
Description fonctionnel
le
L’espace de saisie documentaire est l’un des éléments important
s
du portail d’architecture. Cet
espace
est destiné à la création ou
à la
modification de contenu. Un contenu est stocké da
ns le registre
du portail, il doit pouvoir s’adosser aux informations issues du registre du référentiel. Pour cela, il doit
être possible de faire des tags sémantiques vers des informations du référentiel (préciser le contexte, le
modèle, …) ou de faire un
push d’informations issues d’un outil extérieur (modèle Spar
x
, …).
Cet espace s’appuie principalement sur le bandeau de navigation afin de pouvoir naviguer au
sein du processus et ainsi effectuer une tâche.
Voici un aperçu
de l’IHM de notre espace de s
aisie documentaire
avec le bandeau de navigation :
Après la saisie de notre contenu, on dispose de plusieurs possibilités d’enregistrement
:
Simple validation
Demande de validation auprès d’un ou d’autres acteurs
Demande de complément auprès d’un ou d’a
utres acteurs
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
15
/
33
5.1.2
Description technique
Afin de pouvoir créer des contenus, il faudra intégrer un éditeur de texte. Plusieurs offres du
marché s’offre
nt
à nous, 2 principales, FCKeditor et tinyMCE (éditeur utilisé dans le CMS de JBoss
),
pourraient nous int
éresser. E
l
le
s disposent tou
te
s deux d’un éditeur WYSIWYG permettant de mettre
facilement en forme son
texte. Les composites ainsi créés
seront stockés au sein du JCR dans le
registre Portail.
5.2
Section explorateur
et catalogue
5.2.1
Description fonctionnelle
L’explorateur sera également très important au sein du portail. Il permettra de pouvoir accéder
rapidement aux ressources, qu’elles soient situé
es
dans la section documentaire, dans le registre du
référentiel ou dans le continuum.
Explications de foncti
onnement :
On sélectionne dans un premier temps le choix du registre à explorer (Section documentaire
ou RA
ou continuum
)
On peut effectuer une recherche directement par type de suppor
t ou à l’aide du nom du fichier.
Cas Section documentaire
(Mode view
et modif)
On choisi le domaine et le travail (obligatoire)
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
16
/
33
Choix de la tâche (optionnel)
Visualisation
des différents documents dans
l’explorateur
•
Si tâche sélectionnée : visibilité uniquement des docs associés
•
Si tâche
non sélectio
nnée : visibilité de toutes les tâches et de leurs docs associés
Cas Référentiel d’architecture
(Seulement en mode view)
On choisi le domaine (travail et tâche grisé
e
)
Visibilité du registre du référentiel par domaine
Cas continuum
Redirect
ion
Après sélection du document redirection vers un viewer ou la Portlet d’édition pour
modification
5.2.2
Description technique
D’un point de vue technique, cet explorateur s’appuie sur les différents JCR. En effet, il va
faire une lecture des différents regi
stres et ainsi afficher et mettre à disposition les différents
documents qui les composent. Ceci va se faire en parcourant l’arbre de chaque registre et ainsi on
récupérer
a
les différents documents et propriétés associées.
Ensuite via plusieurs actions, no
us
pourrons être redirigés vers l’espace de travail ou vers un simple viewer.
5.3
Bandeau de navigation au sein d’un processus
5.3.1
Description fonctionnelle
Le bandeau de navigation doit permettre à l’utilisateur d’accéder
de façon intuitive
à la tâche
sur
laqu
elle il souhaite travailler et ainsi le guider au travers des différentes phases et activités.
Voici une IHM non dynamique du futur bandeau
:
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
17
/
33
Explications de fonctionnement :
Ce bandeau sera appelé dans le cas d’un travail. Il est généré à partir d’u
n fichier XML en
fonction du domaine et du travail choisi préalablement.
Il se divise en 3 parties :
•
Choix de la phase du processus
•
Choix de l’activité
•
Choix de la tâche
Les activités et tâches auxquelles on ne peut pas contribuer sont grisées.
Lorsque
nous allons sur une tâche, nous pouvons voir la liste des entrants et sortants
demandés.
Lorsque nous cliquons sur le sortant auquel nous voulons contribuer, nous sommes redirigés
vers la zone d’édition.
Lorsque qu’une tâche possède tous ces entrants, el
le passe en mode accessible et lorsqu’elle
possède tous ces sortants, on peut la clôturer.
5.3.2
Description technique
Afin de réaliser le bandeau
, nous avons du faire de la lecture de fichier XML stocké en base de
données. Pour cela, nous avons utilisé un mapp
ing Hibernate afin de récupérer le fichier en base et
ensuite nous utilisons la librairie DOM pour traiter et récupérer les informations (phase, activité,
tâche) afin de pouvoir générer le bandeau.
Dans un état final, le bandeau devra
être dynamique et ut
iliser les nouvelles technologies
client riche comme le Flex. Ceci permettra de le mettre en avant et de le rendre le plus intuitif possible
pour les utilisateurs.
5.4
Blog et wiki
Dans le but de proposer un espace de travail collaboratif, la présence d’un bl
og thématique
ouvert à 360° et d’un wiki sémantique est indispensable.
Il n’a pas encore été décidé quel type de
solution sera mis en place pour
les
créer
. Leur insertion
au sein du portail se
fera
dans un deuxième
lot.
5.5
D
emande d
’annotation
et
demande de c
ollaboration à un travail
(
check
-
list
et matrice r
ô
le/utilisateur)
Cette fonction sera souvent utilisée dans le
cadre de délégation de travail,
de
la
demande
d’annotation ou de
la
validation auprès d’autres acteurs.
On
pourra ainsi associer une tâche
à un
ou
plusieurs acteurs et leurs notifier une demande.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
18
/
33
5.6
Autres fonctionnalités
5.6.1
Corbeille d’action
s
La corbeille d’action permettra à tous utilisateurs de savoir s’il a été sollicité par d’autres
acteurs sur la réalisation ou l’annotation d’une tâche. Il peut
également se servir de cette corbeille
d’action
s
pour savoir quels sont les prochains travaux qu’il doit réaliser.
5.6.2
Section travail actif (permettant de changer de travail de façon
instantané
e
)
Cette fonction permet de simpli
fier le travail d’un acteur s’
i
l travail
le
sur plusieurs processus
en même temps. Ainsi, l’utilisateur peut changer de projet très rapidement à l’aide de cette petite
Portlet.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
19
/
33
6
Solutions techniques apporté
e
s aux demandes de
besoins
6.1
Utilisation d’un JCR pour le management des données
Afin de pouvoir
gérer
les fichiers issus de notre espace de travail,
nous utilisons un Java
Content Repository
. Ce JCR s’
appuie sur la norme JSR
-
170 et
est implémenté par JackRabbit
. Le
stockage des données d’un JCR s’effectue de manière très ordonnée en b
ase. En effet, il
sépare les
nœuds
des propriétés, des fichiers, des versions. Ceci dans le but de faire du content management,
c'est
-
à
-
dire
de
gérer les versions de fichiers, créer, supprimer
ou de
modifier
les documents. Mais
grâce au Java Content Reposi
tory, cette couche base de données est transparente pour le développeur.
Il accède directement aux données via JackRabbit, on récupère ainsi un arbre avec un nœud Root
entant que racine, il ne reste plus qu’
à
le parcourir pour récupérer les
éléments souhai
tés
.
6.2
Utilisation d’Hibernate
Pour la génération du bandeau nous utilisons différents
Template
XML qui représentent les
différents travaux qui peuvent être réalisé
. Ces fichiers XML sont enregistrés dans une base de
données, nous avons utilisé Hibernate af
in de réaliser un mapping entre les éléments de la base et des
objets java. Ceci dans le but de simplifier l’utilisation des données de la base de données.
6.3
Utilisation de Flex pour dynamiser le bandeau
L’utilisation d’une technologie riche comme le Flex
permettrait de rendre dynamique le
bandeau de navigation et ainsi le rendre le plus intuitif possible.
De plus, grâce à cette technologie on
peut donner un aspect visuel très intéressant
.
6.4
Utilisation d’un moteur de formulaire
: Velocity
To be completed …
Dossier d'étude
Stage
–
Portail d’architecture
7
Annexes
7.1
Grilles d’évaluation des différents portails
7.1.1
Annotation des fonctionnalités
0
-
> absent, 1
-
> partiellement couvert, 2
-
> présent, 3
-
> présent + possibilités d’extension intéressantes
7.1.2
Liferay
Fonctionnalités
Outils proposés
Appréciation
Des
cription
Authentification
2
Authentification via un LDAP avec la connexion SSO sécurisé CAS. Possibilité d’intégrer d’autres
卓l潭m攠乥e敧êity.
Gestion de contenu
2
Présent sous forme de journal avec la seule possibilité de créer des articles et de l
es publier sur une
page. Les articles sont structurés (titre, photos, texte HTML).
Gestion de catégorie, date de publication, d’expiration
Possibilité d’ajouter le CMS Alfresco
Outils collaboratif
Blog
2
Blog avec interaction avec les flux RSS afin d’avo
iê l敳敲nièê敳敷猠敮eliîe
Favoris
1
Gestion de favoris
Forum
2
Création de fils de discussion avec possibilités d’ajout de pièces jointes
Chat
0
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
21
/
33
Mail
1
Serveur mail Imap. Connexion à un seul serveur pour tous les utilisateurs.
Sondage
1
Outi
ls de publication de sondages
Wiki
2
Wiki qui permet à tous utilisateur de créer, modifier des pages intégré au sein d’une Portlet
Calendrier
3
Publication d’évènement et de partage au sein des membres d’une communauté
RSS
1
Lecture de flux RSS issu
du blog interne ou de site extérieur.
Administration
fonctionnelle
2
Possibilité de regrouper des utilisateurs basée en 3 niveaux
: entreprise, organisation ou par
«
location
»
Administration
Technique
1
Gestion par Portlet est également possible
Un sy
stème de logging (débogage) est présent sous la forme log4j
Personnalisation
2
Il est possible de modéliser sont poste de travail à souhait que ce soit sur le nombre de portlets ou
leurs disposition (layout différents)
Une grande variété de skins différe
nts est également mise à disposition
Business Intelligence
0
Installation
1
Assez simple mais l’utilisation de certaine portlets mis à disposition peut rester assez complexe
Intégration
1
Supporte presque que tous les serveurs d’exploitation et un g
ê慮a猠湯s扲攠摥慳e攠摯湮献⁄攠
灬畳Ⱐil 敳t⁰潳獩bl攠e攠e攠eç湮散t敲 畮湮畡iê攠䱄A倠整 il ê敳é散t攠l愠湯êm攠epo
J
ㄶN
Développement
OS
2
Windows
XP
, Linux, Mac, Windows server
Base de données
2
Une base de données HSQL intégré afin d’avoir un dév
敬潰灥ç敮ea灩d攮
偯獳m扩lité攠e整tê攠e渠nla捥
㨠
a_㈬⁆iê敢eê搬dy灥é獯湩挬⁉湴敲b慳攬e䩄慴慓açê攬e䵹卑䰬⁏ê慣l攬
偯獴gê敳卑䰬⁓A倬⁓n䱓eêî敲
a敳 êiét猠s攠eêtiç渠獯nt潵ç湩猠灯畲 畮ê慮搠a潭扲攠e攠ee猠扡s敳.
Environnement
2
JAVA
Normes respect
ées
2
Possibilités de déployer des portlets de normes JSR
-
168 et WRSP, JSF, Struts, Spring
Serveurs
2
Borland ES, Geronimo,GlassFi
sh, JBoss, JOnAS, JRun, OracleAS, Orion, Pramati, RexIP, Sun
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
22
/
33
d’application
g十匬p坥扌潧icⱗI打灨éêe
Point
faible
0
Aucun
outil de reporting n’est pr
é
獥nt.
Perspectives
Produit assez mature avec une grande communauté de développeur ce qui peut annoncer une belle
vie
Le portail Liferay est un portail très complet. En effet, il dispose d’un très grand nombre de fonct
ionnalité
s
, que ce soit sur la diversité de ces portlets
ou sur la gestion de son administration. Ce portail possède 60 portlets prêt à l’emploi qui se décline en plusieurs catégorie
s (Collaboration, news, bureautique,
…).
Il est également possible de cr
éer de nouvelles portlets. Il dispose d’un plugin eclipse (LiferayPedia) qui facilite grandement la création de Portlet. Le
déploiement s’effectue ensuite grâce à une Portlet d’ajout intégré au portail. Il suffit ensuite d’uploader un *.war ou un zi
p. Il e
st possible de développer des
portlets en PHP, JSP, JSF, Hibernate and DAO, IceFaces, Sun Facelets, Struts. Le portail suit la norme JSR
-
168, on peut donc déployer toutes portlets
respectant cette norme.
Il dispose également une grande communauté. Un wik
i (anglais) répartit en 6 catégorie (Installation, Starting with Liferay, Using Liferay,
développement, customisation, comprendre Liferay), nous apporte un grand nombre de solution aux différents problèmes que nous
pouvons rencontrer. De
plus, il existe au
ssi un forum actif, qui est gérer par les développeurs de Liferay.
Le point faible de ce portail pourrait se porter sur la partie administration, gestion des utilisateurs, gestion des pages (c
ommunauté, location, groupe,
rôle) qui est très complète et do
nc très complexe à prendre en main.
Le point fort, quant à lui, est la multitude de Portlet préinstallé ainsi que le design général du portail.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
23
/
33
7.1.3
JBoss Portal
Fonctionnalités
Outils proposés
Appréciation
Description
Authentification
2
SSO et LDPA
: Aut
hentification classique
Gestion de contenu
CMS Portlet
3
Création de répertoire, fichier via un éditeur CMS.
Upload et edit des fichiers Text et Html via l’éditeur
坙tf坙t⁈q䵌j
Cpoy, Move, Delete
Avec gestion des droits View, edit , delete
Fo
nction de Secure ressources
Outils collaboratif
Blog
1
Sous forme de Portlet à télécharger
Wiki
Une portlet spécifique Blog peut être ajouté
Forum
Wiki, Forum
Widget google
Administration
2
Gestion d’administration des droits d’utilisateurs et
d敳⁰慧敳
Personnalisation
2
Drag And Drop
Business Intelligence
0
Installation
2
Base de donnée HSQL intégré puis serveur JBoss
Intégration
0
Développement
OS
2
Linux, Windows, Unix, Mac Os X
Base de données
3
MySQL 4.x., MySQL 5, PostgreSQL
8.x, Hypersonic SQL
Derby
,
Oracle 9 and 10g
,
Microsoft SQL Server
,
MaxDB
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
24
/
33
Environnement
2
Java
Normes respectées
2
JSR 168, WSRP 1.0
, JSR 170
Serveurs d’application
O
g_ç獳‴⸲⸱Ⱐ㐮㈮㈬⁅O倠㐮
OⰠ䕁倠㐮m
Autres
3
Documentation complète et compréhe
nsible ++
Perspectives
Portail très simple et ne disposant pas de tous les gadgets non utiles.
Une très bonne base documentaire
JBoss portail est très intuitif d’utilisation. Il possède une base d’administration qui s’oriente aut
our de rôle et d’util
isateur
: c
haque utilisateur possède
un rôle Administrators ou User. En fonction de ce rôle
,
l’utilisateur peut ou non avoir accès à la base d’administration. Le portail s’ouvre sur 2 types de pages,
une première qui est le portail commun à tous
les
utilis
ateur
s
et la seconde est une page privé qui est paramétrable (type, nombre et disposition de Portlet) par
l’utilisateur lui
-
même. Ce paramétrage se fait via la page Dashboard editor, qui propose les portlets disponible et permet de choisir l’emplace
ment. L
’ajout de
Portlet est assez simple également, il suffit de déployer la Portlet au format *.war dans le répertoire
C:
\
jboss
-
portal
-
2.6.5.SP1
\
server
\
default
\
deploy
du portail.
Le déploiement est ensuite automatique et la Portlet se rend disponible. Les portl
ets doivent suivre la norme JSR
-
168 afin qu’elle puisse être compatible au
sein du portail.
Une documentation très détaillée, nous montre le fonctionnement de toutes les fonctionnalités du portail
:
JBossPortalUserGuide.pdf
.
De plus une documentation pl
us technique est aussi disponible
:
JBossPortalreferenceGuide.pdf
.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
25
/
33
7.1.4
Jetspeed
Fonctionnalités
Outils proposés
Appréciation
Description
Authentification
Login Portlet
2
Via un LDAP et utilise l’API JASS via une Portlet
Request Password
2
Module d’envoi d
e mot de passe par mail en cas d’oubli
User registration
2
Portlet d’inscription d’un nouvel utilisateur (enregistrement en tant que user)
Gestion de contenu
0
Possibilité d’intégré un outil de gestion de contenu sous la norme WSRP
Outils collaboratif
Favoris
1
Gestion des favoris
Calendrier
1
Application légère. Possibilité de prendre des notes exclusivement
Bloc Note
1
Bloc note ou seul l’utilisateur peut voir ses notes
: genre de mémo
RSS
1
Lecteur de flux RSS 2.0
Administration
2
4 types de
droits
: utilisateur, groupe, rôle et propriétaire
Possibilités
: view, edit, help
Personnalisation
2
Personnalisation de ses pages, portlets suivant les droits. Plusieurs layout afin de
disposer les portlets n’ importe où
Business Intelligence
0
In
stallation
1
Installation simple, avec base de données HSQL livré avec le projet
Prise en main assez difficile, manque de documentation pour la modification même
si il y a un Wiki de mis en place
Intégration
2
Accepte Tomcat 4/5 et JBoss
Base de données
: HSQL, MySQL et Oracle
Permet de
récupérer des contenus JSR168,
WSRP, XML, RSS
Possibilité de créer des portlets en Struts ou PHP
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
26
/
33
Développement
OS
2
Windows Xp, Linux
Base de données
2
Une base HSQL est intégrée de base mais possibilité de mettre en p
lace une base
MySQL ou Oracle 8i/9i
Environnement
JAVA, J2EE
Normes respectées
2
JSR
-
168, Struts, XML,
Portlet en PHP
, RSS, WSRP, Perl
Serveurs d’application
O
q潭捡t‴L㔬Rg_ç獳
Autres
2
Possibilité de déploiement sur WAP
Perspectives
Vu les é
volutions entre Jetspeed 1 et 2, on peut croire à un bel avenir
Petit bémol sur la complexité de prise en main
Jetspeed portail est un outil classique, la gestion d’administration est assez complexe. L’aspect graphique n’est pas très év
olué (carré). On
peut
également développer plusieurs types de Portlet JSP, JSP et Velocity, PHP, Struts. La communauté est assez importante égaleme
nt, on peut disposer d’un wiki
(anglais) qui nous montre sous forme d’exemple les différentes créations, configuration ou cus
tomisation du portail. Il suit aussi la norme JSR
-
168. Il n’existe
pas de forum dédié principalement à ce portail, ce qui peut rendre le développement plus difficile en cas de problème.
Dossier d'étude
Stage
–
Portail d’architecture
7.2
Différence Flex/Ajax
7.2.1
Présentation
7.2.1.1
Flex
La technologie Flex a été cr
éée en 2004 par Macromedia. A la fin de l’année 2005, Abobe
opère au rachat de Macromedia. Pensant que le Flex pouvait devenir la technologie riche de référence,
il décida de poursuivre son développement jusqu'à Flex 3 sorti courant 2007. Flex est ensemble
d’outil
formant un Fram
ework de développement
d’application en flash. Il s’appuie sur le langage XML et sur
l’Action Script 3 (mi chemin entre java
et
c#)
Il existe différents outils Adobe permettant un meilleur développement
:
Flex SDK
: compilateur gra
tuit
Flex Builder
: l’IDE, version gratuite 60 jours
Flex Charts
: création de graphique
Flex Data services
: briques fournissant divers services vers le serveur
Le point fort
de cette technologie est la rapidité de développement d’application grâce à son
IDE qui propose les différents utilitair
es d’interfaces (bouton, liste,.
..). De plus
,
de nouveaux
composants sont ajoutés (slider, accordéon), ce qui permet d’enrichir nos applications. Les appels à
des Web Services sont très simplifiés. Il possède égalem
ent une large communauté, ce qui permet
d’interagir sur de nombreux problèmes.
L’avantage d’une base flash lui permet une création innovante, belle et riche.
Flex est sous licence
M
PL (Mozilla Public License) toutes les briques de son SDK,
notamment :
les
compilateurs ActionScript 3 et MXML, c'est à dire le langage de script utilisé par Flex
et la grammaire XML de description d'interfaces Flex
le débuggeur ActionScript ainsi que les core librairies (toutes les fonctionnalités "de
base")
l'ensemble des compo
sants Flex (correspondant par exemple aux accordéons, aux grilles
de données, etc.)
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
28
/
33
7.2.1.2
Ajax
L’Ajax (Asynchronous JavaScript and XML) n’est pas une technologie m
ais
une méthode
d’utilisation de plusieurs technologie
s
: Html, Xml, XmlHttpRequest, Css et Ja
vaScript. Son principe
de fonctionnement est que l’on ne recharge plus la page tout entière à chaque demande mais seulement
une partie ce qui permet un temps de réaction beaucoup plus rapide. De plus, avec l’Ajax le traitement
est effectué par le navigateu
r, et les données env
oyées et reçues
sont moins nombreuses. On peut donc
ainsi avoir la possibilité du glisser/déposer par exemple.
Plusieurs Framework sont mis à disposition afin de faciliter son développement (Dojo, Rialto,
ATF, …).
Le point fort
de c
ette méthode est sa gratuité total
e
. Le nombre de Framework du marché
assiste maintenant le développement pour le rende beaucoup plus simple et respectueux des normes en
vigueur.
AJAX n'est pas une technologie.
AJAX est indépendant de tout environnement.
AJAX peut être implémenté sur toute plateforme Web (PHP, JSP, Zope, ...).
AJAX désigne l'utilisation conjointe de plusieurs technologies Open
Source.
Site avec plusieurs exemples pour débuter
:
http://miniajax.com/
7.2.1.3
L
aszlo
Cette plateforme open source utilise le Xml et le JavaScript et est compilé sur une base Flash.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
29
/
33
7.2.2
Description
Ajax
7.2.2.1
Framework
Prototype
: ce Framework Javascript est utilisable tel quel, mais il sert également
de base pour
des librairies plus évoluées et plus lourdes comme Rico et Script.aculo.us (à voir ci
-
dessous).
Il n’inclut donc pas d’effets visuels, mais comporte tout le nécessaire pour effectuer des
requêtes en Ajax
jQ
uery
: JQuery est une librairie Javascript très prometteuse. Elle est légère, extensible et très
simple à utiliser. La documentation est vraiment très complète, avec des tutoriaux abordant de
manière thématique les différentes fonctionnalités. Idéal pour
se lancer dans le développement
Ajax
Google Web Toolkit
(Java)
:
Le Google Web Toolkit (GWT) est un Framework AJAX
atypique dans le sens où :
le développement se fait intégralement sous Java 1.4 (avec un
e API spécifique
rappelant celle des bibliothèques graphiques Swing ou AWT) ;
la compilation traduit le code Java en JavaScript
(code illisible pour une
modification future)
Cette translation de code est une solution élégante pour développer des applicat
ions
AJAX
sans même connaître JavaScript
Autorisation Google obligatoire pour la
commercialisation, modification et diffusion
de gwt
-
dev
-
***.jar (Java2Javascript)
Atlas
:
Microsoft Atlas est un framework AJAX conçu pour s'intégrer au framework .NET.
Se
s bibliothèques Javascript sont construites et liées de manière complexe ce qui rend
difficile
leur utilisation sans les outils Microsoft (Visual Studio). De fait, Atlas prévoit des
mécanismes
exploitant la puissance de son framework .NET (par exemple, l'a
ccès via
C# à une base de
données).
De nombreux
Widgets
sont
non compatibles Safari et
Firefox
. Solution propriétaire
.
Rico
: A l’inverse de Prototype, Rico propose donc en plus du support Ajax la possibi
lité de
fabriquer des animations ou d’effectuer des glissers
-
déposers (ou
drags and drops
en anglais)
comme dans un logiciel classique. Malheureusement, sa documentation semble un peu
succincte
7.2.2.2
Librairies
Script.ac
ulo.us
: sûrement un des plus connus (probablement à cause de son intégration à
Ruby on Rails
). Il bénéficie d’une communauté par conséquent importante et dispose même
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
30
/
33
d’un mécanisme d’extension
. Script.aculo.us est
fournit de base avec l’auto
-
complétion en
Ajax. Elle possède une large palette graphique. S’utilise avec la version 1.5.0 RC de
prototype.
Mootools
: une librairie compacte et modulaire qui a été conçu
e
en suivant
les principes de la
programmation orientée objet. Sa syntaxe est très agréable et de nombreuses extensions
viennent compléter les fonctionnalités de base. Le module Ajax est capable de gérer le format
Json
Dojo Toolkit
: certainement une des librairies les plus complètes qui soient. Dojo Toolkit est
supportée par une fondation qui regroupe des entreprises comme IBM ou encore Sun
Microsystems. Elle repose sur un syst
ème de
widgets
et le
package
Ajax prend en compte
différents types de transport comme les
iframes
MochiKit
: apparemment, les développeurs Python devraient s’y r
etrouver plus facilement que
les autres, car on retrouve dans cette librairie un peu la philosophie de ce langage. MochiKit
dispose de tout le nécessaire pour implémenter des tâches
asynchrones. Peut de possibili
t
é
technique
Yahoo! UI Library
:
Yahoo!
a mis à disposition sa librairie Javascript sous une licence
open
source
. Il est donc maintenant possible de concevoir des pages tout aussi riches et interactives
que celles
des nombreux portails de la société. Le support est bien évidemment exemplaire.
Gestion des CSS. Mais un nombre restreint de composant. Possibilité de mettre cette
bibliothèque au sein de Framework.
Il existe encore bien d’autres librairies Ajax, dont cer
taines dépendent d’un langage de
programmation comme
Google Web Toolkit
(Java) ou
Xajax
(Php) ou bien d’un environnement
propriétaire comme
Aflax
(Flash).
Il faut vraiment prendre le temps d’étudier en détails ces librairies afin de choisir celle qui
correspond le mieux à ses besoins. Ce choix est important car il n’est pas facile ensuite de faire
machine arrière et de migrer
vers un autre Framework.
On peut également citer Google Web Toolkit, qui est assez original par son modèle de
développement : programmez en Java, le GWT génère le javascript pour vous ! Pratique pour
bénéficier des environnements de développement Java, et
surtout pour éviter d’avoir à maîtriser le
Javascript (une connaissance rudimentaire ne suffit souvent pas pour faire des développements Ajax).
GWT masque également les différences de comportement sur les principaux browsers, et permet
d’automatiser les t
ests unitaires.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
31
/
33
Source
:
http://www.simpleentrepreneur.com/2007/05/08/une
-
liste
-
de
-
librairies
-
javascript
-
pour
-
developper
-
en
-
aj
ax/
http://ajaxian.com/archives/ajaxiancom
-
2006
-
survey
-
results
Tous ces produits sont Open Source sauf le GWT et Atlas qui sont des produits propriétaires.
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
32
/
33
7.2.3
Description
Flex
Un
seul produit Adobe est disponible.
Une version gratuite de Flex 3 SDK peut être installé
e
dans Eclipse. Quant à lui
,
le Framework
complet n’existe que en version free 60 jours et sinon est payant.
Depu
is 1 an Adobe à décidé de publier
un socle de base
au sein d’une communauté open
-
source afin de faire connaitre sa technologie. Il est donc possible de récupérer les applications de bases
pour développer en Flex.
7.2.3.1
Langages
Le langage MXML est utilisé par les développeurs pour définir l'agencement, l'aspec
t
et le comportement d'une application Flex. Le langage ActionScript 3 permet de définir les fonctions
de traitement côté client. Il s'agit d'un langage orienté objet reposant sur le standard ECMAScript. La
compilation des contenus MXML et ActionScript pro
duit un fichier .swf unique constituant votre
application Flex. Le compilateur étant fourni sous forme d'utilitaire distinct dans le kit SDK Flex 3 ou
de co
mposant d'Adobe Flex Builder™ 3, les développeurs optent pour l'environnement de
développement intégré à Flex Builder, basé sur Eclipse, ou pour celui de leur choix.
7.2.3.2
Bibliothèque de classes et services applicatifs
Flex comprend une bibliothèque de classes
prédéfinies et des services applicatifs facilitant
l'assemblage et l'élaboration d'applications Internet riches côté développeurs. Ces services incluent les
liaisons de données, le glisser
-
déposer, le système d'affichage applicable à l'agencement de l'int
erface
utilisateur, le système stylistique gérant l'aspect de tous les composants de l'interface utilisateur, ainsi
que le système d'effets spéciaux et d'animations applicables aux animations et transitions.
7.2.3.3
Composants
(Optimisation Flex 3)
Options, cases
à cocher ou boutons radio simples, ou grilles de données, listes modifiables ou
éditeurs complexes, la bibliothèque de composants comprend toutes les commandes d'interfaces
utilisateur
requises par les développeurs.
Servez
-
vous des conteneurs fournis pour
concevoir
facilement des agencements complexes et évolutifs, et utilisez les superbes habillages (modifiables à
loisir) pour obtenir l'aspect recherché.
Source
:
http://www.ado
be.com/fr/products/flex/features/flex_framework/
Dossier d'étude
Stage
–
Portail d’architecture
ARISMORE
-
REFERENCE
:
-
VERSION 1 DU 02/09
/08
33
/
33
Glossaire
:
Terme
Définition
Enter the password to open this PDF file:
File name:
-
File size:
-
Title:
-
Author:
-
Subject:
-
Keywords:
-
Creation Date:
-
Modification Date:
-
Creator:
-
PDF Producer:
-
PDF Version:
-
Page Count:
-
Preparing document for printing…
0%
Comments 0
Log in to post a comment