• Aucun résultat trouvé

Conception et personnalisation

1.3 Le contexte en Interaction Homme-Machine

1.3.1 D´efinitions

Le contexte est un concept qui apparait dans plusieurs domaines (Bradley et Dunlop, 2005). En informatique, la notion de contexte est apparue pour la premi`ere fois dans le domaine de l’IA (Intelligence Artificielle) (Mccarthy, 1993) o`u elle a ´et´e utilis´ee pour di-viser une base de connaissances en un ensemble de constructions logiques qui facilitent le raisonnement. Plus r´ecemment, avec les progr`es de l’informatique mobile, le contexte est devenu un sujet d’int´erˆet pour d’autres domaines de la science informatique, et parti-culi`erement pour l’Interaction Homme-Machine.

Dans le domaine de l’IHM, donner une d´efinition au contexte a fait l’objet de plusieurs tentatives. (Zimmermann et al., 2007) affirment que le contexte est une notion difficile `a d´efinir et que la majorit´e des d´efinitions existantes peuvent ˆetre class´ees en d´efinitions par les synonymes et d´efinitions par les exemples.

En IHM, l’apparition de la notion du contexte datait depuis l’ann´ee 1994 avec (Schilit et al., 1994) qui ont introduit la notion du sensibilit´e au contexte (context-awareness en anglais). Les auteurs consid`erent qu’un syst`eme est sensible au contexte s’il utilise le contexte pour fournir `a l’utilisateur des informations ou des services pertinents. Dans ce cas, le contexte est capable de r´epondre aux questions suivantes : o`u vous ˆetes ? Avec qui vous ˆetes ? Et quelles sont les ressources proches de vous ?

(Brown, 1996) s’est content´e des objets de l’environnement pour d´efinir le contexte. Tandis-que, (Brown et al., 1997) ont introduit l’identit´e de l’utilisateur et sa localisation ainsi

que les conditions m´et´eorologiques, la temp´erature et la saison. La mˆeme perception du contexte a ´et´e partag´ee avec (Ryan et al., 1997).

En 1997, (Ward et al., 1997) ont conserv´e globalement les mˆemes ´el´ements du contexte d´efinis par (Schilit et al., 1994), en s’int´eressant aussi `a l’emplacement des autres objets entourant l’utilisateur.

(Pascoe, 1998) a d´efini le contexte comme ´etant le sous-ensemble d’´etats physiques et conceptuels d’une entit´e particuli`ere. L’auteur a fait r´eapparaitre la notion du context-awareness en d´ecrivant la sensibilit´e au contexte comme ´etant la capacit´e des dispositifs informatiques `a d´etecter, interpr´eter et r´epondre aux aspects de l’environnement local d’un utilisateur et les appareils informatiques eux mˆemes.

En 1999, la notion du contexte commence `a se g´en´eraliser avec la d´efinition propos´ee par (Dey et al., 1999) qui consid`erent le contexte comme ´etant toute information permettant de caract´eriser une situation ou une entit´e sachant qu’une entit´e peut ˆetre une personne un endroit ou un objet pertinent pour l’interaction entre l’utilisateur et l’application, y compris l’utilisateur et l’application. Dans cette d´efinition, les auteurs ont veill´e `a ne pas se focaliser sur un ´el´ement sp´ecifique pour d´efinir le contexte, mais plutˆot `a prendre en compte tous les ´el´ements implicites et explicites pouvant influencer l’interaction.

Dans le but de d´etailler la d´efinition pr´ec´edente, (Schmidt et al., 1999) affirment que le contexte permet de d´ecrire une situation ainsi que l’environnement dans lequel se trouve l’utilisateur et sa plateforme d’interaction. Les auteurs ont cr´e´e un espace de ca-ract´eristiques hi´erarchiquement organis´e qui contient les ´el´ements qui peuvent d´efinir le contexte. Au sommet de cette hi´erarchie, nous trouvons deux facteurs principaux : les facteurs humains et l’environnement physique.

(Thevenin et Coutaz, 1999), avec leur proposition de la notion de la plasticit´e, qualifient le contexte par le terme contexte d’interaction. Cette proposition a ´et´e effectu´ee dans le cadre de la prise en compte du contexte dans les approches se basant sur l’IDM. Le contexte d’interaction tel qu’il a ´et´e propos´e par les auteurs est d´ecrit `a travers le triplet ≺Objet ; Utilisateur ; Environnement≻.

En 2000, (Lieberman et Selker, 2000) ont propos´e une nouvelle d´efinition du contexte en le consid´erant comme ´etant tout ce qui affecte l’informatisation, sauf les entr´ees et les sorties explicites. Oppos´ee `a la d´efinition propos´ee par (Schilit et al., 1994), cette d´efinition est tr`es technique et elle est centr´ee sur l’application au lieu de l’utilisateur. L’entr´ee explicite est l’entr´ee qui vient directement de l’utilisateur sous forme de commandes pass´ees via l’interface utilisateur. Le contexte est donc toute information que le syst`eme d´etecte au del`a des commandes directes et qui a un effet sur l’´etat du syst`eme.

Bien que (Winograd, 2001) consid`ere que la d´efinition propos´ee par (Dey et al., 1999) est la plus compl`ete de l’ensemble des d´efinitions disponibles, il critique le fait qu’elle soit trop g´en´erique et consid`ere qu’elle n’est pas limit´ee et manque de pr´ecision. Pour apporter plus de sp´ecificit´e, (Winograd, 2001) red´efinit le contexte en le consid´erant comme ´etant un ensemble d’informations, partag´ees et structur´ees.

Avec (Calvary et al., 2001) le contexte est d´efini sous le nom du contexte d’utilisation. Les auteurs consid`erent qu’il se compose principalement de l’environnement physique et de la plateforme d’interaction. Avec la proposition du framework CAMELEON, le cadre de r´ef´erence pour l’aide `a la conception des approches IDM plastiques, les mˆeme au-teurs (Calvary et al., 2003, 2004), ont int´egr´e l’utilisateur dans le contexte. D´esormais, le contexte d’utilisation est compose du triplet ≺Utilisateur ; Environnement ; Plateforme≻. Cette d´efinition du contexte est la plus utilis´ee dans le domaine de l’IHM, notamment pour l’adaptation des interfaces.

En r´efl´echissant aux d´efinitions pr´ec´edentes du contexte, (Dourish, 2004) identifie quatre caract´eristiques qui peuvent d´ecrire cette notion :

1. Le contexte est une information, ce qui implique qu’il peut ˆetre connu et cod´e ; 2. Le contexte est d´elimit´e, ce qui implique que pour certaines applications les

contextes, peuvent ˆetre pr´edits ;

3. Le contexte est stable, une fois les ´el´ements du contexte identifi´es, ils restent les mˆemes ;

4. Le contexte et l’activit´e de l’utilisateur sont s´eparables (i.e. le contexte ne d´epend pas de l’activit´e et c’est l’inverse qui est vrai).

En 2007, (Zimmermann et al., 2007) adoptent la d´efinition de (Dey et al., 1999) et l’ont ´etendu en ajoutant deux nouveaux ´el´ements. Ils consid`erent que le contexte se compose d’une d´efinition formelle qui d´ecrit son apparence et d’une d´efinition op´erationnelle qui d´ecrit son utilit´e ainsi que son comportement dynamique. Pour les auteurs, toute in-formation d´ecrivant le contexte d’une entit´e entre dans l’une des cat´egories suivantes : l’individualit´e, l’activit´e, la localisation, le temps, et les relations.

1. La cat´egorie individualit´e contient des propri´et´es et des attributs d´ecrivant l’entit´e elle-mˆeme ;

2. La cat´egorie d’activit´e couvre toutes les tˆaches de cette entit´e ;

3. La localisation et le temps d´ecrivent le cadre spatiotemporel de l’entit´e ;

4. Les relations repr´esentent des informations sur toute relation possible, que peut ´etablir l’entit´e avec une autre.

Le tableau suivant synth´etise l’ensemble des d´efinitions pr´esent´ees pr´ec´edemment. La premi`ere colonne indique le nom de l’auteur ainsi que l’ann´ee de suggestion de la proposi-tion, et la deuxi`eme colonne contient les ´el´ements `a prendre en compte dans le contexte :

Table 1.1 – Tableau r´ecapitulatif des d´efinitions de la notion du contexte Auteur & Ann´ee El´´ ements d´efinissant le contexte

(Schilit et al., 1994)

Environnement social de l’utilisateur - Localisation de l’utilisateur Ressources `a disposition de l’utilisateur -R´eseau

(Brown, 1996) Objets de l’environnement

(Brown et al., 1997) Identit´e de l’utilisateur Localisation de l’utilisateur -Temps - Temp´erature - Saison

(Ryan et al., 1997) Identit´e de l’utilisateur Localisation de l’utilisateur -Temps

(Ward et al., 1997)

Personnes accompagnant l’utilisateur - Localisation de l’utilisateur Ressources `a disposition de l’utilisateur -Localisation des objets entourant l’utilisateur

(Pascoe, 1998) Localisation de l’utilisateur - Objets de l’environnement - Plateforme d’interaction

(Dey et al., 1999) Utilisateur - Localisation de l’utilisateur - Objets de l’environnement - Application

(Schmidt et al., 1999)

Identit´e de l’utilisateur - Environnement social de l’utilisateur - Activit´e de l’utilisateur - Localisation de l’utilisateur - Objets de l’environnement

(Thevenin et Coutaz, 1999) Objet - Utilisateur - ´Ev`enement

(Lieberman et Selker, 2000) Objets de l’environnement - Plateforme d’interaction (Winograd, 2001) Utilisateur - Localisation de l’utilisateur - Objets de

l’environnement

(Calvary et al., 2001) Objets de l’environnement - Plateforme d’interaction (Calvary et al., 2004) Utilisateur - Objets de l’environnement - Plateforme

d’interaction

(Dourish, 2004) Utilisateur - Objets de l’environnement - Plateforme d’interaction

(Zimmermann et al., 2007) Attributs de l’entit´e - Activit´e de l’entit´e - Localisation de l’entit´e, Temps, Relations de l’entit´e.

Comme l’a montr´ee le tableau, la d´efinition du contexte ne cesse d’´evoluer. De notre part et dans le cadre de cette th`ese, nous adoptons celle propos´ee par (Calvary et al., 2004). Dans ce qui suit, la mention du contexte fait r´ef´erence au contexte d’utilisation d´efini comme suit :

efinition. Le contexte d’utilisation dans le cadre d’un syst`eme interactif est d´efini par

le triplet (Utilisateur, Environnement, Plateforme). L’utilisateur repr´esente la personne qui interagit avec le syst`eme. Elle peut ˆetre caract´eris´ee par ses pr´ef´erences ainsi que ses capacit´es perceptuelles, cognitives et motrices. La plateforme constitue l’ensemble des

ressources mat´erielles et logicielles dont dispose l’utilisateur pendant l’interaction. L’en-vironnement repr´esente l’ensemble des objets, personnes et ´ev´enements qui peuvent avoir un impact sur le syst`eme

1.3.2 La mod´elisation du contexte

`

A travers le panel des d´efinitions de la notion du contexte, pr´esent´e dans le chapitre 1, §1.3.1, nous constatons qu’il y a des d´efinitions th´eoriques, d’autres mod`elisables et op´eration-nelles dans un espace de travail bien d´etermin´e.

Pour ˆetre en mesure de traiter le contexte d’une mani`ere informatis´ee, un mod`ele de contexte est n´ecessaire. ´Etant donn´e l’importance de la prise en compte du contexte dans le domaine des IHM, plusieurs travaux ont essay´e de mod´eliser ce contexte afin de le rendre op´erationnel et, comme (Strang et Popien, 2004; Pessoa et al., 2007; P´erez et al., 2009) l’ont confirm´e, il existe plusieurs m´ethodes de mod´elisation du contexte. Un bon forma-lisme de mod´elisation du contexte r´eduit la complexit´e des applications et am´eliore leur maintenabilit´e ainsi que leur ´evolutivit´e (Bettini et al., 2010). En outre, une repr´esentation formelle du contexte dans un mod`ele est n´ecessaire pour la v´erification de la coh´erence des ´el´ements qui le constituent. Ces mod`eles de contexte sont partis d’un ensemble de repr´esentations statiques, non-expressives vers d’autres mod´elisations s´emantiques, exten-sibles et plus souples. En se basant sur les travaux de (Baldauf et al., 2007; Bolchini et al., 2007; Bettini et al., 2010), nous identifiions les mod`eles suivants :

- Le mod`ele attribut-valeur : Selon (P´erez et al., 2009), il s’agit de la premi`ere mani`ere pour repr´esenter le contexte d’une fa¸con structur´ee `a travers une collection de paires cl´e-valeur. Il s’agit du mod`ele le plus simple, qui d´ecrit le contexte avec un ensemble d’attributs qui sont faciles `a manipuler. Le probl`eme de ce formalisme est qu’il n’est pas suffisant pour des syst`emes complexes. Parmi les travaux qui ont opt´e pour cette mod´elisation, nous pouvons citer le travail de (Schilit et al., 1994).

- Le mod`ele bas´e sur XML : Ce type de mod`eles est souvent utilis´e dans une structure hi´erarchique compos´ee d’un ensemble de balises avec des attributs et de leurs conte-nus. (Dey, 2000) et (Han et al., 2005) ont utilis´e ce type de mod´elisation pour la mise en œuvre des mod`eles du contexte qu’ils ont propos´es.

- Le mod`ele graphique : Il est utilis´e particuli`erement pour structurer le mod`ele d’une fa¸con graphique, mais pas pour l’instancier. L’exemple le plus r´epandu de ce type de mod´elisation est le langage UML. Parmi les travaux qui ont adopt´e cette mod´elisation du contexte nous trouvons (Taconet et Aoul, 2008) qui a repr´esent´e le contexte sur plusieurs niveaux `a l’aide du langage Ecore ainsi que (Ali et al., 2008) qui proposent un diagramme de classe en UML pour d´ecrire la localisation de l’utilisateur. - Le mod`ele orient´e-objet : Il s’agit de mod´eliser le contexte `a travers des bases de donn´ees

relationnelles. De cette fa¸con, le contexte est stock´e dans des tables et trait´e par les SGBD (syst`emes de Gestion des Bases de Donn´ees). Cette approche est mieux adapt´ee pour les situations o`u le contexte est pr´ed´efini `a l’avance ou bien lorsque les

fonctionnalit´es de l’application sont limit´ees au domaine de la Recherche d’Informa-tion (RI) (P´erez et al., 2009).

- Le mod`ele logique : Dans ce cas , le contexte est d´efini comme un ensemble de faits, des expressions et des r`egles. Ce type de mod`ele est caract´eris´e par un haut degr´e de formalisation et il est utilis´e avec des r`egles sp´ecifiques pour d´eriver des informations concernant le contexte ou pour d´etecter les inconsistances dans un mod`ele bien d´etermin´e. Une des premi`eres propositions de ce type de mod`ele a ´et´e propos´ee par (Akman et Surav, 1997) . En plus du mod`ele graphique qu’ils ont propos´e, (Ali et al., 2008) ont d´efini un deuxi`eme mod`ele du contexte impl´ement´e en Datalog, un langage logique bas´e sur des r`egles et des requˆetes pour manipuler les donn´ees.

- Le mod`ele `a base d’ontologie : Comme l’a affirm´e (P´erez et al., 2009), les ontologies

(cf. chapitre 1, §1.4) sont utilis´ees pour d´efinir les relations entre les concepts et les utiliser plus tard pour le raisonnement. Un mod`ele de contexte sous forme d’ontologie se compose essentiellement d’une base de connaissances qui repr´esente les concepts du contexte et les relations entre eux. Parmi les premi`eres initiatives introduisant ce type de mod´elisation, figure celle pr´esent´ee par (Ozt¨urk et Aamodt, 1997).

1.3.3 La sensibilit´e au contexte

Apr`es avoir trouv´e une d´efinition du contexte, nous allons pr´esenter la notion de la sen-sibilit´e tel qu’elle a ´et´e d´efinie dans le domaine de l’IHM. En effet, cette notion apparue en 1994, a ´et´e introduite par (Schilit et al., 1994) comme ´etant la capacit´e `a s’adapter en fonction de la localisation, l’ensemble de personnes `a proximit´e, les plateformes acces-sibles...

En 1998, Pascoe (1998) a d´efini la sensibilit´e au contexte comme ´etant la capacit´e des dispositifs informatiques `a d´etecter, interpr´eter et r´epondre aux aspects de l’environnement local d’un utilisateur et les appareils informatiques eux mˆemes.

(Dey et Abowd, 2000) ont affin´e ces deux d´efinitions en une autre plus g´en´erale. Ils af-firment qu’un syst`eme est sensible au contexte s’il utilise le contexte pour fournir `a l’utili-sateur des informations et des services pertinents. Les auteurs distinguent trois cat´egories de sensibilit´e au contexte :

1. La pr´esentation des informations et des services ; 2. L’ex´ecution automatique d’un service ;

3. Le stockage d’information selon le contexte.

Les syst`emes sensibles au contexte peuvent ˆetre implementes de diff´erentes mani`eres. Dans le but de simplifier leurs d´eveloppements et leurs d´eploiements et afin d’am´eliorer l’exten-sibilit´e et la r´eutilisabilit´e des syst`emes, une s´eparation entre la d´etection et l’utilisation du contexte est n´ecessaire. L’architecture en couche pr´esent´ee dans la Figure 1.7, augmente les couches de d´etection et d’utilisation, en ajoutant les fonctionnalit´es d’interpr´etation et de raisonnement.

Figure1.7 – Architecture g´en´erale d’un syst`eme sensible au contexte

Cette architecture conceptuelle a ´et´e propos´ee par (Dey et al., 2001) et constitue un mod`ele suivi par la majorit´e des travaux dans le domaine de la sensibilit´e au contexte. Elle se compose principalement de cinq couches :

- La capture du contexte : Elle se compose d’un ensemble de diff´erents capteurs. Il est `a noter que le capteur ne repr´esente pas uniquement le mat´eriel de d´etection, mais aussi toutes les sources de donn´ees qui peuvent fournir des informations sur le contexte. - L’extraction des donn´ees : La seconde couche est responsable de l’extraction des

premi`eres donn´ees du contexte. Cette ´etape n´ecessite l’utilisation des pilotes et des API (Application Programming Interface) appropries accompagnant les capteurs. - Le pr´etraitement du contexte : Elle permet d’interpr´eter les donn´ees acquises depuis la

couche pr´ec´edente et de faciliter leurs utilisation, en les transformant en d’autres formats plus faciles `a exploiter.

- Le stockage du contexte : Cette couche permet d’organiser les donn´ees recueillies et de les stocker pour d’autres utilisations ult´erieures. Pour pouvoir stocker ces in-formations, un mod`ele permettant de d´ecrire le contexte est n´ecessaire. La no-tion de mod´elisano-tion du contexte ainsi qu’un panel des principaux formalismes de mod´elisation du contexte ont ´et´e pr´esent´es dans le chapitre 1, §1.3.2.

- L’application : Elle repr´esente le syst`eme final, qui exploite les donn´ees issues de la couche inf´erieure pour fournir une application sensible au contexte. C’est au ni-veau de cette couche que s’effectue l’impl´ementation de l’ensemble de r´eactions aux diff´erents ´ev`enements qui peuvent se produire.

Face `a la diversit´e des sources d’informations de plus en plus nombreuses et complexes et afin d’introduire des descriptions explicites des contenus, les technologies s´emantiques utilisent plusieurs mani`eres de repr´esentations des connaissances. Parmi les plus r´ecentes, figure l’ontologie. Le section suivante sera consacr´ee `a l’introduction de cette notion.

1.4 Les ontologies dans la conception des applications