Ing enieur En Sciences Informatiques Rapport de Stage de...

Click here to load reader

  • date post

    12-Sep-2018
  • Category

    Documents

  • view

    212
  • download

    0

Embed Size (px)

Transcript of Ing enieur En Sciences Informatiques Rapport de Stage de...

  • Ingenieur En Sciences InformatiquesRapport de Stage de Fin dEtudes 2009

    Composition dInterface Homme Machine pour la creation dunnouveau service : premieres etapes

    Stagiaire :Christian Brel [email protected](SI5 filiere IHM)

    Matre de stage :

    Audrey Occello [email protected](Matre de conference a Polytech Nice-Sophia)

    Laboratoire :I3S, CNRS (SophiaAntipolis)

    2 Mars 2009 30 Septembre 2009

    Resume

    Les travaux dans le domaine du genie logiciel tendent a offrir toujours plus de possibilites enterme de reutilisation. Les concepteurs de sites web sont confrontes a cette problematique :construire et faire evoluer les applications web en combinant des services provenant de sourcesdiverses. Loperation de composition des services implique de construire une nouvelle InterfaceHomme Machine (IHM), cest-a-dire de nouvelles pages web, afin de permettre lacces etlutilisation combinee de ces services distants. Puisque le concepteur dapplications web napas acces aux services eux memes mais seulement a leurs IHM, il est alors plus interessantdexploiter les principes de composition et de reutilisation directement au niveau des IHM.Ceci est lobjet dun sujet de these dont le sujet est amorce par ce stage.

  • Remerciements

    Je tiens tout dabord a remercier mon encadrante Audrey OCCELLO pour avoir su me motiver,mecouter et surtout pour mavoir fait confiance. Je tiens a remercier les deux personnes qui ont aussieffectuer mon encadrement durant ce stage, Anne-Marie PINNA-DERY que je remercie pour mavoiraccueilli dans son bureau et Philippe RENEVIER-GONIN que je felicite pour son mariage.

    Un grand merci a Michel RIVEILL qui ma permis dintegrer lequipe Rainbow pour ce stage et pouravoir accepte de me garder pour la these a venir.

    Je remercie aussi Cedric JOFFROY pour les discussions et petits debats que nous avons pu avoirpendant ces 6 mois. Merci davoir su mecouter et me motiver quand il le fallait. Je noublie pas MichaelLAGUERRE pour sa bonne humeur, son enthousiasme et les bons souvenirs surtout lors des courtspartages de bureau. Merci a lequipe Rainbow pour leur accueil convivial et leur aide durant ce stage.

    Je tiens egalement a remercier lequipe Edelweiss de lINRIA et plus particulierement Alain GIBOIN,Olivier CORBY et Fabien GANDON pour leur soutien, leur aide et leur conseils avises sans lesquels jenaurai pu avancer aussi bien.

    Bien evidemment, je remercie mes amis et ma famille qui tout au long de ce stage mais aussi toutau long de mes etudes ont su me soutenir et maccompagner dans tous ces moments de doute mais aussidans tous ces moments de joies. Merci a tous !

  • Sommaire

    1 Introduction 3

    2 Description des objectifs/des besoins et etat de lart 4

    3 Approche et mise en oeuvre 12

    4 Conclusion 21

    Bibliographie 23

    A Sujet de stage en images 25

    B DTD (Document Type Definition) decrivant la mise en page des elements dIHM 28

  • Chapitre 1

    Introduction

    La democratisation dInternet et son adoption dans la majorite des foyers en fait un outil de commu-nication puissant. Par consequence, Internet est une excellente vitrine pour les entreprises et les marquesassociees. Ces dernieres proposent des sites Web de plus en plus evolues devenant de veritables applica-tions proposant de la valeur ajoutee (service de reservation ou dachat en ligne, comparateurs de prix oude trajets, stockage virtuel de donnees, ...) pour lutilisateur et plus seulement des pages dinformations.

    Pour attirer les visiteurs, les applications web doivent evoluer en permanence, savoir se renouveler pourproposer toujours plus de valeur ajoutee. Le besoin de visibilite et de reactivite oblige les concepteursdapplications web a repenser la maniere de concevoir ces applications et en particulier leurs InterfacesHomme Machine (IHM). Les applications ne sont plus concues pour un usage predetermine, elles ne sontplus distribuees par un canal classique dachat mais largement diffusees sur internet et enfin elles nesont plus limitees uniquement aux postes de bureau. En effet, les developpeurs mettent a disposition,sur des sites web, de plus en plus de services qui vont permettre a dautres developpeurs de construiresur mesure dautres services.

    Le developpeur va construire son service par composition de services existants et va donc devoir construirede nouveau une IHM pour le nouveau service afin de permettre lutilisation combinee des differents ser-vices composes. Lobjectif du stage est de proposer un mecanisme de composition semi-automatique etde proposer une IHM pour guider cette composition.La suite de ce document est organisee comme suit. Dans le chapitre 2, je presente une description desbesoins et objectifs a travers une etude de cas et un etat de lart sur lesquelles je mappuie pour presenterle contexte du sujet. Puis dans le chapitre 3, je presente lapproche proposee pour resoudre le problemeleve par ce sujet et la description de la preuve de concept mise en place. Enfin, la chapitre 4 conclut cedocument et met en avant les perspectives des travaux commences pendant cette periode de stage.

  • Chapitre 2

    Description des objectifs/des besoins et

    etat de lart

    La large diffusion dapplications web permet a un concepteur dapplication de pouvoir reutiliser desservices existants afin de construire ses propres services. Un service peut etre decrit comme lensembledun noyau fonctionnel, qui decrit les fonctionnalites fournies par le service et une IHM qui va assu-rer linteraction entre le service et lutilisateur. Dans ces deux mondes qui sont le noyau fonctionnel etlIHM, lorsquun changement est effectue, nous voulons quil y ait un impact dun mon sur lautre. Auniveau fonctionnel, beaucoup de travaux etudient la composition de service notamment avec les webservices (Newcomer 2002) et les orchestrations de web services (Peltz 2003). Cependant, lorsquune tellecomposition est effectuee, aucun impact nest effectue sur lIHM qui ne reflete alors pas toutes les possi-bilites en terme de fonctionnalites. Pour remedier a ce probleme des travaux sont en cours dans lequipeRainbow (I3S) et mettent en place un ensemble de modeles regroupe sous la denomination ALIAS (Abs-tract Languages for User Interface Assembly) decrit dans Pinna-Dery et al. (2008) qui permet de decrireles IHM pour appliquer limpact de la composition du noyau fonctionnel sur lIHM. La composition desIHM a partir de la composition du noyau fonctionnel est alors possible et nous parlons de composition deservices dirigee par les informations donnees par la composition effectuee au niveau du noyau fonctionnel.

    Le contexte global de ce stage sinsere dans la demarche inverse de celle decrite ci-dessus, cest-a-diredeffectuer une composition de services dirigee par les informations donnees par la composition effectueeau niveau de lIHM. Lavantage de cette approche reside dans le fait que la plupart du temps le concep-teur dapplication web a beaucoup plus facilement acces a linterface dun service quil veut reutiliser,partie visible du service, qua sa description fonctionnelle.

    Le but du stage est deffectuer un travail en amont, les premieres etapes, cest-a-dire de proposer unmecanisme de composition semi-automatique et de proposer une IHM qui permettrait de faciliter lacomposition des IHM des services. Pour cela, je me suis appuye sur les travaux existants lies a la com-position dIHM dont je vais faire une description dans ce chapitre. Ces travaux ne sont pas seulement enrelation avec la composition mais aussi avec ladaptation des IHM en fonction de leur contexte dutilisa-tion. Je presente aussi dans ce chapitre des travaux lies aux placement des elements dans lIHM, pointdelicat lors de la composition puisquil faut combiner plusieurs positionnements (issus des differentes IHM

  • Chapitre 2. Description des objectifs/des besoins et etat de lart 5

    des services impliques dans la composition) avec des possibles conflits de placement a detecter. Enfin, jepresente dautres travaux lies au sujet global de ce stage : les premier lies a la composition de servicesdirigee par la composition de leur noyau fonctionnel, me donnant des elements de base pour effectuerla modelisation de mon approche et les second sur les barrieres dapprentissage que peut rencontrerlutilisateur pour utiliser un logiciel afin de faciliter lapprehension de lIHM (guidant la composition).Afin dexpliquer clairement toutes les notions en rapport avec la composition et ladaptation dIHM etles travaux que jai realise durant ce stage, je vais tout dabord commence ce chapitre par la presentationdune etude de cas.

    2.1 Etude de cas : recherche de recettes de cuisine et calcul du prix

    de revient

    Cette section decrit une etude de cas qui va nous permettre dans la suite du rapport dexpliquer lesdifferentes notions, principes abordes et problematiques. Cette etude de cas utilise des services simplifiesafin de faciliter la comprehension des enjeux. Letude de cas met en eveil les talents culinaires de chacunpuisquil sagit dutiliser deux services qui vont nous permettre de confectionner de bons petits plats :

    le premier est un service de recherche de recettes, lutilisateur renseigne le nom de la recetterecherchee et obtient au final la description de la recette avec notamment les ingredients a utiliser ;

    le second est un service dachat darticles consommables, pour lequel lutilisateur devra remplir unpanier soit en selectionnant les articles un par un, soit en donnant directement une liste de courses,dans le but dobtenir le prix total de son panier.

    LIHM associee au service de recherche dune recette se decoupe en trois ecrans 1 comme decrit dans lafigure 2.1. Le premier permet a lutilisateur de renseigner le nom de la recette et de lancer la recherche.Sur le second, lutilisateur voit apparaitre une li