DE LA PROGRAMMATION DES IHM A L’INGENIERIE DES IHM

DE LA PROGRAMMATION DES IHM A L’INGENIERIE DES IHM

L’INGÉNIERIE DIRIGÉE PAR LES MODÈLES

En novembre, l’OMG Object Management Group) initie l’approche MDA Model Driven Architecture) [Soley, 2000] pour le développement et la maintenance des systèmes à prépondérance logicielle. Cette approche s’inscrit dans une tendance plus générale appelée Ingénierie Dirigée par les Modèles (IDM) qui met le modèle au centre du développement des logiciels et des systèmes d’information. L’)DM a pour but d’apporter une nouvelle vision unifiée de concevoir des applications en séparant la logique métier, de toute plateforme technique. En effet, la logique métier est stable et subit peu de modifications au cours du temps, contrairement à l’architecture technique. Il paraît donc bénéfique de séparer les deux pour faire face à la complexité des systèmes d’information et aux coûts excessifs de migration technologique. Cette séparation autorise alors la capitalisation du savoir logiciel. A ce niveau, les technologies basées sur l’approche objet et l’approche composant n’ont pas pu tenir leurs promesses. Face à la complexité croissante des systèmes d’information, il devenait de plus en plus difficile de développer des logiciels basés sur ces technologies. Le recours à des procédés supplémentaires, comme les patrons de conception [Gamma et al., 1993] ou la programmation orientée aspect [Kiczales et al., 1997], était alors nécessaire. De manière encore plus radicale que pouvaient l’être les approches des patrons et des aspects, l’)DM vise à fournir différents types de modèles pour exprimer séparément chacune des préoccupations des utilisateurs, des concepteurs, des architectes, etc. C’est par ce principe de base fondamentalement différent que l’)DM peut être considérée en rupture par rapport aux approches précédentes. Elle offre la possibilité d’arrêter l’empilement des technologies qui nécessite une conservation des compétences particulières pour faire cohabiter des systèmes divers et variés. Ceci est permis grâce au passage d’une approche interprétative à une approche transformationnelle, où les concepteurs ont un rôle simplifié et amoindri grâce à la construction automatisée et aux techniques de transformations entre modèles. L’initiative MDA proposée par l’OMG peut se définir comme la réalisation des principes de l’ingénierie des modèles autour d’un ensemble de standards comme le MOF, MOFM2T, XMI, OCL, UML, CWM, SPEM, QVT, ODM, etc. Nos travaux seront basés sur l’approche MDA et ses technologies standards.

L’INTERACTION HOMME-MACHINE

Les interfaces homme-machine doivent synthétiser l’état de l’application et aider l’être humain lors de ses activités. Les interfaces des ordinateurs de bureaux peuvent répondre de manière efficace aux besoins des utilisateurs pour des activités spécifiques. En revanche, lorsque l’information devient de plus en plus complexe à représenter ou à manipuler, que les situations d’interaction diffèrent, il convient d’adopter de nouvelles formes d’interaction. Les systèmes interactifs ont évolué pour offrir aux utilisateurs des systèmes efficaces, quel que soit le contexte d’utilisation. Pour que ces systèmes restent utilisables en dépit de leur complexité, il est nécessaire d’adopter de nouveaux moyens d’interaction qui vont au-delà de la triade clavierécran- souris et se démarquent du paradigme d’interaction WIMP1.

Ainsi, une représentation plus instinctive de l’information est nécessaire, que ce soit en entrée ou en sortie des systèmes. Cette observation a conduit à repenser fondamentalement les modes d’interaction entre l’homme et la machine. L’objectif principal est de promouvoir, autant que possible, une communication naturelle avec l’utilisateur final. La combinaison de multiples modalités en entrée et/ou sortie permet d’améliorer à la fois la robustesse et la fiabilité de l’interaction. Les travaux de Bolt (1980) sont à l’origine de la conception et du développement d’applications multimodales, où l’ordinateur est enrichi de nouveaux modes d’interaction pour les soutenir. En outre, l’émergence de l’informatique mobile, les différents types de capteurs qui équipent les appareils mobiles (smartphones, tablette …) a permis l’émergence de nouvelles modalités [Bellik, 1995], tels que l’inclinaison du téléphone ou de changer son orientation. La multimodalité réduit considérablement les limites des plateformes d’interaction, tels que les petits écrans ou les claviers inconfortables, et limite les erreurs de reconnaissance. Par conséquent, les principes de l’interaction homme-machine sont véhiculés par deux objectifs principaux : le premier est de renforcer l’adéquation des systèmes aux besoins des utilisateurs. Le second objectif est d’augmenter la facilité d’utilisation des systèmes par la conception d’interfaces en adéquation avec l’environnement dans lequel l’application va évoluer, et ayant des modalités d’interaction conviviales. Dans ce contexte, notre objectif est de proposer une approche pour la conception et la génération d’interfaces d’applications pouvant s’adapter à différentes plateformes d’interaction, tout en offrant un confort optimal d’utilisation.

OBJECTIFS ET CONTRIBUTIONS DE LA THÈSE

Ces travaux de thèse s’adressent aux concepteurs d’interfaces d’applications. )ls visent à faciliter le développement des interfaces d’application dans le contexte technologique actuel. En effet, le paysage des technologies de l’information et de la communication se présente sous la forme d’une impressionnante catégorie de dispositifs d’accès à l’information, dotés de nouvelles techniques d’interaction telles que le toucher, la vibration, la reconnaissance vocale, etc. La variété des dispositifs fixes/mobiles et des techniques d’interaction rend la tâche plus difficile pour les développeurs d’interfaces homme-machine en raison de l’absence d’un niveau d’abstraction d’interaction approprié, nécessitant ainsi la création de plusieurs versions de la même interface utilisateur en fonction des variations physiques et matérielles des périphériques. Face à ce problème, le concept d’UIDL (User Interface Description Language) semble être la réponse pertinente pour la création de systèmes interactifs, comme le démontrent de nombreuses contributions. Le formalisme ConcurTaskTrees [Paterno et al., 1997] est l’une des notations les plus populaires pour les modèles de tâches. Il est largement utilisé par les approches de modélisation et de conception d’interfaces d’applications telles que UsiXML [Limbourg et al., 2004]. Cependant, dans UsiXML, la génération de code est uniquement orientée web et les capteurs mobiles ne sont pas pris en charge.

DE L’INGÉNIERIE DIRIGÉE PAR LES MODÈLES À L’APPROCHE MDA

En novembre 2000, l’Object Management Group (OMG2) propose l’approche MDA (Model Driven Architecture) pour le développement et la maintenance des systèmes logiciels [Soley, 2000]. MDA applique la séparation des préoccupations entre la logique métier des systèmes informatiques et la logique applicative des plateformes utilisées. Pour atteindre cet objectif, MDA vise à représenter sous forme de modèles toute l’information utile et nécessaire à la construction et à l’évolution des systèmes d’information. Les modèles sont au centre du cycle de vie des logiciels et des systèmes d’information. Au-delà de la proposition spécifique MDA de l’OMG, l’)ngénierie Dirigée par les Modèles (IDM), ou Model Driven Engineering (MDE) en anglais, est une forme d’ingénierie générative dans laquelle tout ou une partie d’une application est engendrée à partir de modèles. L’objectif de l’)DM est de définir une approche pouvant intégrer différents espaces technologiques [Kurtev et al., ]. Ainsi, l’approche MDA devient une variante particulière de l’)ngénierie Dirigée par les Modèles.

La modélisation est pour beaucoup de développeurs une étape obscure voire inutile : cette réputation est principalement due au fait d’isoler la phase de modélisation du reste de la réalisation d’un projet. L’un des principaux buts de l’IDM est de capitaliser le savoir-faire au niveau des modèles et non plus au niveau du code source, tout en ayant comme objectif final de gérer une application sous la forme d’un code afin de pouvoir l’exécuter sur une ou plusieurs plateformes cibles. Ainsi, les modèles sont les outils principaux du processus de transformation, apportant de ce fait une grande part d’automatisation au processus de développement. Dans ce chapitre, nous proposons dans un premier temps une présentation des principes clés de l’IDM dans la section 2. Puis nous focaliserons notre discussion sur l’approche MDA dans la section 3 et les différents aspects qui nous intéressent dans le cadre de la définition d’un langage spécifique de domaine ou Domain Specific Language (DSL) en anglais. Nous détaillons les deux premiers axes principaux de l’)DM selon l’approche MDA et sur lesquels portent nos travaux de recherche : le processus de développement et la modélisation (métamodélisation). La section 4 présente la transformation de modèles qui est le troisième axe clé de MDA. Nous concluons enfin par la section 5 avec une synthèse des différents points discutés dans ce chapitre.

Le rapport de stage ou le pfe est un document d’analyse, de synthèse et d’évaluation de votre apprentissage, c’est pour cela rapport gratuit propose le téléchargement des modèles gratuits de projet de fin d’étude, rapport de stage, mémoire, pfe, thèse, pour connaître la méthodologie à avoir et savoir comment construire les parties d’un projet de fin d’étude.

Table des matières

PARTIE I – INTRODUCTION GÉNÉRALE
Contexte de recherche
Motivations et domaines applicatifs
Problématique
Objectifs et contributions de la thèse
Organisation de la thèse
PARTIE II – CONTEXTE TECHNOLOGIQUE ET SCIENTIFIQUE
CHAPITRE 1 – DE L’INGÉNIERIE DIRIGÉE PAR LES MODÈLES À L’APPROCHE MDA
1.1. Introduction
1.4.1. Modèle et système
1.4.2. Métamodèle : langage de modélisation
1.4.3. Méta-métamodèle : langage de métamodélisation
1.4.4. IDM et transformation de modèles
1.4.1. Processus de développement dans MDA
1.3.1.2. Le modèle PIM
1.3.1.3. Le modèle PSM
1.3.1.4. Du modèle CIM au modèle PSM
1.4.2. Modélisation et métamodélisation dans MDA
1.3.2.1. Les langages de métamodélisation
1.3.2.2. Les langages de modélisation
1.4.3. OCL, Action Semantics et XMI
1.4. La transformation de modèles dans MDA
1.4.1. Les différentes approches de transformations de modèles
1.4.2. Langages et standard pour la transformation de modèles
1.4.2.1. Le standard MOFM2T
1.4.2.2. Le standard QVT
1.5. Discussion et synthèse
CHAPITRE 2 – DE LA PROGRAMMATION DES IHM A L’INGENIERIE DES IHM
2.1. Introduction
2.3. Etude et terminologie
2.3.1. Mode
2.3.2. Modalité
2.3.3. Multimodalité
2.4. Multimodalité et plasticité
2.4.1. IHM multimodales
2.4.1.1. Multimodalité et ses concepts
2.4.2. IHM plastiques
2.4.2.1. Définition
2.4.2.2. Cadre de référence de la plasticité des IHM
2.5. Synthèse et discussion
CHAPITRE 3 – APPROCHES À BASE DE MODÈLES POUR LA CONCEPTION DES IHM
3.1. Introduction
3.2. Usage des modèles en IHM
3.3. IDM-IHM : les tendances de la littérature
3.3.1. Approches de référence
3.5. Discussion et synthèse
PARTIE III – IMPLANTATION ET VALIDATION
CHAPITRE 4 – HCIDL: UN LANGAGE DE DESCRIPTION POUR LES IHM MULTI-CIBLES, MULTIMODALES, PLASTIQUE
4.1. Introduction
4.2. MVC : un patron de programmation adapté
4.4. HCIDL: Human-Computer Interface Description Language
4.4.1. HCIDL : syntaxe abstraite – le métamodèle
4.4.1.1. Package view
4.4.1.2. Package Controller
4.4.1.3. Package Model
4.4.2. HCIDL : syntaxe concrète
4.4.3. HCIDL : les règles de génération
4.4.3.1. Elaboration de templates pour la transformation de modèles
4.4.3.2. Processus de génération
4.5. Discussion et synthèse
PARTIE IV – CONCLUSION GÉNÉRALE
Résumé des contributions
Originalities et points forts
Limites
Perspectives
Annexe A – Grammaire du Langage HCIDL
Bibliographie
Contributions scientifiques

Rapport PFE, mémoire et thèse PDFTélécharger le rapport complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *