1 Spécificités de linformatique ambiante De nombreux services Des services métiers (apparition et disparition de fonctionnalités) Des services pour gérer les supports physiques et les interacteurs Des services contraints Des services sur létagère boites noires Des devices avec leurs caratéristiques Des usages variés Des utilisateurs nombreux et variés Chaque utilisateur a ses propres intérets et besoins
2 Etude de cas privilégiée : les bâtiments équipés Un bâtiment universitaire équipé : SEDUITE Des services métiers : News, Timetable, Marks,.. Des devices variés : écrans plasma, PDA, téléphone mobile, ordinateur personel,...)
3 Problématiques liées au domaine de lutilisateur Adapter linterface utilisateur à lévolution du système Comment modifier lIHM pour intégrer un nouveau service ? Adapter linterface aux besoins utilisateurs Adaptation aux supports physiques : travaux sur les IHMs plastiques (IHMs abstraites et rendering, expression du modèle de tâches) Adaptation aux utilisateurs : travaux sur les IHMs (introduction de modèles de tâches, de profis) Adapter le système aux besoins utilisateurs Construire des applications personnalisées à partir des IHM
4 Patterns Architecturaux de construction dIHMs MVC (1979) (Model-View-Controller) PAC (1987) (Presentation-Abstraction-Control) Arch Model (1992) P C A Controller ModelView P C A P C A... P C A
5 Un modèle inspiré dArche pour les services 1 Arche pour 1 service interactif N services fonctionnels et leurs interactions utilisateurs : comment fusionner le tout ? Services Fonctionnel Services Dinteraction Adaptor Dialogue
6 Quid des assemblages Comment fusionner 2 services respectant lArche ? Composition darches ? Assemblage des services fonctionnels Quid des dialogues ? Expression et fusion Quid des IHM? Expression et fusion
7 Travaux de références pour le domaine utilisateur Travaux composants (Fractal, SOA, Noah, WCOMP MODEL) Gestion de la dynamique de lapplication (apparition et disparition de composants et de services) Expression des assemblages (orchestration, règles isl, langages daspects…) Sureté des assemblages Travaux sur lIDM Modèles et transformation de modèles Fusion de modèles Travaux en IHMs Plasticité des interfaces Expression de modèles pour lIHM (taches, dialogues…)
8 IHM Abstraite: Structure en espaces de dialogue Concrète : Fait le choix des interacteurs Finale: Fait le choix de lenvironnement de programmation et dexécution Contexte dusage Environnement Utilisateur Plate-forme Composant dIHM Abstrait
9 Nos spécificités Etre centré sur le dialogue : relation « fonctionnel et IHM » Déterminer le bon modèle de dialogue et avoir une architecture N-Arches Etre indépendant plateforme : sappuyer sur un modèle Etre indépendant dispositifs : sappuyer sur les modèles dIHM pour la plasticité Faire collaborer des modèles et pouvoir les changer Assurer la dynamique de lapplication : assembler à tous les niveaux Déduire au maximum les assemblages Trouver le bon niveau dIHM abstrait
10 Adapter linterface à lévolution du système (priorité 1) déduction Assemblage de services (Orchestrations, fusion daspects, Composants hiérarchiques) Assemblage dIHMs (Utilisation dIHMs abstraites, puis Projection sur devices) Intervention Si conflits Dialogues Sadresse au développeur
11 Adapter linterface aux besoins utilisateurs (priorité 2) 2 utilisateurs : le développeur ou lutilisateur final Choix des services – organisation de lIHM Choix des devices Dialogue Device IS Service Marks Service IS Service WebCal Service IS Service WebCal Service
12 Adaptation du système (priorité 3) Déduire lassemblage pour un utilisateur
13 MPI Points communs aux adaptations visées ConceptionExécution Noyau Fonctionnel IHM Evolution Noyau Fonctionnel Apparition, disparition de services Nouvelles Utilisations Préférences, Contexte dutilisation … Adaptation M IHM Un langage abstrait orienté composition : SUNML puis LAIM / Flex Un composant dIHM : représentation fractal Un modèle de dialogue et un modèle de plateforme Une collaboration entre les modèles MP MD
14 Points communs : Composant IHM Abstrait et description LAIM EXEMPLE LAIM PL ANF CD f() g() fournisANF fournisPL RequisPL RequisANF NF Transformations LAIM – FLEX/XAML/AWT Expression de modèles collaboratifs
15 Spécificités priorité 1 Déduire au maximum les assemblages : déduction PROLOG Assemblage dArches Orientées Services Trouver le bon niveau dIHM abstrait : de LAIM vers SUNML, UsiXML… Modèles Collaboratifs Articulations entre Un Modèle de plateforme Un modèle dIHM basé sur LAIM Un modèle de dialogue Thèse de Cédric Joffroy (année 1) RSTI 07 Architecture pour l'adaptation de Systèmes d'Information Interactifs Orientés Services" SEA 07 Architecture Model for Personalizing interactive service oriented Projets étudiants M2 Mobile HCI03 Component model and programming: a first step to manage Human Computer Interaction Adaptation" SUNML Thèse Audrey Occello ECBS-MBD 08 : Managing Model Evolution Using the CCBM Approach"
16
17
18
19 Spécificités priorité 2 et priorité 3 Trouver le bon niveau dIHM abstrait : de LAIM vers UsiXML… Pour réutiliser les travaux existants Ontologies de présentation Ontologies métiers Déductions (IHM to NF) Vérifier la cohérence globale Appliquer les modèles collaboratifs (Audrey Occello) Initiateurs avec Grenoble : Ateliers IHM IDM UsiXML, Comet …. Intégration forte au groupe Cesame Master de Christophe Vergoni Collaboration Edelweiss INRIA Thèse à venir Application de la sûreté à la construction dIHMs VV MDE08 Validation and Verification of an UML/OCL Model with USE and B: Case Study and Lessons Learnt IASSE 04 An Adaptation-safe Model for Component Platforms
20
21 Travaux futurs Intégration et finalisation des différents axes de réflexion Utilisation des modèles collaboratifs pour les applications fortement évolutives Application aux interacteurs ambiants Mise en œuvre dune application complète