• Aucun résultat trouvé

Cadre de conception unifi´ e : une approche pour le d´ eveloppement de

III.3 Description conceptuelle de l’environnement d’un syst` eme mobile et distribu´ e 94

IV.1.1 Cadre de conception unifi´ e : une approche pour le d´ eveloppement de

de syst`emes interactifs

Mod´eliser un syst`eme interactif implique d’identifier et de prendre en compte les besoins

et les attentes des futurs utilisateurs pour initier l’ing´enierie d’un syst`eme qui r´eponde `a

leurs besoins. Les d´emarches de conception centr´ees utilisateur (Norman et Draper, 1986)

et leurs d´eriv´ees comme laconception participative (Muller et Kuhn, 1993) ou laconception

par sc´enarios (Carroll, 2000) int`egrent le point de vue des utilisateurs dans le processus de

d´eveloppement logiciel. En g´en´eral, un ´echantillon repr´esentatif de la population des futurs

utilisateurs est associ´e `a l’´equipe de concepteurs et d´eveloppeurs. Ensemble, ils sp´ecifient les

´

etapes de la conception (p. ex. par l’analyse des tˆaches et des intentions des utilisateurs) et

d´ecrivent le profil et les besoins d’un st´er´eotype d’utilisateur (Maguire, 2001). Ces descriptions

IV.1. MOD `ELE DE CONCEPTION POUR LA MISE EN ŒUVRE DES CONTEXTES

D’EX ´ECUTION 111

sont prises en compte par les concepteurs et les d´eveloppeurs pour proposer des solutions

acceptables du point de vue de l’interaction Humain-machine et du contenu informationnel

pr´esent´e.

Plusieurs d´emarches de conception de syst`emes d’information interactifs et contextuels

qui impliquent l’utilisateur ont ´et´e propos´ees (Eisensteinet al., 2001 ; Luytenet al., 2003 ;

Pa-terno et Santoro, 2003). Elles se conforment au cadre de r´ef´erence unifi´e pour la mod´elisation

d’un syst`eme interactif propos´e par Calvaryet al.(2003). En premier lieu, elles d´efinissent les

objectifs des utilisateurs du syst`eme, puis ´enoncent les ´etapes n´ecessaires `a l’accomplissement

de ces objectifs par un ensemble de tˆaches s’appuyant sur des informations caract´erisant les

donn´ees d’entr´ee-sortie utilis´ees par le syst`eme. Cette description est d´etaill´ee au sein d’un

document textuel : le sc´enario nominal. Il s’agit d’une description informelle du

fonctionne-ment du syst`eme construite `a partir des besoins des utilisateurs. Dans ce sens, les experts du

domaine, les concepteurs du syst`eme et ´eventuellement les futurs utilisateurs se r´eunissent en

groupes de travail pour ´ecrire ce sc´enario. Ce document servira de fil conducteur `a l’´equipe

de d´eveloppement pour la suite du processus de conception du syst`eme. Le sc´enario nominal

doit ˆetre aussi d´etaill´e que possible. Son analyse doit permettre de sp´ecifier les fonctionalit´es

impl´ement´ees par un premier prototype du syst`eme.

Figure IV.1 – Cadre de conception et de mise en œuvre d’un syst`eme d’information sensible au contexte

L’´ecriture du sc´enario nominal pour la description des tˆaches s’´etablit comme le point

d’entr´ee d’une large majorit´e des m´ethodes de conception centr´ees utilisateur (Bastideet al.,

2003) (Fig. IV.1(a)). En partant de cette sp´ecification, les tˆaches et les informations du

domaine sont d´ecompos´ees et mod´elis´ees selon une conception descendante :

1. organisation des informations du syst`eme en un mod`ele conceptuel de donn´ees Fig.

IV.1(c)

. Par exemple, les informations sont structur´ees au sein d’un sch´ema de classes ;

2. d´ecomposition et organisation des tˆaches de l’utilisateur par un mod`ele fonctionnel en

g´en´eral sous la forme d’un arbre articul´e par des op´erateurs d’ordonnancement Fig.

IV.1(b)

. D´ecoration de cet arbre par les concepts manipul´es en entr´ee et sortie Fig.

IV.1(e)

;

3. conception des tiers m´etier et donn´ees : cette ´etape aborde le choix de la distribution

physique des composants du syst`eme (Fig. IV.1(d)), l’impl´ementation du mod`ele de

donn´ees et du noyau fonctionnel, et le d´eploiement sur l’architecture Fig. IV.1(f);

4. conception du tiers client (Calvary, 2007) : l’interface abstraite d´ecompose l’interaction

graphique avec le syst`eme en d´ediant un espace de dialogue `a chaque tˆache Fig. IV.1(g).

L’interface concr`ete organise les ´el´ements d’interaction (p. ex. listes, menus, boutons,

etc.) au sein de chaque espace de dialogue Fig. IV.1(h)

. Enfin, l’interface finale propose

une impl´ementation logicielle de l’interface concr`ete, en se reposant sur une biblioth`eque

de composants graphiques (Fig. IV.1(i)).

Les ´etapes de conception des tiers “m´etier”, “donn´ees” et “client” peuvent ˆetre

semi-automatiques. Pour le tiers m´etier, l’organisation des informations est assortie de m´ethodes

de manipulation pour former un diagramme de classes, et un squelette de code est g´en´er´e.

Pour le tiers client, les diff´erents niveaux d’abstraction de l’interface utilisateur sont g´en´er´es `a

partir d’une description formalis´ee des tˆaches (Moriet al., 2004). L’ensemble du processus de

conception est ´eventuellement r´ep´et´e. Chaque it´eration ajuste ou enrichit le cycle pr´ec´edent en

compl´etant les sc´enarios d’utilisation et en r´epercutant ces modifications dans les diff´erentes

´

etapes de l’impl´ementation, jusqu’`a obtenir une version du syst`eme qui satisfasse au mieux

les exigences et les besoins des utilisateurs (Boehm, 1986).

Le contexte d’usage, qui adapte dynamiquement les capacit´es interactives du syst`eme,

est pris en compte au niveau de la conception du tiers client. Le cadre de r´ef´erence unifi´e

distingue trois dimensions contextuelles dans l’environnement imm´ediat de l’utilisateur : le

contexte utilisateur, le contexte de la plate-forme client, et le contexte d’environnement

d’uti-lisation Fig. IV.1(j). Chaque triplet du contexte d’usage engendre la conception d’une partie

cliente qui est adapt´ee pour l’utilisateur consid´er´e.

IV.1.2 Cadre de conception ´etendu : proposition pour l’int´egration de la

mod´elisation g´eographique

Selon le cadre de conception unifi´e, la mod´elisation d’un syst`eme interactif est

principa-lement centr´ee sur l’ing´enierie de l’interaction humain-machine du tiers client et l’impact d’un

contexte dynamique reste cantonn´e aux utilisateurs et `a leur environnement proche, c’est-`

a-dire `a descontextes d’usage particuliers. Selon cette approche du cadre de conception unifi´e,

percevoir l’environnement pr´esente un int´erˆet si l’ex´ecution doit ˆetre modifi´ee pour s’adapter

`

a une situation nouvelle `a la suite d’un changement dans l’une des dimensions du contexte

d’usage (c-`a-d. dimensions de l’utilisateur, de la plate-forme ou de l’environnement proche

(Chap. II.2.2)). Ces trois dimensions du contexte d’usage sont r´epercut´ees lors des derni`eres

´

etapes de la mod´elisation, lorsque les niveaux d’interaction avec les utilisateurs sont sp´ecifi´es

(Fig. IV.1(j)). Deux postulats du cadre de conception unifi´e justifient l’int´egration du contexte

d’utilisation lors des derni`eres ´etapes de la d´emarche de conception :

– le cadre de conception unifi´e consid`ere que les composants m´etier et donn´ees ne sont

pas contraints par l’environnement : `a tout moment, ils devraient tenir leur rˆole dans

le syst`eme.

– de la mˆeme mani`ere, le cadre de conception unifi´e consid`ere que les tˆaches sont d´ecrites

`

a un haut niveau et ne sont pas sensibles aux variations du contexte d’usage.

Ces deux hypoth`eses, valides dans le cas du d´eveloppement de logiciels interactifs non

distribu´es ou statiques, sont mises `a mal dans le cas des syst`emes mobiles et distribu´es,

sen-sibles aux al´eas de l’environnement au niveau de l’ensemble des composants. Pour g´erer au

mieux ces al´eas, etpour d´eployer un syst`eme d’information distribu´e dans un

envi-IV.1. MOD `ELE DE CONCEPTION POUR LA MISE EN ŒUVRE DES CONTEXTES

D’EX ´ECUTION 113

ronnement g´eographique dynamique, il est n´ecessaire de consid´erer, en plus du

contexte d’usage, les variations du contexte d’ex´ecutionau niveau de chaque

compo-sant. Le syst`eme d´eploy´e est fortement contraint par sa situation dans l’environnement, dans

lequel l’´evolution de la localisation spatiale de ses composants joue un rˆole pr´epond´erant.

Plus sp´ecifiquement, un syst`eme distribu´e subit les variations d’un ensemble de contextes

d’ex´ecution qui n’apparaissent pas au sein du mod`ele de conception unifi´e

1

. Pour prendre en

compte ces situations, le cadre de conception d’un syst`eme d’information

interac-tif est ´etendu et ajoute la description g´eographique de l’environnement comme

entr´ee du processus de mod´elisation (Fig. IV.2).

Figure IV.2 – Cadre de conception ´etendu

La proposition de cadre de conception ´etendu prend en compte les variations de

l’envi-ronnement d’ex´ecution du syst`eme sous la forme de contraintes qui s’ajoutent `a la

descrip-tion des tˆaches issues du sc´enario nominal. Ces contraintes enrichissent l’arbre des tˆaches par

de nouvelles branches correspondantes aux tˆaches effectu´ees dans les contextes d’ex´ecution

qui ne sont pas nominaux. Cette approche ´etendue du cadre de conception unifi´e permet

de caract´eriser l’influence de l’environnement d’ex´ecution du syst`eme sur le d´eroulement du

sc´enario nominal sans perdre la capacit´e `a exprimer diff´erents contextes d’usage.

La description conceptuelle de l’environnement d’un syst`eme mobile et distribu´e par

une approche g´eographique, pr´esent´ee au chapitre III, mod´elise la dynamique des composants

d’un syst`eme mobile par un ensemble de r´egions Fig. IV.2(a), o`u l’´etude des contraintes et

des ´equivalences entre configurations topologiques Fig. IV.2(b) d´etermine un ensemble de

contextes d’ex´ecution. Ces ´etapes caract´erisent l’ensemble des situations d’ex´ecution que le

syst`eme peut rencontrer Fig. IV.2(c). Le cadre de conception ´etendu adjoint au cadre de

1. En simplifiant `a l’extrˆeme son cadre d’utilisation, le mod`ele unifi´e offre un cadre d’analyse du contexte

d’usage pertinent pour un contexte d’ex´ecution donn´e, mais reste limit´e quand il s’agit de prendre en compte

de multiples situations d’ex´ecution.

conception unifi´e deux ´etapes suppl´ementaires de mod´elisation pour permettre l’int´egration

des diff´erents contextes d’ex´ecution :

– une premi`ere ´etape consid`ere l’ensemble des contextes produits `a l’issue de l’analyse

des mobilit´es des r´egions, et recherche des ´equivalences en termes de modifications

fonctionnelles entre deux ou plusieurs contextes d’ex´ecution Fig. IV.2(h);

– les contextes ainsi group´es sont ensuite mis en relation avec les tˆaches de

l’utilisa-teur et les informations manipul´ees au sein d’un arbre des tˆaches “situ´e”. Ce nouvel

outil de conception exprime les possibilit´es fonctionnelles offertes dans une situation

d’ex´ecution donn´ee par rapport aux tˆaches de l’utilisateur Fig. IV.2(d).

Lorsque des contextes d’´execution ne sont li´es `a aucune tˆache de l’arbre annot´e, il existe

des situations d’ex´ecution potentielle qui n’ont pas ´et´e d´ecrites par le groupe de r´eflexion `a

l’origine du sc´enario nominal. Afin que le syst`eme r´eponde de fa¸con appropri´ee il est n´ecessaire

de pr´evoir un comportement adapt´e `a ces situations. De nouvelles tˆaches sont imagin´ees au

sein de sc´enarios alternatifs Fig.IV.2(f). Elles seront effectu´ees `a l’initiative du syst`eme ou

de l’utilisateur lorsque les conditions ne permettront le d´eroulement du sc´enario nominal.

La description physique de l’architecture des composants sert de support au syst`eme de

r´egions mis en place. En particulier, celle-ci doit permettre la d´etection des variations dans

les intersections des r´egions d’ex´ecution et d’int´erˆet pour que les changements de contextes

d’ex´ecution soient mesur´es et r´epercut´es au niveau du syst`eme figure IV.2(e). Par exemple,

pour pouvoir d´etecter la relation d’une r´egion d’ex´ecution avec une r´egion d’int´erˆet, le

com-posant g´en´erateur de la r´egion d’int´erˆet doit connaˆıtre et rendre disponible sa localisation

au reste du syst`eme. En parall`ele de cette description de la plate-forme, les tˆaches situ´ees

sont `a l’origine de la partie cliente. La mod´elisation du tiers client d´ecompose en actions

d’interaction et de dialogue les tˆaches du sc´enario nominal, mais aussi les tˆaches alternatives.

Comme l’ensemble des situations d’ex´ecution est pris en compte et repr´esent´e dans un arbre

des tˆaches commun, l’ensemble des cas d’ex´ecution est ´etabli au sein d’un outil commun.

L’impl´ementation du client b´en´eficie de cette approche et la mise en œuvre d’une

interac-tion humain-machinecoh´erente etrobuste

2

face aux changements de contexte du syst`eme est

facilit´ee figure IV.2(g)

.