Dossier d'etude

haltingbarberInternet και Εφαρμογές Web

15 Αυγ 2012 (πριν από 4 χρόνια και 10 μήνες)

633 εμφανίσεις






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
敬潰灥ç敮e⁲a灩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