Chapitre 3
Méthodes & Concepts
Au coeur de notre travail, il y'a les objets
réutilisables, le langage XUL' que nous présentons, soutendus par
une approche méthodologique. Il s'agira en fait d'utiliser le langage et
un interpréteur XUL pour l'élaboration et l'exploitation
dynamique des interfaces spécifiques. Ensuite, de les joindre aux objets
de la base de connaissances pour constituer les objets réutilisables des
processus de développement (Reusable Objects for Software Engineering).
Mais avant d'aller présenter la démarche, prenons le soin de
situer quelques concepts nécessaires pour la suite à savoir les
objets réutilisables et le langage XUL.
3.1 Les objets réutilisables
La réutilisation en Génie Logiciel est
correlée à l'architecture logicielle très souvent. Une
architecture logicielle doit donc fournir un contexte pour le
développement de modules réutilisables. Aussi avons nous
opté pour une réutilisabilité dans la dimension substance
utilisée ou contenu avec les objets réutilisables dans la
BCPD.
Les objets réutilisables ne sont pas des objets au sens
d'instance de classe, ce ne sont pas des objets au sens de composants
logiciels, mais c'est des objets au sens de produit permettant de stocker la
connaissance et la manière dont cette connaissance sera utilisée.
C'est ce que nous avons nommé 'Reusable Object' pour le Génie
Logiciel ou plus simplement Reusable Objects for Software Engineering. Sans
pour autant véhiculer des informations, ces objets réutilisables
se rapprochent beaucoup plus des objets d'apprentissages définis par
[Nelson et al. 1997, Nelson 1998, Wiley 2002].
La définition de ces objets dans la BCPD a
été guidée par l'ontologisation du domaine des processus
d'ingénierie logicielle avec le métamodèle SPEM. Leur mise
en oeuvre a été inspirée de l'approche de Falbo qui
propose des démarches pour le passage de l'ontologie du domaine aux
objets réutilisables [Falbo et al. 2002].
'XML-based User Interface Language, prononcé
!zoolU
3.2 Le langage XUL
XUL (XML-based User Interface Language, prononcé
'zool') est un langage de description d'interfaces homme/machine
dérivé de XML2 (eXtensible Markup Language). Il est
né du projet open source de Mozilla3. La norme XUL se propose
de standardiser la manière dont les interfaces sont décrites et
exploitées. Sa puissance de description est telle qu'il per-met de
définir une application aussi complexe qu'un navigateur Web (XUL est au
coeur de Mozilla et de Netscape 6). Certains voient en lui le concurrent de
Java sur le poste client : il existe des interpréteurs pour toutes les
plates-formes, XUL est donc un langage de description d'interface portable.
Certains à l'instar de Frédéric Bordage proposent la
relève des architectures client serveur (client lourd) et du web (client
léger) par ce qu'il qualifie de Client Riche bâti sur XUL et
à mi-chemin entre les deux (02) en corrigeant leurs différents
défauts (voir l'article sur 01net4). De plus, XUL
étant un dérivé de XML, il ne nécessite pas de
compétences informatiques pointues.
Nous illustrons XUL avec un exemple de code XUL (voir la
figure 3.1) et l'interface visuelle correspondante générée
par un interpréteur (voir la figure 3.2).
Ce langage se fait encore discret, pourtant, il est à
l'origine d'une nouvelle vague d'applications: étant écrit en
XML, il est diffusable sur le Web simplement. Aucune documentation de
référence n'est encore disponible, néanmoins on peut
trouver des drafts5, ainsi que des interpréteurs swixml,
luxor, XUI, thinlet, ...
|