Vous êtes sur la page 1sur 133

Ministre de lEnseignement Suprieur et de la Recherche Scientifique

Institut National de Formation en Informatique (I.N.I) Oued-Smar, Alger

Mmoire de fin dtudes


Pour lobtention du diplme dingnieur dtat en informatique

Option : Systme dInformatique (SIQ)

Thme

Conception et Ralisation dune plateforme du e-Learning base sur les services Web

Ralis par : Mr. Boukhadra Adel Mr. Charchal Djamel

Propos par : Mr. Balla Amar Mr. Amrouche Hakim

Promotion : 2006/2007

Remerciements
Quelques lignes ne pourront jamais exprimer la reconnaissance que nous prouvons envers tous ceux qui, de pris ou de loin, ont contribu, par leurs conseils, leurs encouragements ou leurs amitis laboutissement de ce travail. Nos vifs remerciements accompagns de toute notre gratitude vont tout dabord nos promoteurs Mr. Hamrouche et Mr. Balla. Pour nous avoir propos ce sujet, pour les conseils quils nont cess de nous prodiguer et surtout pour la confiance quil nous a accord pour la ralisation de ce projet. Notre reconnaissance va tous nos enseignants lINI, en gnral.

Ddicace
Grace Dieu voila notre travail termin et il est temps pour moi de partager ma joie avec tout ceux qui mon soutenu et encourager. A vous, ma mres et mon pre qui vous consacr votre vie notre ducation et a faire notre bonheur. A ma sur Aydat avec sa petite famille. A mes frres, Abderrahmane, Imane, Youssera ainsi qu ma prcieuse sur Aya. A toute ma famille, mon oncle et mon tante. A tous mes amis de lebled en particulier Djaber, Chaker, Nafaa, Faycel, Gagy, Fouad, Farouk, Khaled, Nabil, Nacer, Selami et Alimme Aladel. A tous mes amis de Bouraoui en particulier Mohamed, Sofiane, Ramzie, Abdlganie, Touil, Nacer, Alhoucine, Nadir, Ilyes, Youssef, Hichem, Mabrouk, SidAli, Hocine, Walid, Moufid, Blakacem et Hemida. A mon binme Djamel et sa famille. Adel.

Ddicaces
Arriv ce stade, nest que le fruit du milieu familial qui mest propice, le fruit de lquilibre et du sacrifice de mes Parents, Ces tres chers que Dieu les protge. Quil mest agrable en ce moment de partager ce bonheur avec eux. Je ddie ce modeste travail mes chers Parents qui ont t de tout temps, les plus proches , qui nont jamais mnag leurs efforts, leurs encouragements et leur soutien avec abngation et patience Sans oublier mes Grands Parents. A mes surs Sihem et Latifa. A mes Oncles, Tantes et cousins et allis de la famille. En ce moment je ne peux oublier. A lensemble des amis que jai connu pendant mes tudes et ceux qui ont prodigu leurs vifs conseils, encouragements et tmoign de leur amiti. A mon binme Adel et sa famille. Djamel

Table Des Matires


Introduction Gnrale .............................................................................................................. 1 Chapitre 1 : Les Services Web 1.1 Introduction ....................................................................................................................... 3 1.2 Dfinition des services Web .............................................................................................. 4 1.3 Caractristique des services Web ..................................................................................... 5 1.4 Avantages des services Web.............................................................................................. 6 1.5 Architecture des service Web ........................................................................................... 9 1.5.1 Architecture de Rfrence ...................................................................................... 9 1.5.2 Architecture Etendue ............................................................................................ 13 1.6 Standards des services Web ............................................................................................ 14 1.6.4.2 Le Protocole SOAP ............................................................................................. 14 1.6.4.3 Le langage WSDL ............................................................................................ 18

1.6.4.4 Lannuaire UDDI ............................................................................................. 21 1.6.4.1 Le langage XML .............................................................................................. 25

1.7 Conclusion ........................................................................................................................ 26 Chapitre 2 : E-Learning 2.1 Introduction ..................................................................................................................... 27 2.2 Dfinition du e-Learning ................................................................................................. 28 2.3 Les facteurs de motivation du e-Learning .................................................................... 29 2.4 Les sites Web et les plates-formes pour le-Learning ................................................... 30 2.4.1 Les sites Web .......................................................................................................... 30 2.4.2 Les plates-formes pour le-Learning.................................................................... 30 2.4 Lapproche service Web ................................................................................................. 36 2.5 Conclusion ......................................................................................................................... 41 Chapitre 3 : La conception 3.1 Introduction ..................................................................................................................... 42 3.2 Architecture gnrale du systme propos .................................................................... 43 3.3 Identification les acteurs de la plate-forme ................................................................... 45 3.3.1 Ladministrateur ..................................................................................................... 45

3.3.2 Lenseignant ............................................................................................................. 45 3.3.3 Lapprenant ............................................................................................................. 46 3.4 Identification les services Web de la plate-forme ......................................................... 46 3.4.1 Le service Web de gestion des utilisateurs ............................................................ 46 3.4.2 Le service Web de gestion des profils ................................................................... 46 3.4.3 Le service Web de consultation des profils ........................................................... 47 3.4.4 Le service Web de cration des cours et preuves ................................................ 47 3.4.5 Le service Web de suivie des apprenants .............................................................. 47 3.4.6 Le service Web de consultation des cours et preuves ......................................... 47 3.4.7 Le service Web d'interrogation .............................................................................. 47 3.5. Interaction entre les services Web ................................................................................ 48 3.5.1 Interaction entre le service de gestion des utilisateurs et le service de gestion des profils..................................................................................................................... 48 3.5.2 Interaction entre le service de consultation des profils et le service de gestion des profils.................................................................................................................... 49 3.5.3 Interaction entre le service de suivie des apprenants et le service de gestion des profils .......................................................................................................................... 49 3.5.4 Interaction entre le service de gestion des profils et le service de consultation des cours ..................................................................................................................... 49 3.5.5 Interaction entre le service de suivie des apprenants et le service de consultation des cours ............................................................................................... 49 3.5.6 Interaction entre le service d'interrogation et le service de gestion des profils 49 3.5.7 Interaction entre le service d'interrogation et le service de cration des cours 49 3.6 L'annuaire des services Web .......................................................................................... 50 3.7 Description de la plate-forme e-Learning .................................................................... 51 3.7.1 La phase de dploiement des services Web ........................................................... 51 3.7.2 La phase de recherche des services Web ............................................................... 51 3.7.3 La phase dinvocation des services Web................................................................ 52 3.8 La plateforme popose .................................................................................................... 52 3.8.1 La composition de la plate-forme ........................................................................... 52 3.8.2 Fonctionnement de la plate-forme ......................................................................... 54 3.9 Les diagrammes UML reprsentatifs de la plate-forme .............................................. 55 3.9.1 Les diagrammes communs tous les acteurs ...................................................... 56

3.9.2 Les diagrammes particuliers chacun des acteurs ............................................ 59 3.10 Conclusion ...................................................................................................................... 76 Chapitre 4 : La ralisation 4.1 Introduction ..................................................................................................................... 77 4.2 Prsentation des outils de dveloppement .................................................................... 77 4.2.1 Prsentation de la plateforme de dveloppement J2EE ..................................... 77 4.2.2 Prsentation du JSP............................................................................................... 78 4.2.3 Prsentation du JavaScript ................................................................................... 78 4.3 Description de serveur dapplication Apache Tomcat ................................................. 79 4.4 Description du serveur de base de donnes MySQL .................................................... 79 4.5 Implmentation des services Web de la plateforme ..................................................... 80 4.5.1 Aperu technique dune plateforme e-Learning distribue dans le Web.......... 80 4.6 Prsentation de limplmentation des services Web .................................................... 83 4.7 Implmentation des interfaces et fonctionnalits de lapplication client.................... 88 4.7.1 Page daccueil ......................................................................................................... 89 4.7.2 Interfaces communes ............................................................................................. 90 4.7.3 Interfaces propres chaque utilisateur ............................................................... 92 4.8 Conclusion ........................................................................................................................ 97 Conclusion Gnrale............................................................................................................... 98

Liste Des Figures


Figure 1 : Architecture de rfrence des services Web ...................................................... 10 Figure 2 : Architecture en Pile des services Web................................................................. 13 Figure 3 : Structure dun message SOAP ............................................................................ 15 Figure 4 : La structure XML dun message SOAP ............................................................. 16 Figure 5 : Modle dchange de message en SOAP ............................................................. 18 Figure 6 : Structure dune description WSDL .................................................................... 20 Figure 7 : Mcanismes daccs aux services Web fournis par nud UDDI ...................... 22 Figure 8 : Ressemblance dUDDI avec un annuaire............................................................ 23 Figure 9 : relation entre UDDI et WSDL ............................................................................. 24 Figure 10 : Complmentarit des LMS et LCMS ................................................................ 35 Figure 11 : e-Learning comme services Web ...................................................................... 38 Figure 12 : larchitecture du systme.................................................................................... 40 Figure 13 : Architecture de rfrence des services Web. .................................................... 44 Figure 14 : Architecture gnrale du systme propose ..................................................... 48 Figure 15 : Fragment de la description WSDL .................................................................... 50 Figure 16 : Digramme de cas d'utilisation d'un acteur ....................................................... 57 Figure 17 : Diagramme de classe dun acteur ...................................................................... 58 Figure 18 : Diagramme de squence didentification dun acteur .................................... 59 Figure 19 : Diagramme de cas dutilisation dun administrateur...................................... 60 Figure 20 : Diagramme de squence dinscription dun acteur de la plate-forme ........... 62 Figure 21 : Diagramme de squence de validation dune prinscription .......................... 63 Figure 22 : Diagramme de squence de suppression dun acteur de la plate-forme ........ 65 Figure 23 : Diagramme de cas dutilisation de lenseignant ............................................... 66 Figure 24 : Diagramme de classe dun enseignant .............................................................. 67 Figure 25 : Diagramme de squence de cration ou modification dun cours ................. 68 Figure 26 : Diagramme de squence de consultation des rsultats de lapprenant .......... 69 Figure 27 : Diagramme de squence dvaluation dun Apprenant pour un travail ....... 71 Figure 28 : Diagramme de cas dutilisation dun apprenant.............................................. 72 Figure 29 : Diagramme de classe dun apprenant ............................................................... 74

Figure 30 : Diagramme de squence daffichage dun cours.............................................. 75 Figure 31 : Schma technique illustrant larchitecture mise en uvre. ............................ 80 Figure 32 : Structure de la classe ServiceGestionprofil. ..................................................... 83 Figure 33 : Structure de la classe ServiceGestionUtilisateur. ............................................ 84 Figure 34 : Structure de la classe ServiceCreationCours. ................................................. 85 Figure 35 : Structure de la classe ServiceConsultationProfil. ........................................... 86 Figure 36 : Structure de la classe ServiceSuivieApprenant. .............................................. 86 Figure 37 : Structure de la classe ServiceConsultationCours. .......................................... 87 Figure 38 : Structure de la classe ServiceInterrogation. .................................................... 88 Figure 39 : Page daccueil. .................................................................................................... 89 Figure 40 : Interface dinscription. ...................................................................................... 90 Figure 41 : Interface dauthentification dans la plateforme. ............................................. 91 Figure 42 : Interface de ladministrateur. ........................................................................... 93 Figure 43 : Interface de lenseignant. ................................................................................... 94 Figure 44 : Interface de cration des cours et des exercices. ............................................. 95 Figure 45 : Interface de lapprenant. ................................................................................... 96 Figure 46 : page daccueil de registre UDDI. ...................................................................... 97 Figure 47 : Interface de recherche dun service Web. ....................................................... 98 Figure 48 : Interface de rsultat de la recherche dun service Web dans le registre UDDI. ...................................................................................................................................... 99 Figure 49 : Interface pour ajouter un service Web. .......................................................... 100

Glossaire

Glossaire
API : Application Prgramm Interface. B2B : Business to Business. BPEL4WS : Business Process Execution Language for Web Services. BPML : Business Process Markup Language. CORBA : Common Object Request Broker Architecture. DCOM : Distributed Component Object Model. DTD : Document Type Definition. ebXML : Electronic Business XML. FTP : File Transfert Protocol. JSP : java Server Page. HTML : HyperText Markup Language. LMS : Learning Management System. LCMS : Learning Content Managemnt System. OASIS : Organization for the Advancement of Structured Information Standards. RMI : Remote Method Invocation. SMTP : Simple Mail Transfer Protocol. SOAP : Simple Object Acces Protocol. TTTP : HyperText Transfert Protocol. URL : Uniform Ressource Locator. URI : Uniform Resource Identifier UML : Unified Modeling Language. UDDI : Universal Description, Discovery and Integration. WSDL : Web Service Description Language. W3C : World Wide Web Consurtium. WS-I : Web Services Interoperability. WSCL : Web Services Conversation Language. WSFL : Web Services Flow Language. XML : eXtensible Markup Language.

Rsum

Rsum
Au cours de ces dernires annes, les systmes dinformation contenus sur Internet ont toujours servi pour un accs rapide, facile et gnraliste la demande pertinente de linternaute, selon ses besoins par lactualisation des technologies y affrentes. Au dbut, la recherche de linformation sappliquait directement sur le Web, avec tous les inconvnients ; mais lapparition de services Web a permis de changer cet tat hrit depuis le dbut, par la cration et lutilisation des applications qui ont permis de raliser un systme dinformation rapide et efficace distribu sur lInternet. Les services Web sont des technologies mergentes, prometteuses pour le dveloppement, le dploiement et lintgration dapplications Internet. Ces technologies fournissent une infrastructure pour dcrire (WSDL), dcouvrir (UDDI) et invoquer (SOAP) des services Web. Ces technologies sont bases sur XML qui constitue la technologie utilise pour dvelopper les services Web. Un des avantages majeurs des services Web est lapport de linteroprabilit sur Internet entre les plateformes, les applications et les langages de programmations, cest--dire que larchitecture des services Web permet aux applications de communiquer facilement via lInternet quelque soient le systme dexploitation et le langage de programmation. Actuellement, et via Internet, il est propos e-Learning, qui donne la possibilit dune formation distance et adapte lapprenant, et o lapprentissage nest pas limite dans le temps. Le e-Learning est un domaine de linformatique, o le dveloppement des technologies est continu, permettant une adaptation meilleure la demande, ce dveloppement touche essentiellement son architecture qui devient de plus en plus distribue et interactive.

Mots cls : services Web, e-Learning, Environnements d'apprentissage.

Abstract

Abstract
Summary During these last years, the information systems contained on Internet have always been useful for a fast access, easy and general practitioner with the relevant request of the Net surfer, according to his needs by actualization for related technologies y. To the beginning, the information retrieval applied directly to the Web, with all the disadvantages; but the appearance of Web services made it possible to change this state inherited since the beginning, by the creation and the use of the applications which made it possible to carry out a fast and effective information system distributed on the Internet. The Web services are emergent, promising technologies for the development, deployment and the integration of applications Internet. These technologies provide an infrastructure to describe (WSDL), to discover (UDDI) and to call upon (SOAP) Web services. These technologies are based on XML which constitutes technology used to develop the services Web. One of the major advantages of the Web services is the contribution of interworking on Internet between the platforms, the applications and the programming languages, C `be-withstatement which the architecture of the Web services makes it possible the applications to easily communicate via the Internet some are the operating system and the programming language. Currently, and via Internet, it is proposed e-Learning, which gives the possibility of one formation remote and adapted to learning, and where the training is not limited in time. The e-Learning is a field of data processing, where the development of technologies is continuous; allowing a better adaptation to the request, this development touches primarily its architecture which becomes increasingly distributed and interactive.

Key words: services Web, e-Learning, Environments of training.

IntroductionGnrale

Introduction Gnrale
La progression rapide des technologies de linformation et de la communication a donn la naissance une nouvelle forme denseignement dite e-Learning. Les deux acteurs principaux dans ce mode d'apprentissage sont l'enseignant et l'apprenant. Pour que les enseignants et les apprenants puissent sadapter cette nouvelle mthode denseignement, les plateformes deLearning doivent avoir les caractristiques suivantes : la simplicit, linteroprabilit des contenus pdagogiques, la rutilisation des contenus pdagogiques et ladaptation des documents aux besoins des apprenants. Plusieurs environnements d'apprentissages sont adopts dans le monde. Ces systmes permettent, par exemple, laccs des ressources pdagogiques, de procder des valuations, et la gestion des interactions entre enseignants et apprenants. Pour la mise en uvre de ces environnements, on a recours l'utilisation des LMS et LCMS. Les environnements dapprentissage actuels sont bass sur les LMS et LCMS ont une architecture centralise, cest--dire une seule entit qui fournit toutes les fonctionnalits, ce qui rend leurs extensions difficiles. En plus, il y a la difficult dintgrer avec dautres systmes, de ce fait ces systmes sont dits ferms. Les acteurs de ces systmes exigent des besoins de plus en plus croissants en termes de partage et de possibilit de rutilisation des donnes. Ce qui incite lexpansion de ces systmes vers des systmes bass sur les environnements rpartis et distribus. Cette nouvelle gnration est dite systme dapprentissage dcentralis. Ces systmes sont bass sur les services Web, qui assurent une bonne communication entre les diffrentes applications. Lobjet de notre tude est la recherche de rponses par lanalyse des plateformes utilises, la modlisation des principales fonctions dune plateforme, la conception dune architecture distribue et compose dun ensemble des services Web, la ralisation dune plateforme dapprentissage e-Learning base sur les services Web. Page 1 -

IntroductionGnrale
Sachant que, le service Web est une technologie, mergente, jeune et ne la fin des annes quatre-vingt-dix, et qui dsigne essentiellement une application ou un programme mise disposition sur Internet par un fournisseur de service, et accessible par les clients travers lutilisation des protocoles Internet standards. Lobjectif premier du service Web consiste crer des applications constitues uniquement de services Web, qui interagissent entre eux dune manire intelligente. Par exemple, des applications de service Web sont actuellement disponibles, o on peut trouver un large spectre dapplication intressants comme : le e-business, la finance, la tlcommunication, le mLearning, le-Learning,etc. Notre travail sintresse au dernier domaine cit. Ce document est structur en trois parties : ltat de lart, la conception et la ralisation. Ltat de l'art : cette partie est compose de deux chapitres : Le 1er chapitre est la prsentation de la technologie des services Web, la dfinition, larchitecture, le standardetc. Le 2me chapitre est la prsentation du e-Learning, sa dfinition, ses facteurs de motivations, la description des plateformes de formation distance, leurs fonctionnalits et leurs applicationsetc. La conception : constitue dun seul chapitre qui sintresse ltude conceptuelle du systme dvelopper. Dans ce cadre, nous exposons la dmarche pour la conception dune architecture du e-Learning, ensuite nous dtaillons les acteurs impliqus et les fonctionnalits dvelopper dans cette plateforme. La ralisation : constitue dun seul chapitre, relatif loutil dvelopp ; o on retrouvera la description dtaille de notre solution, les outils utiliss pour le dvelopper et quelques interfaces de lapplication propose. Dans la conclusion, lobjet de ltude est la rponse la problmatique dveloppe, et rsume ce qui a t trouv avec les points forts et les points faibles de notre solution. Des annexes ont t ajoutes afin dapporter de plus amples informations sur certains points dcrits dans le rapport.

Page 2 -

Partie I : Ltat de lart

Chapitre1:LesservicesWeb

Chapitre 1
Les services Web
1.1 Introduction
Le Web actuel est un immense espace dinformations, dans lequel lindividu aura certainement besoin des machines pour laider les retrouver ; or la structure actuelle du Web ne facilite pas cette tche, tant donn quelle favorise plus la comprhension humaine par rapport celui des machines. Le Web contient des vastes bases de donnes avec plusieurs buts et de multiples sources non homognes. Ceci prouve quil est ncessaire damliorer laccessibilit cette importante masse dinformations, et de disposer doutils plus sophistiqus pour une meilleure recherche et organisation au sein du Web Les services Web fournissent une nouvelle manire de dvelopper des applications conformes aux besoins de lInternet, et ils semblent tre la solution la plus adapte pour assurer linteroprabilit, qui permet de transmettre les donnes entre les diffrentes applications dune organisation comme lentreprise, la socit ou lindividu ; ainsi la technologie des services Web permette de raliser le traitement de ces donnes, et grer les liaisons entre les diffrentes applications. Lapproche ultime de cette vision consiste donc crer des applications constitues uniquement de services Web qui interagissent entre eux. Dans ce cas de figure, peu importe o est dploy le service Web, ce qui importe est que le service remplisse un rle bien prcis.

Page 3 -

Chapitre1:LesservicesWeb 1.2 Dfinition des services Web


Le Web est de plus en plus le support privilgi des applications. Les services Web constituent le dveloppement ultime dans ce domaine. Le terme service Web est souvent utilis de nos jours, mais pas toujours avec la mme signification, car la signification est tributaire de lapplication de cette technologie. On peut dire quun service Web est souvent vu comme une application accessible dautres applications sur le Web, mais il existe plusieurs dfinitions pour les services Web : Dfinition [Mel04] : Un service Web est une application accessible partir du Web. Il utilise les protocoles Internet pour communiquer et utilise un langage standard pour dcrire son interface. Dfinition dIBM [Pon04] : Les services Web sont la nouvelle vague des applications Web. Ce sont des applications modulaires, auto-contenues et auto-descriptives qui peuvent tre publies, localises et invoques depuis le Web. Les Web services effectuent des actions allant de simples requtes des processus mtiers complexes. Une fois quun service Web est dploy, dautres applications (y compris des services Web) peuvent le dcouvrir et linvoquer. Dfinition de W3C [Ric04] : Un service Web est un systme logiciel identifi par un URI dont les interfaces publiques et les incarnations sont dfinies et dcrites en XML. Sa dfinition peut tre dcouverte dynamiquement par dautres systmes logiciels. Ces autres systmes peuvent ensuite interagir avec le service Web dune faon dcrite par sa dfinition, en utilisant des messages XML transports par des protocoles Internet. Le consortium W3C [Cer02] dfinit un service Web comme tant une application ou un composant logiciel qui vrifie les proprits suivantes : Il est identifi par un URI. Ses interfaces et ses liens peuvent tre dcrits en XML. Sa dfinition peut tre dcouverte par dautres services Web.

Page 4 -

Chapitre1:LesservicesWeb
Il peut interagir directement avec dautres services Web travers le langage XML et en utilisant des protocoles Internet standards.

1.3 Caractristiques des services Web [Cer02]


Plusieurs acteurs dfinissent les services Web par des caractristiques technologiques distinctives. Certains lments importants qui sont : Un service Web est une application logicielle qui est reconnue par un URI : URI est la faon didentifier un point de contenu sur le Web comme un document tel quun texte, audio ou vido. LURI le plus connue est ladresse dune page Web, le service Web est donc accessible en spcifiant son URI, cest--dire que le service Web est caractris par un seul objet et une seule fonctionnalit, cest un prolongement de la programmation oriente objet et partir de cela, on peut faire la construction dune application logicielle trs large comportant plusieurs fonctionnalits, afin de slectionner les fonctionnalits qui sont recherches par les URI spcifiques. Capacit des interfaces et liaisons (bindings) dtre publies, localises et invoques via le langage XML : les principales tches dun service Web sont : La publication dans un registre, la localisation en interrogeant ce registre qui lhberge et linvocation par un ou plusieurs services Web aprs sa localisation. Ces tches sont ralises via lutilisation de lXML. Capacit dinteragir avec les composantes des logiciels via des lments XML avec lutilisation des protocoles Internet standards : un service Web est cr pour tre utilis et interagir avec dautres logiciels contrairement une page Web, ou une autre application qui nutilise pas les services Web, cest linteroprabilit base sur lutilisation de lXML et les protocoles Internet standards, par exemple, le HTTP qui est le protocole du Web, le SMTP qui est le protocole du courrier lectronique,etc.
Composante logicielle lgrement couple interaction dynamique : un service Web

avec un programme qui permet de linvoquer est appel le consommateur de service Web, et qui sont indpendants lun de lautre. Si une modification est faire sur le consommateur, on na pas besoin de connaitre la machine, le langage de Page 5 -

Chapitre1:LesservicesWeb
programmation, le systme dexploitation ou autre paramtre, afin dtablir nouveau une communication entre le service Web et son consommateur. Le consommateur possde une fonctionnalit qui correspond faire une localisation et une invocation sur le service Web, au moment de lexcution du programme de service Web de manire automatique.

1.4 Avantages des services Web [Cha02]


Lide essentielle derrire les services Web est de partager les applications et les programmes en un ensemble dlments rutilisables appels service , de sorte que chacun de ces lments effectuent une tche principale et efficace, afin de faciliter linteroprabilit entre tous ces services. Dautre part les services Web : Permettent linteroprabilit dans des environnements applicatifs, cela veut dire que les logiciels et les applications crits dans diffrents langages de programmation, et voluant sur diffrents systmes dexploitation peuvent communiquer et/ou changer des donnes entre eux facilement. Permettent de profiter de diffrents environnements et langages de dveloppement par une publication, localisation, description et une invocation via XML, donc les services Web sont trs flexibles et indpendants des langages de programmation et des systmes dexploitation. Permettent daccder aux applications travers les pare-feux (les firewalls) laide dutilisation via XML et les protocoles Internet standards comme HTTP sur le port 80, qui est gnralement ouvert, leur permet dassurer une transmission des donnes transactionnelles et scuris. Utilisables distance via n'importe quel type de plateforme, et sont accessibles depuis nimporte quel type de clients. Peuvent servir au dveloppement dapplications distribues, appartiennent des applications capables de collaborer entre elles de manire transparente pour

Page 6 -

Chapitre1:LesservicesWeb
lutilisateur, et permettent davoir un partage des fonctionnalits et facilitent grandement le dveloppement. Plus spcifiquement, les services Web devraient permettre aux entreprises de [Bry04] : Donner aux clients un accs direct linformation, aux donnes et aux fonctionnalits dont ils ont besoin pour interagir avec une entreprise. Donner aux partenaires dune entreprise un accs direct la fonctionnalit dont ils ont besoin pour mieux servir les clients quils ont en participation avec cette entreprise. Donner aux fournisseurs dune entreprise un accs direct linformation et la fonctionnalit dont ils ont besoin pour leur permettre dajuster les inventaires. Intgrer efficacement des applications de bout en bout, de manire abordable, meilleur et facile implanter autant hors des frontires de lentreprise qu lintrieur de lentreprise. Les services Web offrent donc aux entreprises la flexibilit de rponse et danticipation des besoins changeant des clients, la normalisation des infrastructures logiciels, la flexibilit dinteraction et de configuration des accords externes avec les partenaires et fournisseurs. Les services Web offrent les solutions suivantes [Cha03] : Architecture de composants : Les systmes base de composants les plus classiques prsentent souvent une faille au niveau de leur conception. En fait, la pauvret des systmes d'interconnexion existants entre leurs diffrents modules nuit souvent leur ouverture. En effet, les liens entre les applications sont souvent statiques et un simple changement dans l'un des modules peut avoir de graves rpercussions. Cette situation, parfois vite par un bon niveau d'abstraction dans l'analyse de conception, laisse souvent la place de trop nombreux cas o la modification de l'implmentation d'un des modules d'une application, entrane aussitt la modification du contenu d'autres parties du programme. Les Web services proposent un niveau d'abstraction suprieur qui remplace les modles d'applications courants par une architecture plus modulaire, plus flexible et qui possde donc une meilleure tolrance aux changements.

Page 7 -

Chapitre1:LesservicesWeb
Facilitation de linteroprabilit : Les Web services s'appuient sur les protocoles SOAP, WSDL et UDDI. Ces standards bass sur le langage XML, que nous dcrirons plus loin, permettent de simplifier l'utilisation des services auxquels ils sont lis, par l'utilisation de fichiers textuels, donc lisibles par l'utilisateur. Leur contenu se limitant aux lments d'interoprabilit essentiels, ces standards assurent une grande indpendance de l'implmentation par rapport au systme d'exploitation, l'architecture machine ou au langage utilis. Intgration temps rel : L'architecture des services Web montre une volution dans la conception d'applications. On passe d'un design objet un design de services. Les applications se rsument l'association dynamique de services en temps rel. Tous les composants de l'application sont donc des services qui encapsulent leur comportement, et possdent des mcanismes de publication et de dcouverte dautres modules. En fait, lors de l'excution, les besoins de l'utilisateur sont traduits en entre pour le systme de dcouverte de services, qui va trouver le service correspondant et qui va ensuite grer la transmission des messages ncessaires l'excution de celui-ci. L'avantage, c'est qu'un groupe de services peut lui-mme tre vu comme un service, ce qui en facilite l'utilisation. Ouverture : Les services Web sont la plus rcente technologie utilise pour supporter le dveloppement de systmes dinformation distribus sur Internet, en particulier les applications B2B sur lInternet. Aujourdhui, ils semblent tre la solution la plus adapte pour assurer linteroprabilit sur lInternet entre les plateformes, les systmes dexploitation et les langages de programmation. Pour rsumer, les services Web ont plusieurs avantages, comme lutilisation de standards universels, lindpendance de plateforme, un environnement universel pour les systmes dinformation distribus, lutilisation de plusieurs protocoles de transfert (par exemple HTTP, SMTP et FTP), le codage des messages en XML, un comportement compatible aux pare-feu, et la localisation par URI. Lobjectif ultime de lapproche services Web est de transformer le Web en un dispositif distribu de calcul, o les programmes (services) peuvent interagir de manire intelligente en tant capables de se dcouvrir automatiquement, de ngocier entre eux et de se composer en des services plus complexes. Page 8 -

Chapitre1:LesservicesWeb
En dautres termes, lide poursuivie avec les services Web est de mieux exploiter les technologies de lInternet en substituant, autant que possible, les utilisateurs qui ralisent actuellement un certain nombre de services (ou tches), par des machines en vue de permettre une dcouverte et/ou une composition automatique de services sur lInternet.

1.5 Architecture des services Web [Pat04, Kre01]


Techniquement, un service Web peut donc tre peru comme tant une interface dcrivant une collection doprations accessibles via le rseau, travers des messages XML standardiss. Dun point de vue technique, la description dun service Web inclut tous les dtails ncessaires linteraction avec le service constituant, ce que on appelle larchitecture des services Web comme, par exemples, le format des messages, les signatures des oprations, le protocole de transport et la localisation du service. Linteroprabilit est lobjectif premier des services Web. Pour permettre cet change dinformation entre des applications distantes, les services Web sont composs des couches standards. Deux types darchitecture existent pour les services Web : La premire dite de rfrence, elle contient trois couches. La seconde architecture est plus complte, elle utilise les couches standards de la premire architecture en ajoutant au-dessus dautres couches plus spcifiques. Elle est appel architecture tendue ou encoure en Pile.

1.5.1 Architecture de rfrence [Pat04]


Les efforts de recherche et de dveloppement rcents autour des services Web ont conduit un certain nombre de spcifications, qui dfinissent larchitecture de rfrence des services Web. Cette architecture vise trois objectifs importants : Identification des composants fonctionnels. Dfinition des relations entre ces composants. Etablissement dun ensemble de contraintes sur chaque composant de manire garantir les proprits globales de larchitecture. Page 9 -

Chapitre1:LesservicesWeb
Larchitecture de rfrence des Web services (voir la Figure 1) sarticule autour des trois rles suivants : Le fournisseur de service : correspond au propritaire du service Web. Dun point de vue technique, il est constitu par la plateforme daccueil du service Web. Le client : correspond au demandeur de service Web. Dun point de vue technique, il est constitu par lapplication qui va rechercher et invoquer un service Web. Lapplication cliente peut tre elle-mme un service Web. Lannuaire des services : correspond un registre de descriptions des services Web offrant des facilits de publication des services Web lintention des fournisseurs, ainsi que des facilits de recherche des services Web lintention des clients. Les interactions de base entre ces trois rles incluent les oprations de publication, de recherche et de liens doprations. Avec ce schma, nous essayons de dcrire ces interactions.

Figure 1 : Architecture de rfrence des services Web [Pat04].

Page 10 -

Chapitre1:LesservicesWeb
Nous dcrivons ici un scnario type dutilisation de cette architecture [Are06] : Le fournisseur de service : permet de raliser les oprations suivantes : Propose limplmentation dun service Web. Fournit une description du service Web (document WSDL). Publie cette description dans un annuaire du registre. Reoit l'invocation du service Web par une application cliente et ralise le traitement. Il peut tre considr comme ct serveur dans une architecture client serveur entre le demandeur du service (application cliente) et le fournisseur du service Web. Le client : maintenant, il dispose localement de la description du service Web, ou alors il doit chercher la description du service Web dans un annuaire UDDI. Alors quautrefois, il tait le ct client dans une architecture client serveur entre le demandeur du service Web et le fournisseur du service Web. Lannuaire des services : dispose de la description des services Web ainsi que de leur localisation, c'est--dire les informations sur les diffrents fournisseurs. En effet, Une fois le service Web dfinit, il peut tre dclar dans un annuaire, on parle alors de publication du service Web afin de le rendre accessible aux clients. Nous dcrivons un scnario complet dutilisation de cette architecture [Via06] : Etape 1 : dfinition, description du service Web. On doit dcrire dun point de vue informatique ce que fait le service Web, la solution quil propose, la dfinition est faite en WSDL au sein du fournisseur de services Web. Etape 2 : publication du service Web. Une fois le service Web dfinit et dcrit en termes de mise en uvre, il peut tre dclar dans un annuaire, on parle alors de publication du service Web afin de le rendre accessible aux clients. La publication sera effectue au sein dun annuaire ddi UDDI.

Page 11 -

Chapitre1:LesservicesWeb
Etape 3 : recherche du service Web. Le client se connecte, sur un annuaire UDDI pour effectuer une recherche de service Web. Etape 4 : enregistrement au service Web. Une fois le service Web trouv par le client, ce dernier doit senregistrer auprs du fournisseur associ au service Web. Cet enregistrement indique au fournisseur lintention du client dutiliser le service Web suivant les conditions dcrites dans la publication. Etape 5 : mise en uvre du service Web. Le client peut invoquer le service Web suivant les conditions inscrites au sein de lannuaire lors de la publication du service Web (Etape 2). Etape 6 : composition. Cest la possibilit de combiner plusieurs services Web. En effet, un service Web peut devenir le client dun autre service Web. Pour garantir linteroprabilit des trois oprations prcdentes publication, recherche et invocation , des propositions de standards ont t labores pour chaque type dinteractions. Nous citons, notamment les standards mergents suivants : SOAP : dfinit un protocole de transmission de messages bas sur XML. WSDL : introduit une grammaire pour la description des services Web. UDDI : fournit linfrastructure de base pour la publication et la dcouverte des services Web. Cependant, cette infrastructure nest pas suffisante pour permettre une utilisation effective des services Web, dans les domaines dont les exigences vont au-del de la capacit dinteractions simples via des protocoles standards. Par exemple, dans le domaine du ebusiness, donc la ncessit dintroduire une nouvelle architecture suffisante et complte appele architecture tendue.

Page 12 -

Chapitre1:LesservicesWeb
1.5.2 Architecture tendue [Pat04]
Une architecture tendue est constitue de plusieurs couches se superposant les unes sur les autres, do le nom de pile des services Web. La Figure 2 dcrit un exemple de pile des services Web. La pile est constitue de plusieurs couches, chaque couche sappuyant sur un standard particulier. On retrouve, au-dessus de la couche de transport, les trois couches formant linfrastructure de base dcrite prcdemment.

Figure 2 : Architecture en Pile des services Web [Pat04]. Nous apportons une explication de la mise en relief des trois types de couches : Linfrastructure de base (Discovery, Discription, Exchange) : ce sont les fondements techniques tablis par larchitecture de rfrence. Nous distinguons les changes des messages tablis par SOAP, la description de service par WSDL et la recherche de services Web que les organisations souhaitent utiliser via le registre UDDI ; Couches transversales (Security, Transactions, Administration, QoS) : ce sont ces couches qui rendent viable lutilisation effective des services Web dans le monde industriel

Page 13 -

Chapitre1:LesservicesWeb
La couche Business processus (BusinessProcess) : cette couche suprieure permet lintgration de services Web, elle tablit la reprsentation dun BusinessProcess comme un ensemble de service Web. De plus, la description de lutilisation de diffrents services composant ce service est disponible par lintermdiaire de cette couche.

1.6 Standards des Services Web [Wee05, Ges03]


SOAP, WSDL, UDDI et XML sont les technologies dominantes des services Web, sans entrer dans tous les dtails techniques, nous vous prsentons ici les grandes lignes de chacune de ces technologies. Fondamentalement, SOAP, WSDL et UDDI sont des technologies issues de lintrt parmi des membres de la communaut Internet, afin de dvelopper un mcanisme pour changer des documents XML sur le Web. En fait, lensemble XML, SOAP, WSDL et UDDI est le plus adapt pour tre utilis avec larchitecture des services Web. Les plus importants organismes qui font la standardisation des services Web sont le W3C, lOASIS et WS-I. Parmi les entreprises qui participent la cration de standards de services Web, nous pouvons citer IBM, Microsoft, Ariba, DevelopMentor, BEA Systems, Hewllet-Packard, Sun Microsystems, SAP, Canon, Xerox, Oracle et Intel.

1.6.1 Le protocole SOAP [Tid01, Sco02, Gar02]


SOAP veut dire Simple Object Access Protocol et la traduction de cette dfinition en franais donnerait Protocole Simple dAccs aux Objets . En effet, le protocole SOAP consiste faire circuler du XML via du HTTP sur le port 80. Cela facilite grandement les communications, car le XML est un langage standard et le port utilis est le port 80 qui ne pose pas de problmes pour les firewalls ; SOAP peut donc tre utilis dans tous les styles de communication : synchrone ou asynchrone, point point ou multipoint, Intranet ou Internet. Le SOAP est un protocole la fois simple et facile implmenter dans les serveurs Web, destin l'change dinformations dans un environnement distribu et dcentralis. Sachant

Page 14 -

Chapitre1:LesservicesWeb
que, le SOAP diffre de protocoles comme : RMI, CORBA et DCOM, car il concentre les informations et utilise le principe dauto description des donnes. Le SOAP fait partie de la couche de communication des services Web. La force de ce protocole rside dans son universalit et sa flexibilit. Il dfinit la structure des messages XML utiliss par les applications pour dialoguer entre elles. Par exemple, un client SOAP Java sexcutant sur Linux, ou un client SOAP PERL sexcutant sur Solaris peut se connecter un serveur SOAP Microsoft sexcutant sur Windows 2000. La technologie des services Web repose principalement sur le protocole SOAP qui est indpendant des langages de programmation ou des systmes dexploitation. Le standard SOAP dfinit trois lments composants un message : Lenveloppe (Enveloppe), lentte du message (Header) et le corps du message (Body). La Figure 3 est schmatise ainsi :

Figure 3 : Structure dun message SOAP [Gar02].

Page 15 -

Chapitre1:LesservicesWeb
Explication des trois lments de la Figure 3 : Lenveloppe du message SOAP : Lenveloppe SOAP marque par la balise <Envelope> (voir la Figure 4). Elle est obligatoire et englobe les deux autres lments dun message SOAP (Header et Body), et dfinit le cadre pour dcrire ce qui est dans le message et comment le traiter. Le protocole SOAP permet de spcifier la version de SOAP utilise, en utilisant un espace de nom.

Figure 4 : La structure XML dun message SOAP. Lentte du message SOAP : Lentte est un lment facultatif imbriqu dans lenveloppe, marque par la balise <Header> (voir la Figure 4), permet de passer dans le message SOAP des informations complmentaires, cest--dire des caractristiques et des fonctionnalits additionnelles sur ce mme message. Les rgles dencodages sont places dans lentte et servent exprimer et dfinir le mcanisme de reprsentation des donnes. Lentte peut apparatre une ou plusieurs fois dans le message SOAP, elle est gnralement qualifie par lattribut mustUnderstand qui prend la valeur 0 ou 1. Page 16 -

Chapitre1:LesservicesWeb
La valeur 1 indique que le rcepteur du message doit prendre en considration linformation prsente dans lentte et que son traitement est obligatoire ; la valeur 0 indique que lentte peut tre ignor par le serveur. Un message SOAP peut avoir traverser plusieurs serveurs intermdiaires avant datteindre son destinataire final. Dans ce cas, lentte joue un rle fondamental o chaque arrt le long de litinraire, le serveur intermdiaire extrait de lentte ce qui le concerne en propre et ajoute ce qui est ncessaire au serveur intermdiaire suivant. Le corps du message SOAP : Le corps du message SOAP est obligatoire, marque par la balise <Body> (voir la Figure 4) et permet de transmettre les requtes et les rponses entre les systmes, il est compos dun ou de plusieurs sous lments, qui sont : FAULT et MESSAGE Llment FAULT : Il permet dindiquer les dfaillances de transmission des massages SOAP. Il renvoie des informations sur le type derreur, une description de lerreur et ladresse du serveur SOAP qui a gnr lerreur. Llment MESSAGE : Il contient les donnes transmettre via le protocole SOAP. Les messages SOAP sont des transmissions fondamentalement sens unique d'un expditeur un rcepteur. Lorsquune transmissions dun message commence, un message SOAP est gnre. Ce message est envoy partir dune entit appele le SOAP Sender , localis dans un SOAP Nud . Le message est soit pas transmis ou transmis plusieurs nuds intermdiaires SOAP Intermediates . Le processus se termine lorsque le message arrive au SOAP Receiver . Le chemin suivi par un message SOAP est nomme Message Path . La Figure 5 montre les lments qui participent au processus.

Page 17 -

Chapitre1:LesservicesWeb

Figure 5 : Modle dchange de message en SOAP [Tid01]. En rsum, le SOAP est un protocole de communication entre les applications fond principalement sur le protocole HTTP et sur XML, visant satisfaire un double objectif : servir de protocole de communication sur Internet, dans une optique dintgration dapplications dentreprise, et permettre la communication entre les applications et les services Web. Le SOAP est extensible, c'est--dire, Il Conu pour sappuyer sur HTTP mais on puisse y substituer un autre protocole de transport de messages comme SMTP.

1.6.2 Le langage WSDL [Chi04, Sco02, Gar02]


Le langage WSDL est lacronyme de Web Service Description Languge est un langage bas sur XML permettant de dcrire et de publier les interfaces et protocoles des services Web dune manire standard. Linterface dun service Web dcrit en fait tout le fonctionnement dun service Web, et cache tout le dtail de limplmentation du service Web, donc elle est indispensable pour pouvoir invoquer un service Web par une application cliente, ou un autre service Web permettant une utilisation indpendante de la plateforme utilise ainsi que du langage utilis. Le langage WSDL prsente un format commun pour la description et la publication des interfaces et protocoles relatifs aux services Web. Une description WSDL dun service Web est faite sur deux niveaux, niveau abstrait et niveau concret (voir la Figure 6). Au niveau abstrait, la description du service Web consiste dfinir les lments de linterface du service Web tel que : Types de donnes (DataTypes), les messages (Message), Page 18 -

Chapitre1:LesservicesWeb
les oprations (Operation), les types de ports (PortType), et les liaisons (Bindings), ces parties dcrivent des informations abstraites indpendantes au contexte de mise en uvre. On y trouve : Les types de donnes envoyes et reues ; les oprations utilisables et le protocole qui sera utilis. Les types de donnes : Data types est llment qui dfinit les types de donnes utilises dans les messages changs par le service Web. Une fois dfinie, les Data types , ou type peuvent tre rfrencs dans nimporte quel message. Les messages : Llment Message spcifie les types doprations supportes par le service Web, il permet dincorporer une squence de messages corrls sans avoir spcifier les caractristiques du flux de donnes, par exemple, un message Input et un message Output corrls sont mis en correspondance dans une seule opration de type Request/Response . Les Oprations : llment Operation spcifie les types doprations supportes par le service Web, il permet dincorporer une squence de messages corrls sans avoir spcifier les caractristiques du flux de donnes. Les PortType : le PortType est un groupement logique ou une collection doprations supportes par un ou plusieurs protocoles de transport, il est analogique une dfinition dun objet contenant un ensemble de mthodes. Les Liaisons : dcrit la faon dont un type de port est mis en oeuvre pour un protocole particulier (HTTP par exemple), et un mode dinvocation (SOAP par exemple). Cette description est faite par un ensemble donn dopration abstraites. pour un type de port, on peut avoir plusieurs liaisons, pour diffrencier les modes dinvocation ou de transport des diffrents oprations. Au niveau concret, le service Web est dfini grce aux deux lments ; Port et Service. Ces deux dernires dcrivent des informations lies un usage contextuel du service Web. On y trouve : ladresse du fournisseur implmentant le service, et le service qui est reprsent par les adresses des fournisseurs. Llment Port : llment Port , dans la partie concrte, spcifie une adresse URL qui correspond limplmentation du service Web par un fournisseur, et identifie un Page 19 -

Chapitre1:LesservicesWeb
ou plusieurs Bindings (ou liaisons) aux protocoles de transports (HTTP, SMTP, FTP...) pour un PortType donn. La sparation du protocole de transport de la dfinition du PortType permet un service Web dtre valable travers plusieurs protocoles de transports, sans avoir redfinir lensemble du fichier WSDL. Llment Service : spcifie ladresse complte du service Web, et permet un point daccs dune application distante de choisir exposer de multiples catgories doprations pour divers types dinteractions.

Figure 6 : Structure dune description WSDL [Sco02]. En rsum : le langage WSDL est une description en XML des services Web, il dcrit de manire abstraite et indpendante du langage de programmation, la plateforme, et le systme dexploitation, lensemble des fonctionnalits offertes par un service Web. Il permet de connatre les protocoles, les serveurs, les ports, le format des messages, les entres, les sorties, les exceptions possibles et les oprations ralises par un service Web. Le document WSDL est indispensable au dploiement de services Web et dcrit deux documents essentiels : un document pour linterface du service Web et lautre document pour

Page 20 -

Chapitre1:LesservicesWeb
limplmentation du service Web. La publication et la recherche dun service Web au sein de lannuaire UDDI se font via ces deux types de documents WSDL.

1.6.3 Lannuaire UDDI [New04, Sco02, Gar02]


LUDDI dfinit les mcanismes permettant de rpertorier des services Web. Ce standard gre donc, linformation relative la publication, la dcouverte et lutilisation dun service Web. En clair, lUDDI dfinit un registre des services Web sous un format XML. Les organisations publient les informations dcrivant leurs services Web dans lannuaire, et lapplication client ayant besoin dun certain service, consulte cet annuaire pour la recherche des informations concernant le service Web qui fourni le service dsir, pour une ventuelle interaction ; ainsi lUDDI a t cr pour faciliter la dcouverte de services Web en plus de leurs publications. Par une API SOAP, on peut interagir avec lUDDI au moment de la conception et lexcution des applications afin de dcouvrir des donnes techniques, et administratives sur les entreprises et leurs services Web. Lannuaire UDDI repose sur le protocole SOAP, les requtes et les rponses sont des messages SOAP. Les mcanismes daccs sont dmontrs par la Figure 7.

Page 21 -

Chapitre1:LesservicesWeb

Figure 7 : Mcanismes daccs aux services Web fournis par nud UDDI [Gar02]. LUDDI est subdivis en deux parties principales : partie publication ou inscription, et partie dcouverte. La partie publication regroupe lensemble des informations relatives aux entreprises et leurs services. Ces informations sont introduites via une API denregistrement. La partie dcouverte facilite la recherche dinformation contenue dans UDDI grce lAPI SOAP. LUDDI peut tre vu comme un annuaire contenant : Les pages blanches : elles recensent les entreprises et contiennent des informations telles que : le nom de lentreprise, ses coordonnes, des descriptions accessibles aux clients et des identifiants permettant de la retrouver par recherche. Les pages jaunes : contiennent au format WSDL la description des services Web dploys par les fournisseurs de services. Les services sont rpertoris par catgorie.

Page 22 -

Chapitre1:LesservicesWeb
Les pages vertes : contiennent des informations techniques du service offert, la manire dinteragir avec le service, une dfinition du BusinessProcess et aussi un pointeur vers le fichier WSDL et une cl unique identifiant le service.

Figure 8 : Ressemblance dUDDI avec un annuaire [New04]. La structure de donnes du registre UDDI contient cinq types de donnes : BusinessEntity : contient une description de lentreprise offrant le service dans lannuaire UDDI. Les quatre autres types de donnes sont rfrencis via cette partie. BusinesService : contient le nom et une description du service Web propos. BindingTemplete : information concernant le service Web incluant ladresse physique du fournisseur. Il est possible denregistrer de multiple BindingTemplete pour le mme service, afin de dfinir diffrents points daccs. Les diffrents points daccs de BindingTemplete incluent les types dURL suivant : HTTP, FTP,...etc. tModel : identifie dune faon unique les spcifications relatives linterface dun service Web. tModel est un mcanisme dchange de mta donnes relatives au service, tel quune description du service Web ou un pointeur vers le fichier WSDL dcrivant le service. tModel peut tre considr comme tant un point daccs alternatif aux types de donnes contenues dans UDDI. PublishAssertion : met en correspondance deux ou plusieurs structures BusinessEntity selon le type de relation (filiale de, dpartement de).

Page 23 -

Chapitre1:LesservicesWeb
Relation entre UDDI et WSDL [Wee05, Chi04, New04] Conu avant le WSDL, lUDDI permet de prendre en charge nimporte quel langage de description des services Web, grce son model de donne extensible. Une description WSDL dun service Web peut tre traduite dans UDDI grce la combinaison de BusinessService , BindingTemplate et de tModel (voir la Figure 9).

Figure 9 : Relation entre UDDI et WSDL. En rsum : UDDI est un standard pour faciliter la collaboration entre partenaires dans le cadre dchanges commerciaux, le cur dUDDI est un annuaire qui contient des informations techniques et administratives sur les entreprises et les services Web quelles Page 24 -

Chapitre1:LesservicesWeb
publient. Donc lannuaire UDDI permet de publier et dcouvrir des informations qui concernent une entreprise et ses services Web.

1.6.4 Le langage XML [Cou02, Rem06, Bad05]


Le XML est une famille de technologies dveloppes au sein du W3C. XML est n de la tentative de mettre SGML sur le Web. La premire spcification de XML est apparue en fvrier 1998 et se concentre sur les donnes, contrairement HTML qui concentre sur la prsentation. XML permet donc de transformer lInternet dun univers dinformation et de prsentation de sites Web statiques un univers Web programmable et dynamique, centr sur les donnes. XML est largement utilis par les entreprises et support par les manufacturiers informatiques. Il est indpendant des plateformes informatiques. Il est lisible par lhumain mais est destin tre lu par la machine. XML permet aux donnes dtres universellement navigables. Cependant, XML a aussi la particularit dtre adapt aux utilisateurs, ce qui signifie que la composition de ses balises (tag) peut grandement diffre. Les objectifs du langage XML : Quand XML tait dvelopp, les objectifs ont t clairement dclars dans la spcification XML 1.0, ils sont : Le XML doit tre facilement utilisable sur le Web. Le XML doit supporter une grande varit dapplications. Le XML doit tre compatible avec SGML. Il doit tre facile dcrire des programmes qui traitent des documents XML. Le nombre doptions doit tre rduit au minimum, idalement zro. Les documents XML doivent tre lisibles et raisonnablement clairs. La conception de XML doit tre mene rapidement. La description de XML doit tre formelle et concise. Les documents XML doivent tre faciles crer. La concision du balisage XML est dune importance minime.

Page 25 -

Chapitre1:LesservicesWeb 1.7 Conclusion


Les services Web sont le rsultat de la collaboration exceptionnelle des technologies de linformation, qui se sont entendus sur un certain nombre de protocoles et dapproches qui favoriseront linteroprabilit entre les plateformes, les systmes dexploitation et les langages de programmation. Les services Web sont suffisamment dvelopps pour que les dveloppeurs les utilisent maintenant dans tous les domaines de linformatique, afin de rcolter les divers bnfices de la technologie, Ils reprsentent aujourdhui la technologie la plus adapte pour le dveloppement des systmes dinformation distribus sur lInternet. Au moment de lapparition des services Web, il y avait un doute important sur leur avenir dans le-commerce entre autres, mais le temps a dmontr que les services Web est la technologie la plus adapte non seulement pour le-commerce, mais aussi pour dautres domaines, comme les applications distribues et les applications mobiles. De plus, ils sont utiliss avec succs dans le monde acadmique pour enseigner le dveloppement des systmes informatiques complexes aux tudiants, cest--dire lintgration et lutilisation des technologies des services Web dans le domaine du e-Learning.

Page 26 -

Chapitre2:eLearning

Chapitre 2
E-Learning
2.1 Introduction
Le dveloppement de lInternet a prsent des nouvelles technologies essentielles pour la recherche de linformation pertinente dans le domaine de lenseignement, ces nouvelles technologies ne sont quun moyen de rendre, aujourdhui, la formation plus flexible, plus efficace et accessible tous. Des changements remarquables sont apparus, On retrouve de plus en plus des cours destins un enseignement ouvert et en ligne, autrement dit enseignement distance (EAD) ou encore le-Learning sur lInternet. Avec lavnement des applications des Technologies de l'Information et de la Communication (TIC) au domaine de la formation, a conduit la cration de cette nouvelle ralit le-Learning, qui permet de rendre lapprentissage vraiment rapide et efficace avec un minimum de problmes dorganisation et surtout de perte de temps. Le-Learning est la solution qui a permis actuellement l'admission des TIC dans la formation distance. Il s'agit d'une transformation rapide des technologies pour l'apprentissage, rendue possible par le dveloppement international de l'Internet. Le e-Learning est en quelques mots, loutil qui consiste utiliser les nouvelles technologies pour faciliter laccs des ressources et des services qui sont de plus en plus loigner. Cette partie intressant le-Learning, portera sur la prsentation des moyens informatiques, les structures des plateformes existantes et les travaux qui seffectuent.

Page 27 -

Chapitre2:eLearning 2.2 Dfinition du e-Learning [Ben05, Sab01]


L'enseignement par Internet (ou tl-enseignement ou e-Learning) constitue un des moyens pdagogiques actuels et prometteurs. Il soufre cependant de dfauts principalement lies l'absence relative de l'enseignant, et donc a la difficult d'adaptation de l'enseignement au niveau et au comportement de l'apprenant. Deux dfinitions du e-Learning peuvent tre proposes : La premire dsigne un concept de formation dans lequel la technologie (e pour lectronique) se place progressivement dans tous les plans de l'activit de la formation. La seconde, un peu plus restrictive, dsigne comme e-Learning tout processus ou toute organisation de formation utilisant les technologies du Web. Le e-Learning est un processus dapprentissage distance, qui repose sur la mise disposition de contenus pdagogiques via un rseau de type Internet ou Intranet, et permet ainsi une ou plusieurs personnes de se former partir dun ordinateur. Les supports multimdias utiliss peuvent combiner du texte, des graphismes, du son, de limage de synthse, de lanimation et mme de la vido. Ces supports permettent une nouvelle approche pdagogique, avec lemploi de mthodes plus intressantes o linteractivit joue un grand rle, et avec la possibilit de sadapter davantage au processus dapprentissage de lapprenant. On peut dire que Le e-Learning est un domaine rvolutionnaire avec un changement dans le champ de lapprentissage, qui consiste utiliser les ressources de linformatique et de lInternet pour acqurir distance des connaissances, pour un apprenant qui peut se former son rythme, en fonction de ses besoins et de ses disponibilits, ce qui est particulirement important une poque o la formation se dcline tout au long dune vie.

Page 28 -

Chapitre2:eLearning 2.3 Les facteurs de motivation du e-Learning [Gae05]


A ce stade, il est important didentifier les facteurs qui motivent les entreprises mettre en place des projets du e-Learning. Proposer une formation homogne et personnalisable : une premire motivation concerne la possibilit de distribuer un message homogne pour lensemble des apprenants, tous suivent la mme formation avec les mmes contenus. Le e-Learning offre aussi la possibilit de personnaliser le parcours de formation de lutilisateur, en lui permettant dassister aux cours de son choix suivant ses besoins. Offrir une formation juste temps : e-Learning permet un utilisateur de se former lorsquil en a besoin, nimporte quel moment, sur un sujet pertinent par rapport son mtier sans avoir attendre la programmation dun cours un moment prcis. Pour lentreprise, cela signifie une plus grande ractivit, avec par exemple la possibilit de former ses employs ds la sortie dun nouveau produit. Ceci reprsente une des conditions de la russite de la mise en place dun projet e-Learning, car une formation est efficace, uniquement si elle est rapidement mise en uvre. Rduire les frais de formation et de prise en charges : e-Learning permet une rduction des frais de dplacement et dhbergement des apprenants, et des frais lis la prestation du formateur. De plus, le temps dapprentissage personnel est rduit. En se consacrant uniquement aux points quil souhaite approfondir, lapprenant se forme plus rapidement. Le cot de son indisponibilit est donc fortement rduit. Un rythme dapprentissage libre : e-Learning permet galement de tenir compte des disponibilits de chacun, ainsi contrairement une formation classique tablie, le temps nest plus une contrainte ; chacun peut se former son rythme. Formation sur le lieu de travail : Les modes de diffusion du e-Learning offre la possibilit de recevoir la formation directement sur le lieu de travail, dans une salle ddie la formation ou sur le poste de travail de lapprenant. Ainsi, il ny a plus de dplacement et il est possible de se former sans quitter son tablissement.

Page 29 -

Chapitre2:eLearning
Une formation plus universelle : Avec le e-Learning, il devient possible de former les populations demploys, qui sont habituellement exclus des plans de formation de lentreprise, comme les intrimaires ou les vacataires extrieurs.

2.4 Les sites Web et les plateformes pour le-Learning [Aub05]


Pour l'utilisateur qui souhaite faire du e-Learning, deux choix se prsentent lui : le site Web ou la plateforme. Ces deux mthodes ont vu leur dveloppement considrablement augmenter avec l'arrive de la technologie ADSL et la gnralisation de l'usage de l'informatique.

2.4.1 Les sites Web


Le Web est une vaste source dinformations sur le e-Learning. De nombreux sites vocations diffrentes sont prsents, des sites spcialiss permettant de se renseigner sur les technologies existantes pour le e-Learning. Ils sont nombreux et pour beaucoup sont en franais. L'un des plus importants est celui qui propose plusieurs rubriques afin de rassembler tous les projets en cours ou raliss. Il y a des sites commerciaux, qui ne diffrent gnralement que par l'interface graphique ou encore par le nombre ou la qualit des cours. Les sites Web utilisent le terme e-Learning mais ne proposent que de simples cours aux formats PDF ou DOC, c'est l'utilisateur de choisir. On parle souvent aussi de-formation. Les technologies pour ce genre de sites (les sites Web) ne sont donc pas trs adaptatives.

2.4.2 Les plateformes pour l e-Learning [Asc03]


Actuellement, la plateforme est l'outil le plus utilise pour accder aux cours, elle permet une meilleure adaptation des cours. Il existe plusieurs centaines des plateformes ducatives. On sintresse que sur les principales savoir LMS et LCMS. La plateforme LMS [Asc03] : Lappellation Learning Management System , en franais Plateforme de Gestion de la Formation , dsigne une solution logicielle axe sur lintgration, la diffusion et la gestion de contenu pour la formation distance. Page 30 -

Chapitre2:eLearning
LMS est le terme anglo-saxon qui dsigne une plateforme du e-Learning complte, comprenant le serveur de diffusion de contenu, la base de donnes grant le catalogue des formations disponibles, le serveur de gestion des profils des apprenants, les accs aux formations et du suivi des parcours avec mmorisation des rsultats obtenus. Elle inclut aussi une brique de gestion des plannings aux sessions de formation selon les disponibilits des tuteurs et des apprenants. Un LMS peut galement tre utilis pour grer des formations dites prsentielles, c'est-dire en prsence de formateurs, pour la gestion de ladministration des formations, la gestion et le suivi des apprenants. Lutilisation dun LMS par les acteurs impliqus dans les formations : Les responsables de la formation (auteurs et formateurs) : crent et mettent en ligne les formations, dfinissent les profils daccs aux formations, grent et animent les formations (que ce soit en synchrone ou en asynchrone), suivent les retours de formation. Ladministrateur du systme : configure le LMS et gre les statistiques sur les retours de formation. Les apprenants : suivent la formation via le LMS, sil sagit du e-Learning et mettent leurs retours, de faon active ou passive, via le systme. Les principales fonctionnalits dun LMS [Dur06] : La gestion des apprenants : Il sagit de la principale fonctionnalit dun LMS. Elle permet aux responsables de la formation de dfinir avec laide de ladministrateur, les diffrents types de profils avec leurs droits associs. Elle administre linscription et lidentification des apprenants aux formations, de faon individuelle ou groupe et affectation des tuteurs, respect dun circuit dapprobation prdfini, prise en compte ventuelle des prs requis ncessaires pour suivre une formation. Certains LMS grent galement la notion de domaine, segmentant laccs aux formations selon les profils des apprenants et/ou les entits concernes. La conception des cours : Les LMS intgrent le plus souvent des outils simples de cration de contenu, permettant la cration de cours, dexercices et dvaluations, en Page 31 -

Chapitre2:eLearning
assemblant les diffrents supports pdagogiques crs par le concepteur (documents, animations, multimdia). Il est possible de dfinir un scnario et une arborescence de cours. Ainsi, les LMS ne proposent gnralement pas de solution complte de gestion de cration de contenu. Il faut pour cela se tourner vers des solutions spcifiques, appeles LCMS Learning Content Management Systems , littralement Plateforme de Gestion de Contenu de Formation . Leurs fonctionnalits seront dtailles proprement en dessous. Le suivi des cursus de formation : Les LMS permettent de suivre les temps consacrs la formation et aux exercices, ainsi que daffecter des rles aux diffrents apprenants. Il est possible dvaluer les performances des apprenants et de leur dlivrer des certifications daptitude si les conditions dobtention sont remplies. Le suivi et le bilan de la formation : Les LMS intgrent des outils de statistiques permettant de suivre de faon synthtique, par apprenant ou groupe dapprenants, le temps pass en formation, les rsultats obtenus,etc. Cela autorise notamment le suivi et la gestion des cots de formation. La gestion des comptences : Les LMS proposent des outils daide la gestion des profils et des fonctions, de suivi de la progression des salaris, de consultation des parcours de formation, de ralisation de cartographies de postes/comptences. La plateforme LCMS [Asc03] : Ainsi dmontr, les LMS fournissent des fonctionnalits restreintes en termes de conception de cours. Cest pourquoi les LCMS ont rcemment merg pour aider les enseignants crer, stocker et diffuser des contenus dapprentissage partir dune base de donnes centrale. Lobjectif est de permettre loffre de contenus pdagogiques personnaliss dont les tuteurs sont identifis, tout en rduisant les cots de cration de contenu, par la rduction des temps de dveloppement de ces contenus. Cette solution est donc particulirement intressante pour les enseignants, qui ont beaucoup de contenus pdagogiques crer et/ou grer. Les principales fonctionnalistes dun LCMS [Dur06] : La cration de contenu : Les LCMS intgrent des outils de cration (cours, exercices, valuation) qui automatisent la conception en proposant des modles et des outils de Page 32 -

Chapitre2:eLearning
scnarisation. En outre, grce au travail collaboratif sappuyant notamment sur des procdures de publication, il est possible de rpartir le travail de cration de contenu entre diffrents crateurs. Par ailleurs, si lentreprise utilise des outils de Knowledge Management (Gestion de la Connaissance), la connexion dun LCMS ces outils permet dutiliser ces connaissances pour la cration de contenu. Le stockage de contenu : Une base de donnes centrale stocke les contenus dapprentissage de faon structure, les systmes de versions et de mta donn, associs un moteur, permettent des recherches prcises et la recombinaison des contenus. La diffusion dynamique : Les LCMS permettent de diffuser des contenus en personnalisant les interfaces ; il existe donc une sparation complte entre le contenu et la prsentation. Positionnement des LCMS par rapport aux LMS [Dur06] : Les LCMS et LMS sont deux plateformes denseignement qui sont apparus avec lavnement du Web, ils font rfrence des outils trs complmentaires, sont des outils trs proches. Cependant la distinction entre ces deux outils nest pas vidente dans la mesure o les plateformes LMS intgrent souvent en standards des fonctionnalits de LCMS et vice versa. En effet, historiquement les LMS proposaient des applications de cration de contenus. Les LCMS peuvent aussi implmenter des fonctionnalits lgres de LMS. Les LMS sont des plateformes informatiques pour la formation distance, ou encore des plateformes denseignement permettant de faciliter aux enseignants de raliser, et diffuser des cours pertinents de la formation sur le rseau Internet ou Intranet pour les apprenants. Les LMS sont aussi des systmes informatiques conus pour optimiser, sur un rseau Internet ou Intranet, la gestion de l'ensemble des activits de formation, de l'inscription jusqu l'obtention de comptences et sont proposs pour avancer des applications de cration de contenus dapprentissage pdagogiques. Le LMS a pour but de simplifier la gestion et l'organisation de la formation.

Page 33 -

Chapitre2:eLearning
Les LCMS sont des plateformes denseignement, c'est--dire des systmes de gestion de contenu d'apprentissage. Un LCMS est un systme (le plus souvent bas sur les technologies Web) qui permet de crer, valider, publier et grer des contenus d'apprentissage pdagogique. Les LCMS permettent une meilleure frquence des mises jour des ressources dj publies et moindre cot. La gestion des comptences est lune des fonctionnalits partages par les deux types de solutions. Cependant, cette gestion est plus performante dans les LMS puisquils sont centraliss et permettent dtablir le profil et les comptences dun tudiant par rapport toutes les formations quil a pu faire. La gestion des comptences dans les LCMS sintresse davantage aux comptences acquisse lors dune formation. Le schma suivant illustre la distinction et la complmentarit des LMS et LCMS [Dur06] :

Page 34 -

Chapitre2:eLearning

Figure 10 : Complmentarit des LMS et LCMS [Dur06]. En ralit, les LMS et LCMS sont souvent retrouvs intgrs dans un mme outil. Ceci dans le but dviter les problmes dinteroprabilit entre les deux outils, notamment en ce qui concerne la diffusion de contenus sur les plateformes LMS. Une solution LCMS intgre dans une solution LMS lui fournit des contenus totalement utilisables. Dautres parts, du point vu de la gestion des comptences, lutilisation doutils intgrs permet de faire communiquer LMS et LCMS en vue de fournir lutilisateur un contenu adapt a son niveau. Cependant, le LCMS est un domaine plus rcent que les LMS. Page 35 -

Chapitre2:eLearning 2.5 Lapproche service Web [Got03, Mad05]


Aprs cette tude, il y a lieu de concevoir un systme e-Learning identifi par un ensemble d'activits, ou de processus qui influe sur les tudiants et sur les objets pdagogiques. Ces processus peuvent tre dcomposs dabord en lments autonomes, et par la suite raliss et proposs comme des services Web. Cest concevoir la ralisation dune plateforme du e-Learning base sur les services Web Principe de fonctionnement [Got03, Mad05] : La dcentralisation : elle intresse les modules d'un systme e-Learning classique, et facilite la conception de composants entranant la formation de nouveaux services Web. A signaler quelle nest pas sans problmes, mais le bnfice, cest loffre de possibilits nouvelles comme, par exemple, le contrle du contenu propos ltudiant ; sachant que dans systme distribu, les objets pdagogiques ne peuvent pas tre simplement imports dans un systme de gestion denseignement (LMS), mais doivent tre imports la demande. Une telle vision demande de combiner les aspects techniques avec les efforts rcents de standardisation dans le domaine de la gestion de contenu d'apprentissage visant lchange de contenu et sa rutilisation efficace. La publication et la recherche des objets pdagogiques : elles peuvent se faire dans un cadre UDDI faisant partie de larchitecture des services Web. Ses caractristiques assurent le stockage de donnes concernant la description des objets pdagogiques, cest--dire, des mtas informations, alors que le contenu rel de ces mmes objets pdagogiques est sauvegard dans des sites distribus des auteurs de cours ou des intervenants denseignement. A partir de ce schma de fonctionnement nous identifions certains problmes surgissant dans la ralisation d'une plateforme de services Web : le stockage du contenu pdagogique de manire distribue, et lchange dynamique de ce mme contenu si ncessaire. En utilisant un tel schma fonctionnel, le contenu pdagogique serait publi et organis pour tre chang, et serait accessible dans un environnement fond sur des services Web.

Page 36 -

Chapitre2:eLearning
Exemple e-Learning bas sur les services Web [Got03, Mad05] : Dans un systme e-Learning, la varit des dispositifs et des composants peut tre perue comme une varit de processus, et par consquent ralise en tant que services Web atomiss ou composs. A partir de diffrentes sources, nous identifions une liste non exhaustive de composants dun systme e-Learning, on peut citer : la conception dun contenu pdagogique ; publication dun cours partir dun contenu choisi ; gestion des objets pdagogiques ; mise jour dun contenu pdagogique ; adaptation dun contenu la demande ; recherche et prsentation dun contenu pdagogique ; inscription dun tudiant, gestion de son compte et profil ; valuation des connaissances acquises, mise en place et gestion dune classe virtuelle ; gestion dun systme de communication synchronis de type chat. Ainsi, le fonctionnement est dcompos en diffrentes activits ou groupes d'activits qui peuvent tre mis en application de faon indpendante sous la forme de services Web. En se basant sur le principe des services Web, tous les objets pdagogiques qui peuvent tre stocks sur diffrents serveurs, enregistrent leurs offres dans un annuaire central avec une information additionnelle sur le contenu du matriel dapprentissage. Un service Web, qui est enregistr dans lannuaire, peut tre invoqu directement par la plateforme pour utiliser ses fonctionnalits. La Figure 11 suivante montre le principe :

Page 37 -

Chapitre2:eLearning

Figure 11 : e-Learning vu comme service Web [Got03].

Page 38 -

Chapitre2:eLearning
Larchitecture du systme [Got03, Mad05] : Lutilisation du principe de services Web permet un choix dynamique des services, ce qui donne plus davantage par rapport la mthode usuelle classique. En effet, le bnfice est la disponibilit des services Web composs qui ne dpend pas de la disponibilit de chaque service Web simple. Les systmes classiques qui importent des objets dapprentissages vers leur propre base de donnes, afin de les utiliser posent problmes du fait de la masse importante des donnes, mais avec le systme des services Web, lutilisation des objets est devenue dynamique, permettant ainsi la disponibilit des objets pdagogiques au moment de leur demande. La Figure 12 montre larchitecture du systme. Lide principale derrire ce systme est de construire un systme dapprentissage montrant que ses activits et composants principaux peuvent tre vus comme un ensemble de processus, qui sont groups en services Web atomiques et complexes.

Page 39 -

Chapitre2:eLearning

Figure 12 : larchitecture du systme. Le systme est bas sur la plateforme XLX base sur le Web, on trouve deux types diffrents de service Web, internes et externes. Les services Web externes sont fournis par dautres auteurs et sont stocks sur les systmes distance. Ils sont enregistrs dans un annuaire UDDI, qui fournit toutes les informations ncessaires pour utiliser la fonctionnalit du service Web distance dans la plateforme XLX. Les services Web internes sont fournis par le systme lui-mme et peuvent tre utiliss par lintermdiaire du serveur existant de XLX. Ils sont galement enregistrs dans lannuaire UDDI pour tre utilis par dautres systmes, les fichiers WSDL correspondant sont aussi engendrs.

Page 40 -

Chapitre2:eLearning 2.6 Conclusion


Dans cette tude, il y a lieu de retenir la dfinition des composants et les fonctionnalits de base dun systme e-Learning ; ainsi que, lide force quun systme denseignement distance peut tre dcompos en plusieurs activits ralises comme des applications autonomes sous la forme de services Web sans oublier comment un contenu pdagogique peut tre cr et diffus dynamiquement dans un systme e-Learning distribu bas sur des services Web. La gestion dynamique des contenus pdagogiques, se situent toujours dans le cadre des systmes centraliss et emploient des donnes pdagogiques appartenant aux enseignants. Cela pose dautres problmes, dont celui de linteroprabilit des systmes e-Learning. Les technologies des services Web peuvent contribuer la rsolution de ce genre de problmes. Les quelques cas dutilisation des services Web dans un systme e-Learning distribu restent pour le moment un niveau conceptuel, et ne sont dploys que sur les gros ou moyens systmes dits dentreprises.

Page 41 -

Partie II : La Conception

Chapitre3:LaConception

Chapitre 3
La Conception
3.1 Introduction
La notion de service Web dsigne essentiellement une application on un programme mise disposition sur lInternet par un fournisseur de service Web, et accessible par les clients travers des protocoles Internet standard. Un service Web est un ensemble de protocoles et de normes informatiques utiliss pour changer des donnes entre les applications. Il peut tre accessible depuis une autre application (un client, un serveur dapplication ou un autre service Web) travers le Web, et ceci en utilisant les protocoles de transports disponibles. Ce service applicatif peut tre implment comme une application autonome ou comme un ensemble dapplications. Dans ce chapitre, nous nous intressons l'utilisation des services Web pour la construction d'un environnement d'apprentissage distribu, c'est--dire la construction dune plateforme eLearning base sur les services Web.

Page 42 -

Chapitre3:LaConception 3.2 Architecture gnrale du systme propos


L'objectif de notre travail est de proposer une architecture distribue et flexible d'un environnement d'apprentissage. L'architecture propose est constitue dun ensemble de services Web qui peuvent tre distribus sur le Web. Notre plateforme doit avoir les mmes fonctionnalits qu'une plateforme classique du eLearning, et doit tre distribue d'une manire transparente aux acteurs de la plateforme. Dans le cadre de notre travail, nous avons pris en considration toutes ces fonctionnalits. Dans notre proposition, chaque fonction de la plateforme du e-Learning est reprsente sous forme d'un service Web, donc on ne stendra pas sur les services Web composites qui sont forms de plus dune fonction. Comme la pratique lexige, on peut trouver par exemple, deux ou plusieurs services Web qui offrent la mme fonctionnalit, tels que des services Web pour la cration d'un cours pdagogique o les uns permettent, par exemple, d'intgrer des animations et dautres non et pour des raisons dintressement des acteurs, il est autoris d'intgrer des services Web externes dans notre plateforme, avec la possibilit dutiliser nos propres services Web par d'autres plateformes de formation ; afin de rendre notre plateforme ouverte, aussi un service Web externe peut tre utilis par un acteur de notre plateforme, pour lui assurer une fonctionnalit dans le cas o notre service Web local ne satisfait pas ses besoins. Mais il faut savoir que dans loffre de notre plateforme, il y a deux types de services, un service uniquement pour les membres, cest--dire les acteurs inscrits, donc offre dun service local , et lautre est publique, c'est--dire accessible tous les demandeurs, donc offre dun service externe . Pour simplifier l'opration de l'utilisation (recherche et invocation) des services Web externe, nous avons opt pour l'implmentation d'un registre UDDI propre notre plateforme. Ce registre contient la description des services Web public et externe la plateforme. Le schma suivant prsente l'architecture globale de notre plateforme :

Page 43 -

Chapitre3:LaConception

Figure 13 : Architecture gnrale du systme propose. Les acteurs de la plateforme sont dots d'une interface pour accder aux services Web de la plateforme. Cette interface utilise les fonctionnalits de nos propres services Web. Les acteurs sont dots aussi dune interface pour la recherche et l'invocation des services Web externes.

Page 44 -

Chapitre3:LaConception
Cette recherche est ralise via le registre UDDI. Dans ce qui suit les dtails des diffrents lments constituent notre plateforme.

3.3 Identification les acteurs de la plateforme


Dans cette partie, on va identifier les acteurs humains qui agissent dans notre systme, et pour chacun deux, identifier lensemble des besoins quil y a lieu de satisfaire avec des solutions informatiques. Du nombre dacteurs recenss, nous ne retiendrons que trois acteurs qui sont potentiels dans notre plateforme savoir :

3.3.1 Ladministrateur
Le rle de ladministrateur au sein de notre plateforme, se limite veiller sur le bon fonctionnement de celle-ci, et na aucune influence sur le cot pdagogique, il a donc deux types de tches accomplir : Aspect technologique : par linstallation et la mise jour de la plateforme, ainsi que la dtection et la correction des bugs. Aspect humain : par la validation des inscriptions, la suppression des acteurs perturbants ou gnants, le suivi des statistiques sur lactivit humaine dans la plateforme, c'est--dire laccs aux profils utilisateurs et la gestion de touts les acteurs. Il est responsable de la gestion de l'annuaire des services Web, et c'est lui de publier un nouveau service Web afin qu'il soit accessible l'extrieur.

3.3.2 Lenseignant
La finalit de lenseignant est de dispenser des cours aux apprenants. Pour cela, il doit avoir la possibilit de concevoir des cours et dy intgrer des squences de tests dvaluation automatique (rponses analyses et notes par le systme), ainsi que des ressources multimdia.

Page 45 -

Chapitre3:LaConception
La conception dun cours est lorganisation dun ensemble des ressources pdagogiques (texte, multimdia, ) au sein dun parcours type, c'est--dire en une suite progressive respectant lordre pdagogique de ces ressources, c'est--dire ladaptation selon le profil de lapprenant.

3.3.3 Lapprenant
Il reprsente lacteur ayant intgr la plateforme dans le but de suivre une formation donne. Le but de lapprenant est de pouvoir acqurir de nouvelles connaissances, en sinscrivant un ou plusieurs cours. Un apprenant doit avoir la possibilit daccder aux ressources pdagogiques, orient par lenseignant au sein dun parcours type, et deffectuer lensemble des tests automatiques en mode interrogation directe (mode connect) ou interrogation indirecte (mode devoirs). Lapprenant peut tre un tudiant dsirant suivre un certain cours, un employ dentreprise ayant besoin dune formation dans un certain domaine, une personne dsirant perfectionner ses connaissances dans une branche quelconque,...etc.

3.4 Identification les services Web de la plateforme


Les services Web suivant nous les avons jugs utiles, constituent notre plateforme et sont prsents comme suit :

3.4.1 Le service Web de gestion des utilisateurs


Cest un service Web qui soccupe de linscription des nouveaux apprenants ou enseignants, la modification des informations dun acteur ou de sa suppression partir de la plateforme. Il prend en charge aussi la vrification de lidentit des acteurs de la plateforme, et ceci afin dautoriser ou de refuser les accs aux ressources de la plateforme.

3.4.2 Le service Web de gestion des profils


Cest un service Web important pour la plateforme, car il est trs utilis par les autres services Web. Il garde les informations de profil des apprenants et l'historique de leurs Page 46 -

Chapitre3:LaConception
activits au sein de la plateforme. Ce service Web gre une base de donnes des profils des apprenants.

3.4.3 Le service Web de consultation des profils


Ladministrateur peut consulter les profils des autres acteurs travers ce service Web. L'enseignant peut aussi consulter les profils des apprenants pour voir leur tat d'avancement. Nous avons opt de ne pas faire communiquer lapprenant avec le service Web de gestion des profils directement pour quil puisse utiliser un autre service Web, afin de visualiser ces information par une autre mthode (graphique, texte,..).

3.4.4 Le service Web de cration des cours et preuves


Cest un service Web que lenseignant peut utiliser pour crer des cours et des preuves pour les apprenants. C'est un service Web assez complexe, dans notre travail, nous navons pas dvelopp ce service Web, mais pour notre architecture gnrale propose, il peut tre un service Web externe la plateforme.

3.4.5 Le service Web de suivi des apprenants


Ce service Web se charge deffectuer des valuations pour les apprenants. Il reoit les preuves et les exercices raliss par les apprenants. Par la suite, il va effectuer les valuations ncessaires selon une mthode retenue.

3.4.6 Le service Web de consultation des cours et preuves


Cest un service Web qui permet de rcuprer les cours et les preuves afin de les afficher aux apprenants pour la consultation.

3.4.7 Le service Web d'interrogation


Le rle de ce service Web est de rpondre aux requtes des utilisateurs pour la recherche des ressources pdagogiques sur le Web, ceci soit partir des entrepts distant de ressources pdagogiques, ou partir de la base de donnes locale situe dans notre plateforme.

Page 47 -

Chapitre3:LaConception 3.5 Interaction entre les services Web


Les services Web de la plateforme ne sont pas indpendants mais existe une forte interaction entre eux. Le schma suivant illustre les diffrentes interactions :

Figure 14 : Interaction entre les services Web de la plateforme. Dans ce qui suit, nous allons dtailler les principales interactions entre les services Web : 3.5.1 Interaction entre le service de gestion des utilisateurs et le service de gestion des profils : Les deux services se transmettent les informations qui concernent les apprenants. Lorsquun nouveau apprenant est inscrit dans la plateforme, le service de gestion des utilisateurs transmet les informations ncessaires au service de gestion des profils, afin quil puisse crer un profil vierge pour lapprenant en question. Le service de gestion des utilisateurs communique aussi avec le service de gestion des profils pour vrifier lidentit de lacteur lors de sa connexion la plateforme.

Page 48 -

Chapitre3:LaConception
3.5.2 Interaction entre le service de consultation des profils et le service de gestion des profils : Lorsquun apprenant veut visualiser son tat d'avancement et son historique alors, il fait appel au service de consultation des profils, ce dernier va se charger de contacter le service de gestion des profils. La mme opration est ralise lorsque l'enseignant veut visualiser les informations concernant les apprenants. 3.5.3 Interaction entre le service de suivi des apprenants et le service de gestion des profils : Lorsque le service de suivi termine l'valuation des exercices et des preuves raliss par l'apprenant, alors il contact le service de gestion des profils pour lui transmettre les rsultats afin de mettre jours le profil de l'apprenant. 3.5.4 Interaction entre le service de gestion des profils et le service de consultation des cours : Les deux services communiquent pour garder lhistorique des apprenants qui ont consults ces cours et ces preuves selon son niveau. Le service de consultation utilise les informations sauvegardes dans le profil des apprenants afin dadapter le cours leur profils. 3.5.5 Interaction entre le service de suivi des apprenants et le service de consultation des cours : Le service de suivi reoit du service de consultation des cours et des preuves, les exercices et les examens effectus par l'apprenant, afin de les valuer et de mettre jour l'tat d'avancement des apprenants. 3.5.6 Interaction entre le service d'interrogation et le service de gestion des profils : Le service dinterrogation rcupre les prfrences de l'apprenant partir du service de gestion des profils, en vu de rpondre aux requtes de recherche. Les informations sur le profil de l'apprenant sont utilises pour enrichir la requte de recherche. 3.5.7 Interaction entre le service d'interrogation et le service de cration des cours et preuves : Le service de cration de cours fait appel au service d'interrogation afin de lui fournir des objets pdagogiques dj existant. Cela permet au concepteur du cours dutiliser et de rutiliser des objets pdagogiques dj existants. Daprs cette dmonstration des interactions entre les services Web, que le cur de ces interactions est le service Web de gestion des profils des apprenants. Pour cela ce service Web est propre notre plateforme, il gre la base des profils des apprenants.

Page 49 -

Chapitre3:LaConception
Afin d'assurer l'interoprabilit avec les autres services Web, nous avons opt pour utiliser le langage XML pour la reprsentation des profils. Ainsi, le profil de chaque apprenant est reprsent sous forme d'un fichier XML. Les changes entre les diffrents services Web et le service Web de gestion du profil se ralisent par le transfert du fichier XML qui porte les informations du profil de l'apprenant.

3.6 L'annuaire des services Web


Cet annuaire contient la description des services Web de la plateforme. Il contient la description WSDL des Web services interne et externe la plateforme. Voici une partie de la description WSDL du service de gestion des profils. Ce fragment montre la procdure pour la vrification de l'identit d'un acteur dans la plateforme. Le service reoit l'identificateur de lacteur par la suite vrifie s'il existe ou non.

Figure 15 : Fragment de la description WSDL. Page 50 -

Chapitre3:LaConception
L'administration de cette UDDI est ralise par l'administrateur de la plateforme. C'est lui qui prend en charge la publication des nouveaux services Web pour la plateforme. C'est lui de chercher des descriptions des services Web externes afin de les intgrer dans la plateforme. Une interface est offerte pour les acteurs de la plateforme pour faire des recherches des services Web afin de les invoquer. Par exemple, un enseignant peut rechercher un service Web sur la cration d'un cours, c'est possible, qu'il trouve deux services (par exemple il trouve un service local et un service externe), c'est lui de choisir un des deux et ceci selon ses prfrences. L'interface de recherche permet d'invoquer automatiquement le service Web choisi. La recherche se base essentiellement sur des mots cl dans l'annuaire UDDI.

3.7 Description de la plateforme e-Learning


Suivant les objectifs fixs par larchitecture des services Web, nous pouvons dire que la conception et lutilisation de la plateforme ce fait en trois tapes :

3.7.1 La phase de dploiement des services Web


La phase de dploiement des services Web commence aprs limplmentation et la ralisation des services Web, donc le fournisseur de service va dployer, c'est--dire dclarer les services Web par une requte SOAP dans un registre UDDI, afin de rendre les services Web accessible par les diffrents utilisateurs, le registre va garder linterface des services Web sous la forme dun document WSDL.

3.7.2 La phase de recherche des services Web


La phase de recherche ou de dcouverte des services Web, cest la phase la plus importante par rapport au client, parce que le rsultat de cette recherche va lorienter vers les services Web quil a besoin. Donc le client se connecte sur un registre UDDI pour effectuer une recherche dun service Web. Le message de la recherche est une simple requte SOAP qui spcifier les domaines et les sujet qui intresse le client, cette opration est pris en charge par le service Web dinterrogation dont nous avons parl auparavant.

Page 51 -

Chapitre3:LaConception
3.7.3 La phase dinvocation des services Web
Une fois le service Web trouv par le client, ce dernier doit senregistrer auprs du service Web de gestion des utilisateurs, cet enregistrement indique lintention de lutilisateur daccder aux services Web de la plateforme, suivant les conditions dcrites dans la publication. La partie client communique avec la partie serveur dapplication par un protocole dinvocation qui est constitu principalement de message SOAP, donc La phase dinvocation est trs importante dans la structure des services Web. Pour que, le client invoque un certain service Web, il doit passer pralablement par la phase de recherche, lors de son accs un service, un message SOAP dinvocation est gnr, par lequel, le service Web qui va tre interrog est spcifi avec toutes les mthodes et les paramtres accords au service Web invoqu. Entre autres exemples dinvocation dans notre cas, il y a la demande dauthentification des acteurs et la consultation des cours pdagogiques par les apprenants de notre plateforme.

3.8 La plateforme propose


La description de la plateforme se fait en deux tapes : une tape pour expliquer la composition de la plateforme. Et une tape pour dtailler le fonctionnement de la plateforme.

3.8.1 La composition de la plate forme


Son schma gnral est construit sur trois parties essentielles, linstar de larchitecture service Web, et qui sont : La partie clients des services Web : Cest la partie o on trouve les acteurs qui interagissent avec la plateforme, ces acteurs peuvent communiquer avec la plateforme laide dun simple navigateur, ou avec une application spcifie chaque type dutilisateur, on peut distinguer trois types de classes dutilisateurs qui sont connus comme les administrateurs, les enseignants et les apprenants. La premire classe des acteurs : qui ont la possibilit de modifier la structure de la plateforme, de maintenir le bon fonctionnement des services Web et la gestion de tous Page 52 -

Chapitre3:LaConception
les autre utilisateurs, le reprsentant de cette classe dans notre plateforme est ladministrateur. La deuxime classe des acteurs : qui ont laccs des services pour ajouter, modifier ou supprimer le contenu pdagogique des cours ou des exercices, le reprsentant de cette classe dans notre plateforme est lenseignant. La troisime classe des acteurs : qui peuvent seulement lire le contenu adapt a leur profil et denvoyer leur travaux, le reprsentant de cette classe dans notre plateforme est lapprenant. On va faire la distinction entre les diffrents acteurs grce leur authentification aprs la prsentation du mot de passe. La partie serveur dapplication : Cest la partie support des services Web dvelopps pour notre plateforme, elle contient un certain nombre de service Web, o chaque service Web assure une fonction qui diffre des autres et tout en assurant lchange des donnes pour accomplir une tche bien dtermine, la communication entre les services Web se fait grce aux messages SOAP et des documents WSDL dcrits chaque service Web. Concernant la base de donnes, elle est ncessaire dans la plateforme. Pour lchange des donnes entre elle et les services Web pour maintenir la plateforme dans un tat de bon fonctionnement. Sa prsence dans le serveur dapplication nest pas ncessaire, car les services Web peuvent changer les donnes avec une base de donn externe implmente dans un autre serveur dapplication, dans notre cas la base de donne sera interne. La partie annuaire des services Web : Sachant que la partie annuaire est compose dun registre UDDI. Il a deux types de clients : Les fournisseurs des services Web, et les utilisateurs des services Web. LUDDI comporte des informations sur la plateforme (Nom, Cordonnes,) et des pages qui comportent la description au format WSDL des services Web.

Page 53 -

Chapitre3:LaConception
LUDDI peut tre interne, externe ou les deux la fois dans la plateforme e-Learning pour amliorer laccessibilit pour les services Web, et va faciliter la phase de recherche des services Web pour les clients, donc lannuaire des services Web est une partie intermdiaire entre le serveur dapplication dune part et la partie cliente dautre part.

3.8.2 Fonctionnement de la plateforme


Dans le fonctionnement de la plateforme on distingue deux formes de fonctionnement : Fonctionnement interne : Cela concerne les organes internes qui composent notre plateforme qui sont les services Web et le registre UDDI, on remarque dans le fonctionnement interne : Un fonctionnement entre les services Web : Le grand avantage de la technologie des services Web est linteroprabilit entre les services Web, donc les services Web de notre plateforme changent des donnes dont le but de satisfaire les requtes des acteurs, ce fonctionnement se fait linsu des acteurs de la plateforme parce que le mcanisme dappel est automatique; par exemple, lorsque un acteur invoque un service Web, ce dernier peut invoquer un autre service Web, afin de recevoir des informations ncessaires pour traiter la demande et la fin envoyer les rsultats au demandeur. Un fonctionnement entre les services Web et lannuaire UDDI : Cest la premire phase consistant faire dployer les services Web au sein dun registre UDDI interne, reli directement la plateforme ou sil est externe, il est lui-mme un service Web port par un autre fournisseur de service Web se trouvant sur Internet. Pour ce faire, ladministrateur aprs avoir mis en uvre les services Web, il dploie les documents de description des services Web (WSDL) dans un registre, afin quil soit accessible par les diffrents utilisateurs dans la phase de recherche. Fonctionnement externe : Il est ralis entre les acteurs de la plateforme et les services Web ou bien avec le registre UDDI.

Page 54 -

Chapitre3:LaConception
Entre les acteurs et les services Web : Le fonctionnement externe, cest le fonctionnement qui met en contact les acteurs avec les services Web. A savoir que : Ladministrateur gre le service Web de gestion des utilisateurs et du service Web de gestion du profil pour les enseignants et apprenants. Lenseignant utilise le service Web de cration de cours et preuves ainsi que le service Web du suivie lvaluation des apprenants. Lapprenant aborde le service Web de consultation des cours et preuves et le service Web de consultation de profil. Remarque : les trois acteurs dans notre plateforme ont un accs au service Web dinterrogation. Entre les acteurs et le registre UDDI : Dans notre plateforme, le registre UDDI catalogue tous les services Web et renferme les donnes des services externes. Ainsi, lUDDI peut tre sollicit par tous les acteurs.

3.9 Les Diagrammes UML reprsentatifs de la plateforme


Face la diversit des mthodes danalyse et de conception objet, et en particulier aux diffrentes notations des mmes concepts, UML reprsente un rel facteur de progrs par leffort de normalisation ralis. En effet, UML constitue une tape importante dans la convergence des notations utilises dans le domaine de lanalyse et la conception objet puisquelle reprsente une synthse des trois mthodes OMT, BOOCH, et OOSE. Ces trois mthodes couvrent environ la moiti du march des mthodes objet. Ainsi, nous nous proposons de modliser les acteurs et les services Web de la plateforme, ainsi que les fonctionnalits que cette dernire doit leur fournir, grce diffrents Diagrammes UML. Nous allons commencer par dlimiter le systme et dfinir les fonctions principales dont chaque acteur doit disposer. Pour ce faire, nous allons utiliser le Diagramme de cas dutilisation .

Page 55 -

Chapitre3:LaConception
Ensuite, nous allons dgager les objets entrants en ligne de compte dans chacune de ces fonctionnalits et les relations qui les lient, et cela fera grce au Diagramme de classes . Pour une reprsentation claire et prcise des fonctionnalits fournies chacun des acteurs nous aurons recours au Diagramme de squence . Ce Diagramme offre une reprsentation dynamique du systme, il montre pas pas le squencement des actions constituant un cas dutilisation. Nous avons remarqu que les acteurs de la plateforme partagent certains services Web, comme le service Web de gestion des utilisateurs pour le cas de lauthentification et le service Web dinterrogation. Cela nous amne proposer des schmas reprsentatifs des objets et des fonctionnalits communes tous les acteurs, et des schmas particuliers chacun des acteurs. Dans un premier temps, nous allons traiter les services Web communs tous les acteurs, savoir lauthentification (pour accder la plateforme laide de saisie du mot de passe et un pseudonyme) et linterrogation de registre UDDI, ensuite nous allons dvelopper les fonctionnalits relatives chacun des acteurs.

3.9.1 Les Diagrammes communs tous les acteurs :


Nous reprsenterons les services Web commun tous les acteurs, donc les principaux acteurs comme ladministrateur, lenseignant et lapprenant seront remplacs dans le Diagramme par acteur pour la spcification des services Web et entits communes. Le Diagramme de cas dutilisation : Ce Diagramme reprsente les cas dutilisations dun acteur quelconque, autrement dit, les fonctionnalits que doit fournir la plateforme tous ses acteurs. Pour cela on peut trouver les fonctionnalits suivantes : Lauthentification : tout acteur doit sidentifier par pseudonyme et un mot de passe pour accder la plateforme. Le service Web dinterrogation du registre UDDI : tous les acteurs peuvent interroger le registre UDDI afin de chercher dautre service Web externe de la plateforme.

Page 56 -

Chapitre3:LaConception

Figure 16 : Digramme de cas d'utilisation d'un acteur. Le Diagramme de classe : Nous avons dcoup la plateforme en paquet UML, afin davoir une reprsentation claire des diffrents blocs logiques a constituant. Comme la montre le Diagramme, chaque acteur admet un seul profil, le profil possde plusieurs droits, le droit peut caractriser plusieurs profils. Le schma ci-dessous (voir la Figure 17) reprsente les objets et les fonctionnalits communes tous les acteurs, par exemple, lentit et la relation suivante : Droit : il reprsente un droit daccs donn, ses particularits, les acteurs le possdantetc. exemple : le droit de faire la modification des informations relatives un acteur.

Page 57 -

Chapitre3:LaConception

Figure 17 : Diagramme de classe dun acteur. Le Diagramme de squence : Ce Diagramme dcrit le processus dauthentification effectu par chacun des acteurs afin daccder la plateforme.

Page 58 -

Chapitre3:LaConception

Figure 18 : Diagramme de squence dauthentification dun acteur. Pour accder la plateforme, lutilisateur doit dabord saisir son pseudonyme et son mot de passe. Si les deux lments existent et correspondant lun lautre alors laccs est russi et le systme affiche lespace de travail de lutilisateur. Sinon, cest lchec et le systme retourne la page dauthentification.

3.9.2 Les Diagrammes particuliers chacun des acteurs


Les Diagrammes de ladministrateur : Le Diagramme de cas dutilisation : Les fonctionnalits et les services Web que doit fournir la plateforme ladministrateur (illustre dans le schma de la Figure 19) sont dcrits comme suit : Le service web de gestion des utilisateurs : cela consiste en linscription, la suppression et la modification des donnes relatives aux acteurs de la plateforme.

Page 59 -

Chapitre3:LaConception
Le service Web de gestion du profil : cela pour la consultation du profil et lhistorique des acteurs de la plateforme. Linstallation et maintenance de la plateforme.

Figure 19 : Diagramme de cas dutilisation dun administrateur. Le Diagramme de squence : pour ladministrateur, on peut trouver trois Diagrammes de squences qui sont reprsents ci-dessous : Linscription dun acteur dans la plateforme : Linscription dun acteur dans la plateforme est effectue par ladministrateur. Il existe pour cela deux scnarios : Linscription directe : ladministrateur inscrit lacteur en saisissant les informations ncessaires dans un formulaire dinscription (Voir la Figure 20).

Page 60 -

Chapitre3:LaConception
La validation de pr inscriptions : Ladministrateur consulte des fiches de pr inscription envoyes par lutilisateur et dcide de valider ou rejeter linscription (Voir la Figure 21). Dans les deux cas, la validation ou le rejet dune inscription se fait aprs ltude dun dossier fourni ladministration par lutilisateur.

Page 61 -

Chapitre3:LaConception

Figure 20 : Diagramme de squence dinscription dun acteur de la plateforme.

Page 62 -

Chapitre3:LaConception

Figure 21 : Diagramme de squence de validation dune prinscription.

Page 63 -

Chapitre3:LaConception
Suppression dun acteur de la plateforme : La suppression dun acteur de la plateforme se fait en deux tapes : Une suppression logique : qui consiste a bloqu le compte dun utilisateur. Une suppression physique (dfinitive) : qui consiste effacer les informations de lacteur de la base de donnes. Un acteur supprim logiquement peut se voir rattribuer son compte pour une raison donne, par contre, sil est supprim dfinitivement, il devra reformuler une requte dinscription au niveau de ladministration sil dsire se rinscrire.

Page 64 -

Chapitre3:LaConception

Figure 22 : Diagramme de squence de suppression dun acteur de la plateforme.

Page 65 -

Chapitre3:LaConception
Les Diagrammes de lenseignant : Le Diagramme de cas dutilisation : Les services Web et les fonctionnalits fournies lenseignant par la plateforme sont les suivantes : Le service Web de cration des cours et preuves pour les apprenants. Le service Web de suivi des apprenants. Accs aux profils des apprenants qui contient les informations concernant la progression de lapprenant, son niveau et des statistiques concernant lactivit de cet apprenant au sein de la plateforme.

Figure 23 : Diagramme de cas dutilisation de lenseignant. Le Diagramme de classe : Le Diagramme suivant montre les objets formant lenvironnement de lenseignant dans la plateforme. Les entits et associations de ce Diagramme sont dcrites comme suit : Lentit Module : dcrit les modules que lenseignant enseigne ou sur lesquels il peut valuer des groupes dapprenants par exemple : Informatique, Chimie, Physique,etc. Page 66 -

Chapitre3:LaConception
Lentit Travail : donne les travaux proposs par lenseignant.

Figure 24 : Diagramme de classe dun enseignant. Les Diagrammes de squence : Les fonctionnalits dcrites dans le Diagramme de cas dutilisation de lenseignant se droulent tel quil est dcrit dans les Diagrammes suivants : La cration des cours et exercices : lenseignant peut crer les cours et les preuves destin aux apprenants voulant se former. La plateforme fournie un outil de cration et de sauvegarde de tout les cours et preuves pour les enseignants.

Page 67 -

Chapitre3:LaConception

Figure 25 : Diagramme de squence de cration ou modification dun cours.

Page 68 -

Chapitre3:LaConception
La consultation des rsultats dun apprenant pour un cours donn : Lors de la session dapprentissage dun cours, les donnes reprsentant les rsultats de lapprenant sont sauvegardes. Le Diagramme suivant montre le scnario daccs dun enseignant ces rsultats.

Figure 26 : Diagramme de squence de consultation des rsultats de lapprenant.

Page 69 -

Chapitre3:LaConception
Aprs lauthentification, lenseignant choisit de consulter les rsultats des apprenants, la liste des apprenants quil suit pour le module est alors affiche. Lenseignant accde alors aux rsultats dun apprenant en cliquant sur son nom. Lvaluation dun apprenant pour un travail : Pour valuer un apprenant sur un travail donn, lenseignant consulte sa rponse pour ce travail et lui donne une note approprie. Le Diagramme suivant dcrit ce scnario.

Page 70 -

Chapitre3:LaConception

Figure 27 : Diagramme de squence dvaluation dun Apprenant pour un travail.

Page 71 -

Chapitre3:LaConception
Les Diagrammes de lapprenant : Le Diagramme de cas dutilisation : La plateforme doit fournir lapprenant les fonctionnalits suivantes (aprs lauthentification) : La consultation de documents pdagogiques : lapprenant peut consulter des objets pdagogiques en ligne. Effectuer des travaux : lapprenant aura effectuer des travaux (exposs, exercice, preuves,...etc.) et des tests proposs par lenseignant, ces travaux servirons son valuation. Laccs aux rsultats obtenus : lapprenant aura la possibilit daccder tous ses rsultats ainsi quaux statistiques de son parcours, de chaque module durant toute sa scolarit. Il pourra aussi consulter lhistorique de ses travaux et des notes quil a obtenus. Les fonctionnalits dcrites ci-dessus sont illustres par le Diagramme de cas dutilisation suivant :

Figure 28 : Diagramme de cas dutilisation dun apprenant.

Page 72 -

Chapitre3:LaConception
Le Diagramme de classe : Ce Diagramme reprsente les donnes de gestion de lacteur apprenant (ses donnes personnelles, les modules dans lesquels il est inscritetc.). Nous pouvons dcrire certains des objets et associations reprsentant ce Diagramme comme suit : Lentit Module : reprsente les modules dans lesquels lapprenant est inscrit. Exemple : Mathmatiques, Informatique, Electroniqueetc. Lentit Cursus : reprsente le cursus suivi par lapprenant. Exemple : BAC, TS, DEUA,etc. Lentit Niveaux : reprsente les niveaux des modules affects un apprenant. Exemple : le module lectronique pour les ingnieurs 1re anne en

informatique,etc. Lentit Travail : donne les diffrents travaux (exercices, preuvesetc.) affects un apprenant. Les attributs date_dbut et date_fin de lassociation appartient_m : ils reprsentent respectivement les dates de linscription de lapprenant au module associ et la date laquelle il devrait terminer sa formation sur ce module.

Page 73 -

Chapitre3:LaConception

Figure 29 : Diagramme de classe dun apprenant. Les Diagrammes de squence : Les Diagrammes suivants reprsentent les scnarios qui permettre lapprenant de consulter un objet pdagogique et soumettre un travail. Laffichage dun cours : Quand un apprenant dcide de consulter un cours, le service Web de consultation des cours et preuves affiche le sommaire des cours, et attend une requte de lapprenant pour afficher lactivit spcifique.

Page 74 -

Chapitre3:LaConception

Figure 30 : Diagramme de squence daffichage dun cours.

Page 75 -

Chapitre3:LaConception 3.10 Conclusion


Dans cette partie consacre la conception de la plateforme e-Learning base sur les services Web, nous avons propos une architecture gnrale avec les dfinitions et lauthentification des diffrents composants et acteurs. Aussi nous avons mis en relief le fonctionnement, lorganisation et linteraction entre les diffrents acteurs et les services Web. En dernire partie de ce chapitre, nous avons prsent une modlisation gnrale de la plateforme avec lutilisation dUML comme tant un langage de modlisation dobjet unifi. Le chapitre suivant portera sur la concrtisation de cette architecture par linstallation et la configuration dun serveur dapplication, dun registre UDDI et la mise en uvre des diffrents services Web et leur interoprabilit.

Page 76 -

Chapitre4:LaRalisation

Chapitre 4
La Ralisation
4.1 Introduction
Dans ltude conceptuelle nous avons expliqu notre systme avec ses diffrents services Web ; maintenant, nous allons le dtailler avec ltape de la ralisation. En outre, la ralisation concerne aussi le dploiement de lapplication dans son environnement rel. Nous allons prsenter limplmentation et la mise en uvre de ces Service Web. Nous prsenterons en premier les langages et le SGBD utiliss dans la ralisation, puis les diffrentes interfaces de lutilisateur, ainsi que chacune de leurs fonctionnalits.

4.2 Prsentation des outils de dveloppement


4.2.1 Prsentation de la plateforme de dveloppement J2EE
La plateforme J2EE est un ensemble de spcifications conues par Sun Microsystems avec la concurrence dun ensemble de leaders mondiaux du logiciel comme : Oracle, IBM, BEA. Borlandetc. Son objectif est doffrir une souplesse dans le dcoupage naturel des applications en : logique de prsentation des donne, logique mtier et logique daccs aux ressources externes. J2EE est le moyen doffrir des briques supplmentaires sur le JDK offrant la possibilit davoir des applications entreprise distribues ouvertes sur linternet, qui sinscrivent dans les architectures multi niveaux.

Page - 77

Chapitre4:LaRalisation

4.2.2 Prsentation du JSP


Les pages Web JSP sont une technologie dveloppe par Sun base sur Java qui simplifie le processus de dveloppement de sites web dynamiques. L'utilisation du langage de programmation Java permet aux concepteurs de pages, qui utilisent JSP d'incorporer rapidement des lments dynamiques dans les pages web en intgrant du code Java, et en utilisant quelques balises (tags) simples. Ces balises fournissent aux dveloppeurs HTML la possibilit d'utiliser le logique objet Java, sans pour autant devoir matriser toute la complexit de dveloppement de programmes Java. JSP est un langage script ct serveur. Les raisons qui nous ont amenes de choisir les JSP (parmi dautres technologies comme les Servlets,etc.) pour raliser notre application cliente sont nombreuses, nous pouvons en citer les suivantes : Puisque on a dvelopp des services Web en Java, donc on a choisit les pages JSP pour la cration de lapplication cliente qui va interroger les diffrents services Web, grce aux messages SOAP pour envoyer les requtes et afficher les rponses. JSP est facile apprendre, il suffit de connaitre bien HTML et le langage Java pour crer des pages JSP. JSP est multiplateforme. Il fonctionne sous Windows, Linux, etc.

4.2.3 Prsentation du JavaScript


JavaScript est un langage de script orient objet utilis pour le dveloppement d'applications Internet. Ce langage a t dvelopp par la socit Netscape Corporation, qui l'a introduit, pour la premire fois dans son Navigator 2.0 en 1996. L'intrt d'un langage comme JavaScript est de pouvoir contrler dynamiquement le comportement d'un page Web. Aujourdhui, JavaScript est le langage le plus couramment utilis par les crateurs de pages Web afin de les animer. Il est facile apprendre, surtout pour les personnes ayant des notions en langage C, facile dbugger et indpendant de la plateforme. Page - 78

Chapitre4:LaRalisation

4.3 Description de serveur dapplication Apache Tomcat


Il joue le rle de conteneur JSP/Servlet qui permet sa connexion avec un serveur Web de dlivrer du contenu dynamique aux clients. Il est dvelopp sous la licence dApache, dans le cadre du groupe de projet Jakarta. Les raisons ayant motiv ce choix sont : Logiciel open source, Implmentation rapide des dernires spcifications des JSP/Servlet et Larges utilisations dans la communaut JAVA/J2EE en prototypage, il est ouvert et portable, contrairement au serveur Microsoft IIS. De plus, il est considr comme stable et scuris. Le serveur dapplication pourra tre remplac par un serveur de plus grande envergure, comme (Oracle OS, IBM WebSphere, BEA WebLogic,) pour une utilisation ncessitant un plus grand niveau de disponibilit. La version du serveur utilise dans le projet est Tomcat 5.0.18.

4.4 Description du serveur de base de donnes MySQL


MySQL est un vritable serveur de base de donnes SQL multiutilisateur et multithread. SQL est le plus populaire langage de base de donnes dans le monde. SQL est un langage standardis qui rend facile le stockage, la mise jour et laccs linformation. Par exemple, vous pouvez utiliser SQL pour rcuprer des informations sur un produit ou stocker des informations clients sur un site Web. MySQL est suffisamment rapide et flexible pour grer des historiques et des images. Il lavantage dtre portable, cest--dire, il est compil sur plusieurs plateformes comme Windows, Linux,etc. de plus, il est facile utiliser, standard (utilise SQL) et open source.

Page - 79

Chapitre4:LaRalisation

4.5 Implmentation des services Web de la plateforme


4.5.1 Aperu technique dune plateforme e-Learning distribue dans le Web
Dans ltude conceptuelle, on a dvelopp larchitecture dune plateforme e-Learning qui est compose par des services Web qui vont tre dploys sur le Web et peuvent tre invoqus par une application cliente. Schmatiquement, la mise en uvre de notre plate forme eLearning sur le rseau est la suivante :

Figure 31 : Schma technique illustrant larchitecture mise en uvre.

Page - 80

Chapitre4:LaRalisation

Les messages envoys entre les diffrents PC sont expliqus comme suit : 1. Le client envoie une requte HTTP depuis un navigateur Internet pour spcifier ladresse IP de PC2. 2. SOAP requeste. 3. SOAP reponse. 4. PC2 envoie une rponse HTTP au PC client qui concerne sa requte. La mise en uvre de cette architecture ncessite la configuration et ladaptation du PC (2) qui reprsente le serveur de lapplication client et du PC(3) qui reprsente le serveur des services Web auxquels, il faut installer un serveur dapplication Apache Tomcat ou serveur de base de donnes MySQL, et faire intgrer les packages AXIS, SOAP, WSDL et UDDI, ainsi que les Bibliothques Java. La configuration de chaque PC sera dtaille ainsi : La partie serveur dapplication client : Dans cette partie, lapplication client est dploye, qui ncessite : Linstallation dun serveur Apache Tomcat. Lintgration dans le serveur les package AXIS et SOAP. Le dploiement de lapplication client dans ce serveur grce un module Web. La partie serveur des services Web : La configuration de cette partie est ncessaire pour le bon droulement de la plateforme pour cela, on a recours : Linstallation dun serveur Apache Tomcat. Linstallation dun serveur de base de donne MySQL et le configurer Lintgration dans le serveur les package suivant : AXIS, SOAP, WSDL et UDDI. Le dploiement des services Web dans le module AXIS (qui est plac dans le serveur Apache Tomcat). Page - 81

Chapitre4:LaRalisation

Une fois ces configurations ralises; il faut dtailler le fonctionnement intrinsque de chaque cot, dune part le cot client reprsent par le serveur dapplication, et dautre part le cot serveur reprsent par le serveur des servies web. Le fonctionnement du serveur dapplication client : Ce fonctionnement est dtaill comme suit : Les messages envoys au serveur seront des requtes SOAP-XML enveloppes dans des requtes HTTP. De mme, les rponses du serveur sont des rponses HTTP qui renferment des rponses SOAP-XML. Du cot client, pour ne pas prendre en charge la srialisation SOAP et lencodage HTTP nous avons dj intgr un package SOAP spcifique. Nous invoquons ensuite le service, simplement en invoquant la mthode approprie (typiquement en spcifiant lURL du service, le nom du service et tous les paramtres requis). Le premier travail dun package est de srialiser linvocation de ce service en requte SOAP. Il doit ensuite encoder ce message dans une requte HTTP et lenvoyer lURL spcifie. Nous verrons la faon dont le serveur des services Web traite la requte, mais pour lheure, il nous renvoie le message encod HTTP contenant la rponse SOAP. Nous excutons le mme procd pour raliser lopration inverse qui consiste dcoder le message HTTP et extraire le message SAOP, ensuite dsrialiser le message SOAP et obtenir la valeur de retour de lappel de la mthode. Le fonctionnement du serveur des services Web : Le fonctionnement du cot serveur des services Web est le suivant : Le serveur Apache Tomcat o sont dploys les services Web, et il est lcoute des requtes HTTP envoy par lapplication client. Page - 82

Chapitre4:LaRalisation

Aprs quune requte HTTP est reue, le module SOAP intgr dans le serveur fait extraire le message SOAP-XML de la requte HTTP, il le dsrialise et fait sparer le nom de la mthode et les paramtres fournis, puis il invoque la mthode du service en consquence. Aprs traitement des donnes par le service, le rsultat de la mthode est alors srialis, encod en HTTP, et puis renvoy au demandeur.

4.6 Prsentation de limplmentation des services Web


Prsentation des classes Java
On prsente les mthodes pour lensemble des classes Java qui correspondant chacune un service Web bien dtermin : Classe ServiceGestionProfil : la figure suivante illustre les diffrentes mthodes de cette classe.

Cette classe renferme un ensemble des mthodes pour tablir la connexion avec la base de donnes dans la plateforme, comme : ServiceGestionProfil(),lire(Stringrequte ), miseAJour(Stringrequte). Et lappel au service Web de gestion des

utilisateurs AppelGestionUtilisateur().

comme :

Figure 32 : Structure de la classe ServiceGestionprofil. Page - 83

Chapitre4:LaRalisation

Classe ServiceGestionUtilisateur : la figure suivante illustre les diffrentes mthodes de cette classe.

Lensemble des mthodes de cette classe permettent de raliser la gestion des utilisateurs, suppression, pour la linscription, modification comme : la et

lauthentification, Suppression(),

Inscription(), et

Modification()

Authentification(),etc. pour rcuperer des

Des mthodes informatuons qui

converne lutilisateur, comme : getNom(), setNom(),etc. Ainsi la mthode dappel au service Web de gestion des profils : AppelGestionprofil().

Figure 33 : Structure de la classe ServiceGestionUtilisateur. Classe ServiceCreationcours : la figure suivante illustre les diffrentes mthodes de cette classe.

Page - 84

Chapitre4:LaRalisation

Ces mthodes permettent de faire la cration des cours et exercices, comme : sauvegarder(), afficher

(String mot), ainsi lappel au service Web AppelIerrogation(). dinterrogation

Figure 34 : Structure de la classe ServiceCreationCours. Classe ServiceConsultationProfil : les mthodes de cette classe sont illustres par la figure suivante :

Page - 85

Chapitre4:LaRalisation

Ces mthodes permettent la consultation les profils des utilisateurs, comme : affichage(), afficher(String mot),etc. Et la mthode dappel au service Web de gestion des profils AppelGestionProfil().

Figure 35 : Structure de la classe ServiceConsultationProfil. Classe ServiceSuivieApprenant : les mthodes de cette classe sont illustres par la figure suivante :

Ces mthodes permettent deffectuer des valuations pour les preuves et les exercices raliss par les apprenants, comme : lister(), listage(String mot), entiere()etc. Et

la mthode dappel au service Web de gestion des profils AppelGestionProfil().

Figure 36 : Structure de la classe ServiceSuivieApprenant.

Page - 86

Chapitre4:LaRalisation

Classe ServiceConsultationCours : les mthodes de cette classe sont illustres par la figure suivante :

Ces

mthodes

permettent

de

rcuprer et dafficher les cours aux apprenants, comme : rechercher(), visualiser(), envoyer(),etc. Ainsi lappel au service Web de gestion des profils AppelGestionProfil(), et service Web de suivie les

apprenants AppelSuivieApprenant().

Figure 37 : Structure de la classe ServiceConsultationCours. Classe ServiceInterrogation : les mthodes de cette classe sont illustres par la figure suivante :

Page - 87

Chapitre4:LaRalisation

Figure 38 : Structure de la classe ServiceInterrogation. Ces mthodes permettent de rechercher des ressources

pdagogiques pour les requtes des utilisateurs dans la base de donnes dans notre plateforme, comme : ajouter(), name(),

link(),motcle(),...etc.

4.7 Implmentation des interfaces et fonctionnalits de lapplication client


Dans cette partie, nous allons prsenter quelques interfaces et fonctionnalits de notre plateforme.

Page - 88

Chapitre4:LaRalisation

4.7.1 Page daccueil


Pour pouvoir accder notre site, lutilisateur doit passer par une premire interface, ou plutt une page daccueil qui contient une liste de choix, par lesquels, il peut accder la ou les rubriques qui lintressent. Cette page daccueil se prsente comme suit :

2
2

4 4

Figure 39 : Page daccueil. A partir de la page daccueil, lutilisateur peut : 1. Consulter lensemble des cours disponibles dans la plateforme grce au bouton Voir Catalogue . 2. Prinscrire la plateforme selon son profil (enseignant ou apprenant) grce au bouton Inscription .

Page - 89

Chapitre4:LaRalisation

3. Accder la plateforme avec son login, son mot de passe et son profil (Administrateur, Enseignant et Apprenant) grce au bouton Connexion . 4. Rechercher des ressources pdagogiques grce au bouton Recherche UDDI .

4.7.2 Interfaces communes


Linscription : Pour avoir une session dans la plateforme, un nouvel acteur doit passer par ltape de pr inscription, ou il doit entrer ces informations et attendre que ladministrateur valide cette inscription, et lui envoie un mail pour linformer. Un utilisateur peut tre un apprenant ou un enseignant, si la prinscription passe sans problme alors une autre page saffiche pour confirmer la prinscription. La Figure suivante montre linterface dinscription.

11 2
2

Figure 40 : Interface dinscription. Page - 90

Chapitre4:LaRalisation

A partir de la page dinscription, lutilisateur peut : 1. Revenir la page daccueil. 2. Contacter ladministrateur sil a des problmes lors de linscription ( il peut contacter ladministrateur par email ). Lauthentification : La connexion dun utilisateur dans la plateforme se fait comme suit : chaque utilisateur doit sidentifier en saisissant, dans linterface de connexion (Voir la Figure ci-dessous), son login, son mot de passe et son profil. La vrification de ces informations se fait grce au service Web de gestion des utilisateurs, qui soccupe aussi de la vrification de lidentit des acteurs et ceci afin dautoriser ou de refuser les accs aux ressources de la plateforme. Le service Web de gestion des utilisateurs vrifie si ces informations existent dans la base de donnes de la plateforme, laide dutilisation du service Web de gestion des profils et quelles correspondent les unes aux autres, le systme affiche linterface correspondant lutilisateur selon son profil, sinon le systme affiche linterface dinscription dans la plateforme.

1 2

Figure 41 : Interface dauthentification dans la plateforme. A partir de linterface de connexion, un utilisateur peut : Page - 91

Chapitre4:LaRalisation

1. Revenir la page daccueil pour inscrire si cela na pas t fait. 2. Contacter ladministrateur sil a des problmes, par mail. La scurit du systme : Pour scuriser notre plateforme, nous avons pris les prcautions suivantes : Chaque utilisateur possde un seul login et un seul mot de passe dans le mme profil. Les mots de passe des utilisateurs sont crypts avant dtre sauvegards dans la base de donnes. La cration dune session JSP pour chaque acteur de la plateforme. Les sessions JSP sont un moyen sur et fiable pour lauthentification et la personnalisation des pages Web dynamique. Un poste naccepte la connexion que dun seul utilisateur la fois. Cette restriction nous permettra de mieux suivre chaque apprenant individuellement, par exemple, si deux apprenants utilisent le mme poste, le temps de connexion sauvegard pour chacun dentre eux sera erron.

4.7.3 Interfaces propres chaque utilisateur


Interface de ladministrateur : La figure suivante illustre linterface propre ladministrateur, ainsi que les diffrentes fonctionnalits que lui offre la plateforme.

Page - 92

Chapitre4:LaRalisation

11 22
3

44

Figure 42 : Interface de ladministrateur. Les fonctionnalits spcifiques ladministrateur sont : 1. La gestion des utilisateurs : suppression et modification des comptes des utilisateurs. 2. Laccs aux profils des utilisateurs pour consulter les statistiques sur lactivit des utilisateurs dans la plateforme. 3. La gestion des utilisateurs pour la validation de la prinscription ou linscription des nouveaux utilisateurs. 4. Revenir au page daccueil. Interface de lenseignant : Lenseignant dispose de fonctionnalits lui permettant de crer des cours, laccs aux tableaux de bord des apprenants pour un cours donn. En plus, il peut consulter les cours quil enseigne, proposer des travaux et valuer des apprenants. Linterface suivante illustre les diffrentes tches dont dispose lenseignant. Page - 93

Chapitre4:LaRalisation

4 5

Figure 43 : Interface de lenseignant. Les fonctionnalits spcifiques lenseignant sont : 1. La cration des cours et des preuves pour les diffrents apprenants. 2. Le suivi des apprenants inscrits dans son cours en accdant leurs rsultats. 3. La consultation des notes pour les apprenants inscrits dans son cours. 4. Revenir la page daccueil. 5. Contacter ladministrateur sil a des problmes, il peut contacter ladministrateur par email. La figure suivante illustre la cration dun cours et exercice par en enseignant :

Page - 94

Chapitre4:LaRalisation

Figure 44 : Interface de cration des cours et des exercices. A partir de linterface de cration des cours et exercices, lenseignant peut : 1. Revenir la page daccueil. 2. Contacter ladministrateur sil a des problmes, par email. Interface de lapprenant : linterface de lapprenant est dcrite par la figure suivante, qui rsume les fonctionnalits qui lui sont fournies par la plateforme. Par exemple, la consultation des cours, la ralisation des exercices et preuves et laccs sa progression (le tableau du bord).

Page - 95

Chapitre4:LaRalisation

1 2 3

5 6

Figure 45 : Interface de lapprenant. Les fonctionnalits spcifiques lapprenant sont : 1. La consultation de lensemble des modules dans la plateforme. 2. La consultation des cours. 3. La consultation des cours et exercices. 4. Le suivi de sa progression (consultation du tableau de bord). 5. Revenir la page daccueil. 6. Contacter ladministrateur sil a des problmes lors de linscription, il peut contacter ladministrateur par mail.

Page - 96

Chapitre4:LaRalisation

Interface pour la recherche dans le registre UDDI :

Figure 46 : page daccueil de registre UDDI.

Description :
1. Compte : Voir mes services Web : Lien vers la page qui permet dajouter, modifier ou supprimer un service Web. 2. Recherche service : Lien vers la page qui permet de rechercher un service Web.

Page - 97

Chapitre4:LaRalisation

Figure 47 : Interface de recherche dun service Web. Description : Rechercher : Recherche les services Web dont le nom contient la chane de caractre entrez par lutilisateur.

Page - 98

Chapitre4:LaRalisation

Figure 48 : Interface de rsultat de la recherche dun service Web dans le registre UDDI. Description de linterface : Nom : Nom du service Web. Description : Description du service Web. Point daccs : Lien (URL) vers le fichier (.wsdl) contenant la spcification de linterface du service Web offert. Modifier service : Appel la page resultatAjouterServiceWeb.jsp qui affichera le rsultat de la recherche. Supprimer service : Efface les informations entrez dans le formulaire.

Page - 99

Chapitre4:LaRalisation

Figure 49 : Interface pour ajouter un service Web.

Description de linterface :
Le Nom du Service : Nom du service Web. La description : Description du service Web. Le point daccs : Lien (URL) vers le fichier (.wsdl) contenant la spcification de linterface du service Web offert. Le mot cl : contient le nom ou bien une partie du nom de service Web. Ajouter Service : permet dajouter le service Web dans le registre UUDI.

Page - 100

Chapitre4:LaRalisation

4.8 Conclusion
Notre plateforme reprsente un environnement dapprentissage distribu sur le Web, mettant en uvre plusieurs fonctionnalits bases sur les services Web. Des tests et des essais ont t effectus sur notre plateforme afin de vrifier sa fiabilit et sa stabilit. Toutefois, nous devons reconnaitre que notre plateforme ne montrera ses qualits et son efficacit, que dans un environnement rel, c'est--dire dploye sur le Web, avec de vrais acteurs. Pour cela, une exprimentation relle devrait tre effectue.

Page - 101

ConclusionGnrale

Conclusion Gnrale
Le but fix notre travail tait de raliser et de dvelopper une plateforme assez complte dans son architecture, simple dans sa composition, abordable dans son utilisation, intgrant le plus de fonctionnalits, qui permettent de couvrir un cycle dapprentissage complet et offrant aux utilisateurs une panoplie doutils, et de facilits qui permettent chacun daccomplir son rle par notre systme. Le-Learning est dcrit comme lunion du multimdia (son, image, texte) et de l'Internet, pour lequel de nombreuses plateformes sont prsentes, et de nombreux projets de recherche sont en cours de dveloppement. Les plateformes existantes se ressemblent par leurs fonctionnalits et leurs architectures centralises et fermes. Par inspiration de ces plateformes et par le dveloppement induit par lintitul de cette tude, nous avons prsent larchitecture dune plateforme ouverte, distribue et flexible dun environnement d'apprentissage base de services Web, o laccs ne peut tre quindividuel c'est--dire grce lauthentification. Cette architecture est compose dun ensemble de services Web distribus sur le Web. Chaque service Web peut tre dupliqu (avoir plusieurs instances ayant le mme rle). Lavantage de lutilisation des services Web permet davoir une plateforme flexible dans la gestion du profil des acteurs et des contenus pdagogiques, distribue sur plusieurs serveurs, extensible par lappel dautres services Web, ainsi quune interoprabilit entre eux, sans omettre dajouter que la complmentarit entre services Web gnre de nouvelles fonctionnalits. Les services Web de notre plateforme peuvent tre utiliss par dautres environnements, et il est possible dintgrer dautres services Web partir dautres environnements. La communication entre les services Web est ralise par un protocole de haut niveau appel SOAP qui doit assurer l'interoprabilit des services Web, limplmentation dun annuaire UDDI qui permet l'utilisation des services Web externes la plateforme.

ConclusionGnrale
Actuellement, lutilisation des services Web est de plus sollicite dans le dveloppement des applications distribues grce au dveloppement des technologies de plus en plus performantes, rpondant lexigence des demandes formules par les utilisateurs ; ce qui a amen de grandes entreprises crer et publier des services Web propres leurs besoins ainsi qu ceux des demandeurs. Cependant que la plateforme offre beaucoup de fonctionnalits ses utilisateurs, certaines amliorations doivent tre apportes afin lenrichir et den faire un systme complet et performant. Nous en citons titre dexemple les amliorations suivantes : Lintgration dun module Web pour la dcouverte des services Web. Ce module se charge de faire la slection, la classification entre les services Web selon des paramtres de profil et de choix du client entre des services Web favorables, afin de rendre la recherche dans lannuaire UDDI plus prcise pour faciliter laccs des services personnaliss. Lamlioration des relations des services Web avec lannuaire UDDI ; en offrant la possibilit aux services Web dinvoquer le registre UDDI automatiquement ; cest-dire que lorsquun service Web a besoin dune fonctionnalit manquante, il va la cherch au niveau du registre UDDI sans lintervention de lutilisateur ou du dveloppeur. Offrir la possibilit pour que des canaux de communication entre plusieurs registres UDDI soient tablis ; c'est--dire offrir la possibilit pour que lopration de recherche seffectue dans un rseau de registres dUDDI dploys dans le Web et qui se reconnaissent. Rendre les fonctionnalits servies par les services Web plus interactifs enrichis dune prsentation conviviale en amliorant ces contenus et les interfaces.

Bibliographie

Bibliographie
[Are06] Nerea Arenaza, Composition semi-automatique des Web Services, Projet de Master, Ecole Polytechnique Fdrale de Lausane, fvrier 2006. [Asc03] Gilles Ascione, LES LEARNING MANAGEMENT SYSTEMS (LMS), Solutions logicielles de gestion de la formation, dition Wellesley Road, 2003. [Aub05] Sterenn AUBERT, Le e-Learning adaptatif, Rapport de stage, Universit de Nice Sophia-Antipolis, juin 2005. [Bad05] Lyes Badis & Tarek Merzouk, Systme dinterrogation dune collection de documents structur XML, Mmoire de fin dtude, Pour lobtention du diplme dingnieur dtat en informatique, 2005. [Ben05] Ahcene BENAYACHE, Construction d'une mmoire organisationnelle de formation et valuation dans un contexte e-Learning, Thse de Doctorat, luniversit de technologie de compiegne, le 5 dcembre 2005. [Bous04] Nabila Bousbia, Contribution thorique et mthodologique llaboration dun environnement de FOAD, mmoire de magister 2004. [Bry04] Sean Brydon & Beth Stearns, Designing Web Services with the J2EE 1.4 Platform JAX-RPC, SOAP, and XML Technologies, dition Addison Wesley, le 9 juin 2004. [Cer02] Ethan Cerami, Web Services Essentials, dition O'Reilly, fvrier 2002. [Cha03] Sandeep Chatterjee & James Webber, Developing Enterprise Web Services, dition Prentice Hall PTR, le 14 novembre 2003. [Cha02] David Chappell & Tyler Jewell, Java Web Service, dition O'Reilly, Mars 2002. [Chi04] Roberto Chinnici & Martin Gudgin, Web Services Description Language, dition W3C, 22 aout 2004. [Cou02] Carine COURBIS, Technologies XML programmation par aspects et composants, Thse de Doctorat, LUNIVERSIT DE NICE SOPHIA-ANTIPOLIS, le 10 dcembre 2002. [Dur06] Guillaume DURAND, La scnarisation de l'valuation des activits pdagogiques utilisant les Environnements Informatiques dApprentissage Humain, Thse de Doctorat, Universit de Savoie, le 24 octobre 2006. [Gar02] Georges Gardien, XML des bases de donnes aux Services Web, dition Dunod, 2002.

Bibliographie
[Gae05] Gael Bodet & Sabrina Daoud & Pierre-Henri Amalric, e-Learning Comment russir la mise en place dun projet e-Learning, dition X-PERTEAM, le 25 fvrier 2005. [Ges03] Xavier Gesnu, Dvelopper des Services Web XML et des composants serveurs, dition Dunod, 2003. [Got03] Gottfried Vossen & Peter Westerkamp, E-Learning as a Web Service, Universit de Munster, 2003. [Kre01] Heather Kreger, Web Service Conceptual Architecture, dition IBM Software Group, maie 2001. [Leb03] Michel Leblanc & Gilbert Babin, Les Web Services et leurs compact B to B, CIRANO : Centre Interuniversitaire de Recherche en Analyse des Organisations, Aot 2003. [Lop05] Denivaldo Cicero Pavo Lopes, Etude et applications de lapproche MDA pour des plates-formes de Services Web, Thse de Doctorat, lUFR Sciences et Techniques, Universit de Nantes, le 11 juillet 2005. [Mad05] Ivan Madjarov, Des services web pour le e-Learning, Laboratoire des Sciences de lInformation et des Systmes Maroc, le 28 octobre 2005. [Mel04] Tarek Melliti, Interoprabilit des Services Web complexes, Thse de Doctorat, Universit Paris IX Dauphine, le 8 dcembre 2004. [New04] Eric Newcomere, Understanding Web Services Xml WSDL SOAP And UDDI, dition O'Reilly, 2004. [Pat04] Patrick Kellert et Farouk Toumani, Les Web Services smantiques,

http://www.isima.fr/limos/, 2004. [Pamu04] Pierre Alain Muller, La gense dUML, 2004. [Pon04] Julien Ponge, Comptabilit et substitution dynamique des Web Services, Mmoire de fin dtude, Universit Blaise Pascal Clermont II, Juillet 2004. [Rem06] Mostafa Remadna & Abderrahim Bouziane, Un modle XML pour les applications coraniques, Mmoire de fin dtude, Pour lobtention du diplme dingnieur dtat en informatique, 2006. [Rgiu04] J.Rumbaugh, G.Booch, I.Jacobson, Unified Modelling Language, Langage unifi pour la modlisation objet, 2004. [Ric04] Ricardo DE LA ROSA-ROSERO, Dcouverte et Slection de Services Web pour une application Mlusine, lInstitut dInformatique et de Mathmatiques Appliques de Grenoble, le 15 septembre 2004. [Sab01] Emmanuel Sabbagh, Dveloppement dune mthode dvaluation des plates-formes de e-formation et valuation de la plate-forme WebCT, Mmoire de fin dtude pour

Bibliographie
lobtention du diplme de baccalaurat en ingnierie, cole Polytechnique de Montral, le 3 Octobre 2001. [Sco02] Scott Short, Construire des Services Web XML, dition Dunod, 2002. [Tid01] Doug Tidwell & James Snell & Pavel Kulchenko, Programming Web Services with SOAP, dition O'Reilly, dcembre 2001. [Vil02] Marlne VILLANOVA-OLIVER, Adaptabilit dans les systmes dinformation sur le web Modlisation et mise en uvre de laccs progressif, Thse de Doctorat, Institut National Polytechnique de Grenoble, le 18 dcembre 2002. [Via06] Maxime Vialette, Web services, http://www.labo-sun.com/, le 8 mars 2006. [Wee05] Sanjiva Weerawarana & Francisco Curbera, Web Services Platform Architecture SOAP, WSDL, WS-Policy, WS-Addressing, WS-BPEL, WS-Reliable Messaging, and More, dition Prentice Hall PTR, le 22 mars 2005. [Zast02] Zakaria Chahnez, Stanboul Mohamed Yacine, Conception et Ralisation dun Systme dinformation pour la gestion de cours mditiss, Mmoire de fin dtude, Pour lobtention du diplme dingnieur dtat en informatique, 2002.

AnnexeA:UML

Annexe A UML
Unified Modeling Language.

A.1 A quoi sert UML ? [Pamu04]


UML permet de dfinir et de visualiser un modle, l'aide de diagrammes. Un diagramme UML est une reprsentation graphique, qui s'intresse un aspect prcis du modle; c'est une perspective du modle, pas "le modle". Chaque type de diagramme UML possde une structure (les types des lments de modlisation qui le composent sont prdfinis). Un type de diagramme UML vhicule une smantique prcise (un type de diagramme offre toujours la mme vue d'un systme). Combines, les diffrents types de diagrammes UML offrent une vue complte des aspects statiques et dynamiques d'un systme. Par extension et abus de langage, un diagramme UML est aussi un modle (un diagramme modlise un aspect du modle global). UML est un langage graphique et repose sur neuf types de diagrammes. Chacun de ces diagrammes utilise le mme principe : les concepts sont reprsents par des symboles, et les relations entre les concepts sont reprsentes par des lignes qui relient les symboles. Dans ce qui suit nous allons prsenter les diagrammes les plus utiliss dans la modlisation et conception dun systme dinformation distribue sur lInternet.

A.2 Les diagrammes des cas d'utilisation [Rgiu04, Pamu04]


Les cas d'utilisation dcrivent le comportement du systme du point de vue de lutilisateur. Ils permettent de dfinir les limites du systme et les relations entre le systme et son environnement. Un cas d'utilisation est une manire spcifique d'utiliser le systme. C'est l'image d'une fonctionnalit dclenche en rponse la stimulation d'un acteur externe. Ils permettent de centrer la construction du systme sur les besoins des utilisateurs. II existe deux concepts fondamentaux dans les cas d'utilisation : Les acteurs qui utilisent le systme : Acteurs primaires qui sont la raison de l'existence de ce systme. Acteurs secondaires qui ont des rles d'administration et qui lui fournissent toutes les

AnnexeA:UML
informations ncessaires son bon fonctionnement. Les use cases qui reprsentent l'utilisation du systme par les acteurs. Les diagrammes font intervenir les acteurs, les autres systmes et les cas d'utilisation eux mmes. Systme

Figure A : Reprsentation graphique d'un cas d'utilisation [Pamu04].

II peut exister des relations entre les cas d'utilisation que lon reprsente au moyen de strotypes : Le cas d'utilisation peut utiliser un autre cas d'utilisation et on le dnote par une relation de type uses, Le cas d'utilisation peut tendre un autre cas d'utilisation et on le dnote par une relation de type Extend .

A.3 Les diagrammes de classes [Rgiu04, Pamu04]


Ces diagrammes dcrivent l'architecture du systme. On y reprsente les classes et les relations entre classes, qu'elles soient d'hritage, d'agrgation,etc.

AnnexeA:UML

Figure B : Reprsentation graphique d'un diagramme de classes [Rgiu04]. Notation Package Signification Un regroupement de classes, d'associations et ventuellement d'autres parquetages, qui correspondent a une fonctionnalit dfinie et commune. Association 1* En langage UML quand une association est porteuse d'attributs, elle devient une classe association. Package 1 : Entit 4 Une entit peut tre reprsente dans plusieurs packages, il faut juste indiquer son package d'appartenance. Agrgation Association trs forte, utilise pour montrer que toute modification effectue sur l'agrgat entranera une modification sur les objets agrgs.

Tableau 1 : Elments de base d'un digramme de classe [Rgiu04].

AnnexeA:UML A.4 Les diagrammes d'tats [Bous04, Zast02]


C'est un automate d'tats finis, compose de transitions, d'vnement et d'activits. II reprsente la vue dynamique du systme par la dtermination du comportement des objets d'une classe en termes d'tats et de transitions d'tats. Ce diagramme est reprsent par un graphe constitue de nuds dcrivant des tats ainsi que des flches reprsentant des transitions portant des paramtres et des noms d'vnements.

Figure C : Reprsentation graphique d'un diagramme d'tats [Zast02].

Le diagramme d'tats est propre une classe donne, il doit tre construit pour les objets de l'application ayant un comportement non trivial. Un tat est une situation. Une transition est une relation entre deux tats signifiant qu'un passage de lun a l'autre est possible. En d'autres termes, c'est une relation oriente entre deux tats, a laquelle est attach un vnement et qui indique qu'un objet

AnnexeA:UML
dans le premier tat passera dans le second si certaines conditions sont remplies.

A.5 Les diagrammes de squences [Zast02]


Les diagrammes de squences illustrent les entits ainsi que les messages qu'elles s'changent, dans une procdure bien prcise. Donc, il y aura autant de scnarios que de procdures. Ces diagrammes seront classs par procdures et par acteurs.

Figure D : Reprsentation graphique d'un diagramme de squences [Zast02].

Notation Objet 1, 2, 3

Signification I1 peut tre une classe, une association ou un acteur externe, il peut mme tre une interface.

Evnement 1, 2, 4 Les vnements et messages mis et reus par les objets impliqus dans l'excution du scnario. Evnement 3 Son excution concerne un seul objet, il est stimule quand cet objet entre dans un tat. Tableau 2 : Elments de base dun diagramme de squences [Zast02].

AnnexeB:InstallationdunregistreUDDI

Annexe B
Installation dun registre UDDI
Prface
Dans le document qui suit : TOMCAT = rpertoire dinstallation de Tomcat (ex. c:\tomcat\). JUDDI = rpertoire dinstallation de JUDDI (en gnral : TOMCAT\webapps\juddi\). MYSQL = rpertoire dinstallation de mySQL (ex. c:\mySQL\).

Logiciels
Apache Tomcat 5.0.18 (http://jakarta.apache.org/tomcat/) JUDDI 0.9 rc1 (http://ws.apache.org/juddi/) MySQL 4.0 (http://www.mysql.com) MySQL JDBC Connector (http://www.mysql.com/products/connector/j/) AXIS (http://ws.apache.org/axis/) UDDI API (http://www.ruddi.biz/downloads.html)

Installation
Installer Apache Tomcat Web server. Pour installer Tomcat excuter le fichier Tomcat-5.0.exe (vous pouvez utiliser les options par dfault. Il est conseill dinstaller Tomcat en tant que service sous windows XP/NT). Si Tomcat est bien install vous devriez dans Internet explorer voir ladresse http://localhost:8080/ la page Web par dfaut de Tomcat. Assur-vous que la variables denvironment de Windows PATH contient les chemins suivant: TOMCAT\common\lib et TOMCAT\webapps\axis\WEB-INF\lib Installer mySQL. Dcompressez le fichier mysql-4.0.21-win.zip et excuter le fichier Setup.exe Installer mySQL comme service. la ligne de commande tapez : MYSQL\bin\mysqld-nt install Pour supprimer le service : MYSQL\bin\mysqld-nt --remove Dmarrer mySQL (control panel\Admin tools\ services). Ensuite, il faut crer le schma de la base de donnes et un utilisateur.

AnnexeB:InstallationdunregistreUDDI
1. Copier les fichiers du repertoire CD-ROM\Software\Script\ dans le rpertoire MYSQL\bin. 2. Modifier le fichier insertpu.sql. Ajouter autant de publisher et dutilisateur voulu. 3. Ouvrez une fentre DOS. 4. Tapez : 1. Positionner vous dans le rpertoire MYSQL\bin 2. Tapez : - mysql u root - source createdb.sql ; - source insertpu.sql; - exit - exit

Installer mySQL JDBC Driver. Dcompressez le fichier mysql-connector-java-3.0.15-ga.zip et copier le fichier mysql-connectorjava-3.0.15-ga-bin.jar dans le rpertoire TOMCAT\common\lib\. Installer JUDDI. Copier le fichier JUDDI\JUDDI.war du fichier juddi.zip dans le rpertoire TOMCAT\webapps\. Apache dcompressera le fichier .war . Redmarrer Tomcat. (Une structure de rpertoire sera automatiquement cre dans TOMCAT\webapps\juddi). Configurer le fichier JUDDI\WEB-INF\juddi.propertie. Si vous nutilis pas de proxy, mettez en commentaire (ajouter un # au dbut de la ligne) les lignes suivantes. Sinon modifier ces lignes pour quil reflte vos informations. juddi.httpProxySet = true juddi.httpProxyHost = proxy.viens.net juddi.httpProxyPort = 8000 juddi.httpProxyUserName = sviens juddi.httpProxyPassword = password

Ajouter le code suivant entre les balises < Logger className="org.apache.catalina.logger.FileLogger" . /> et </Host> la fin du fichier TOMCAT\conf\server.xml Ce code permet Tomcat de se connecter la base de donne mySQL.

AnnexeB:InstallationdunregistreUDDI

<Context path="/juddi" docBase="juddi" debug="5" reloadable="true" crossContext="true"> <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_juddiDB_log" suffix=".txt" timestamp="true"/> <Resource name="jdbc/juddiDB" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="jdbc/juddiDB"> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter> <!-- Maximum number of dB connections in pool. Make sure you configure your mysqld max_connections large enough to handle all of your db connections. Set to 0 for no limit. --> <parameter> <name>maxActive</name> <value>100</value> </parameter> <!-- Maximum number of idle dB connections to retain in pool. Set to 0 for no limit. --> <parameter> <name>maxIdle</name> <value>30</value> </parameter> <parameter> <name>maxWait</name> <value>10000</value> </parameter>

AnnexeB:InstallationdunregistreUDDI
<!-- MySQL dB username and password for dB connections --> <parameter> <name>username</name> <value>juddi</value> </parameter> <parameter> <name>password</name> <value>juddi</value> </parameter> <!-- Class name for mm.mysql JDBC driver --> <parameter> <name>driverClassName</name> <value>org.gjt.mm.mysql.Driver</value> </parameter> <!-- The JDBC connection url for connecting to your MySQL dB. The autoReconnect=true argument to the url makes sure that the mm.mysql JDBC Driver will automatically reconnect if mysqld closed the connection. mysqld by default closes idle connections after 8 hours. --> <parameter> <name>url</name> <value>jdbc:mysql://localhost:3306/jUDDI?autoReconnect=true </value> </parameter> </ResourceParams> </Context>

Redmarrez Tomcat. Pour tester la configuration : http://localhost:8080/juddi/happyjuddi.jsp Si aucune erreur nest affich tout devrait tre bien configur. Installer AXIS (permet de gnrer des fichiers .wsdl). Dcompressez le fichier axis-1_2beta3-bin.zip et copier le rpertoire \Axis dans le rpertoire TOMCAT\webapps\. Redmarrer Tomcat. (Vrifier quil ny a pas derreur : http://localhost:8080/axis/happyaxis.jsp) Installer lAPI de UDDI. Dcompressez le fichier ruddi-1.0-bin.zip et copier le fichier ruddi-1.0-bin.jar dans le rpertoire TOMCAT\common\lib . Le fichier ruddi-1.0-bin.jar contient les mthodes de lAPI ainsi que les documents javadocs ncessaires son utilisation. Vous pouvez utiliser cet API pour dvelopper votre propre code source. Installation du Browser UDDI. Dcompressez le fichier Browser.zip et copier tout les fichier dans le rpertoire JUDDI. Pour tester laccs au site : http://localhost:8080/juddi/.

AnnexeC:UDDI

Annexe C
UDDI
Universal Description Discovery and Integration.
UDDI est un standard dvelopp par le trio IBM, Microsoft et Ariba. UDDI est un registre de services Web sous format XML et il dfinit les mcanismes permettant de rpertorier les services Web. Il Rgit linformation relative : La publication, la dcouverte et lutilisation de service Web. Un registre peut tre de type priv, public ou partag. Il existe prsentement au moins 3 registres UDDI de type public en fonction prsentement, celui dIBM, Microsoft et SAP. Ces trois registres sont fonctionnel et peuvent tre accessible partir dInternet, ces registres utilisent la version 2 de UDDI. Ces registres sont configurs de faon pouvoir dupliquer linformation quils contiennent. Par exemple, si un utilisateur publie un service Web dans le registre dIBM, lorsque celui-ci se connectera au registre de Microsoft, il enverra linformation concernant le service Web ajout par lutilisateur au registre de Microsoft. Linformation se retrouve donc dans les 2 registres, ce qui permet aux gens utilisant un registre davoir accs linformation des 3 registres. Ces trois compagnies, sont prsentement en test de la version 3 dUDDI. UDDI (Universal Description, Discovery and Integration) est une spcification technique pour dcrire, dcouvrir et intgrer les services Web. La spcification des structures de donnes permet de dfini quels types de donne seront sauvegards dans UDDI tandis que la spcification de linterface dfinie comment accder au registre. Le registre UDDI permettra demmagasiner de linformation sur les entreprises et les services quelles offrent. Le protocole SOAP est utilis pour accder un registre UDDI. UDDI dfinie quatre types de structures de donnes :

AnnexeC:UDDI

BusinessEntity : Contient linformation sur lentreprise (structure principale dun registre UDDI) qui publie les services Web dans lannuaire, par exemple, Nom, Adresse, Numro de tlphone, Description, Coordonne,etc. BusinessService : Contient linformation sur un service Web ou un groupe de services Web publie par lentreprise, comme : Nom du service Web, Description, et Code. BindingTemplate : Contient linformation sur comment et ou accder un service Web spcifique, cest--dire est un ensemble dinformation concernant le lieu dhbergement le service Web, soit par un : Point daccs : URL (Document WSDL), Email, FTP, ou bien par un tModelInstanceDetails : rfrence a un tModel dans le registre UDDI. Il est gnralement un fichier WSDL dont lobjectif est de dfinir : les types utiliss par le service Web, et les oprations applicables au service Web et comment y accder. tModel : Reprsente lensemble dinformation concernant le mode daccs un service Web, et la spcification technique dans un registre UDDI. Utilis pour spcifi quun service Web respecte les contraintes dfinies dans le model (Standards) par un identificateur unique, ou bien par un pointeur vers une spcification. publisherAssertion : est un ensemble dinformations contractuelles entre partenaires dans le cadre dchanges commerciaux. Il existe deux APIs de programmation pour dialoguer avec un annuaire UDDI : API dinterrogation dans un annuaire : cela consiste effectuer des interrogations, des recherches dinformations, sur les entrs dun annuaire UDDI. Tout utilisateur a la possibilit deffectuer des recherches et donc de mettre en uvre cette API. API de publication dans un annuaire : pour permettre la publication ou la suppression de services Web au sein dun annuaire. Cette API impose des autorisations daccs et est destine aux fournisseurs de services Web et aux entreprises dsirant publier des informations les concernant. Les diffrents lments BusinessEntity, BusinessService, BindingTemplate et tModel peuvent tre accessibles partir des diffrentes mthodes suivantes de leur API.

AnnexeC:UDDI

Tableau 4 : les APIs dinterrogation et de publication dans un annuaire UDDI. Les personnes ayant accs au registre pourront via une interface (Internet Explorer par exemple) publier ou rechercher un service Web, qui convient leurs attentes ou leur entreprise dans le registre UDDI, et obtenir les mtas donns ncessaire son utilisation. Chaque service Web rfrenc est reprsent par une structure bindingTemplate. L'invocation d'un service Web s'effectue gnralement sur la base d'informations fournies par une structure bindingTemplate mise au pralable en cache. Le scnario d'utilisation d'UDDI fin de rdiger un programme d'appel d'un service Web spcifique se prsente alors de la manire suivante :

Le dveloppeur utilise l'annuaire professionnel UDDI pour retrouver l'information enregistre sur l'entreprise ou sur le partenaire qui dclare le service Web : information businessEntity.

Le dveloppeur rentre au choix plus en dtail dans une structure businessService ou demande une structure complte businessEntity, puis slectionne un bindingTemplate particulier.

AnnexeC:UDDI

En se basant sur le bindingTemplate, le dveloppeur obtient de l'information sur les spcifications du service Web au travers des structures tModel rfrences par une cl unique contenu dans l'attribut tModelKey. Une fois connu le lien vers le WSDL, le recours l'assistant de Web service permet de "dcouvrir" le service Web.

En gnral, les appels au service distant fonctionneront correctement, les cas particuliers d'checs et les moyens d'y faire face sont explicits ci-dessous.

Vous aimerez peut-être aussi