• Aucun résultat trouvé

Une nouvelle approche de modélisation et d'adaptation contextuelle des systèmes pervasifs : la plateforme COALA (COntext Adaptation Platform)

N/A
N/A
Protected

Academic year: 2021

Partager "Une nouvelle approche de modélisation et d'adaptation contextuelle des systèmes pervasifs : la plateforme COALA (COntext Adaptation Platform)"

Copied!
169
0
0

Texte intégral

(1)

HAL Id: tel-01950400

https://tel.archives-ouvertes.fr/tel-01950400

Submitted on 10 Dec 2018

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

contextuelle des systèmes pervasifs : la plateforme

COALA (COntext Adaptation Platform)

Naima Nebhani

To cite this version:

Naima Nebhani. Une nouvelle approche de modélisation et d’adaptation contextuelle des systèmes pervasifs : la plateforme COALA (COntext Adaptation Platform). Informatique ubiquitaire. Uni-versité de Franche-Comté; UniUni-versité de Sfax (Tunisie), 2016. Français. �NNT : 2016BESA2010�. �tel-01950400�

(2)

Thèse de Doctorat

é c o l e d o c t o r a l e s c i e n c e s p o u r l ’ i n g é n i e u r e t m i c r o t e c h n i q u e s

U N I V E R S I T É D E F R A N C H E - C O M T É

n

Une nouvelle approche de

mod ´elisation et d’adaptation

contextuelle des syst `emes pervasifs

La plateforme COALA (COntext Adaptation

Platform)

Th `ese en co-tutelle (Tunisie-France)

(3)
(4)

Thèse de Doctorat

é c o l e d o c t o r a l e s c i e n c e s p o u r l ’ i n g é n i e u r e t m i c r o t e c h n i q u e s

U N I V E R S I T É D E F R A N C H E - C O M T É

TH `

ESE pr ´esent ´ee par

N

AIMA

NEBHANI

pour obtenir le

Grade de Docteur de

l’Universit ´e de Franche-Comt ´e

Sp ´ecialit ´e :Informatique

Une nouvelle approche de mod ´elisation et

d’adaptation contextuelle des syst `emes pervasifs

La plateforme COALA (COntext Adaptation Platform)

Th `ese en co-tutelle (Tunisie-France)

Unit ´e de Recherche :

Institut FEMTO-ST/DISC UMR CNRS 6174

Soutenue le 18 Novembre 2016 devant le Jury :

PHILIPPEROOSE Rapporteur MCF HdR Univ. Pau et Pays de l’Adour -France

SA¨ID TAZI Rapporteur MCF HdR Univ. de Toulouse - France

MOUNIRZRIGUI Rapporteur Prof. Univ. de Mounastir - Tunisie

CHRISTOPHENICOLLE Examinateur Prof. Univ. Bourgogne - France

J-CHRISTOPHELAPAYRE Directeur de th `ese Prof. Univ. Franche-Comt ´e - France

M-SALIMBOUHLEL Directeur de th `ese Prof. `a l’Univ. Sfax - Tunisie

(5)
(6)

Introduction 13

Introduction g ´en ´erale . . . 13

Plan du m ´emoire . . . 16

Quelques indications pour la lecture de ce rapport . . . 17

I Etat de l’art´ 19 1 Le contexte de l’informatique sensible au contexte 23 Introduction . . . 23

1.1 Le contexte en informatique ubiquitaire . . . 23

1.1.1 La sensibilit ´e au contexte . . . 24

1.1.2 L’acquisition du contexte . . . 25

1.1.3 L’interpr ´etation du contexte . . . 25

1.1.4 L’adaptation aux situation du contexte . . . 26

1.2 La mod ´elisation du contexte dans les applications interactives . . . 27

1.2.1 Les Mod `eles architecturales classiques . . . 27

1.2.2 Les approches de mod ´elisation orient ´ees paires/triplets . . . 32

1.2.3 Les approches de mod ´elisation orient ´ees objets . . . 33

1.2.4 Les approches de mod ´elisation orient ´ees mod `eles formels . . . 33

1.2.5 Les approches de la sensibilisation au contexte orient ´ees profils . . 40

1.2.6 Les approches bas ´ees sur la logique . . . 42

1.2.7 Les approches de sensibilit ´e contextuelle `a base de collaboration entre composants . . . 43

1.2.8 La sensibilit ´e au contexte `a base des politiques s ´emantiques : on-tologies . . . 46

1.3 La m ´ethodologie d’adaptation au contexte . . . 52

1.4 les formes d’adaptation au contexte . . . 55

1.4.1 Les types d’adaptation . . . 55

(7)

Synth `ese . . . 57

2 Classification des diff ´erentes approches de la sensibilisation au contexte 59 Introduction . . . 59

2.1 Notre ´etude comparative . . . 59

2.1.1 Suivant les crit `eres de comparaison . . . 59

2.1.2 Tableau R ´ecapitulatif . . . 65

2.2 La sensibilit ´e au contexte `a base de quatre mod `eles ontologiques PIVOn . 66 2.3 La classification de diff ´erentes approches existantes de la sensibilit ´e au contexte . . . 76

II Contribution 81 3 Notre ontologie de trac¸abilit ´e pour la gestion et l’adaptation de contexte 85 Introduction . . . 85

3.1 Les ontologies pour la mod ´elisation de contexte (utilis ´ees pour la gestion contextuelle) . . . 86

3.1.1 La gestion des connaissances pour la sensibilit ´e au contexte . . . . 86

3.1.2 Les ontologies pour la mod ´elisation de la sensibilit ´e contextuelle . . 87

3.1.3 La mod ´elisation de la sensibilit ´e contextuelle `a base d’ontologies . . 88

3.2 Un mod `ele pour la sensibilit ´e contextuelle `a base d’ontologie de trac¸abilit ´e . 92 3.2.1 Le processus de d ´eveloppement . . . 92

3.2.2 La d ´efinition des ontologies g ´en ´erales pour mod ´eliser la sensibilit ´e contextuelle . . . 96

3.2.3 G ´en ´eration et int ´egration d’une ontologie de trac¸abilit ´e contextuelle pour l’adaptation des syst `emes pervasifs . . . 105

3.2.4 Les composants de diff ´erentes ontologies de notre domaine . . . . 112

3.2.5 Formalisme `a base de Logiques de Description pour la repr ´esentation des connaissances . . . 113

3.3 D ´eveloppement et impl ´ementation de notre mod `ele `a base de l’ontologie de trac¸abilit ´e . . . 117

4 Plateforme COALA : d ´efinitions et exp ´erimentations 123 Introduction . . . 123

4.1 COALA : une nouvelle plateforme d’adaptation de la sensibilit ´e contextuelle 123 4.1.1 Pr ´esentation de notre nouvelle plateforme d’adaptation au contexte 124 4.1.2 Strat ´egies d’adaptation de services au contexte dans COALA . . . . 125

(8)

4.2 Fonctionnalit ´es de COALA . . . 131

4.3 D ´eveloppement et utilisation de COALA . . . 133

4.3.1 Choix des outils d’impl ´ementation . . . 133

4.3.2 Impl ´ementation des ontologies dans COALA . . . 135

4.3.3 Impl ´ementation de la carte de visite contextuelle : CVCO . . . 137

4.4 Exemple d’un Sc ´enario d’utilisation de contexte pour l’adaptation . . . 139

4.4.1 Introduction au sc ´enario exp ´erimental de notre prototype . . . 139

4.4.2 caract ´erisation et mod ´elisation des situations contextuelles cou-rantes . . . 141

4.4.3 Adaptation de formes d’affichages par la g ´en ´eration des interfaces des services adapt ´es dans COALA . . . 145

Conclusion et perspectives 149 Conclusion . . . 149

Perspectives . . . 150

Ma bibliographie personnelle 153

(9)
(10)

Je voudrais tout d’abord remercier mes encadrants, Monsieur BOUHLEL Mohamed Sa-lim, Professeur `a l ’Institut Sup ´erieur de Biologie de Sfax (Universit ´e de Sfax), pour m’avoir propos ´e ce sujet de th `ese original et m’avoir permis de l’approfondir au cours de ces ann ´ees. Monsieur LAPAYRE jean-Christophe, Professeur `a l’Universit ´e de Bourgogne Franche-Comt ´e, qui a encadr ´e ce pr ´esent travail en co-tutelle, pour sa disponibilit ´e, ses qualit ´es humaines, son aide, son soutien moral, sa patience, ses conseils et sa bonne connaissance qui a rendu cette th `ese possible. Je d ´esire lui exprimer ma profonde grati-tude pour m’avoir accueillie dans son ´equipe.

Je tiens `a remercier les Professeurs, Philippe ROOSE,Mounir ZRIGUI et Said TAZI qui m’ont fait l’honneur d’ ˆetre rapporteurs de ma th `ese. Pour leur lecture attentive et critique de ce manuscrit et l’int ´er ˆet port ´e `a ces travaux.

Un immense merci ´egalement `a Monsieur Christophe NICOLLE, professeur `a la Facult ´e des Sciences Mirande (Universit ´e de Bourgogne), pour m’avoir fait l’honneur d’accepter de pr ´esider le jury de ma th `ese et de juger mon travail.

`

A tous les membres du laboratoire Femto-st d ´epartement DISC, ceux et celles qui m’ont accompagn ´e au cours de l’ ´elaboration de cette th `ese, qu’ils trouvent ici mon t ´emoignage de reconnaissance.

Merci `a tous mes amis, mes proches pour leur aide en diverses occasions et de leur encouragement continu.

Finalement, je tiens `a remercier toute ma famille et particuli `erementmon sublime PaPa

et mon adorable MaMan qui m’ont toujours encourag ´e au cours de mes ´etudes pour

aller plus loin pour demander la noble science. je vous d ´edie ce travail en t ´emoignage de mon profond amour. Puisse Dieu, le tout puissant, vous pr ´eserver et vous accorder sant ´e, longue vie et bonheur. Ma th `ese n’ ´etait jamais facile mais la voil `a possible.

(11)
(12)
(13)
(14)

I

NTRODUCTION GEN

´

ERALE

´

Domaine tr `es r ´ecent, l’informatique mobile est le fruit de l’int ´egration de la technologie cel-lulaire et du web pour donner la possibilit ´e aux diff ´erents utilisateurs d’acc ´eder facilement `a l’information de n’importe quel endroit, `a n’importe quel moment et en utilisant n’importe quel terminal. L’accroissement est en particulier d ˆu `a la r ´eduction des co ˆuts, qu’ils soient mat ´eriels ou de services r ´eseaux. C’est en quelque sorte la deuxi `eme ´etape vers l’infor-matique pervasivele n’importe o `u, le n’importe quand et le n’importe comment[Nar00],

apr `es l’apparition des syst `emes distribu ´es qui constituent la rencontre entre les ordina-teurs personnels et les r ´eseaux locaux favorisant le partage des ressources `a travers un r ´eseau et une infrastructure de communication (cf figure 1).

FIGURE1 – Aperc¸u de l’ ´evolution vers l’informatique pervasive

De nos jours, l’ ´evolution technologique des moyens de communication informatique ne cesse de croˆıtre en donnant naissance `a des nouveaux syst `emes d’information dits per-vasifs ou ubiquitaires [Birn97]. Dans une tendance mondiale o `u l’acc `es au savoir et `a l’information est primordial, le passage massif `a l’exploitation des derni `eres technolo-gies de communication ainsi que leur int ´egration ont contribu ´e `a l’ ´emergence de ces technologies dans diff ´erents domaines. Dans les ann ´ees 90, Mark Weiser [Weise93] est

(15)

le premier `a introduire la notion de l’informatique pervasive en d ´ecrivant l’ordinateur du 21`emesi `ecle comme ´etant un terminal compagnon actif plus intelligent qu’un assistant de

bureau comme un ordinateur standard.

Cette vision d ´evoile une nouvelle technologie consid ´er ´ee comme invisible `a l’utilisateur qui combine les aspects de l’informatique distribu ´ee et de l’informatique mobile. Elle adopte une nouvelle vision des ´equipements, des infrastructures et des applications. Les travaux [Agost00] ont donn ´e une d ´efinition universelle des syst `emes pervasifs, tout en reprenant les id ´ees initi ´ees par Weiser : l’informatique pervasive rend l’information disponible partout et `a tout moment et vise `a assister implicitement et discr `etement un utilisateur dans les t ˆaches qu’il accomplit au quotidien.

En effet, l’av `enement des r ´eseaux de communications sans fil d’une part et des terminaux informatiques mobiles, d’autre part, tels que les assistants personnels (PDA), les smart-phones (et tablettes), . . . a permis la mobilit ´e et la coop ´eration. Ainsi, les ordinateurs de poche ne sont plus isol ´es de la technologie du Web, ce que favorise les interactions avec de multiples services distants. L’avantage r ´eside dans le fait que la r ´ealisation de nom-breuses t ˆaches de la vie quotidienne s’effectue de mani `ere transparente `a l’utilisateur, sans son intervention explicite.

L’int ´egration des terminaux mobiles dans les nouveaux syst `emes d’interaction pervasifs exige la prise en consid ´eration de toutes les caract ´eristiques logicielles et mat ´erielles. L’un des aspects contribuant `a la r ´ealisation de la notion de l’informatique pervasive est de permettre aux syst `emes informatiques de s’adapter aux divers changements du contexte des utilisateurs et des applications.

CONTEXTE ET SENSIBILITE AU CONTEXTE DANS LES SYST´ EMES D` ’INFORMATIONS PERVASIFS

Dans le domaine de l’informatique, la notion du contexte d ´esigne d’une mani `ere g ´en ´erale l’ensemble des informations qui entourent l’activit ´e de l’utilisateur, tout en tenant compte de leur contexte. Avec l’av `enement des syst `emes d’informations pervasifs, l’application doit assurer une adaptation au type d’utilisateur, au type de son terminal, `a sa localisation g ´eographique, `a ses t ˆaches. . . Ainsi de nouveaux domaines sont apparus et connus sous le nom de sensibilit ´e au contexte ou de context-awareness.

Une application dite sensible au contexte doit percevoir la situation de l’utilisateur dans son environnement, tout en lui permettant d’interagir de mani `ere transparente en fonction de son contexte et de l’assister dans ses t ˆaches de tous les jours. Ainsi cette application adapte son comportement aux diff ´erentes situations contextuelles instantan ´ees et cou-rantes.

L’utilisation de la sensibilit ´e au contexte pour am ´eliorer les interactions entre homme et machine du point de vue de l’ergonomie des interfaces et de la connaissance d’infor-mations sur l’utilisateur s’est consid ´erablement d ´evelopp ´ee avec l’arriv ´ee du Web. Les interfaces graphiques suivent le m ˆeme chemin et se reconfigurent compte tenu des fonc-tions les plus utilis ´ees par l’utilisateur. Un module de sensibilit ´e au contexte dans un syst `eme pervasif regroupe des informations et des ´ev ´enements qui ont lieu dans l’envi-ronnement des entit ´es du syst `eme informatique. Ces entit ´es sont les usagers, le mat ´eriel, les logiciels, . . .

(16)

et pour r ´eagir proactivement aux demandes instantan ´ees des utilisateurs. On dit d’un syst `eme qu’il est sensible au contexte s’il peut r ´ecup ´erer, interpr ´eter et utiliser des infor-mations issues du contexte et adapter sa r ´eponse en fonction du contexte d’utilisation. L’ ´etude de la litt ´erature montre que la sensibilit ´e au contexte est devenue un ´el ´ement central pour la conception et la mise en place de services adaptatifs.

ADAPTATION CONTEXTUELLE AUX SERVICES DE SYSTEME PERVASIF`

Devant la diversit ´e de contexte d’utilisation des applications interactives pervasives, l’adaptation automatique de services `a l’utilisateur est vue comme une n ´ecessit ´e. Elle n’est pas consid ´er ´ee non plus comme une simple personnalisation mais plut ˆot c’est une exigence de satisfaction. L’adaptation automatique de services est caract ´eris ´ee comme ´etant une interaction implicite avec le service afin de changer de mani `ere dynamique son comportement `a l’ ´egard de l’utilisateur. Les donn ´ees sur l’utilisateur et son environ-nement constituent les sources principales de ce changement. La prise en compte de l’adaptation des services permet d’assurer `a la fois la continuit ´e des services `a l’utilisa-teur et d’am ´eliorer l’interaction de l’utilisal’utilisa-teur avec son environnement. Ainsi, l’adaptation des services `a l’utilisateur s’av `ere ˆetre un facteur d ´eterminant pour assurer la continuit ´e de ces services et veiller `a ce que le service ait bien effectu ´e la t ˆache demand ´ee. Et afin d’am ´eliorer les interactions de l’utilisateur avec son environnement, les syst `emes per-vasifs, via les diff ´erents outils d ´edi ´es `a la sensibilit ´e au contexte d’utilisation, permettent d’assurer une interaction plus souple de l’utilisateur avec son environnement. L’adaptation des services `a l’utilisateur joue un r ˆole important dans l’am ´elioration de cette interaction en facilitant et en aidant l’individu dans sa relation avec son environnement.

C

ONTEXTE DE LA THESE

`

Dans ce paysage, l’adaptation au sein de tels syst `emes devient un point central. Mettre en œuvre une telle adaptation est loin d’ ˆetre une t ˆache facile. De nombreuses questions de recherche doivent ˆetre r ´esolues avant de permettre une adaptation automatique En s’appuyant sur deux aspects de base des syst `emes pervasifs (qui sont ”la sensibilit ´e” et ”l’adaptation contextuelle”) la grande majorit ´e des contribution existantes dans ce do-maine s’int ´eresse `a la mani `ere de capturer et de collecter des informations de contexte, d’interpr ´eter et de fournir ces informations `a l’application. De plus, la plupart des travaux existants se focalisent sur la cr ´eation des prototypes d’applications sensibles au contexte en incorporant le code d’adaptation dans le code m ´etier de l’application, et donc sans tenir compte des particularit ´es des syst `emes pervasifs comme la mobilit ´e et les change-ments dynamiques de contenus du contexte d’utilisation.

Dans notre travail nous nous int ´eressons particuli `erement `a la mod ´elisation et `a la gestion de la sensibilit ´e au contexte pour l’adaptation des services propos ´es par des syst `emes pervasifs. L’ ´etude de ces syst `emes int ´egrant ces fonctionnalit ´es est une th ´ematique de recherche multidisciplinaire. Le domaine d’application retenu dans cette th `ese se situe `a l’intersection de cette th ´ematique et des ontologies pour la mod ´elisation de la sen-sibilit ´e de contexte. Cette th `ese s’int ´eresse `a la probl ´ematique de l’adaptation de ser-vices dans les applications pervasives dans le domaine de la sensibles au contexte. L’ ´etude de la litt ´erature montre que la sensibilit ´e au contexte est devenue un ´el ´ement

(17)

central pour la conception et la mise en place des syst `emes pervasifs dot ´es de services adaptatifs. Cependant, sa prise en compte se limite g ´en ´eralement `a des descriptions ´el ´ementaires de situations ou `a des mod `eles pr ´ed ´efinis. Afin de permettre une adapta-tion aux changements d’habitudes des utilisateurs, `a la dynamique de l’environnement et `a l’h ´et ´erog ´en ´eit ´e des sources de perception, nous proposons des m ´ecanismes de trac¸abilit ´e de contexte et de situations d ´eclenchant l’adaptation qui permettent de fournir des ontologies d’informations de contexte. Ces m ´ecanismes s’appuient sur des tech-niques de mapping et de cartographies pour la g ´en ´eration des ontologies qui seront int ´egr ´ees au sein de notre architecture d’adaptation de services au contexte : cette archi-tecture se nomme COALA, pour COntext Adaptation Platform.

O

BJECTIF DE CES TRAVAUX

Le cadre g ´en ´eral de nos recherches est donc le domaine de la sensibilit ´e au contexte des syst `emes pervasifs. Notre int ´er ˆet porte en g ´en ´eral sur la proposition de la nouvelle plate-forme COALA pour l’adaptation des syst `emes pervasifs sensibles au contexte. Ceci com-prend la mod ´elisation et la gestion de la sensibilit ´e au contexte `a travers la cat ´egorisation et la repr ´esentation formelles des information de contexte. Ainsi cela comprend l’adapta-tion dynamique des applical’adapta-tions interactives pervasives aux changements dynamiques de l’environnement et aux contextes des divers utilisateurs.

Nous nous appuyons sur des ontologies g ´en ´erales pour la mod ´elisation des ´el ´ements de contexte, ainsi que sur des m ´ecanismes de r ´ecup ´eration des informations des si-tuations contextuelles courantes sous formes des cartes de visite contextuelle. Cette d ´emarche nous permet de g ´en ´erer des ontologies de trac¸abilit ´e, de traiter la com-plexit ´e de mod ´elisation des informations de contexte ainsi que l’adaptation des ser-vices `a la dynamique de l’environnement (aux changements des serser-vices, d’usages et

`a l’h ´et ´erog ´en ´eit ´e et au volume important des donn ´ees de contexte).

Au final, nous contribuons au d ´eveloppement de notre plateforme informatique permet-tant de mettre en œuvre l’architecture finale de la solution propos ´ee et nous la validons sur des sc ´enarios d’usage dans le domaine de m ´edecine.

P

LAN DU MEMOIRE

´

Nous avons organis ´e ce document en deux parties : un ´etat de l’art permettant de mettre en ´evidence les diff ´erentes probl ´ematiques de notre th `ese (sur deux chapitres), et la contribution de la th `ese, avec validation de notre proposition sur les sc ´enarios d’usage retenus (sur deux chapitres ´egalement).

Dans la premi `ere partie, le premier chapitre fait l’objet d’une revue de la litt ´erature qui permet de d ´efinir pr ´ecis ´ement ce que nous consid ´erons dans ce document lorsque nous parlons de contexte et d’informatique sensible au contexte. Il constitue le cadre g ´en ´eral de notre recherche, ses diff ´erents aspects et approches. Ce chapitre pr ´esente et dis-cute diverses questions relatives `a la mod ´elisation et `a l’adaptation au contexte dans les environnements utilisateurs.

(18)

Nous pr ´esenterons, dans le deuxi `eme chapitre, une classification des diff ´erentes ap-proches qui abordent le domaine de la sensibilit ´e au contexte. Nous exposons ´egalement les cat ´egorisations existantes de contexte disponibles dans la litt ´erature. Nous finissons notre ´etude par un tableau comparatif qui r ´ecapitule les travaux ant ´erieurs les plus impor-tants dans notre domaine d’ ´etude tout en analysant les limitations de ces travaux. Enfin, nous justifions, dans ce chapitre, notre choix du mod `ele PIVon qui aborde la sensibilit ´e au contexte `a base d’ontologies comme une r ´ef ´erence pour notre travail.

Dans la deuxi `eme partie, le chapitre trois expose notre ontologie de trac¸abilit ´e pour la mod ´elisation et l’adaptation de contexte. Nous pr ´esenterons les diff ´erents mod `eles g ´en ´eraux ontologiques de contexte que nous utilisons dans notre approche, puis nous pr ´esentons notre mod `ele de contexte `a base d’ontologie de trac¸abilit ´e. Nous exposons dans ce m ˆeme chapitre les diff ´erentes m ´ethodes et outils suivis dans notre approche. Le chapitre quatre fait l’objet de la pr ´esentation de notre nouvelle plateforme d’adapta-tion COALA, pour COntext Adaptad’adapta-tion Platform, qui int `egre notre mod `ele de contexte `a base d’ontologie de trac¸abilit ´e. Ce m ˆeme chapitre nous permet ´egalement de d ´efinir le cadre exp ´erimental utilis ´e pour la validation de notre proposition. Nous d ´etaillons par-ticuli `erement nos exp ´erimentations `a travers une ´etude de cas dans le domaine de la m ´edecine.

Nous terminons ce document en synth ´etisant les diff ´erentes contributions que nous avons propos ´ees ´etant donn ´es les objectifs que nous nous ´etions fix ´es pour ce travail. Nous finalisons ce chapitre par diff ´erentes perspectives de recherche que soul `eve notre travail et que nous envisageons pour des travaux futurs.

Q

UELQUES INDICATIONS POUR LA LECTURE DE CE RAPPORT

Le plan est organis ´e sur quatre niveaux : Parties, Chapitres, Sections et Sous-Sections. Il est utile de savoir que la Partie II, pr ´esentant les contributions et r ´esultats, est ind ´ependante de la premi `ere Partie.

Les r ´esultats de nos travaux ont pour la plupart ´et ´e publi ´es. La liste des publications personnelles est donn ´ee avant la bibliographie plac ´ee en fin du document.

(19)
(20)

´

(21)
(22)

L’informatique pervasive a ´et ´e introduite initialement avec l’av `enement des technolo-gies mobiles. En effet, l’utilisation de l’informatique `a ses d ´ebut prenait une forme stan-dard : un utilisateur d’une application est associ ´e `a un ordinateur situ ´e dans un bureau. L’informatique pervasive rend l’utilisation de l’informatique possible en tout moment et ind ´ependamment du positionnement de l’utilisateur.

De nos jours, l’interaction avec les applications informatiques exploite de plus en plus les technologies mobiles. L’adoption de ces technologies assure plus de flexibilit ´e et permet de cr ´eer de nouvelles formes d’utilisation dans des environnements diff ´erents : de nou-veaux usages. En effet, les informations caract ´erisant ces environnements sont dites des informations de contexte. En cons ´equence, la conception des applications interactives doit ˆetre sensible `a ces informations de contexte.

L’ ´etude de la sensibilit ´e au contexte nous am `ene `a ´etudier les travaux de recherche r ´ealis ´es pour d ´efinir et mod ´eliser le contexte. En effet, la mod ´elisation permet d’offrir les fondations pour une repr ´esentation expressive du contexte et de simplifier son utili-sation. Les mod `eles de description du contexte varient selon leur expressivit ´e et le type d’informations de contexte qu’ils permettent de d ´ecrire.

La vari ´et ´e au niveau de la mod ´elisation provient de l’utilisation du contexte dans les do-maines vari ´es de l’ing ´enierie comme le traitement du langage, les syst `emes d’aide `a la prise de d ´ecision ou les syst `emes sensibles au contexte. Les actions fournies par ces applications doivent ˆetre dot ´ees de m ´ecanismes qui collectent les informations de contexte, stockent et g `erent ces informations et qui r ´eagissent `a base de ces informa-tions. Ces applications doivent r ´eagir selon les exigences impos ´ees par les informations de contexte. Les applications qui int `egrent ces m ´ecanismes sont les applications sen-sibles au contexte.

Dans cette premi `ere partie de th `ese, nous nous int ´eressons aux travaux sensibles au contexte d ´ej `a effectu ´es dans la litt ´erature. En effet, les applications interactives sen-sibles au contexte sont caract ´eris ´ees par le fait qu’elles s’ex ´ecutent dans un environ-nement h ´et ´erog `ene et dynamique. Cet environenviron-nement est soumis aux caract ´eristiques variables des ressources des dispositifs utilis ´es et `a la mobilit ´e des utilisateurs, ce qui rend n ´ecessaire l’utilisation des applications sensibles au contexte qui d ´etectent les va-riations de l’environnement et adaptent leurs comportements en cons ´equence.

Nous commenc¸ons dans le premier chapitre par une ´etude sur les travaux existants des syst `emes sensibles au contexte. Cette ´etude est r ´ealis ´ee en se r ´ef ´erant `a l’ensemble des mod `eles fournis par chaque approche centr ´ee sur la sensibilisation au contexte. L’ ´etude de ces mod `eles a donn ´e l’objet de plusieurs nouveaux d ´ebats. Tout d’abord, nous avons constat ´e que les travaux ´etudi ´es proposent des mod `eles formels explicites de la sensibilit ´e au contexte de l’environnement de travail. Or, chaque mod `ele de l’envi-ronnement dans lequel se situe l’utilisateur est indispensable pour la conception d’une application sensible au contexte, ce que incite `a travailler de mani `ere tr `es pr ´ecise sur les caract ´eristiques de ces environnements. Dans le premier chapitre, nous abordons la d ´efinition de la sensibilit ´e au contexte tout en mettant en ´evidence l’importance de celle-ci dans le d ´eveloppement des applications interactives dans des environnements mobiles. Nous passons en revue diff ´erents mod `eles dans lesquels le contexte est bien mod ´elis ´e. Puis, nous d ´ecrivons les caract ´eristiques des informations de contexte dans chaque mod `ele etudi ´e et les diff ´erentes m ´ethodes d’acquisition et de traitement de ces informations. Puisque la mod ´elisation de la sensibilit ´e au contexte repr ´esente l’une des premi `eres phases de prise en compte du contexte dans le processus de cr ´eation

(23)

d’appli-cations sensibles au contexte, nous dressons un ´etat de l’art des travaux de mod ´elisation du contexte, puis nous analysons ces diff ´erentes approches pour choisir l’approche la mieux adapt ´ee aux diff ´erents environnements des utilisateurs.

Puis, nous avons d ´eduit de cette ´etude que les approches de mod ´elisation de la sen-sibilit ´e au contexte sont prises en compte en m ˆeme temps l’adaptation des situations contextuelles. Or, une adaptation au contexte est un ensemble de r `egles qui prennent la forme de condition-action : les conditions portent sur les variables de contexte et les actions expriment les changements `a apporter `a l’application. Nous d ´efinissons l’associa-tion d’une percepl’associa-tion d’une informal’associa-tion de contexte `a une acl’associa-tion d’adaptal’associa-tion. Pour cela, nous avons d ´ecrit la m ´ethodologie d’adaptation au contexte dans la deuxi `eme section de ce chapitre.

Dans la deuxi `eme chapitre, nous avons r ´ealis ´e une ´etude comparative entre les diff ´erentes approches (que ce soit au niveau de la mod ´elisation de la sensibilit ´e du contexte ou au niveau de l’adaptation), afin de mettre en valeur les approches qui peuvent r ´epondre au mieux `a nos besoins et qui seront utilis ´ees dans notre contribution.

(24)

L

E CONTEXTE DE L

INFORMATIQUE

SENSIBLE AU CONTEXTE

I

NTRODUCTION

L’informatique contextuelle est l’informatique qui tient compte de la position et/ou du com-portement de l’utilisateur en vue de lui fournir un service. Ce domaine est tr `es promet-teur. En effet, apr `es les ordinateurs haute performance (mainframes) et les ordinateurs personnels, ce domaine est un troisi `eme paradigme de l’informatique ubiquitaire. Notre sujet de th `ese se situe au croisement de plusieurs domaines de recherche tels que la mod ´elisation contextuelle, l’informatique ambiante, et la gestion de connaissances.

1.1/

L

E CONTEXTE EN INFORMATIQUE UBIQUITAIRE

L’informatique contextuelle est apparue dans le milieu des ann ´ees quatre-vingt dix ins-pir ´ee par les travaux de Schilit et Theimer [Schi94]. `A cette ´epoque, la d ´efinition de contexte dans le domaine de l’informatique est plus orient ´ee vers l’ ´enum ´eration des ´el ´ements sp ´ecifiques, qui repr ´esentent le contexte associ ´e `a une application (comme la localisation par exemple), que vers la g ´en ´eralisation de l’information de contexte :

• En effet, pour le premier type de d ´efinition de contexte, les chercheurs ont es-say ´e de pr ´esenter le contexte `a travers l’ensemble des ´el ´ements qui peuvent ˆetre consid ´er ´es comme une information de contexte. Ces ´el ´ements constituent des in-formations non fonctionnelles de l’application qui peuvent apporter un impact sur ces derni `eres. Parmi ces travaux, la d ´efinition donn ´ee par de Schilit [Schi94], qui consid `ere que le contexte, est la localisation de l’utilisateur, les identit ´es et les ´etats des personnes et des objets qui l’entourent. La m ˆeme d ´efinition a ´et ´e reprise par Brown et al. [Bro97] qui d ´efinissent le contexte en tant que l’identit ´e de l’utilisa-teur, des personnes et des objets qui l’entourent, sa localisation g ´eographique, son orientation, la saison et la temp ´erature o `u il ´evolue. Rayn et al. ajoutent ´egalement `a cette ´enum ´eration des informations sur l’environnement telles que la temp ´erature, d’o `u ils pr ´esentent le contexte par la localisation, l’identit ´e et le temps de l’utilisateur et surtout par l’environnement physique qu’il l’entoure. • Avec l’ ´evolution de nouvelles technologies ubiquitaires et de nouveaux usages,

une nouvelle vision est en train de naˆıtre. En effet, un aspect conceptuelle qui se focalise sur la structure des informations de contexte `a travers une

(25)

abstrac-tion et la g ´en ´eralisaabstrac-tion de l’informaabstrac-tion de contexte a vu le jour. Cette ´evoluabstrac-tion, au niveau de la d ´efinition de contexte, permet de le centrer sur les utilisateurs et le monde r ´eel qui les entoure. Reposant sur ces nouveaux ´el ´ements, les cher-cheurs tendent de plus en plus de donner une d ´efinition g ´en ´erique `a l’infor-mation de contexte en montrant son utilit ´e et en la regroupant selon plusieurs cat ´egories. Parmi ces travaux, nous pouvons pr ´esenter celui d’Amara-Hachimi et al [Amar06] qui consid `erent que le contexte regroupe toutes les informations sur l’environnement courant d’ex ´ecution. Ces informations sont distribu ´ees selon trois niveaux de contexte : le contexte physique, le contexte social et le contexte utilisateur. ´Egalement, les travaux de Br ´ezillon et Pomerol [Most04] d ´efinissent le contexte comme ´etant toutes les connaissances qui participent `a la r ´esolution d’un probl `eme.

Chaari et al.[Cha07] d ´efinissent, quant `a eux, le contexte comme l’ensemble des param `etres externes `a l’application pouvant influer sur le comportement d’une ap-plication en d ´efinissant de nouvelles vues sur ses donn ´ees et ses services. A. Dey, dans [Dey01], d ´efinit ´egalement le contexte comme ´etant toutes les informations pouvant ˆetre utilis ´ees pour caract ´eriser la situation d’une entit ´e. Une entit ´e est une personne, un lieu, ou un objet qui peut ˆetre pertinent pour l’interaction entre l’utilisateur et l’application, y compris l’utilisateur et l’application.

Cette derni `ere d ´efinition est consid ´er ´ee comme ´etant la plus g ´en ´erale et la plus uti-lis ´ee. En donnant ces d ´efinitions, la majorit ´e des travaux ´etend la d ´efinition de A. Dey qui consid `ere d’une fac¸on g ´en ´erale le contexte comme toute information qui peut ˆetre uti-lis ´ee pour caract ´eriser la situation d’une entit ´e pouvant ˆetre jug ´ee significatif `a l’interaction entre l’utilisateur et l’application, incluant `a la fois l’utilisateur et l’application.

1.1.1/ LA SENSIBILITE AU CONTEXTE´

Avec l’av `enement des environnements mobiles, la sensibilit ´e au contexte est un nouveau besoin des applications interactives. En effet, la sensibilit ´e au contexte est la r ´eaction du syst `eme face `a un ´ev `enement survenu. Cette r ´eaction se fait en r ´ealisant une compati-bilit ´e entre le sens de l’action et le sens particulier apport ´e par le contexte. Le sens de l’action peut ˆetre d ´efini par l’objet de l’action, son objectif et surtout les moyens dispo-nibles pour invoquer cette action. La compatibilit ´e est faite en contraignant le processus de construction et d’ex ´ecution de ces actions.

Pour les d ´efinitions de la sensibilit ´e au contexte, [Ryan98] consid `erent que les applica-tions sensibles au contexte sont des applicaapplica-tions ayant des m ´ecanismes pour changer dynamiquement ou pour adapter leur comportement en se basant sur le contexte de l’application ou de l’utilisateur.

De m ˆeme, G. Abowd [Abo99] consid `erent qu’un syst `eme est sensible au contexte s’il utilise le contexte pour fournir une information pertinente `a l’utilisateur, `a travers d’une part, la collection et la gestion des informations de contexte et, d’autre part, la gestion et le contr ˆole des actions du syst `eme en fonction de ces informations de contexte. Pour sa part, M. Miraoui [Mira08] consid `ere qu’une application est dite sensible au contexte si elle peut changer automatiquement ses formes de services ou d ´eclencher un service comme une r ´eponse au changement de la valeur d’une information ou d’un ensemble d’informations qui caract ´erisent le service.

(26)

une d ´efinition g ´en ´erale du contexte, comme suit :

”le contexte est construit `a partir de tous les ´el ´ements d’information qui peuvent ˆetre utilis ´es pour caract ´eriser la situation d’une entit ´e. Une entit ´e correspond ici `a toute personne, tout endroit, ou tout objet (en incluant les utilisateurs et les ap-plications) consid ´er ´e(e) comme pertinent(e) pour l’interaction entre l’utilisateur et l’application”.

D ´efinition

Dit autrement, un syst `eme est sensible au contexte s’il utilise le contexte pour offrir des informations ou des services pertinents pour l’utilisateur.

1.1.2/ L’ACQUISITION DU CONTEXTE

Au cours de ces derni `eres ann ´ees, de nombreux travaux se sont int ´eress ´es `a la conception d’interfaces interactives intelligentes qui peuvent s’adapter dynamiquement au contexte d’interaction, afin de les rendre plus personnalis ´ees. Les ´el ´ements de contexte doivent inclure les informations relatives `a l’environnement de l’utilisation (par exemple, pour l’utilisateur, les informations li ´ees aux pr ´ef ´erences, historique des naviga-tions, . . . ), ainsi que toutes les autres information pertinentes pouvant ˆetre utilis ´ees pour caract ´eriser les conditions d’interaction.

De ce fait, L’acquisition, la mod ´elisation et le traitement de ces contextes d’interaction jouent un r ˆole fondamental dans le d ´eveloppement de telles applications interactives et intelligentes. En effet, l’acte d’acquisition du contexte repr ´esente le processus de col-lecte des donn ´ees `a partir de l’environnement du syst `eme. Bien que la colcol-lecte des in-formations de contexte d ´epende de la source du contexte et du type des inin-formations collect ´ees (par exemple, les informations du profil d’un utilisateur sont des informations explicitement fournies par ce dernier), la gestion de l’acquisition du contexte ne peut pas ˆetre mis en œuvre directement dans une application. Le d ´eveloppeur peut alors utiliser, pour r ´ecup ´erer le profil porteur de l’information, les services d’un intergiciel pour la sen-sibilit ´e au contexte. Cet intergiciel se charge de collecter le contexte et de le fournir `a l’application.

Le plus souvent, l’interaction entre l’intergiciel et l’application est faite en mode requ ˆete pour lequel les donn ´ees collect ´ees sont g ´en ´eralement sauvegard ´ees dans une base de contexte pour ˆetre utilis ´ees ult ´erieurement par le syst `eme.

1.1.3/ L’INTERPRETATION DU CONTEXTE´

La couche d’interpr ´etation du contexte repr ´esente le m ´ecanisme qui d ´eduit un contexte de haut niveau en utilisant d’autres informations de contexte. En premier lieu, cette couche a pour but l’interpr ´etation, elle sert ensuite `a l’analyse et `a la transformation des donn ´ees brutes fournies par une couche de d ´eduction de contexte.

Les informations utilis ´ees pour d ´eduire un contexte de haut niveau peuvent ˆetre des informations interpr ´et ´ees, des informations captur ´ees ou des informations de profil. La

(27)

fr ´equence de mise `a jour des informations interpr ´et ´ees d ´epend de la fr ´equence de mise `a jour des informations utilis ´ees lors de l’interpr ´etation. `A chaque fois qu’une nouvelle donn ´ee est collect ´ee, le m ´ecanisme d’interpr ´etation doit ˆetre relanc ´e pour d ´eduire les nouvelles valeurs du contexte. Toutes transformations effectu ´ees sur les donn ´ees brutes concernent l’extraction et la quantification de celles-ci.

Cette couche peut aussi avoir le r ˆole de r ´esolution de conflits caus ´es par l’utilisation de plusieurs sources de contexte [Cha07]. Ces sources peuvent donner des r ´esultats contra-dictoires ou peuvent aboutir `a des situations impr ´ecises. Cette couche doit donc avoir des moyens pour r ´esoudre ces conflits. Une phase d’analyse doit donc intervenir juste apr `es cette interpr ´etation du contexte. En effet, l’analyse du contexte est un processus qui contr ˆole continuellement les donn ´ees collect ´ees. Ce contr ˆole permet de filtrer les ob-servations et les interpr ´etations du contexte pour d ´etecter les situations pertinentes dans le but d’adapter le syst `eme en cons ´equence ou de notifier les applications sensibles `a ces situations pertinentes. Gr ˆace aux r ´esultats obtenus par cette analyse, des d ´ecisions sont prises par le processus d’adaptation afin d’adapter le comportement de l’application aux nouvelles situations pertinentes.

1.1.4/ L’ADAPTATION AUX SITUATION DU CONTEXTE

L’adaptation au contexte est l’ensemble des m ´ecanismes de r ´eactions pr ´evues suite aux changements de contexte. En effet, selon P-C. Davi[Davi05] :

”Une adaptation est une modification d’un syst `eme, en r ´eponse `a un change-ment dans son contexte, avec l’objectif que le syst `eme r ´esultant soit mieux `a m ˆeme pour r ´ealiser sa fonction dans le nouveau contexte”

D ´efinition

L’adaptation se base sur un ensemble de r `egles d’adaptation qui sont impl ´ement ´ees selon des langages de programmations en utilisant la logique des pr ´edicats. Certains travaux adoptent la logique floue ou la logique probabiliste afin de rem ´edier au caract `ere incer-tain du contexte. Dans la litt ´erature, plusieurs formes d’adaptation peuvent se pr ´esenter [Raib08] :

• L’adaptation architecturale que d ´esigne les changements faits, en temps r ´eel, dans la structure des composants du syst `eme dans les interactions entre eux en utilisant un mod `ele architectural du syst `eme.

• L’adaptation compositionnelle qui permet de d ´efinir les modifications de la struc-ture et du comportement d’une entit ´e logiciel, en temps r ´eel, en r ´eponse aux chan-gements arriv ´es `a son environnement d’ex ´ecution.

• L’adaptation structurelle qui signifie le changement dynamique des types des com-posants de l’application tels qu’une signature d’une m ´ethode.

• L’adaptation de contenu qui concerne la transformation et la manipulation des contenus en se basant sur les caract ´eristiques de l’application et des terminaux utilis ´es.

(28)

de contexte en cours : cette modification consiste soit `a changer la structure de l’applica-tion, soit son comportement. Mais, tous les changements de contexte n’engendrent pas forc ´ement l’adaptation de l’application. Pour ce faire, nous appelons situation pertinente, toute observation du contexte pertinent ou composition d’observations `a un instant donn ´e qui n ´ecessite l’adaptation de l’application. En r ´esum ´e, toute adaptation est conditionn ´ee par la d ´etection d’une ou de plusieurs situations pertinentes.

1.2/

L

A MODELISATION DU CONTEXTE DANS LES APPLICATIONS

´

INTERACTIVES

Le contexte est consid ´er ´e comme une propri ´et ´e qui caract ´erise une entit ´e de l’applica-tion. Les ´el ´ements sensibles au contexte sont exprim ´es dans un mod `ele de contexte qui int `egre un mod `ele de donn ´ees. Ce mod `ele s’opposent `a d’autres mod `eles qui consid `erent le contexte comme ´etant une donn ´ee additionnelle utilis ´ee par l’application pour r ´ealiser une certaine fonctionnalit ´e. Le but de l’ ´etude des interactions est d’analyser la fac¸on dont les utilisateurs interagissent avec les syst `emes informatiques dans diff ´erentes situations contextuelles, et ainsi de proposer de nouvelles solutions pour am ´eliorer ces interactions. Pour les concepteurs d’applications, il s’agit ´egalement de proposer des outils qui per-mettent une r ´ealisation plus facile d’applications mieux adapt ´ees aux utilisateurs. Les mod `eles d’interaction sont bas ´es uniquement sur la mod ´elisation architecturale, c’est `a dire la mani `ere dont un syst `eme fonctionnera. En effet, La mod ´elisation des interactions constitue un ´el ´ement fondamental n ´ecessaire d’une part `a la compr ´ehension de la nature de la communication Homme-Machine et d’autre part au processus de d ´eveloppement d’interfaces. Elle d ´ecrit le processus g ´en ´eral de l’interaction Homme-Machine, c’est `a dire la structure des ´echanges de l’utilisateur avec la machine.

Dans ce chapitre, nous ´etudierons les diff ´erents param `etres d’interaction entre l’homme et la machine qui nous seront utiles pour la suite.

1.2.1/ LES MODELES ARCHITECTURALES CLASSIQUES`

Les mod `eles d’architecture constituent un des centres d’int ´er ˆet des recherches pour les syst `emes interactifs depuis une quinzaine d’ann ´ees. Ces mod `eles formalisent la fac¸on dont l’utilisateur peut interagir avec le cœur proc ´edural des applications (souvent ap-pel ´e noyau fonctionnel) via une interface d ´edi ´ee aux utilisateurs d’une telle application interactive. La mod ´elisation architecturale correspond respectivement aux deux types de mod `eles d’interaction que distinguent H. Hartson et D.Hix dans [Har89] : les mod `eles de description g ´en ´erale de l’interaction Homme-Machine et les mod `eles d’architecture proprement dits.

Les premiers d ´ecrivent directement l’interaction en termes de manipulation de l’utilisa-teur, de messages du syst `eme et d’enchaˆınements entre les s ´equences d’interaction. Les seconds sont propos ´es dans le but de d ´ecrire, dans un contexte architectural, les relations de l’interface utilisateur avec le reste du syst `eme interactif. Ils d ´ecrivent la struc-ture interne de l’interface utilisateur : identification des composants et de leur organisation (relations, protocole de communication, . . . ).

(29)

pro-pos ´es et ont d ´ej `a donn ´e lieu `a de nombreuses publications et nous centrerons notre travail, dans cette section, sur les rappels des caract ´eristiques essentielles des mod `eles les plus repr ´esentatifs pour nos travaux de recherche tout en donnant une liste assez exhaustive.

FIGURE1.1 – L’architecture du Mod `ele Vue-Contr ˆoleur

LEMODELE` VUE-CONTROLEURˆ : MVC

Dans les ann ´ees 1970, G. Krasner a propos ´e, dans [Kras88], de formaliser en premier les relations entre une l’interface et les donn ´ees. Dans ses travaux de recherche sur le pattern Mod `ele Vue-Contr ˆoleur, T. Reenskaug [Ree79] en 1979 a d ´evelopp ´e le MVC dont le but principal ´etait de proposer une solution g ´en ´erale aux probl `emes d’utilisateurs (profils utilisateurs) en termes de volume et de complexit ´e ind ´ependant du langage utilis ´e. Le mod `ele MVC a ´egalement ´et ´e consid ´er ´e comme un mod `ele destin ´e `a r ´epondre aux besoins des applications (profils applications) interactives en ´etant d ´efini par trois entit ´es de base `a savoir le mod `ele, la vue et le contr ˆoleur (cf figure 1.1).

(30)

Il correspond au noyau fonctionnel d’une application et `a ses donn ´ees m ´etier. Les r ´esultats renvoy ´es par le mod `ele ne s’occupent pas de la pr ´esentation. Par exemple, dans un programme de visualisation des donn ´ees d’un recensement, le mod `ele `a base du MVC contiendra toutes les donn ´ees d ´emographiques.

• La vue :

Elle permet d’afficher les r ´esultats des traitements effectu ´es par le mod `ele et d’interagir avec l’utilisateur. Une vue consiste g ´en ´eralement en une interface gra-phique ou textuelle pour la repr ´esentation des informations `a destination de l’utili-sateur.

• Le contr ˆoleur :

Il permet de g ´erer les interactions avec l’utilisateur, et plus particuli `erement, il est charg ´e de la gestion des actions en entr ´ee effectu ´ees par l’utilisateur. Le contr ˆole agit sur demande de l’utilisateur et modifie le mod `ele.

Pour une mod ´elisation `a base du Mod `ele Vue-Contr ˆoleur, il existe un m ´ecanisme de notification qui permet de transmettre des notifications de modifications `a l’ensemble de ses vues et contr ˆoleurs. Il est possible que le mod `ele se trouve modifi ´e, soit par l’un quelconque des contr ˆoleurs qui lui sont associ ´es, soit par le noyau fonctionnel lui-m ˆeme. Le mod `ele doit alors informer chacune de ses vues que ses donn ´ees ont chang ´e, afin qu’elles puissent le cas ´ech ´eant mettre `a jour leurs informations.

Niveau sémantique

Présentation

Contrôleur

de dialogue

Modèle d’interface de l’application Niveau syntaxique Niveau lexical

FIGURE 1.2 – La mod ´elisation classique d’une interface d’interaction dans

(31)

LE MODELE` CONTROLEUR DEˆ DIALOGUE-INTERFACE

Le mod `ele Seeheim [Pfa12] ´etait principalement destin ´e au traitement lexical des entr ´ees et sorties dans les interfaces textuelles. Bien que tous les mod `eles partent du principe qu’un syst `eme interactif comporte une partie interface et une partie application, le mod `ele ARCH est le premier mod `ele de r ´ef ´erence pour ajouter une nouvelle partie linguistique correspondant `a la pr ´esentation physique des informations.

Pour une mod ´elisation de contenu textuel, ce mod `ele a int ´egr ´e deux couches, une couche s ´emantique (sens d’un discours), et une couche syntaxique et lexical (r `egles d’agence-ment des mots en phrases, des phrases en paragraphes,. . . ). Par analogie, la couche s ´emantique correspond au noyau fonctionnel et la couche syntaxique et lexicale (linguis-tique) est charg ´ee de l’ordonnancement des interactions.

Pour sa mod ´elisation, le mod `ele Seeheim propose de diviser l’interface en trois couches logicielles (cf figure 1.2) `a savoir :

• la couche pr ´esentation :

Elle est charg ´ee de la gestion des entr ´ees et sorties. Elle interpr `ete les actions de l’utilisateur et g ´en `ere les sorties (affichage) au niveau s ´emantique.

• Le contr ˆoleur de dialogue :

Ce contr ˆoleur g `ere les s ´equences de l’interaction en entr ´ee et en sortie. Il main-tient un ´etat lui permettant de g ´erer les modes d’interaction et les enchaˆınements d’ ´ecrans.

• L’interface du noyau fonctionnel :

Elle est la couche interm ´ediaire entre le syst `eme interactif et le noyau fonctionnel. Elle convertit les entr ´ees en appels du noyau fonctionnel et les donn ´ees abstraites de l’application en des objets pr ´esentables `a l’utilisateur.

A A A A A P C P C P P C C C P

(32)

LE MODELE` PRESENTATION´ -ABSTRACTION-CONTROLEˆ : PAC

PAC est un mod `ele `a base d’agents d ´eriv ´e du mod `ele MVC. En effet, dans le mod `ele PAC, Jo ¨elle Coutaz et al. [Cout87] d ´ecomposent l’application interactive en une hi ´erarchie d’agents interactifs communiquant entre eux, de mani `ere `a se d ´el ´eguer les diff ´erentes sous-t ˆaches d’un syst `eme interactif. Ainsi, chaque agent PAC (cf figure 1.3) dans la com-munaut ´e d’agents poss `ede trois facettes principales :

• Le composant Pr ´esentation :

Il est charg ´e principalement de la transmission (visuelle, sonore, . . . ) des infor-mations `a l’utilisateur et de l’acquisition des entr ´ees de l’utilisateur. Il correspond r ´eellement aux vues et aux contr ˆoleurs de l’architecture MVC.

• Le composant Abstraction :

Il contient g ´en ´eralement les donn ´ees et les traitements s ´emantiques.

• Le composant Contr ˆole : Il est le moteur des dialogues qui s’ ´etablissent entre l’agent et l’utilisateur, ´egalement entre l’agent et les autres agents puisqu’il est charg ´e de la communication avec les autres agents PAC au sein de leur hi ´erarchie comme le montre la figure suivante.

L. Nigay et J. Coutaz [Cout95] ont d ´evelopp ´e par l a suite le mod `ele PAC/Amodeus comme ´etant une nouvelle extension du PAC. En effet, PAC/Amodeus fait l’objet d’une combinaison des avantages d’une part du mod `ele Arch qui int `egre des aspects de g ´enie logiciel comme la modifiabilit ´e et la portabilit ´e, et d’autre part, du mod `ele PAC, qui per-met de structurer efficacement le contr ˆoleur de dialogue. Il r ´eutilise alors le mod `ele Arch et d ´ecrit son contr ˆoleur de dialogue avec une hi ´erarchie d’agents PAC. En effet, dans le fonctionnement de PAC/Amodeus (cf figure 1.4), toutes les entr ´ees sont d ´ecrites par des symboles et des grammaires, et des m ´ecanismes de fusion de haut-niveau sont impl ´ement ´es dans le dialogue par des agents PAC.

(33)

Un mod `ele d’architecture permet le d ´eveloppement facile des interfaces d’inter-action tout en s ´eparant les diff ´erents modules (s ´eparation de l ’interface et du noyau fonctionnel d `es la conception) ce qui facilite le processus de conception de telles applications.

Mais ces mod `eles reposent sur un noyau fonctionnel stable et rigoureusement d ´efini au moment de la conception de l’application interactive et donc il ne sera jamais r ´eutilisable par d’autres applications.

Il faut ´egalement remarquer que, le contexte est absent de ces architectures. Or, dans un mod `ele d’architecture d’interaction classique comme par exemple MVC ou PAC, l’utilisateur (son profil, ses pr ´ef ´erences, . . . ) n’est jamais repr ´esent ´e explicitement par ces mod `eles.

Notons ´egalement : ces architectures, longtemps utilis ´ees en informatique conventionnelle, ont trouv ´e leurs limites avec l’informatique ambiante. Elles re-posent pratiquement sur une vision centralis ´ee de l’application et de l’interaction et ne peuvent donc r ´epondre `a aucun des probl `emes de la distribution des ap-plication mobiles. De plus, une interaction mobile intelligente doit tenir compte des pr ´ef ´erences de ses utilisateurs ainsi que de la sensibilit ´e au contexte.

Discussion

1.2.2/ LES APPROCHES DE MODELISATION ORIENT´ EES PAIRES´ /TRIPLETS

Afin de mod ´eliser les valeurs observ ´ees du contexte, les approches paires/tripl ´es uti-lisent des structures de donn ´ees tr `es simples pour les d ´ecrire. En effet, ces approches pr ´esentent le contexte sous forme de paires (attribut, valeur). L’attribut caract ´erise le nom d’une information contextuelle. Le deuxi `eme ´el ´ement de la paire repr ´esente la va-leur courante de cette information. B.schilit et M.Marvin dans [Schi93] proposent d’uti-liser un serveur d’environnement dynamique qui se charge d’observer un ensemble de contextes pour le compte d’une application. Chaque observation du contexte est sauve-gard ´ee dans une variable d’environnement constitu ´ee d’une paire(cl ´e, valeur). S. Schmidt (dans [Schm99]) quant `a lui, mod ´elise le contexte comme un triplet constitu ´e de l’attribut, de la valeur observ ´ee du contexte, et du degr ´e de certitude sur la coh ´erence des donn ´ees observ ´ees. Par exemple, le triplet (Location, ConferenceRoom, 95) d ´efinit la localisation comme le lieu d’une conf ´erence avec un degr ´e de certitude ´egal `a 95.

G ´en ´eralement, l’approche paires/triplets est tr `es fr ´equemment utilis ´ee dans les frame-works des services distribu ´es, comme le framework Capeus [Samu02]. On retrouve ´egalement dans cette cat ´egorie les travaux qui se focalisent globalement sur l’aspect d’adaptation au changement du contexte et qui utilisent ce type de mod ´elisation pour une description de localisation [Pito94].

Une mod ´elisation de type paires/triplets utilise des structures de donn ´ees simples `a g ´erer, ce qui facilite son implantation. Cependant, elle ne permet pas une description compl `ete du contexte, ni l’expression des relations qui peuvent exister entre les informations de contexte.

(34)

Les approches paires/triplets sont caract ´eris ´ees g ´en ´eralement par un faible ni-veau d’expressivit ´e ainsi qu’une simplicit ´e des donn ´ees qu’elles repr ´esentent. En effet, une telle approche utilise des structures de donn ´ees simples `a g ´erer, ce qui facilite son implantation. En revanche, elle ne permet pas une description compl `ete du contexte, ni l’expression des relations qui peuvent exister entre les informations de contexte ou la mani `ere de d ´eduire un contexte de haut niveau. Ce type de mod ´elisation ne prend pas en compte la description des actions d’adaptation ni les conditions qui permettent de les d ´eclencher.

Discussion

1.2.3/ LES APPROCHES DE MODELISATION ORIENT´ EES OBJETS´

La mod ´elisation du contexte par l’approche orient ´ee objet permet d’offrir la puissance de tels m ´ecanismes (encapsulation, r ´eutilisation, h ´eritage,. . . ). Dans [Bouz97] est expos ´e une approche de mod ´elisation orient ´ee objet par sa capacit ´e d’h ´eritage et de r ´eutilisation. Ces derni `eres permettent de d ´efinir un petit nombre de propri ´et ´es, fonctions et r `egles dans le but de simplifier la repr ´esentation des connaissances dans des syst `emes com-plexes.

HYDROGEN, est une architecture orient ´ee objet `a 3 niveaux (cf figure 1.5) pour la mod ´elisation du contexte dans le domaine de l’informatique mobile[Hofe03]. En effet, la mod ´elisation de contexte dans HYDROGEN est fait sous forme des diagrammes de classes UML. Chaque type de contexte est compos ´e de plusieurs objets qui constituent la superclasse de plusieurs ´el ´ements du contexte, notamment : le temps, le r ´eseau, la localisation, l’utilisateur, la machine et d’autres ´el ´ements qui peuvent ˆetre ajout ´es par h ´eritage de la super classe. L’approche objet est utilis ´ee pour pouvoir int ´egrer facilement la repr ´esentation du contexte au sein de l’application qui en d ´epend. Cette repr ´esentation du contexte s’appuie sur les propri ´et ´es d’encapsulation, de r ´eutilisation et d’h ´eritage. D’une fac¸on g ´en ´erale, les termes sont repr ´esent ´es par les classes et les informations par les attributs de la classe. Le d ´etail du contexte est masqu ´e aux autres objets, gr ˆace `a la technique d’encapsulation.

1.2.4/ LES APPROCHES DE MODELISATION ORIENT´ EES MOD´ ELES FORMELS`

Afin d’offrir la possibilit ´e de mod ´eliser le contexte et de permettre sa r ´eutilisation, les ap-proches de mod ´elisation orient ´ees mod `eles utilisent des mod `eles formels bien structur ´es afin de bien sp ´ecifier les param `etres du contexte d’une application interactive. Avec ces mod `eles formels, un lot d’informations doit ˆetre d ´ecrit `a travers l’ensemble des outils uti-lis ´es par chaque mod `ele pour d ´ecrire ces informations de contexte. Dans ce que suit, nous d ´ecrivons un ensemble d’approches appartenant `a cette cat ´egorie de mod ´elisation.

LA MODELISATION´ CONTEXTUML

La premi `ere tentative de mod ´elisation du contexte a ´et ´e r ´ealis ´ee dans [Bau03] en utili-sant le langage UML, afin de mod ´eliser le contexte auquel une application de gestion

(35)

FIGURE1.5 – Le mod `ele UML de contexte dans HYDROGEN

du trafic a ´erien est sensible. Bien que ce mod `ele ait r ´eussi `a cat ´egoriser et `a sp ´ecifier l’application en cours, sa sp ´ecification ne peut ˆetre utilis ´ee dans d’autres applications sans modification. En effet, devant la multitude et la complexit ´e de services sensibles au contexte, les chercheurs focalisent leurs travaux sur la mani `ere dont un langage standard UML peut ˆetre utilis ´e pour fournir des informations structurelles relatives `a la conception des applications sensibles au contexte.

Sheng et Benatallah, dans [Shen05], ont propos ´e un m ´eta-mod `ele bas ´e sur une exten-sion du langage de mod ´elisation unifi ´e UML qui permet de mod ´eliser le contexte auquel des services web sont sensibles. Ce langage est appel ´e ContextUML. En effet, Contex-tUML est un m ´eta-mod `ele qui aborde les services sensibles au contexte (Context-Aware Services : CAS). Ces services sont dot ´es de conscience sur l’environnement courant de l’ex ´ecution de leurs utilisateurs afin de fournir des services sur mesure.

Le d ´eveloppement de CAS permet d’un cot ´e l’approvisionnement de l’information de contexte d ´ecrivant l’utilisateur telles que les pr ´ef ´erences du client (la langue choisie, la r ´esolution d’affichage, . . . ), la situation courante de l’utilisateur (par exemple l’emplace-ment g ´eographique), plus d’autres informations (par exemple les informations d ´ecrivant les Services Web et les informations suppl ´ementaires sp ´ecifiques `a l’application, telles que l’heure, les informations de climat , . . . ). D’un autre cot ´e, il permet de d ´eterminer les m ´ecanismes `a utiliser pour adapter son comportement suivant le contexte sans l’in-tervention explicite de l’utilisateur. En donnant un exemple illustratif, la figure 1.6 montre que le m ´eta-mod `ele ContextUML est compos ´e de plusieurs classes qui permettent de cr ´eer des services sensibles au contexte.

En effet, le contexte est repr ´esent ´e par la classe Context qui permet de d ´ecrire un contexte observable. Or, un contexte observable peut ˆetre un contexte de bas niveau repr ´esent ´e par la classeAtomicContext, ou bien un contexte interpr ´et ´e repr ´esent ´e par la classe CompositeContext. Pour chaque contexte de bas niveau, le mod `ele permet de sp ´ecifier la source `a partir de laquelle il a ´et ´e collect ´e. Apr `es la phase de sp ´ecification, ll

(36)

FIGURE1.6 – Le m ´eta-mod `ele CONTEXTUML

permet la description des actions d’adaptation et les situations pertinentes qui permettent de les d ´eclencher.

Le m ´eta-mod `ele ContextUML est caract ´eris ´e par sa g ´en ´ericit ´e, ainsi il permet entre autre la description des actions d’adaptation et les situations pertinentes qui permettent de les d ´eclencher. Mais parall `element, une telle description au niveau des relations de d ´erivation et de d ´ependance entre les informations de contexte n’a pas ´et ´e consid ´er ´ee. De plus, ce m ´eta-mod `ele n’offre pas le moyen de d ´ecrire la qualit ´e des informations de contexte ni leur validit ´e temporelle.

LE LANGAGECML

Dans cette mod ´elisation, Les concepts `a mod ´eliser sont fournis `a base d’une repr ´esentation graphique inspir ´ee du mod `ele ORM (Object-Role Modeling). En effet, pour capturer les diff ´erents types d’informations contextuelles, en s’appuyant sur le raisonne-ment sur le contexte, ORM d ´ecrit les informations imparfaites et r ´esout l’ambigu¨ıt ´e de l’information contextuelle.

Par la suite, Baldauf et al[Bal07] ont d ´evelopp ´e une approche de mod ´elisation graphique bas ´ee sur ORM (Object Role Modeling). C’est une m ´ethode dite orient ´ee ”fait” pour l’ana-lyse de l’information au niveau conceptuel. La mod ´elisation dans ORM consiste `a identi-fier les types des faits appropri ´es et les r ˆoles des types d’entit ´es. Cette m ´ethode a subi des am ´eliorations et a donn ´e le langage CML (Context Modeling Language) et elle ap-paraˆıt comme une extension d’une repr ´esentation bas ´ee sur XML.

Ce langage permet de mod ´eliser le contexte auquel une application est sensible dans son environnement. Il offre au concepteur d’une application sensible au contexte un moyen de d ´ecrire les caract ´eristiques des informations de contexte (captur ´ees, statiques, d ´eriv ´ees

(37)

FIGURE1.7 – Exemple d’une mod ´elisation contextuelle avec CML

ou informations de profil) et les d ´ependances entre ces informations. Il permet alors de sp ´ecifier la qualit ´e de chaque information observ ´ee et sa validit ´e temporelle. Dans cette mod ´elisation, les informations de contexte sont group ´ees en un ensemble d’entit ´es. Cha-cune d’elle d ´ecrit un objet conceptuel ou physique tel qu’une personne, un dispositif. Les propri ´et ´es des entit ´es telles que le nom de la personne, le nom du dispositif sont repr ´esent ´ees par des attributs. Les entit ´es sont li ´ees `a leurs attributs ou `a d’autres en-tit ´es `a travers des relations. `A l’aide de ces relations, le concepteur peut classifier les informations de contexte associ ´ees `a chaque entit ´e. La figure 1.7 illustre un exemple de mod ´elisation de contexte avec l’outil CML en d ´etaillant les associations entre les informa-tions mod ´elis ´ees.

Le Context Modeling Language offre un mod `ele complet avec visualisation graphique qui permet de typer le contexte, et de d ´ecrire un ensemble de relations entre plusieurs contextes observables. Cependant, les outils associ ´es `a CML afin d’ ´editer ces diff ´erentes relations sont des outils classiques des bases de donn ´ees.

LA MODELISATION PAR BALISES´

Pour une mod ´elisation contextuelle bas ´ee sur des balises, le langage utilis ´e est celui d’XML (eXtensible Markup Language), afin de d ´ecrire `a la fois le contexte associ ´e `a l’utili-sateur ainsi que le profil de l’application en cours, qui caract ´erise le contexte ad ´equat pour son ex ´ecution. En effet, les balises sont d ´efinies dans une DTD (Document Type Defini-tion) afin d’avoir une description de diff ´erents profils typiques de ce type de mod ´elisation. L’un des travaux qui a contribu ´e `a une utilisation concr `ete d’une telle mod ´elisation est ce-lui de Pascoe (cf [Pasc97]) qui a utilis ´e un protocole d’ ´echange de donn ´ees contextuelles au format XML entre un serveur et un utilisateur mobile dans le cadre d’une application appel ´ee Stick-e Note. En effet, Cette mod ´elisation consiste `a mettre en œuvre un en-semble de balises avec des attributs. Le protocole ConteXtML qui a ´et ´e utilis ´e [Ryan99]

(38)

pour d ´ecrire le contexte observ ´e associ ´e `a l’utilisateur, puis pour d ´ecrire le profil que repr ´esente le contexte n ´ecessaire `a une telle application pour qu’elle puisse s’ex ´ecuter.

FIGURE1.8 – Exemple d’une mod ´elisation contextuelle avec CA-IDL

La mod ´elisation `a base de protocole d’ ´echange CONTEXTML permet une description riche et d ´etaill ´ee `a travers sa grammaire DTD ce qui donne une mod ´elisation de donn ´ees hi ´erarchiques : mais elle ne d ´efinit qu’un format d’ ´echange de donn ´ees. En effet, elle ne permet pas de d ´ecrire les contextes interpr ´et ´es ni le profil de l’utilisateur. De plus, aucune description des relations entre les informations de contexte n’est pr ´evue. Elle est sp ´ecifique `a un ensemble limit ´e d’applications.

LA GRAMMAIRE CA-IDL

FIGURE1.9 – Les cat ´egories de contexte utilis ´ee par CA-IDL

Pour la mod ´elisation de la sensibilit ´e au contexte des applications r ´eparties orient ´ees ob-jet, Stephen et al. [Yau01] ont propos ´e une grammaire permettant la description d’inter-faces sensibles au contexte baptis ´ee CA-IDL (Context Aware-Interface Description Lan-guage. Ce langage permet de d ´ecrire les contextes (cf figure 1.8) auxquels l’application est sensible, les situations pertinentes et les actions d’adaptation d’une telle application

(39)

orient ´ee objet. Pour le d ´eveloppeur, au lieu d’utiliser des m ´ecanismes de transformation statiques de contexte, il suffit de sp ´ecifier l’interface `a mod ´eliser dans un fichier CA-IDL, et ce dernier permet la g ´en ´eration de la sensibilit ´e au contexte de l’interface d ´esign ´ee dans son ADC (Adaptive Object container).

La plateforme, qui fournit le langage CA-IDL [Tsel04], organise l’environnement de tra-vail `a travers la d ´efinition principalement de trois cat ´egories de contexte observable (cf figure 1.9). Chaque cat ´egorie est constitu ´ee d’un nombre limit ´e de types de contexte. La cat ´egorie DeviceSpecificContext permet de d ´ecrire des informations de contexte sp ´ecifiques `a une machine. La cat ´egorie EnvironmentSpecificContext permet de d ´ecrire des informations de contexte sp ´ecifiques `a l’environnement qui entoure l’application. En-fin, la cat ´egorie UserSpecificContext permet de d ´ecrire des informations de contexte sp ´ecifiques `a l’utilisateur.

Par rapport aux approches paires/triplets, les approches orient ´ees mod `ele uti-lisent un support formel plus riche pour d ´ecrire le contexte. En effet, ces approches orient ´ees mod `ele sont des approches prometteuses car elles uti-lisent non seulement un mod `ele formel pour d ´ecrire le contexte, mais elle offrent ´egalement un m ´eta-mod `ele de description qui peut ˆetre r ´eutilis ´e par plu-sieurs applications. Cela offre aux d ´eveloppeurs d’applications la possibilit ´e de r ´eutiliser le mod `ele pour d’autres applications.

Pour les mod ´elisations existantes bas ´ees sur UML (comme ContextUML par exemple) la description des relations entre les informations de contexte est une ´etape indispensable dans le processus de mod ´elisation, mais en revanche elles ne prennent pas en compte la description des d ´ependances entre ces infor-mations, ni la qualit ´e ou la validit ´e temporelle des donn ´ees d ´ecrites. Dans le m ˆeme cercle des approches orient ´ees mod `ele, CML est venu rem ´edier `a cer-tains de ces manques en proposant un mod `ele avec visualisation graphique qui permet de typer le contexte, et de d ´ecrire un ensemble de relations entre plu-sieurs contextes observables.

Les mod ´elisations bas ´ees sur un langage de balises permettent, quant `a elles, de fournir une description des contextes simples, sans offrir la possibilit ´e de d ´ecrire des relations de d ´erivation et de d ´ependance entre ces diff ´erentes infor-mations.

Enfin le langage CA-IDL permet non seulement la description des situations per-tinentes de l’application sensible au contexte mais ´egalement l’ensemble d’ac-tions d’adaptation avec les condid’ac-tions de leur d ´eclenchement. G ´en ´eralement, ces diff ´erentes conditions repr ´esentent des expressions r ´eguli `eres entre les si-tuations pertinentes. De ce fait, CA-IDL offre une grammaire qui permet de d ´ecrire la sensibilit ´e au contexte, mais cette grammaire reste limit ´ee dans la me-sure o `u elle n’offre pas la possibilit ´e d’ajouter de nouvelles sources de contexte et de nouveaux observables sans modifier la grammaire de CA-IDL, ni le moyen de d ´ecrire l’interpr ´etation d’un contexte de haut niveau.

Discussion

Le tableau suivant donne un r ´ecapitulatif sur les approches orient ´ees mod `ele formel. En effet, pour cette ´etude des mod `eles formels en termes de mod ´elisation du contexte,

(40)

une comparaison est faite sur leurs ´el ´ements fondamentaux. Notre comparaison porte particuli `erement sur :

• Cat ´egorie du contexte :

Une cat ´egorie de l’information de contexte est distingu ´ee selon Utilisateur (U), Physique (P), Spatio-Temporel (ST) et Organisationnel (O). Pour chaque travail, les cat ´egories de contexte consid ´er ´ees sont v ´erifi ´ees.

• La base de mod ´elisation :

Elle permet de d ´ecrire le langage utilis ´e par chaque approche d’adaptation au contexte.

• Le type de mod ´elisation :

Il permet la description des situations pertinentes, `a travers les diff ´erentes m ´ethodes d’adaptation au contexte, de mod ´elisation des relations de d ´ependance (RD), des r `egles d’adaptation (RA) et des sources du contexte (SC) qui semblent

ˆetre tr `es int ´eressantes pour automatiser le processus d’adaptation au contexte. • Le type d’adaptation :

Une adaptation au contexte peut ˆetre diff ´erenci ´ee selon une r ´eaction ou une int ´egration.

• La qualit ´e :

Elle permet de d ´eterminer la qualit ´e des informations de contexte donn ´ees dans l’ensemble de l’approche d’adaptation : chaque approche ayant son propre mod ´ele formel.

D’apr `es le r ´esum ´e de l’ensemble de caract ´eristiques des approches orient ´ees mod `eles formels (cf table 1.1), nous constatons que la plupart des mod `eles ne permettent pas de d ´ecrire les ´etats du contexte qui n ´ecessitent une adaptation de l’application. Les mod ´elisations `a base de ContextUML, CML et CA-IDL se distinguent par le fait qu’elles permettent la description des situations pertinentes `a travers la mod ´elisation des m ´ethodes d’adaptation, la mod ´elisation des relations de d ´ependance, des r `egles d’adaptation et des sources du contexte que semblent ˆetre int ´eressantes pour automa-tiser le processus d’adaptation au contexte. Mais malheureusement, ces m ´ethodes ne permettent pas de d ´ecrire la mani `ere d’interpr ´eter un contexte de haut niveau. De plus, les mod ´elisations CA-IDL n’offrent pas la possibilit ´e de d ´ecrire les sources de contexte.

Références

Documents relatifs

[r]

Le processus de filtrage guidé par le contexte que nous proposons pour sélectionner une information de conscience de groupe adaptée repose sur le modèle objet décrivant la notion

Comme nous le verrons plus loin, en France comme en Belgique, la notion de handicap s’est progressivement substituée à la notion d’infirmité (Stiker, 1984) entraînant des

Montrer que c’est un choix correct et d´ eterminer l’exposant de d´ echiffrement d qu’il va utiliser.. Ce choix est par cons´

[r]

Ainsi, après avoir recueilli les préférences de l’utilisateur, les conditions environnementales dans lesquelles il évolue, ainsi que les informations relatives à son activité

Trouver une EQDF du 2nd

Montrer que la distance minimale du code C est 3 (on pourra commencer par mon- trer que deux colonnes d’indices diff´ erents