Vous êtes sur la page 1sur 114

Ecole Supérieure des Sciences et Techniques de Tunis

Réf : MI 05/09

pour
our obtenir le

Diplôme de Maîtrise en Informatique

présenté et soutenu publiquement le 18 Mai 2009
présenté

par

Marouene HADDAD & Marouene MEJRI

Composition du jury

Madame Yossra BEN DALI HLAOUI Président
Présidente
Monsieur Abdallah MISSAOUI Rapporteur
Monsieur Fethi ESSE
ESSELMI
LMI Encadreur

À ma mère,
Pour l’amour qu’elle me porte et pour son encouragement qu’elle m’a apporté au
cours de ce projet, qu’elle trouve dans ce travail le témoignage de ma profonde
gratitude et mon infini dévouement.

À mon père,
À qui je dois tout et dont l’affectation, le dévouement et les encouragements ont
été pour moi le meilleur gage de réussite. Je lui dédie ce travail en témoignage de
mon grand amour et reconnaissance infinie.

À mon frère et mes sœurs,
Pour leur amour et leur encouragement continu.

À mes chers amis,
Qu’ils trouvent dans ce travail l’expression de mon profond respect et
reconnaissance.

À toute la famille,
source de ma motivation et mes espoirs.

À tous ceux qui me sont chers.

 Marouene.H

À mes très chers parents,

Pour tout l’amour dont vous m’avez entouré, pour tout ce que vous avez fait
pour moi. Je ferai de mon mieux pour rester un sujet de fierté à vos yeux avec
l’espoir de ne jamais vous décevoir. Que ce modeste travail, soit l’exaucement
de vos veux tant formulés et de vos prières quotidiennes.

À mes deux sœurs,

Vous occupez une place particulière dans mon cœur. Je vous dédie ce travail
en vous souhaitant un avenir radieux, plein de bonheur et de succès.

À mon frère,

Pour ton soutient et ton encouragement. Je te souhaite une bonne vie calme,
joyeuse et pleine de succès.

À mes très chers amis,

En souvenir de nos éclats de rire et des bons moments. En souvenir de
tout ce qu’on a vécu ensemble. J’espère de tout mon Cœur que
notre amitié durera éternellement.

À tous ceux qui me sont chers,

 Marouene.M

Qu’il nous soit permis d’évoquer ici sa présence bienveillante aux étapes importantes de notre vie universitaire à l’issue de nos premières recherches et découvertes sur le monde de programmation. Nous exprimons nos sincères remerciements à monsieur Fethi ESSELMI pour l’extrême gentillesse qu’il a bien voulu manifester à notre égard ainsi que notre gratitude pour l’encadrement dont il nous a fait bénéficier aimablement. Son jugement nous est d’autant plus précieux qu’il émane d’une personne qui nous a enseignées. Nous avons grand plaisir à profiter de cette occasion très formelle pour la remercier sincèrement. Nous tenons à remercier madame Yossra BEN DALI HLAOUI pour l’honneur qu’elle nous fait de présider le jury de ce projet de fin d’études. Nous remercions monsieur Abdallah MISSAOUI enseignant à l’Ecole Supérieure des Sciences et Techniques de Tunis d’avoir bien voulu accepter de participer à ce jury et évoluer ce mémoire. Nous le remercions vivement d’avoir su nous encourager par une exaltation constante à la circonspection de notre sujet. .

........................................................................................................................................................................................................1...............................2...........................1.......... 11 4......... 7 2........................................................................................................... 11 4................................................................................................2..................1 Chapitre1 : Etat de l’art .......................................................................................................................................................................................................... 9 3 Modèle de l’acceptation de technologie (TAM) .....................1 Définition........................................ 9 3.................1 Définition...3 La description ...........................................................................................3............................. 7 2.............................................................2 La découverte ..................2 Caractéristiques................................ 11 4...........................1 L’approche par objectifs ............................................................................................. 8 2........................................................................2 Présentation de TAM..................................................... 15 5....... 13 5.......................................................................................................................................................................................3.................................2 Service Web de type WS-*..................... 15 5................... 14 5....... 13 5...... 4 2...... 7 2.....................................................................2................................2 Caractéristiques....................................2 Présentation de la logique Floue.................................................................................. 11 4 La logique Floue .................................................................................... 15 i ............. 5 2.. 9 3..............2................ 4 2...4 Conclusion .................................3 Conclusion ........................................................................1 L’invocation.........1 Introduction......................1 Définition.......3 Les composants d’un problème Floue ...................................................................................................................................................................... 4 2..............1 Définition................................................................................... 6 2............................................ 12 5 Service Web ..........................2 L’approche par compétences ........................................................................................... 9 3.....................2 Caractéristiques ...............................2.3 Approche par collaboration ............................................................................... 6 2.............................................................1 Introduction.................................................................................................................................... 4 2 Les approches pédagogiques .........................................4 1 Introduction..........Introduction générale ....

......................................................................................................................... 19 3................................................................................................................................................................................................................................. 17 2............ 16 5....................................................................... 27 Chapitre 3 : Conception UML ....................................................... 5..................................................4 Caractéristiques quantitatives du questionnaire............................................................3 L’approche par collaboration.................................... 23 5........................................................................................... 17 1 Introduction .........2 Fichier FCL..... 20 3..... 16 Chapitre 2 : Etude de cas ............................................................................ 17 2........................................................................................................................ 22 4............................................................................................ 22 5 Application.............3........................................................... 23 5............................................................................................. 17 2...................................................................................................................................................................................................... 17 2.................................................................................................2 Langage de contrôle floue (FCL) ................ 31 4 Conception focalisée............................................ 33 ii ..................................................................3 Critiques......3 Etude empirique.............................................................................. 22 4..........2 Diagramme des cas d’utilisation.................. 28 3 Conception Généralisée ............2 Définition.....................1 Avantages .......................................... 18 3 Le questionnaire de détermination de l’approche pédagogique....................... 28 2 Présentation d’UML ......1 Introduction.. 16 6 Conclusion.............................1 Introduction.............1 Diagramme de classe ........ 22 4..................................................................... 17 2 L’élaboration du questionnaire .................. 19 3...................................................................................................................................................................................................................................................1 Introduction...................................................................2 Inconvénients....................................................3.......1 L’approche par objectif................................................................................................................................. 28 1 Introduction ........................................................................................................................... 29 3......................................................................................................................................................................... 16 5................................................................................................. 29 3.............................3 Le package jFuzzyLogic.................... 21 4 L’implémentation du questionnaire ...........3 Caractéristiques qualitatives du questionnaire.......... 25 6 Conclusion....................2 L’approche par compétence........................................................... 23 5.................

.................. 40 2. 43 2......... 53 5 Conclusion.............................................................................................2 Diagramme de séquence ............................. 35 4............................ 38 6 Conclusion........ 54 2 Problèmes au court du développement sous l’IDE Eclipse ....................... 60 3.................................................. 53 Chapitre 5 : Résolution des problèmes rencontrés ..............................................................2...............................4 Interaction entre le client et le service web .2 Exception liée à l’inclusion de bibliothèques dans l’application serveur ....................................................... 4.......................................................................... 34 4.......... 54 2......................1 Exceptions liées à la configuration de Tomcat et Axis.............................................................................................................................. 40 1 Introduction ........................................................................... 35 4................................ 41 2...................... 40 2 Projection de la conception sur la pratique .................................................. 60 3.......................................................................2............................................... 51 4 Planification du projet ........................2....................................................................... 55 2.......... 65 iii .................................................... 54 2.........................................2 Validation des inscriptions .......................4 Elaboration d’un questionnaire........................... 62 4 Conclusion................... 50 2..................................................................... 51 3 Tests et vérification .......................................6 Gestion du compte personnel..................2 Réponse à un questionnaire ...............1 La phase de l’inscription............................................................. 36 5 Conception de la base de données........................... 64 Conclusion générale .................1 Diagramme de classe ............................................................................................................................................................................................................... 58 3 Exceptions rencontrées lors du déploiement du service Web ..........................................2 Recherche et expérimentation des variables significatives.............................................................................................................................................................................................. 39 Chapitre 4 : Implémentation..................3 Création d’un questionnaire.......................3 Authentification et connexion à l’espace personnel ......................3 Manipulation du code FCL par la programmation JAVA .................. 45 2............................ 33 4......................... 42 2.................................... 34 4..................................1 Création du fichier FCL de notre questionnaire .........................................................................5 Réponse à un questionnaire .............................................2........................................................................... 54 1 Introduction .................................................................1 Inscription et authentification .................................................................................................

........................................................................................................................................................................................................ 69 Annexe B : Présentation d’UML ....................................................... 70 Annexe C : Environnement de travail ... 78 iv ..................................................................................Bibliographie ......................................................... 67 Annexe A : Conception et modélisation de la base de données de l’application ................................................... 74 Annexe D : Codes sources ....................

................................................25 Figure 7 Simulation de la projection....................................................................................................................48 Figure 25 Panneau de simulation lors de la création d’un questionnaire......................31 Figure 9 Diagramme des Cas d’Utilisation..........................41 Figure 16 Interface de l’inscription d’un utilisateur ...........................50 Figure 29 Espace de gestion du compte personnel d’un utilisateur........10 Figure 3 Schéma de fonctionnalité de la logique floue.......43 Figure 18 Panneau d’authentification d’un acteur .................................... plate forme et service Web...........................................50 Figure 28 Réponse à un questionnaire (exemple de l'approche pédagogique) ................................................................35 Figure 13 Diagramme de séquence de création d’un questionnaire ................................................................................45 Figure 21 Première étape de l’élaboration d’un questionnaire ...................32 Figure 10 Diagramme de Classe d’un questionnaire ..................................42 Figure 17 Gestion des nouveaux abonnés............................................................13 Figure 4 Courbe de la variable d’entrée Quest1 .............................46 Figure 23 Troisième étape de l’élaboration d’un questionnaire ...................43 Figure 19 Panneau de récupération du mot de passe oublié par E-mail .............................47 Figure 24 Quatrième étape de l’élaboration d’un questionnaire....44 Figure 20 Exemple de réception d’un mot de passe oublier par un courrier électronique .............................................................................................24 Figure 6 Résultat de la Défuzzification............................................................................................................................................................................................................Figure 1 La construction d’une compétence ........................................................34 Figure 12 Diagramme de Séquence de réponse à un questionnaire.......................................37 Figure 15 Page d’accueil de l’application...........24 Figure 5 Fonction de la variable de sortie Préférence....................................................................................33 Figure 11 Diagramme de Séquence d’inscription et d’authentification ........................49 Figure 27 Liste de questionnaire disponible à un utilisateur .....................................49 Figure 26 Cinquième et dernière étape de l’élaboration d’un questionnaire ................................45 Figure 22 Deuxième étape de l’élaboration d’un questionnaire ....51 v ......................................................36 Figure 14 Diagramme de Séquence d’interaction utilisateur....................6 Figure 2 Schéma du Modèle d’Acceptation de la Technologie .................................25 Figure 8 Diagramme de Classe généralisé..........................................................

........82 Figure 50 Les inputs extraite de la page gerer-compte-u......................jsp...................87 Figure 58 Organigramme du site Web.............................................53 Figure 31 Edition d’un code FCL à l’aide d’un éditeur de texte .........................................84 Figure 54 Contenue de la page script......................88 vi ...................Figure 30 Chronogramme de planification du projet de fin d’études ...............61 Figure 39 Exception lancée lors de l’appel d’une méthode du service Web ........81 Figure 48 Utilisation du useBean extraite de la page novice2...86 Figure 57 Fonction VerifReel extraite de la page expert2............57 Figure 36 Courbe de la sortie du processus defuzzyfication après la correction........................84 Figure 53 Appel à la fonction file extraite de la page inscription................85 Figure 56 Extrait de la page expert2....................................................................................................jsp ..84 Figure 55 Fonction verifier-num extraite de la page expert2.....................................69 Figure 43 Organigramme des diagrammes structurels et comportementaux d’UML .....................................................................82 Figure 51 Fonction verifinom extraite de la page gerer-compte-u.................................................................................................54 Figure 32 Première version des courbes des termes d’entrée d’une question ................jsp......................................79 Figure 46 Méthode creationFCL extraite de la classe ManipLogicFloue............63 Figure 41 Modèle conceptuel de données.....................................................jsp .......................................80 Figure 47 Méthode determineresultat extraite de la classe ManipLogicFloue ..................................82 Figure 49 Appel du useBean extraite de la page novice2.....................56 Figure 34 Deuxième version des courbes des termes d’entrée d’une question ........jsp.................................jsp ................62 Figure 40 Exemple d’appel du service Web après déploiement...............................69 Figure 42 Modèle physique de données...................................60 Figure 38 Déploiement avec succès de l’application client et serveur ................jsp ....................................jsp .......78 Figure 45 Méthode simulation extraite de la classe ManipLogicFloue .........................70 Figure 44 Méthode creationNovice extraite de la classe ManipLogicFloue ..........................................83 Figure 52 Fonction file extraite de la page inscription..jsp ............57 Figure 35 Courbe de la sortie du processus defuzzyfication avant la correction.....jsp .58 Figure 37 Exception lancée lors du déploiement du service Web dans le serveur Tomcat..........................................................55 Figure 33 Deuxième version des courbes des termes d’entrée d’une question ..........................................

.............. 44 Tableau 5 Les différents affichages du résultat d’une réponse à un questionnaire.......... 26 Tableau 3 Légende du tableau des jeux de tests des réponses au questionnaire ............................................................... 27 Tableau 4 Les différents cas de figure de la phase Authentification.....................................Tableau 1 Taxonomie des objectifs éducationnels de Bloom ........... 51 Tableau 6 Jeux de tests des réponses au questionnaire de l’approche pédagogique.. 52 vii ....................... 5 Tableau 2 Tableau des jeux de tests des réponses au questionnaire ...........

d’autre part les échanges et la collaboration à distance [27. l’Homme a tendance à enseigner à ses descendants ses connaissances et partager avec eux ses expériences afin d’évoluer. qui est d’ailleurs expliqué par sa réputation dans le monde universitaire. 1 . L’enseignement est alors. ce qui a permit de délimiter une définition de ce terme. Au cours des siècles. L’e-Learning a participé à la résolution de plusieurs problèmes relatifs à l’enseignement. et on marqué ainsi la naissance d’une nouvelle sorte d’enseignement qui est l’enseignement à distance. est de permettre à un apprenant d’accéder à une ressource éducative nommée objet d’apprentissage par le biais de l’Internet. n’étant pas de substituer l’enseignement traditionnel. Alors. De ce fait.17]. l’Homme devenait de plus en plus civilisé et sentait la nécessité d’apprendre pour son propre bien. L’e-Learning est l’utilisation des nouvelles technologies multimédias de l’Internet pour améliorer la qualité de l’apprentissage en facilitant d’une part l’accès à des ressources et à des services. En poursuivant le parcours de l’échelle chronologique de la vie humaine. De plus la plate forme Web permet l’accès aux objets d’apprentissage tout en négligeant le cadre temporel et spatial. Le but d’e-Learning. connu souvent sous le nom de e-Learning. un mode d'éducation permettant de développer les connaissances d'un élève par le biais de communication verbale et écrite [27]. Le cours peut être sous différents formats afin de satisfaire la totalité des apprenants demandeur d’un tel cours. Il ne s’agissait pas à cette époque d’un enseignement dans le propre sens du terme mais il était une sorte d’apprentissage et de transmission d’information. on atteint le vingtième siècle qui constitue le siècle de la révolution technologique et électronique. L’évolution humaine ne cessait de croitre et le processus d’apprentissage n’était plus suffisant pour développer cette évolution. Introduction générale Depuis toujours. L’apparition des ordinateurs et le développement des réseaux ont influencé le domaine de l’apprentissage et de l’enseignement. les apprenants ne sont plus invités à assister à un cours mais on leur introduit le cours ou ils sont et quand ils veulent. En conséquence l’Homme se dirigeait vers l’accommodation du processus de l’enseignement. il procédait à l’organisation du processus d’apprentissage en premier lieu.

il souffre de quelques problèmes liés principalement à la présence de l’enseignant. Ces propriétés sont stockées après l'attribution de leurs valeurs. l’e-Learning manque encore de l’expertise. Ce critère de personnalisation informe d’avantage sur les préférences de l’utilisateur et améliore par suite le processus de la personnalisation de l’adaptation des objets d’apprentissage au profil de l’apprenant. l’union européenne. des capacités intellectuelles. surtout bien lorsqu’il s’agit d’un cours difficile et complexe. est la nouveauté de ce domaine. En effet. à suivre sa formation sans l’abandonner au mi-chemin. étudiant ou autre. des préférences et des interactions avec le système. En effet. la solution réside dans l’adaptation du contenu du cours présentés par les plates formes de l’enseignement à distance aux profils de l’apprenant de façon automatique . Un profil d'utilisateur est une collecte des informations personnelles. des styles d’apprentissage. à chercher et délimiter les caractéristiques des différentes approches pédagogiques et élaborer un questionnaire qui permettra de déterminer l’approche pédagogique d’un apprenant. technologiques et éducatif à collaborer et à se lancer dans ce nouvel axe afin de l’améliorer. l’absence de l’enseignant néglige l’obligation de suivre le cours et encourage le phénomène de l’abondance. des intentions. La seconde mission consistera à la création d’un 2 . Notre projet consistera alors. Ces valeurs peuvent être finales ou changées au cours du temps [2]. Ce décrochage réduit les performances de l’e-Learning et le rend moins efficace que les cours présentiels. ce qui a poussé plusieurs organismes internationaux à inviter les concessionnaires des outils informatiques. Parmi les caractéristiques du profil de l’utilisateur on cite aussi l’approche pédagogique qui permet de classer les apprenants en trois classes à savoir l’approche par objectifs. qui dans ses livres blancs. la personnalisation selon le profil. Introduction générale scolaire et même professionnel. De ce fait il est nécessaire de trouver une manière à travers laquelle on encourage l’apprenant. Le profil de l'utilisateur représente des qualifications cognitives. Cependant. encourage et invite à la recherche dans le domaine d’e-Learning et les domaines voisins tels que les Technologies de l'information et de la communication [3]. Effectivement. Un deuxième problème qui se marque. qu’il soit professionnel. On cite parmi ces organismes. l’approche par compétences et l’approche par collaboration [9].

par ailleurs. Introduction générale service Web non seulement pour la détermination de l’approche pédagogique d’un apprenant. Le deuxième chapitre détaillera une étude de cas démontrant ainsi la faisabilité de notre idée générale. Le troisième chapitre est réservé pour la conception et la modélisation de l’application tandis que le quatrième chapitre est consacré à son implémentation. 3 . mais qui. Ce présent rapport est composé de cinq chapitres. Le cinquième et dernier chapitre présente les problèmes rencontrés ainsi que les procédures de leurs résolutions. Le premier chapitre rappelle les notions de bases et illustre notre recherche. donnera la main à la création des questionnaires et le calcul de la préférence d’un sujet humain envers un thème spécifique.

aveuglement. exaltation et fièvre. Elle aboutit un jour à cette joie.La recherche procède par des moments distincts et durables. Albert Einstein . intuition. et connaît cette joie celui qui a vécu des moments singuliers.

... 11 4.... 11 4 La logique Floue .............................. 16 6 Conclusion........................ 11 4........ 4 2 Les approches pédagogiques ..... 5 2......................................................... 15 5................................................................................4 Conclusion ....2 Caractéristiques..........................................1 L’approche par objectifs .................................................................................... 15 5..............................3...............3 Conclusion ..................... 15 5................................................................... 4 2................................................................................................................... 8 2............ 16 5...........3.............................................................1................. 16 ..............................................................................................2 Inconvénients.................... 9 3............3 Critiques.................2 Caractéristiques....................................................................2.......................................................... 7 2.....2........1 Introduction......................................................... 7 2....... 9 3...................................2 Présentation de TAM. 9 3.......3.......................... 16 5....1 Définition........................................3 La description .......................1 L’invocation.....................................................................................2........ 14 5............................................................................... 13 5..................................................................................... 12 5 Service Web ............................................................................................................ 4 2.................................................1 Définition.....................................................2 Caractéristiques ...2 Présentation de la logique Floue.................................................................................................................................................................................................................................................3................................................................ 6 2.........2 Service Web de type WS-*.................................................................................................................. 6 2.......................1 Avantages ...................................................................................................3 Approche par collaboration .........................1........................ 11 4.............................................................................................................2..2 L’approche par compétences ...................1 Définition................................................................... 7 2.................................................................................................2............................................................................................................................................1 Introduction...................................................................................................................................................... 4 2............3 Les composants d’un problème Floue ....... 9 3 Modèle de l’acceptation de technologie (TAM) ........................................................................1 Introduction.............................................2 La découverte .............................. 13 5....................................................1 Définition........

Toutes les connaissances à acquérir sont déclinées en termes d’objectifs généraux et opérationnels.1 L’approche par objectifs 2. En troisième partie nous étalerons la logique floue qui constitura notre méthode de raisonnement et notre instrument de calcul et de résolution du questionnaire. a modifié et a progressé les méthodes de l’enseignement. La dernière partie de ce chapitre portera sur la technologie des services Web qui sera la technologie utilisée dans notre projet. La pédagogie. Des niveaux intermédiaires peuvent être introduits. quand l’objectif du cours en question est important. on parle alors des objectifs intermédiaires. mais qui ont réagi fortement et directement sur la qualité de l’apprentissage. Dans une seconde partie. Dans ce chapitre. Etat de l’art 1 Introduction Le progrès scientifique et technologique a influencé divers et multiples domaines et principalement l’enseignement avec ses différentes disciplines. comme on se réfère à 4 . nous présenterons en première partie notre domaine de connaissance qui se manifeste par les différentes approches pédagogiques ainsi que leurs caractéristiques.1 Définition L’approche par objectifs nécessite l’application d’une méthode pédagogique construite rationnellement.1. Ce dernier a fait couler l’encre de beaucoup de chercheurs de différentes spécialités. étant la décipiline la plus laboureuse sur le sujet de l’apprentissage. Alors quelles sont ces méthodes d’enseignement ? Sur quels principes sont-elles fondées ? Y a-t-il une méthode applicable sur tous les apprenants ? 2 Les approches pédagogiques 2. On se réfère à des méthodes de construction des objectifs pédagogiques. nous dévoilerons le modèle d’acceptation de la technologie qui servira comme méthode d’élaboration de questionnaire et aussi bien comme méthode de validation de nos travaux .

Bloom. [16] 2. Une autre caratéristique qui n’est pas moins importante. Évaluation Juger la valeur d'un sujet dans un but spécifique Tableau 1 : Taxonomie des objectifs éducationnels de Bloom. Compréhension Comprendre un article afin d'en faire un résumé Utiliser les connaissances de l'apprenant pour les appliquer dans une 3. Des taxonomies ont été construites pour aider les formateurs à formuler les objectifs de leurs cours. peut être définie comme étant une référence ou une technique. une taxonomie qui organise les objectifs selon un ordre particulier et étudié : Niveau Activités Mémoriser des informations. Application situation concrète (" la vraie vie ") Demander à l'apprenant de disséquer un sujet. 1. En premier lieu l’information doit être organisée de façon hiérarchique. En effet. 2.2 Caractéristiques Pour réussir l’implémentation de l’approche par objectifs dans un système d’enseignement. le forçage de l’introduction de l’information qui est généralement déconseillé puisqu’il élargi l’écart entre l’information et le récépteur de l’information. cette approche invite l’apprenant à s’orienter vers l’abstraction lors 5 . il faut respecter certains aspects qualifiés primordiales. Synthèse manière en se basant sur plusieurs sources 6. pour lesquelles l’acte d’apprendre est beaucoup plus que l’association d’un stimulus et d’un comportement observable. Analyse et les aboutissants Reformuler les parties d'un sujet ensemble mais d'une toute nouvelle 5. est l’aspect de généralisation et d’abstraction. les processus de raisonnement. l’influence de l’environnement social.1. d'en expliquer les tenants 4. Pour ce faire.B à mis en œuvre en 1956. Ceci approuve en conséquence. Connaissance etc. définir des terminologies. [16] L’approche par objectifs. des techniques. Etat de l’art des processus et méthodes dans l’industrie. Elle n’est pas incompatible avec les méthodes qui prennent en compte les opérations mentales. [24] Une telle approche favorise le travail individuel et pousse les apprenant à effectuer tout le travail de façon autonome.

par conséquence. définit Michel Devalay. l’approche (par compétence). De ce fait. un apprenant essaie d’utiliser les savoirs qu’il a appris. étant des prérequis.2 L’approche par compétences 2. Ces savoirs. Figure1 : la construction d’une compétence [15] 6 . Alors est-il possible d’automatiser le processus d’apprentissage tout en tenant compte de cette contrainte ? Dans le cas contraire est-il juste d’opprimer les apprenants qui ne leur convient pas une telle approche ? 2. implique une vigilance épistémologique parce que le savoir est quelque chose de vivant . des aptitudes en vue d'une action finalisée. lors de la confrentation d’une situation. des capacités. [25]. et l’encourage à généraliser ses requis dans divers domaines d’application qui mène en conséquence à l’automatisme de l’apprentissage.1 Définition L’approche par compétence est un savoir agir réfléchi faisant intervenir des connaissances. Par définition. Etat de l’art d’un traitement d’un problème. le comportement humain est hyper-complex.2. des capacités ou des connaissances provenant de divers sciences et disciplines et leur assemblage construira la compétence visée[figure3]. L’approche par compétences vise essentiellement à mobiliser certaines compétences en réaction à une situation déterminée. Maître de conférence à l’Université Lumière Lyon II.

l’apprenant doit exploiter tout ses prérequis ainsi que toutes ses connaissances et doit les mobiliser indépendemant de la matière qu’il est entrain d’étudier. étant chacun source d'information. Alors chaque situation ou famille de situation que doit résoudre un apprenant doit se réferrer au monde réel pour que ce dernier puisse percevoir l’utilité de l’apprentissage. Etat de l’art Dans le paragraphe suivant. et bénéficiant chacun des apports des autres.2 Caractéristiques L’approche par compétences vise essentiellement à mobiliser les compétences de l’apprenant.2. Pour ce faire il n’existe qu’une unique manière qui se base sur l’énoncé des problèmes réels (au moins au regards de l’apprenant).1 Définition L’approche collaborative est toute activité d'apprentissage réalisée par un groupe d'apprenants ayant un but commun.3. similaires et qui sont gérées par la même compétence. Une famille de situations étant une collection de situations semblables. nous présenterons les caractéristiques les plus déterminantes de l’approche par compétences. 2. Plusieurs chercheurs ont qualifié l’approche par compétences comme correction ou réaction aux critique qu’a subit l’approche par objectif [25].3 Approche par collaboration 2. de motivation. Alors avons-nous atteint notre objectif : une meilleur approche pédagogique d’enseignement pour tout le monde ? 2. De ce fait une telle approche élimine les frantières posées par l’étude d’une matière et en second lieu permet à l’apprenant d’affronter un problème en entier sans abstraction ni hypothèse et il ne sera pas obligé de traiter le même problème deux fois dans deux scéances différentes. Cette famille peut être ordonnée selon la complexité de ses situations qui les englobe afin de garantir le bon apprentissage de la compétance par l’apprenant. Lors d’un traitement d’une situation. Selon cette approche la meilleure façon de s’adresser à ce dernier et d’être à la fois util et familier. d'interaction et d'entraide. de la synergie du 7 . il doit être capble de résoudre pareillement la famille de situations à laquelle appartient S. Une fois l’apprenant est devenu capable de gérer une situation qu’on note S.

Cela exige la maturité scientifique des apprenants (lycéens. Et voilà c’est l’aspect collectif de cette approche. contrairement à la coopération qui propose à l’apprenant de s’acquitter d’une sous-tâche permettant au groupe de réaliser la tâche. le collaborateur est invité à comparer ses résultats avec celles obtenues par les autres membres du groupe. un groupe d’apprenants (appelés souvent collaborateurs) fixent un but commun à atteindre (le cas échéant est la résolution d’un problème). [14] Alors quelles sont les caractéristiques de l’approche par collaboration? 2. Cette caractéristique favorise la solidarité et le soutient mutuel. est une méthode qui favorise le travail collectif et individuel en même temps. Ils citent que la collaboration est mise autant sur la réalisation de la tâche par l’apprenant que par le groupe. la découverte et l’analyse puisqu’elle vise à construire la connaissance. Par la suite. une telle approche pédagogique vise essentiellement à la construction de la connaissance et non à sa reproduction : le but étant d’apprendre comment construire une nouvelle connaissance et non l’apprendre. chaque collaborateur essaie de sa part de résoudre le problème de façon autonome. En effet. [4] Cette définition étant tirée d’une trentaine de page que Henri. L’approche par collaboration favorise l’aspect constructiviste plus que l’aspect comportemental (dit aussi behavioriste). Ces auteurs montrent aussi dans leur ouvrage la différence entre une approche collaborative et une approche coopérative pour ne pas faire de confusion. Cette fixation de but donne à l’apprenant une assurance qu’il n’est pas seul face à un problème et lui donne le courage pour l’affronter. étudiants). Il est indispensable de signaler que l’approche collaborative encourage à la recherche. en terme de but.F et Lundgren-Cayrol. comme l’indique son nom d’ailleurs. Une fois le but est fixé.K.2 Caractéristiques L’approche par collaboration. En effet. Cette étape permet à l’apprenant de se fixer l’idée que s’il commit une erreur. 8 .3. avaient consacré dans leur ouvrage « Apprentissage collaboratif à distance » pour définir le terme. certainement il y aura quelqu’un qui peut lui mettre l’accent dessus. ce qui manifeste le travail individuel au sein d’un groupe. Etat de l’art groupe et de l'aide d'un formateur facilitant les apprentissages individuels et collectifs.

3 Modèle d’Acceptation de la Technologie (TAM) 3. 9 . est-il évidant que tout les apprenant sont mûres en matière de connaissance scientifique ? Si c’est le cas. L’apport technologique nous permet de résoudre plusieurs problèmes relatifs au processus de l’apprentissage.4 Conclusion Dans cette partie on a essayé d’évoquer des questions qui se posent dans le monde de l’apprentissage mais qui ne sont pas bien traitées vue la complexité de la situation. est-il évident qu’ils admettent le même degré de maturité qui leur permet de suivre cette approche pédagogique ? 2. TRA : Modèle de l’Action Raisonnée (Theory of Reasoned Action). comme les approches précédentes.2 Présentation de TAM TAM : Modèle d’Acceptation de la Technologie (Technology Acceptance Model). Alors de quelle manière allons-nous poser les questions ? Quels sont les critères visés par ces questions ? Comment allons-nous élaborer notre questionnaire ? Dans cette partie nous présenterons l’utilité de TAM et son exploitation. 3. Pour ce faire il existe une méthode très connue et répondue : le questionnaire. De ce fait on a constaté l’importance et la nécessité de classifier les apprenants selon leurs approches pédagogiques. On remarque qu’à l’aide de l’enseignement en ligne qu’on peut personnaliser les cours selon les préférences de l’apprenant.F en 1987. Nous expliquerons dans ce qui suit les étapes achevées et les logiques utilisées dans le cadre de l’élaboration du questionnaire de détermination de l’approche pédagogique d’un apprenant. Créé par Davis. Cependant.1 Introduction Au début de l’élaboration du questionnaire. nous avons eu une inquiétude concernant les questions qu’on va poser. Etat de l’art L’approche par collaboration. TAM dérive essentiellement d’un modèle très utilisé à savoir. admet à son tour des caractéristiques importantes.

Etat de l’art

TRA a été élaboré pour déterminer la tendance et l’acceptation d’un consommateur
envers un produit. Ce modèle était général et applicable sur n’importe quel produit y inclus
même les services, alors que TAM est conçus spécifiquement pour les sujets purement
technologiques. D’ailleurs, en lisant le papier écrit par Davis.F [12], lors de la présentation de
TAM, on remarque que l’exemple des travaux effectués était l’acceptation des employés
d’une entreprise du système d’information implanté.

Davis.F explique dans le même papier que l’acceptabilité d’un système
d’information est basée essentiellement sur deux facteurs fondamentaux à savoir : la
perception de l’utilité et la perception de la facilité d’utilisation.

Davis définit le facteur perception de l’utilité comme étant un degré auquel une
personne croit que l’utilisation d’un système améliorera ses performances. La perception de la
facilité d’utilisation se réfère, quant à elle, au degré auquel une personne croit que l’utilisation
d’un système sera dénuée d’efforts.

Pour mieux comprendre le modèle, il est indispensable de comprendre le schéma
présenté par Davis résumant sa théorie.

Figure2 : Schéma du Modèle d’Acceptation de la Technologie. [11]

Il faut noter en premier lieu que les flèches reliant les différents facteurs du modèle
ne sont pas des flèches d’incidence. En effet, elles représentent l’influence d’un facteur sur un
autre.

En second lieu on note que les flèches ne portent pas de poids, pour autant, Davis.F
exprime dans ces travaux de validation de sa théorie que le lien entre la perception de l’utilité
et l’intention d’utilisation est plus fort que celui entre la perception de facilité d’utilisation et
l’intention de l’utilisation.

10

Etat de l’art

3.3 Conclusion

TAM est un modèle d’acceptation de système d’information très répondu et très
utilisé pour l’établissement d’un questionnaire valide. Cependant la méthode de calcul des
approches reste un problème à confronter [12].

Dans la partie suivante on présentera une logique mathématique puissante, qui va
nous permettre de résoudre le problème tout en tenant compte de la relativité du
comportement humain. En second lieu nous présenterons ses critères et nous argumenterons le
choix de cette logique.

4 La logique Floue

4.1 Introduction

Nous avons eu l’occasion de manipuler un questionnaire lors du stage d’été. D’après
les recherches et les lectures effectuées, nous avons remarqué que les résultats des
questionnaires établis (sorties ou output) étaient calculés de façon rigide et radicale (vrai ou
faux) alors que les réponses (entrées ou input) étaient des tendances et non des réponses
exactes. La méthode était simple : on donnait une échelle pour les réponses, on calculait la
somme pour chaque catégorie, et on déterminait le résultat par le biais d’une comparaison
classique. Si on voulait avoir une idée sur l’intensité de la tendance il suffirait de comparer le
résultat par rapport aux tendances maximales relatives à la catégorie en question.

Le problème de relativité constitue alors un facteur important lors d’une telle
opération. Pour résoudre le problème il faut trouver une méthode plus convenable qui
supporte cette relativité. Alors existe-t-il une méthode ou une logique plus flexible, plus
souple et plus tolérante qui peut nous rapprocher plus à l’exactitude ?

4.2 Présentation de la logique Floue

Introduite par Zadeh.L en 1965 à L'université de Californie Berkeley, la logique
floue régnait tous les domaines scientifiques ainsi que les industriels, allant de l’électronique,
l’informatique et l’intelligence artificielle et arrivant à la médecine. Le succès de cette théorie
réside dans le fait qu’elle accepte une infinité de valeur de vérité contrairement aux logiques
ensemblistes qui sont binaire (vrai ou faux). Cette caractéristique permet de résoudre divers

11

Etat de l’art

problème que les autres logiques n’arrivaient pas à les implémenter, surtout bien lorsqu’il
s’agit d’incertitude au niveau des entrée d’un problème. Ces intervalles incertains sont les
sous-ensembles floues que Zadeh à introduit en 1965 et débutant ainsi l’élaboration de sa
fameuse théorie. Zadeh effectuait par la suite une extension dans sa théorie en introduisant la
théorie des possibilités en 1987. Ainsi l’élaboration de la théorie de la logique floue s’avérait
terminée.

4.3 Les composants d’un problème Floue

Il est évident que chaque problème manipule des données qui constituent le point de
départ de sa résolution. Sans données initiales, notées aussi les entrées ou les inputs, on n’aura
rien à résoudre. La logique floue donne la main à son appliquant d’introduire les données de
problème à travers l’étape de ‘fuzzyfication’. Cette étape contient en effet, toutes les entrées
du problème à résoudre. La représentation des données par des courbes bidimensionnelles, est
le point fort de cette théorie car elles permettent de spécifier les sous-ensembles flous relatifs
à chaque donnée.

L’utilité de la résolution d’un problème est l’obtention d’un résultat significatif, par
conséquence une sortie ou output interprétable. C’est l’étape de ‘defuzzyfication’ qui
s’occupe de la présentation de la sortie. A son tour cette étape donne la main à l’appliquant
d’introduire la courbe de la sortie tout en utilisant les sous-ensembles flous qui constitue aussi
une caractéristique importante de cette théorie.
L’étape de ‘defuzzyfication’ contient aussi la spécification de la valeur par défaut, si aucune
règle n’est applicable, ainsi que la méthode de calcul de la valeur de sortie.

Le passage de l’entrée à la sortie nécessite un traitement. Le traitement dans la
logique floue est en fait, l’application des règles introduite par l’appliquant sur les données
afin d’obtenir des résultats. L’introduction des règles se fait à travers l’étape de règles.

L’étape de règles est constituée d’un ensemble de règles que chacune à son tour se compose
d’un nom, de termes linguistiques, introduit lors de la spécification des données d’entrées,
concaténés par des opérateurs logiques et une décision qui est toujours un terme linguistique
de sortie.

Nous notons dans ce contexte que le nombre de règles définies dans un problème à
résoudre avec la logique floue intervient dans la précision des résultats obtenus. En effet,

12

Ce schéma éclaircie d’avantage les termes techniques que nous venons d’utiliser dans ce qui précède.1 Définition Un service Web est un programme informatique permettant la communication et l'échange de données entre applications et systèmes hétérogènes dans des environnements distribués. Pour résumer ce que nous venons de dire nous procéderons à la présentation d’un schéma explicatif. Il s'agit donc d'un ensemble de fonctionnalités exposées sur Internet ou sur un Intranet. Cependant le nombre de règle n’intervient pas dans la validité des résultats. Ainsi. alors il y aura plus de raffinage des résultats. [1] 5 Service Web 5. montrant ainsi l’interaction entre les différentes composantes d’un problème flou. et en temps réel. il y aura plus de calculs et plus de traitement selon ces règles. maîtrisé et généralement non filtré par 13 . Etat de l’art lorsqu’il s’agit d’un nombre important de règles. sans intervention humaine. par et pour des applications ou machines. Figure 3 : schéma de fonctionnalité de la logique floue. [27] Le service Web utilise le protocole HTTP comme moyen de transport. les communications s'effectuent sur un support universel.

structurés et correctement décrits..  Une entrée éventuelle dans un annuaire UDDI Ces services Web WS-* sont par ailleurs définis selon le type d'architecture SOA (Services Oriented Architecture) qui est à l’origine de l’apparition du terme service. de leur type de données. L'OASIS et le World Wide Web Consortium (W3C) sont les comités de coordination responsables de l'architecture et de la standardisation des services Web. dialoguant selon un standard international plutôt qu'un ensemble d'objets et de méthodes entremêlés [23].  Le fichier WSDL pour la description des messages. [27] Le fonctionnement des services Web WS-* repose sur un modèle en couches. 5. Ainsi.2 Service Web de type WS-* Désigne l'implémentation logicielle des spécifications WS-* et repose sur un ensemble de protocoles et de standards de base utilisés pour l'échange de données entre applications dans des environnements hétérogènes:  Le protocole SOAP pour l'échange de messages. Sa syntaxe est basée sur la notation XML pour décrire les appels de fonctions distantes et les données échangées en organisant les mécanismes d'appel et de réponse [23].. dont les trois couches fondamentales sont les suivantes : 14 . Alors le type WS-* sera utilisé lors de l’implémentation de notre projet. Pour améliorer l'interopérabilité entre les réalisations de service Web. les applications peuvent être vues comme un ensemble de services métiers. De ce fait la maintenance d’une telle application devient aisée et de coût réduit. Grâce aux services Web. Il existe plusieurs types de services Web à savoir les services Web REST et les services Web WS-*qui sont les plus répondus. l'organisation WS-I a développé une série de profils pour faire évoluer les futures normes impliquées. nous concluons qu’un service Web permet l’interopérabilité entre différentes plates formes et la réduction de la complexité d’une application vue l’indépendance d’un service Web par rapport à cette dernière. Etat de l’art les pare-feux.

Le protocole standard le plus utilisé pour la découverte de services est UDDI. le principe de programmation est le même : l'appel de méthode distante est réalisé grâce à une bibliothèque cliente qui transmet la demande au fournisseur de service en la formatant en XML de manière transparente. Etat de l’art 5. puis standardisé par le W3C. fonctionnant sur un principe procédural et sans gestion des états. tous deux basés sur XML :  XML-RPC (XML Remote Procedure Call). [23] Quel que soit le standard utilisé.2. le plus ancien. 5. généralement au sein d'un service d'annuaire recensant les services Web de l'organisation. l'objectif de chaque service. La bibliothèque cliente décode la réponse reçue afin qu’elle soit utilisée. utilisant la notation XML permettant de définir les mécanismes d'échanges d'information entre des clients et des fournisseurs de services Web.2. [27]  SOAP (Simple Object Access Protocol). Au niveau du serveur. une bibliothèque spécifique décode la requête. pour permettre l’exécution des processus via un réseau.2. Il est à noté qu’il est l’ancêtre de SOAP. Il a été défini depuis 1998. 15 .3 La description L'objectif de cette couche est la description des interfaces (paramètres des fonctions.1 L’invocation Visant à décrire la structure des messages échangés par les applications. types de données) des services Web. Il existe deux grands standards de services Web. Le standard UDDI (Universal Description Discovery and Integration) défini par l'OASIS vise à décrire une manière standard de publier et d'interroger les services Web proposés par un réseau. fonctionnant selon le modèle objet. etc. qui à son tour traduit la réponse et l’envoie au client. Il a été définit à l'origine par Microsoft.2 La découverte Permet de rechercher et de localiser un service Web particulier dans un annuaire de services décrivant le nom de la société. 5. et transmet les paramètres à l’application serveur qui effectue les traitements nécessaire et retourne le résultat à cette même bibliothèque.

16 .3.1 Avantages  Les services Web fournissent l'interopérabilité entre divers logiciels fonctionnant sur diverses plateformes. 6 Conclusion Dans ce chapitre.2 Inconvénients  Les normes de services Web dans certains domaines sont actuellement récentes. CORBA. 5. Etat de l’art Le standard WSDL (Web Service Description Language) est un langage reposant sur la notation XML permettant de décrire les services Web. nous montrerons l’application de ces outils sur le domaine en question. les services Web peuvent fonctionner au travers de nombreux pare-feux sans nécessiter des changements des règles de filtrage.3 Critiques [27] 5.  Basés sur le protocole HTTP.  Les services Web souffrent de performances faibles comparés à d'autres approches de l'informatique répartie telles que le RMI.  Les services Web utilisent des standards et protocoles ouverts. Le deuxième chapitre comportera une étude de cas du questionnaire qui permettra la détermination de l’approche pédagogique approprié à un apprenant. paramètres et valeurs de retour) que le service propose.  Les protocoles et les formats de données sont au format texte dans la mesure du possible. WSDL permet ainsi de décrire l'emplacement du service Web ainsi que les opérations (méthodes. 5. facilitant ainsi la compréhension du fonctionnement global des échanges. nous avons présenté le domaine d’étude ainsi que les outils nécessaires au développement de notre projet. ou DCOM.3. Dans ce qui suit.

Où tout dépend.Bien poser les questions. André Frossard . bien sûr. c'est tout un art. de la réponse que l'on veut obtenir.

........ 19 3......................2 L’approche par compétence..........1 Introduction...................................................................1 Introduction ................................................................2 Fichier FCL.......... 22 4.................................................................1 Introduction.................... 20 3................................................................................................................................. 21 4 L’implémentation du questionnaire .......................................................................................................... 17 2............................................................... 17 2.......................................3 Caractéristiques qualitatives du questionnaire.. 23 5...... 17 2 L’élaboration du questionnaire ......................................................................3 Le package jFuzzyLogic........................................................................................................................................... 22 4.4 Caractéristiques quantitatives du questionnaire...... 25 6 Conclusion.......................3 L’approche par collaboration............ 17 2......................................................................................................... 18 3 Le questionnaire de détermination de l’approche pédagogique................................................ 23 5........... 22 4........2 Langage de contrôle floue (FCL) ..........................3 Etude empirique..........................................................................2 Définition.................................................................................. 19 3................................................................................................................. 27 ..........................1 L’approche par objectif........ 17 2.................................................. 23 5............................................................................................................................................................................. 22 5 Application....................................................................................................................1 Introduction.........................................................

il faut savoir ce qu’on vise par une question et comment la formuler. Une question ouverte est comme l’indique son nom. par le biais d’une simple comparaison. la tendance.3 Caractéristiques qualitatives du questionnaire Un questionnaire peut comporter des questions ouvertes ou fermées.2 Définition Dans une enquête par sondage. nous déterminerons celle qui lui est la plus appropriée. la préférence d’un apprenant envers chaque approche pédagogique en appliquant la logique floue.1 Introduction L’élaboration d’un questionnaire autour d’un thème spécifique n’est pas une tâche facile du fait qu’il ne s’agit pas uniquement de poser des questions. Comment allons-nous élaborer le questionnaire ? Comment sera déterminée l’approche appropriée à un apprenant ? 2 L’élaboration du questionnaire 2. En effet le candidat se trouve obligé de choisir une réponse parmi 17 . Alors pour produire un bon questionnaire il faut fouiller dans le domaine et apprendre les étapes nécessaires. Etude de cas 1 Introduction L’une des contributions évoquées dans notre projet est la classification des apprenants selon leurs approches pédagogiques. 2. il s’agira d’une série de questions à travers laquelle nous déterminerons l’opinion. 2. Dans notre cas. un questionnaire représente une série de questions écrites ou orales posées aux membres d’un échantillon représentatif pour connaître leurs opinions sur les sujets abordés par l’enquête [7]. l’attitude. alors qu’une question fermée limite sa réponse. En effet. Ensuite. Pour ce faire nous allons y procéder par le biais d’un questionnaire. laisse la possibilité au candidat de développer sa réponse avec liberté et sans aucune limite qualitative ou quantitative. mais aussi de les bien poser.

il faut tout d’abord dégager les caractéristiques déterminantes du thème. nous devons fixer une échelle pour les questions qui vont être posées aux apprenants. il est le nombre minimal de question qui assure la bonne expression de l’opinion du candidat envers la caractéristique en question. Ensuite sur chaque caractéristique. Dans ce contexte. Ce nombre était inconnu au début des travaux empiriques de Fred Davis. [13] Puisqu’il s’agit d’un calcul de préférence. Dans notre cas il s’agit de calculer la préférence d’un apprenant envers les approches pédagogiques visées par le questionnaire. En effet. L’imposition de cette règle étant argumentée par le faite que seules les questions fermées permettront de calculer la préférence d’un candidat envers un thème déterminé. La première concerne le nombre de questions par caractéristique qui doit être identique pour assurer l’équilibre du questionnaire. Totalement Moyennement Peu Ni en Peu Moyennement Totalement en en en accord en en en accord accord accord ni en désaccord désaccord désaccord désaccord 2. pour élaborer un questionnaire sur un thème spécifique. nous allons fixer quelques règles. vu que la question fermée admet une cardinalité de réponse limitée. Le nombre de questions par caractéristique sera fixé à 18 . Etude de cas celles préétablies et énoncées par le questionnaire. ou à choix unique où le candidat doit choisir uniquement une et une seule réponse. peut en désaccord. moyennement en désaccord et totalement en désaccord. l’échelle comportera sept graduations à savoir. Cette échelle permet non seulement d’exprimer l’avis du candidat mais aussi de mesurer l’intensité de son opinion. alors le candidat aura la liberté de choisir une ou plusieurs réponses. puis le fondateur de TAM à démontré que le nombre quatre est l’optimal [11]. Pour cela. notre questionnaire ne contiendra que des questions fermées. totalement en accord. La question fermée. poser un nombre de question. peu en accord. moyennement en accord. La question fermée peut être à choix multiples. En se référant à TAM. quelle soit à choix unique ou multiple est mieux interprétée lors d’un traitement spécifique d’où la tendance des questionnaires vers l’utilisation de ce type de question.4 Caractéristiques quantitatives du questionnaire Selon TAM. il sera facile de réaliser les calcules souhaités. ni en accord ni en désaccord.

Dans le premier chapitre.  Je crois que les sciences qui sont relatives admettent des problèmes qui se résolvent par les mêmes méthodes. 3 Le questionnaire de détermination de l’approche pédagogique 3.  Je préfère le travail individuel pour assumer uniquement mes responsabilités.  L’entrainement est la meilleure méthode pour apprendre et pour réussir l’épreuve. Nous énonçons rapidement les caractéristiques fondamentales et déterministes de chaque approche ainsi que leurs questions relatives.  J’aime refaire le travail jusqu’à l’apprendre ou apprendre comment l’effectuer.  Je préfère ne considérer du problème que ce qui importe pour sa résolution. 19 .1 Approche par objectif  Apprentissage individuel  Je préfère résoudre les exercices de façon autonome. nous avons définie chaque approche et nous avons détaillé leurs caractéristiques.  J’aime être responsable uniquement sur les actions que je réalise. Etude de cas quatre puisqu’il est l’optimum.  Je préfère le travail méthodique et logique sans pour autant se référer au monde réel.  Je préfère travailler dans un environnement indépendant que j’ai créé moi-même.  Plusieurs domaines d’application (Aspect abstrait et généralisé)  J’aime les théories qui sont applicables dans plusieurs domaines. La seconde règle énonce que chaque approche doit contenir le même nombre de caractéristiques pour assurer l’objectivité.  Je préfère l’application des théorèmes même s’ils sont ‘parachutés’ (je ne connais pas ses précédences logiques).  Forçage de l’introduction de l’information  Je préfère suivre un cours organisé et méthodique et atteindre son objectif final.

 Chaque groupement de situations similaires peut être considéré comme une famille de situation.  Catégories de situations (familles de situations)  Il y a certainement une classification sémantique des situations à résoudre.  Quand je reçois l’information j’essai toujours de la mettre dans un contexte réel.  Chaque situation appartient à une classe bien précise.  La famille de situations constitue un conteneur des problèmes réels et analogues.2 Approche par compétence  Problèmes réels (situation et famille de situations)  Je préfère la résolution des problèmes relatifs au monde réel et qui admettent des significations réelles. 20 .  J’ai tendance à appliquer mes compétences requises sur des problèmes similaires et pratiques à la fois. pratique et quotidien. Etude de cas 3.  Je m’entends mieux avec des gens qui aiment développer différentes capacités et compétences.  J’aime beaucoup appliquer mes compétences pour résoudre des problèmes pratiques et réels.  Mobilisation de plusieurs et diverses capacités  Je préfère utiliser différentes capacités dans la résolution d’un problème.  J’ai tendance à résoudre les problèmes qui nécessitent des compétences multiples et diverses.  J’aime le travail qui vise à exploiter différentes connaissances et pré-requis.

 J’aime collaborer dans un travail collectif par l’introduction de ma vision et de mes efforts personnels.3 Approche par collaboration  Travail individuel et interdépendant  J’aime travailler de façon individuelle pour atteindre le but visé par les membres du groupe.  Lors d’un traitement d’un problème.  Je tends à sacrifier mes efforts pour le but commun du groupe.  J’aime publier gratuitement mes travaux afin que tout le monde puisse y accéder et s’en bénéficier. j’ai tendance à vérifier mes résultats avec les membres du groupe de travail.  Je préfère effectuer moi-même tout le travail et partager les idées et les résultats avec les autres membres du groupe.  Je crois fortement que l’échange d’informations est important pour la formation de l’apprenant.  Fixation d’un but commun  Je préfère fixer un but commun et chacun des membres du groupe collabore afin d’y atteindre.  Partage de connaissance  J’aime partager mes connaissances avec un groupe d’apprenants. Etude de cas 3. 21 .  J’ai tendance à orienter mes efforts vers l’atténuation du but commun de mon groupe de travail.  Je ressens l’assurance et le soutient lorsque je travaille sur un sujet en parallèle avec mes collaborateurs.

un fichier ‘FCL’ contient un bloc de code qui inclut à son tour. nous allons procéder à son implémentation afin de lui appliquer les mécanismes de calcule flou. Cela signifie que si on désire effectuer des testes. Le principe de fonctionnement d’un code ‘FCL’ est simple et se résume par l’application des règles sur les entrées afin de calculer les sorties qui constituent le résultat du traitement. IEC 61131-3 [5] et repris par la même commission dans le standard IEC 1131-7 [4]. 4 L’implémentation du questionnaire 4.2 Langage de Contrôle Flou (FCL) ‘FCL’ est l’abréviation de Fuzzy Control Language ou Langage de Contrôle Flou. il est indispensable de noter que le langage ‘FCL’ n’admet pas d’API qui permet de le manipuler. Etude de cas  J’ai tendance à partager ouvertement ce que je produis. dans le but d’implémenter la logique floue aussi bien que les contrôles flous. 22 . Cependant. on ne peut pas le faire puisqu’il n’y a pas d’interface qui le permet. Pour ce faire il est indispensable d’utiliser un langage de programmation spécifique. et un bloc de spécification des règles. un bloc pour la définition des entrées. un bloc pour la définition des sorties.1 Introduction Après avoir élaboré le questionnaire et fixer toutes ses caractéristiques quantitatives et qualitative. De ce fait nous sommes obligés d’utiliser un API indépendant ou d’en créer un. Il s’agit d’une bibliothèque implémentée sous JAVA et d’un API professionnel qui permet de traiter les fichiers écrit sous le standard IEC 61131-7 [5].net.3 Le package jFuzzyLogic C’est un package publié par le comité libre SourceForge. 4. C’est un langage définit et standardisé par la Commission Electrotechnique Internationale IEC . en d’autres termes permet la manipulation des fichiers ‘FCL’ [19]. 4. Le fonctionnement de ce package est essentiellement basé sur un système brouillé complet d'inférence (FIS) qui peut être convertit en flux ‘FCL’ ou manipulé directement à travers ses fonctions pré implémentées. En effet.

Le deuxième bloc qui se nomme ‘VAR_OUTPUT’.2 Fichier FCL Généralement. appelés ‘DEFUZZIFY_SORTIE_i’. en premier lieu. Le premier bloc. le degré de respect d’une condition agit sur un ensemble de sortie flou. nous devons spécifier les termes linguistiques et leurs fonction respectives pour les entrées aussi bien que pour la sortie. nommé ‘VAR_INPUT’. et pareillement pour le désaccord qui comportera à son tour trois degrés à savoir totalement en désaccord. moyennement en accord et peut en accord. Les termes linguistiques sont l’accord. Le quatrième bloc est réservé à la description des sorties. ainsi que leurs types. permet au concepteur des fichiers ‘FCL’ de décrire les règles applicables sur le système d’interférence en question ainsi que les méthodes d’activation et d’accumulation. dit ‘RULEBLOCK’. Pour ce faire. nous devons récupérer les réponses aux questions relatives à cette caractéristique. Etude de cas 5 Application 5. qui sont responsables de la spécification des termes linguistiques et leurs fonctions relatives.1 Introduction Il s’agit dans cette partie de détailler l’implémentation technique du questionnaire et de montrer en revanche l’application de la logique floue sur le questionnaire ainsi que la mise en œuvre de l’utilisation des outils que nous venons de présenter. Ensuite. chaque sous-bloc. La méthode d’activation se base sur un processus par lequel. nous allons. le désaccord et la tendance ou la neutralité de l’apprenant envers une caractéristique. alors que la méthode d’accumulation est la combinaison des résultats des règles linguistiques dans un résultat final. Ce bloc est également responsable de la fixation de la méthode de calcul. calculer la tendance d’un apprenant envers une caractéristique bien déterminé. En effet. définit les différentes entrées du système en question. un fichier ‘FCL’ comporte cinq blocs de code. définit les termes linguistiques nécessaires et leurs fonctions. 5. Ces réponses constituent les entrées de notre fichier ‘FCL’. ce bloc est constitué à son tour d’un nombre fini de sous-bloc. Un dernier bloc. Dans notre cas. En effet. L’accord comportera trois degrés à savoir totalement en accord. dit ‘FUZZIFY_ENTREE_i’. 23 . La variable de sortie sera la préférence de cette caractéristique. Le troisième bloc est constitué d’un ensemble fini de sous bloc qui représentent entre autre les spécifications des entrées. se contente de définir ses sorties aussi bien que leurs types.

F lors de l’élaboration de TAM [12]. Nous notons que notre fichier ‘FCL’ utilise le Centre de Gravité comme méthode de calcul qui est mentionnée au part avant dans le bloc DEFUZZIFY_PREFERENCE. nous devrons fixer la méthode d’activation et la méthode d’accumulation. Par la suite nous devrons énoncer les règles de calcul de préférence qui seront appliquées sur les entrées. Etude de cas moyennement en désaccord et peut en désaccord. Figure4 : Fonction de la variable d’entrée Quest1. En assemblant les degrés de l’accord. du désaccord et du moyen on obtient sept graduations qui constituent l’échelle de tendance présentée par Davis. 24 . tant disque le terme moyen comportera une partie de l’accord et une parie du désaccord. Une fois les variables d’entrée et de sorties définies. Figure 5 : Fonction de la variable de sortie Préférence. Ainsi on obtient le résultat souhaité.

3 Etude empirique Le but de cette étude est de tester le questionnaire élaboré. on procède à la récupération des valeurs des tendances afin d’en tirer la plus appropriée. Etude de cas Figure 6 : Résultat de la Defuzzyfication Il ne reste maintenant que projeter le centre de gravité obtenu sur l’axe des abscisses. nous répliquons le même traitement sur les différentes caractéristiques d’une même approche pour obtenir la préférence totale. 25 . En appliquant les mêmes principes expliqués précédemment. Cette projection nous permet de déterminer la valeur de la préférence de l’apprenant envers une telle approche. Figure 7 : Simulation de la projection Maintenant. par ailleurs. nous calculons les tendances envers les différentes approches. 5. Ce test vise essentiellement à vérifier son bon fonctionnement. Cette étude se résume dans le tableau présenté ci-dessous et qui est accompagné. Une fois cette étape achevée. et exprime entre temps les résultats de quelques jeux de test. d’une légende résumant les termes et les abréviations y inclus.

Par Ap. Par Ap.63 1 7 1 7 Ap. Par collaboration 1. Par Ap. 26 . Etude de cas Questions Jeux1 Jeux2 Jeux3 Jeux4 Jeux5 Question 1 TEA TED NEANED MEA TEA Question 2 MEA PED NEANED TEA MEA Question 3 PED MED PED PEA TEA Question 4 TED NEANED PEA NEANED PEA Question 5 TEA PED NEANED MEA NEANED Question 6 TEA MED PED NEANED MED Question 7 MEA PED TED NEANED MEA Question 8 NEANED PEA MED MEA NEANED Question 9 PED TEA TEA NEANED PED Question 10 PEA PEA MEA MEA MED Question 11 MEA PED NEANED TED PED Question 12 MEA NEANED MEA NEANED TED Question 13 NEANED MEA TEA NEANED TEA Question 14 MED PEA MEA MED MEA Question 15 MED MEA NEANED TED TEA Question 16 MED NEANED MED PEA MEA Question 17 MED MEA TED PEA PEA Question 18 PED PEA PEA MED NEANED Question 19 TED PED PED NEANED PED Question 20 TEA MED MEA NEANED NEANED Question 21 MEA TED PEA MED TEA Question 22 PEA NEANED TEA TED MEA Question 23 NEANED PED NEANED PEA MEA Question 24 PEA MED PED NEANED TEA Question 25 NEANED TED MED MEA PED Question 26 PED TEA TEA NEANED MED Question 27 PEA MEA PED MEA NEANED Question 28 MEA NEANED PEA NEANED TED Question 29 PED MED MED PEA PED Question 30 MED TED NEANED MEA NEANED Question 31 TED NEANED MED NEANED MED Question 32 TEA NEANED TED PEA PED Question 33 MEA MEA PED MEA NEANED Question 34 PEA NEANED MED NEANED PEA Question 35 NEANED MEA NEANED MEA PED Question 36 TEA PEA PEA NEANED NEANED Résultats Ap. Par objectif 1 7 4 1 4 Ap. Par compétence 7 4 1 7 1 Ap. Par Ap. Par Préférence obj col com obj com Tableau 2 : Tableau des jeux de tests des réponses au questionnaire.

Par ailleurs nous nous sommes assuré à travers l’expérience et l’étude empirique que la logique floue. nous avons essayé d’effectuer une expérience en appliquant les normes et les théories présentés en premier chapitre. Par com Approche Par compétence Ap. Par col Approche Par collaboration Tableau 3 : Légende du tableau des jeux de tests des réponses au questionnaire. Cependant dans ce qui suit. nous allons procéder à la création d’un service web qui permet non seulement de calculer le résultat d’un questionnaire mais aussi de créer ce dernier. est effectuée à travers l’implémentation d’une petite application locale qui permet en effet de manipuler le code ‘FCL’. Nous notons également que l’expérimentation de notre questionnaire qui détermine l’approche pédagogique d’un apprenant. 27 . est applicable pour le calcul des questionnaires. qui n’est pas applicable dans tous les domaines et qui nécessite une expertise importante. 6 Conclusion Après la lecture et la recherche exhaustive dans les différents domaines relatifs à notre projet. Par obj Approche Par objectif Ap. à travers cette étude expérimentale. Etude de cas Abréviations Acronymes TEA Totalement En Accord MEA Moyennement En Accord PEA Peu En Accord NEANED Ni En Accord Ni En Désaccord PED Totalement En Désaccord MED Moyennement En Désaccord TED Peu En Désaccord Ap. nous avons arrivé à élaborer un questionnaire fidèle aux normes. En effet.

Mais elle est bien supérieure à l'autre.La justesse de raisonnement a ses règles et sa physionomie. la justesse de conception n'en a pas. Joseph Joubert .

........................................... 34 4.................................2 Diagramme des cas d’utilisation.................................................1 Inscription et authentification ...................4 Interaction entre le client et le service web . 39 ....... 33 4............................................................................................................................................. 28 2 Présentation d’UML .............3 Création d’un questionnaire.................................................................... 29 3............................................1 Introduction ..............1 Diagramme de classe .............. 35 4...... 28 3 Conception Généralisée ..2.......... 35 4............................................................................................................2................................................................................................................................................................................................... 29 3............... 31 4 Conception focalisée.........................2 Diagramme de séquence .....................2 Réponse à un questionnaire ............................................................................................................................................................................................................2................... 34 4.... 38 6 Conclusion............. 36 5 Conception de la base de données...........................................................................................................................2..................1 Diagramme de classe . 33 4....................................................................................

Il y en a qui indiquent que l’apparition de ce langage était en 1976 avec l’implémentation des concepts fondateurs de l’approche objet. ce qui rend la modélisation plus claire et compréhensible. étant non arbitraire. Mais ce qui est en commun entre tous les documents est l’année 1995. Unified Method 0. De plus UML est plus approprié que d’autres langages de modélisation pour la conception des nouvelles activités des entreprises telles que le commerce électronique et les services Internet [32].9 (notez le remplacement du mot méthode par le 28 . Conception UML 1 Introduction La conception est une phase qui précède la réalisation d’un projet. En troisième partie nous présenterons la base de données qui servira pour l’enregistrement des données utilisées dans notre projet. 2 Présentation d’UML UML : langage de modélisation unifié (Unified Modeling Language) est un langage graphique de modélisation des données et des traitements. De plus UML. nous procéderons à la présentation des diagrammes représentant notre conception. La grande diversité des documentations qui existent sur le marché et qui concernent UML indiquent différentes dates d’apparition d’UML. En 1996. Jacobson les a rejoints pour produire UML 0.8. C'est une formalisation très aboutie et non-propriétaire de la modélisation objet utilisée en génie logiciel. Ce troisième chapitre comportera en première partie la présentation d’UML ainsi que ses diagrammes utilisés dans la modélisation de notre projet. est argumenté par la standardisation d’UML par OMG. nous allons choisir le langage UML comme outils de modélisation de notre projet. Ce choix. quand Booch et Rumbaugh (et quelques autres) se sont mis d’accord pour construire une méthode unifiée. En seconde partie. d’autres indiquent des dates même antérieures à celle là. est fondu essentiellement sur l’approche Objet. Bien qu’il existe plusieurs méthodes et langages de conception et de modélisation. Cette phase est indispensable pour le succès du projet du fait qu’elle assure la cohérence entre la spécification des besoins et le produit final.

L'OMG diffuse depuis Novembre 2007 la version UML 2. Alors. adopte en novembre 1997 UML 1. L’administration consiste dans notre cas à gérer les comptes des utilisateurs tels que la validation des comptes et la suppression des comptes.1 comme langage de modélisation des systèmes d’information à objets. cette fonctionnalité est considérée hors notre domaine d’étude alors elle est exclue de notre conception. Oracle. Le diagramme de classe présenté ci-dessous présentera alors les différentes entités.2 qui est en fait une révision de la version précédant. le compte de l’apprenant est géré par un administrateur lors de son inscription à la plate forme en question. Cet acteur admet comme rôle l’administration de la plate forme. l’organisme qui fédère aujourd’hui plus de 850 acteurs du monde informatique. DEC. L’OMG (Object Management Group). Unisys etc. L’administrateur est un acteur indispensable pour n’importe qu’elle plate forme quelque soit sa nature et son activité. Cette nouvelle version d’UML marque la naissance du quatorzième diagramme à savoir. En effet. Microsoft. De plus. Il gère aussi la plate forme en ajoutant ou supprimant les objets d’apprentissage de la plate forme.1. [31] 3 Conception Généralisée 3. constitue la classe la plus laboureuse en termes d’interaction avec les autres entités. Rational.) et UML 1. et qui sont d’ailleurs détaillées dans le deuxième 29 . La version d’UML en cours à la fin 2006 est UML 2.1Diagramme de classe Notre projet illustre six entités qui sont en interaction. pour qu’il soit cohérent.0 et les travaux d’amélioration se poursuivent. Cependant. le ‘Profil Diagram’ et qui est classé parmi les diagrammes de structures. le diagramme de classe montre l’interrelation entre les différentes entités. étant l’entité centrale de nos travaux. Suite à son inscription. Actuellement l’OMG diffuse UML 2. Conception UML mot langage.2 [27]. plus modeste). HP. leurs attributs ainsi que leurs méthodes. ce dernier aura la main de choisir le questionnaire au quel il va répondre afin de déterminer sa préférence envers un thème. L’apprenant. Les acteurs les plus importants dans le monde du logiciel s’associent alors à l’effort (IBM. le questionnaire doit avoir un certain nombre de caractéristiques déterminées à l’avance.0 est soumis à l’OMG. Le questionnaire constitue à son tour une entité importante dans nos travaux puisqu’il forme l’outil d’extraction d’informations qui servirons par la suite aux traitements souhaités.

ré-illustrer d’avantage ces caractéristiques dans un paragraphe ultérieur qui servira à détailler la classe questionnaire. En plus des fonctionnalités de l’utilisateur. Conception UML chapitre. La version expert de notre service web permet ainsi l’obtention des résultats plus raffinés que la version novice. le pédagogue a le privilège de proposer un questionnaire en fournissant les informations nécessaires. nous allons. En effet. Le service Web offre une simulation du nouveau questionnaire pour aider le pédagogue de prendre le bon choix. et le mode expert qui demande une expertise non seulement dans le domaine de la pédagogie mais aussi dans le domaine des mathématiques et plus précisément dans le domaine de la logique floue. Cependant. Ceci explique le lien d’héritage entre le pédagogue et l’utilisateur. Ce raffinage influence en conséquence la qualité du questionnaire produit. le pédagogue a le choix d’enregistrer son questionnaire pour qu’il soit accessible à travers le Web et les apprenants peuvent ainsi y accéder ou rejeter le questionnaire en cas de résultats non valide. Une fois le questionnaire créé. vue le nombre et la qualité de l’information requise. en outre. notre service web offre l’opportunité au pédagogue de choisir le mode de l’utilisation du service entre un mode simple dans lequel il donnera le minimum d’information sur le questionnaire qu’il veut créer. 30 . Le questionnaire est crée par un pédagogue qui peut être à son tour un utilisateur.

Conception UML Figure 8 : Diagramme de Classe généralisé 3. Une fois il est inscrit il peut alors aller choisir le questionnaire au quel il va répondre afin de spécifier ses tendances. le but de présenter un diagramme des cas d’utilisation est de structurer les besoins des utilisateurs et les objectifs correspondants d'un système. 31 .2 Diagramme des cas d’utilisation En général. Dans notre cas il s’agit d’organiser les fonctionnalités assurées par le service web à créer. L’apprenant peut s’inscrire à la plate forme et attend la validation de son compte auprès de l’administrateur.

il sera capable de valider les comptes des nouveaux inscrits ou de supprimer des comptes. En fonction de la version choisie. il doit choisir une version. En outre. le pédagogue est inviter à remplir les étapes nécessaire afin d’arriver à la production du questionnaire désiré. Conception UML Le pédagogue peut effectuer toutes les fonctionnalités de l’apprenant. Dès qu’il soit authentifié. Pour ce faire. L’administrateur gère les apprenants et les pédagogues. Figure 9: Diagramme des Cas d’Utilisation 32 . il a le privilège de créer des questionnaires.

d’un ensemble de règles. Figure 10: Diagramme de Classe d’un questionnaire 33 . nous somme engager à spécifier d’avantage cette entité primordiale pour notre projet. à son tour.1 Diagramme de classe Notre service Web permet de créer des questionnaires et de calculer la préférence d’un candidat en fonction de sa réponse à ce questionnaire. L’ensemble de règle servira pour déterminer la sortie en fonction des entrées. Chaque catégorie est composée d’un ensemble de question que chacune. Chaque terme est défini par une fonction mathématique prédéfinie et un ensemble de points caractéristiques pour former une courbe. d’un ensemble de méthodes et d’une sortie. tout en appliquant les méthodes définies dans la classe méthodes. Cette courbe servira par la suite à la fuzzyfication de la réponse relative à la question ainsi qu’à la defuzzyfication de la sortie. Alors. est constituée d’en ensemble de termes linguistiques. Conception UML 4 Conception focalisée 4. Un questionnaire est composé d’un ensemble de catégories.

Si la décision est positive.2. Une fois cette étape achevée. à travers des diagrammes de séquences. l’administrateur doit s’assurer de leurs habilitations. représenter un scénario d’un ou plusieurs cas d’utilisation. un apprenant est généralement validé sans aucune exigence. 4. cependant pour les pédagogues. En effet. Conception UML 4. ce dernier doit fournir quelques coordonnées à travers le remplissage d’un formulaire donné par la plate forme. l’axe vertical représente la chronologie et montre l’enchainement des fonctionnalités réalisées par certains acteurs. Pour ce faire.1 Inscription et authentification Lors de la consultation de la plate forme pour la première fois. en conséquence. quelques cas d’utilisation que nous considérons importants dans notre projet. Alors.2 Diagrammes de séquences Le diagramme de séquence vise essentiellement à représenter des interactions entre les entités d’un système selon un point de vue temporel. le consultant est invité à s’inscrire à la plate forme afin de se profiter de toutes les fonctionnalités disponibles. Un diagramme de séquence peut. Figure 11: Diagramme de Séquence d’inscription et d’authentification 34 . Nous notons que l’inscription d’un apprenant est similaire à celle d’un pédagogue sauf que la différence réside dans la validation. En effet. le nouveau inscrit peut accéder à son compte à travers ses paramètres fixés au part avant dans la phase d’inscription. l’apprenant doit attendre la validation auprès de l’administrateur. l’inscription est validée. nous représenterons dans ce qui suit.

2 Réponse à un questionnaire Un apprenant ou un pédagogue peut choisir le questionnaire au quel il va répondre à travers l’interface qui lui affiche tous les questionnaires disponibles. Une fois authentifié.2. la plate forme distingue les apprenants et les pédagogues à travers les paramètres de connexion. le questionnaire s’affiche à l’interface. les réponses sont envoyées à travers la plate forme vers le service web qui calcule la préférence et retourne le résultat vers la plate forme qui l’interprète et le formate afin de l’afficher. le pédagogue en question procède à la création de son questionnaire. Figure 12: Diagramme de Séquence de réponse à un questionnaire 4.2. et lors de la phase d’authentification. Pour ce faire il doit obligatoirement choisir la version de l’interface de création des questionnaires puis remplir les étapes nécessaires. Une fois toutes les questions répondues. Dès qu’il valide sa création. 35 . Conception UML 4. Un fois choisi. Ensuite la plate forme propose une simulation chronologique du questionnaire et demande l’accord du pédagogue pour l’enregistrement de son questionnaire.3 Création d’un questionnaire Seul le pédagogue a le privilège de proposer un questionnaire. les paramètres saisis sont envoyés au service Web afin de créer le FCL relatif au questionnaire. Pour cela.

Les réponses sont envoyées à la plate forme sous format d’une requête POST qui est compréhensible par la plate forme Web.4 Interaction entre le client et le service Web Dans ce paragraphe. Conception UML Figure 13: Diagramme de séquence de création d’un questionnaire 4. nous allons descendre dans les détails technique afin d’expliquer l’interaction entre l’application cliente et le service web hébergé dans un serveur distant et qui communique à travers le web. le client soap envoie l’enveloppe au client http. puis envoie les réponses qui sont formatées et sérialisées au niveau du client soap. ce dernier élimine l’enveloppe POST. Nous prenant le cas d’utilisation le plus répétitif qui est la réponse à un questionnaire. Dès qu’elles atteignent la plate forme à travers son serveur http. Dès que cette étape s’achève.2. Le client http ajoute une couche à cette enveloppe afin de la transformer en requête POST. la requête est envoyée via Internet au serveur hébergeant le service web destination. Le service web calcule 36 . Comme le montre le diagramme de séquence ci-dessous. Le serveur http intercepte la requête POST et élimine l’enveloppe POST et envoi l’enveloppe soap résultante au serveur soap qui à son tour la désérialise et passe les valeurs des réponses au service web. l’apprenant introduit les réponses aux questions à travers sa machine (le cas échéant à travers le navigateur). Une fois la sérialisation terminée.

plate forme et service Web. Figure 14: Diagramme de Séquence d’interaction utilisateur. Le serveur soap récupère la valeur retournée et la sérialise dans une nouvelle enveloppe soap et la passe au serveur http pour la transformer en message de retour de la requête POST et l’envoyer au client. La plate forme effectue alors le processus de désérialisation en éliminant l’enveloppe POST au niveau du client http et en écartant l’enveloppe soap au niveau du client soap. l’apprenant peut alors avoir sa préférence demandée. A travers le navigateur Web. Conception UML ainsi la tendance de l’apprenant et retourne le résultat. 37 . La seconde phase consiste alors à formater le résultat retourné et le passer à son serveur http qui le transforme à son tour en un message de retour de la requête POST et l’envoie à la machine du client.

et à travers l’association ‘créer’. En effet. De ce fait. comme nous avons présenté au début de ce chapitre. sa description. soit enregistrer le code dans une chaine de caractère et l’enregistrer directement dans la base de données et la convertir par la suite en un système d’inférence flou FIS. il sera plus facile de récupérer une base de données dans un seul fichier que d’aller chercher tous les fichiers FCL créé. nous distinguons principalement trois acteurs humains à savoir. en cas de panne. Conception UML 5 Conception de la base de données Pour sauvegarder les questionnaires élaborés par les pédagogues. Dans ce cas l’apprenant peut répondre à plusieurs questionnaires. La première table concerne pratiquement tous les utilisateurs du service Web. En deuxième lieu. nous avons deux choix : soit enregistrer le code dans un fichier qui a l’extension ‘. ainsi qu’un attribut qui permet de distinguer le type de l’utilisateur. ainsi que sa date de création. Pour le code FCL. La table utilisateur comportera alors les paramètres d’authentification. le nombre de niveaux d’évaluation de réponse. la création et le chargement des fichiers ainsi que la transformation du code FCL en système d’inférence flou FIS augmentent la latence du réseau et peuvent en conséquence engorger le serveur surtout lors d’un accès concurrent au ressources. ce qui est conforme au diagramme de classe proposé au part avant. Cependant un questionnaire ne peut être créé que par un et un seul pédagogue. Malgré que le premier choix s’avère l’optimale (pas de gaspillage de mémoire au niveau de l’allocation de l’espace nécessaire à l’enregistrement du code FCL et qui est une allocation statique dans le cas de la base de données).FCL’ et enregistrer son nom dans la base de données afin de pouvoir y accéder. les apprenants. La deuxième table comportera toutes les caractéristiques d’un questionnaire tels que son nom. Un apprenant peut répondre à un questionnaire afin de déterminer sa préférence. nous allons utiliser la deuxième alternative pour deux raisons . un pédagogue peut proposer plusieurs questionnaires. le nombre de catégories. La deuxième fonction que doit assurer est la sauvegarde de la préférence d’un apprenant lors de la réponse à un questionnaire. nous avons besoin d’une base de données qui permet l’historisation. En consultant le diagramme de classe de l’application nous pouvant remarquer la ressemblance entre les multiplicités des classes impliqués dans la création et l’utilisation des questionnaires et les cardinalités des entités de la base de données. les questions. 38 . son code FCL. les pédagogues et les administrateurs.

à travers les diagrammes UML qui permettent de percevoir le système de point de vue structurel et comportemental. 39 . un passage souple et fluide à l’étape de la mise en œuvre qui constitue l’étape la plus laboureuse dans un projet. En second lieu la conception nous permettra par la suite. qui comporte le modèle conceptuel de données ainsi que le modèle physique de données. Conception UML Cette ressemblance vérifie. 6 Conclusion Nous avons consacré ce chapitre à la conception de notre travail. la cohérence entre nos différentes perceptions de notre projet. Elle nous a permis de considérer les différentes fonctionnalités que doit assurer le service Web qui sera implémenté. l’objectif du chapitre suivant. L’étape de l’implémentation fait. en effet. alors. La modélisation de la base de données relationnelle est détaillée dans l’annexe A. Cette conception nous a permis de tracer les squelettes des différentes classes à implémenter.

c'est le talent.Faire aisément ce que d'autres trouvent difficile à réaliser. c'est le génie. Henri Frédéric Amiel . faire ce qui est impossible au talent.

........................................................................................................................5 Réponse à un questionnaire .........................................................................1 La phase de l’inscription......................................................................................................................... 42 2......... 53 ...............................................................4 Elaboration d’un questionnaire............................................................................................................... 40 2............................................................................ 51 4 Planification du projet .......6 Gestion du compte personnel........... 43 2................ 40 2 Projection de la conception sur la pratique .................................... 50 2............................................................................3 Authentification et connexion à l’espace personnel .... 45 2..........................................................................2 Validation des inscriptions ... 41 2. 51 3 Tests et vérification ..........................................1 Introduction .................................................................................................. 53 5 Conclusion.............................................

Ensuite nous consacrerons une partie de teste de l’application dans laquelle on va créer le questionnaire de détermination de l’approche pédagogique d’un apprenant en utilisant notre service Web. En effet. Les actualités sont généralement la création de nouveaux questionnaires. Un deuxième anglet intitulé Infos est réservé à l’affichage interactive des actualités. 2 Projection de la conception sur la pratique Dans cette partie nous allons montrer l’application de point de vue fonctionnel. Nous détaillerons dans l’annexe C les différentes composantes de notre environnement de travail. Nous présenterons en premier lieu. entre temps. Dans ce chapitre. 40 . un lien pour l’inscription et un lien pour la récupération du mot de passe en cas d’oubli. les contrôles de l’introduction des données assurant d’une part l’intégrité de données et d’autre part l’interactivité de l’interface graphique. De plus. la machine virtuelle JVM est la plus utilisée [27] ce qui nous a encouragé à choisir cette plate forme de développement pour assurer l’accessibilité et l’interopérabilité. nous présenterons en premier lieu la projection de la conception sur le plan pratique pour arriver à la création de l’application en question. nous représenterons. La page d’accueil comporte un panneau pour l’authentification et la connexion à l’espace de travail personnel. La fidélité du produit final à sa conception assure la satisfaction des besoins et facilite sa maintenance. Pour l’implémentation de notre service Web. Un troisième panneau étiqueté Newsletter est réservé pour l’envoi des actualités via un courrier électronique. la fidélité de la réalisation par rapport à la conception. Implémentation 1 Introduction L’implémentation n’est qu’une projection fidèle de la phase de conception. La troisième partie portera sur le planning chronologique de la période du projet de fin d’études. nous avons utilisé un environnement de travail se basant essentiellement sur les produits JEE. la page d’accueil de l’application et par la suite les différents panneaux assurant ses fonctionnalités. vue l’existence de plusieurs diversité d’outils de programmation et de déploiement.

1 La phase de l’inscription Le processus de l’inscription ne concerne que les pédagogues et les apprenants. il y a lieu un contrôle qui assure l’introduction d’information correcte syntaxiquement et sémantiquement. le prénom et le nom utilisateur doit être composé d’au moins deux caractères et l’e-mail doit vérifier la syntaxe d’une adresse électronique selon le standard spécifique. Une fois la syntaxe est juste. En effet. un script AJAX permet de vérifier la syntaxe de l’information introduite instantanément . Pour pouvoir s’inscrire. il faut remplir un formulaire et attendre la validation du compte auprès de l’administrateur. alors que le compte administrateur est considéré comme un compte spécial qui existe dès la mise en place de l’application. 2. il 41 . le nom. Implémentation Figure 15 : Page d’accueil de l’application. Lors du remplissage de formulaire.

Cette vérification assure l’exclusivité du nom d’utilisateur et la fidélité de la confirmation du mot de passe par rapport au mot de passe introduit précédemment. Ce dernier accède à l’espace de gestion des nouveaux abonné à travers un lien qui est inclut dans son espace de travail. 42 .2 Validation des inscriptions L’administrateur est le seul acteur qui a la main sur la liste des nouveaux inscrits. Nous notons dans ce contexte qu’une demande rejetée signifie que le nouvel abonné ne pourra jamais se connecter avec les coordonnées présentées dans cette demande. Implémentation procède à la vérification sémantique. soit une par une ou par lot en cochant les cases à cocher et en appuyant ensuite sur le bouton correspondant. Figure 16 : Interface de l’inscription d’un utilisateur. 2. Le bouton RETABLIR permet de vider tout les champs du formulaire. Une demande acceptée permet automatiquement la validation du compte en question et son propriétaire peut se connecter à son espace personnel et se bénéficier en conséquence de toutes les fonctionnalités qui lui sont offertes selon le type de son compte. une liste contenant les nouvelles demandes d’inscription est affichée. L’administrateur peut alors valider ou supprimer les demandes. La validation d’un compte pédagogue est généralement plus délicate que la validation d’un compte apprenant du fait que l’administrateur doit s’assurer de l’identité et les compétences recommandées pour s’inscrire en tant qu’un pédagogue et proposer ainsi les questionnaires. Dès qu’il consulte cet espace. Par la suite un simple clic sur le bouton ENVOYER permet d’envoyer une demande d’inscription à l’administrateur qui se charge de prendre la décision de valider ou de rejeter la demande.

L’introduction d’un mot de passe erroné constitue la troisième possibilité. 2. Implémentation Figure 17 : Gestion des nouveaux abonnés. L’utilisateur est inscrit mais n’a pas encore obtenu la validation de la part de l’administrateur. Un message indiquant à l’utilisateur que le mot de passe n’est pas valide. Dans ce cas un message indiquant à l’utilisateur qu’il est inscrit mais non validé s’affiche. Après la vérification de l’existence du compte dans la base de données. Figure 18 : Panneau d’authentification d’un acteur.3 Authentification et connexion à l’espace personnel Tous les acteurs humains de la plate forme passent par l’étape de l’authentification pour pouvoir accéder à leurs espaces de travail. est affiché. cette phase consiste à introduire le nom utilisateur et le mot de passe. Bien évidement. Nous présenterons les différents affichages lors d’une erreur de connexion liée à l’introduction de paramètres non valides. 43 . Par la suite un message indiquant à l’utilisateur qu’il n’est pas inscrit. La seconde possibilité se résume dans l’introduction d’un nom utilisateur non existant dans la base de données. il y trois possibilités.

il suffit de cliquer sur le lien correspondant. Pour les utilisateurs qui ont oublié leurs mots de passe. Nous montrerons dans la figure présentée ci-dessous la réception d’un courrier électronique qui contient le nom utilisateur et le mot de passe. la plate forme lui envoie un message électronique contenant son mot de passe oublié. Figure 19 : Panneau de récupération du mot de passe oublié par E-mail. Un utilisateur est redirigé dans une autre page pour introduire ses coordonnées. Si les coordonnées introduites sont correctes. Implémentation Panneau d’authentification Utilisateur non validé Mot de passe incorrecte Tableau 4 : Les différents cas de figure de la phase Authentification. Nous notons dans ce contexte que certains serveurs de messagerie considèrent un tel message comme étant un courrier indésirable. 44 .

le nombre de questions par catégorie et le nombre de niveau des réponses. La première étape consiste à introduire les caractéristiques fondamentales d’un questionnaire à savoir le nombre de catégories sur lesquelles va porter le questionnaire. le pédagogue peut choisir d’utiliser soit la version pour les experts ou la version pour les novices. Nous supposons entre temps que le pédagogue en question est inscrit. 45 . 2.4 Elaboration d’un questionnaire Selon ses compétences et ses pré-requis dans le domaine du questionnaire et le domaine de la logique floue. Dans ce qui suit nous allons considérer la version pour les experts puisqu’elle est plus exhaustive et plus précise. Implémentation Figure 20 : Exemple de réception d’un mot de passe oublier par un courrier électronique. Il suffit maintenant de cliquer sur le bouton ENVOYER. Le contrôle de données se fait de façon interactive et instantanée pour éviter la production des exceptions système qui sont indésirables. Figure 21 : Première étape de l’élaboration d’un questionnaire. validé et connecté. Dans ce qui suit nous allons considérer un utilisateur pédagogue puisqu’il est capable d’élaborer et de répondre à la fois aux questionnaires.

le nombre de termes de sortie ainsi que leurs définitions. les singletons et les morceaux linéaires. accord. la valeur introduite est vérifiée. Dans la troisième étape le service l’application offre au pédagogue l’opportunité de définir la valeur par défaut. le pédagogue donne la valeur à appliquer dans le cas ou le code FCL ne trouve aucune règle applicable. la fonction cloche généralisée. A titre d’exemple. c'est-à-dire que le passage à l’étape suivant ne s’effectue que si et seulement lorsque les valeurs introduites de chaque termes correspondent à la syntaxe et à la sémantique de sa fonction mathématiques. la fonction gaussienne. la méthode de calcule est la méthode que va utiliser le code FCL pour calculer le résultat final et les termes de sorties que doivent êtres définies de la même manière que les termes d’entrée puisqu’ils constituent à leurs tours des termes linguistiques. Notre application offre toutes les fonctions mathématiques supportées par la logique floue et par le langage FCL à savoir. dans le questionnaire de détermination de l’approche pédagogique d’un apprenant élaboré par nous-mêmes. la fonction trapézoïdale. Une fois cette opération effectuée. En effet. Implémentation La deuxième étape permet au pédagogue d’introduire le nombre de terme par entrée c'est-à-dire le nombre de tendances par question. Pour décrire convenablement un terme il faut lui affecter un nom ainsi qu’une fonction mathématique. la fonction triangulaire. 46 . De plus. Figure 22 : Deuxième étape de l’élaboration d’un questionnaire. Nous notons que pour chaque fonction mathématique choisie. un sous-menu s’affiche dans la même page pour la description des termes. Pour continuer à remplir cette étape il est indispensable d’appuyer sur le bouton ok qui confirme la valeur de terme par entrée. la méthode de calcul. notre application se porte garante de l’introduction d’informations vérifiées. il existe trois termes à savoir. De même que l’étape précédente. désaccord et moyen. l’application affiche la syntaxe à suivre pour introduire les valeurs. la fonction sigmoïdale.

dans la quatrième étape le pédagogue est invité à spécifier la méthode d’activation qui illustre le degré de respect d’une condition en agissant sur un ensemble de sortie flou. soit de la supprimer après la validation à travers sa sélection et l’appui sur le bouton SUPPRIMER REGLE. 47 . En effet. La construction des règles est assistée par l’application pour garantir son exactitude syntaxique. En cas d’erreur lors de la construction d’un règle il est possible soit de réinitialiser la construction si la détection de l’erreur s’est réalisée avant la validation de la règle. Une fois cette étape terminée. le pédagogue procède à la définition des règles qui seront appliquées sur les réponses aux questions que propose le futur questionnaire. Par la suite. à travers les processus d’activation et de désactivation des listes de choix. Bien évidement. en effet. Le pédagogue est invité aussi à définir la méthode d’accumulation qui manifeste. Implémentation Figure 23 : Troisième étape de l’élaboration d’un questionnaire. le pédagogue procède à la définition de la partie comportementale de son questionnaire. la combinaison des résultats des règles linguistiques dans un résultat final.

le pédagogue valide son questionnaire. Une fois la construction des règles achevée. Implémentation Figure 24 : Quatrième étape de l’élaboration d’un questionnaire. Une simulation animée est affichée pour aider le pédagogue à prendre la décision de l’enregistrement. 48 .

49 . Figure 26 : Cinquième et dernière étape de l’élaboration d’un questionnaire. Implémentation Figure 25 : Panneau de simulation lors de la création d’un questionnaire. Par la suite. Si la décision est positive. ce dernier procède à la cinquième et dernière étape qui se résume par l’affectation d’un nom au questionnaire ainsi qu’une description de son motif. En second lieu le pédagogue introduit dans cette étapes les questions du questionnaire pour finir son chef-d'œuvre. le pédagogue enregistre son questionnaire pour qu’il soit accessible aux autres utilisateurs.

Figure 28 : Réponse à un questionnaire (exemple de l'approche pédagogique) Dès que l’utilisateur termine la réponse à un questionnaire. 50 . Figure 27 : Liste de questionnaire disponible à un utilisateur. Une description de chaque questionnaire est affichée afin de donner une idée générale à l’utilisateur sur sa portée. Implémentation 2.5 Réponse à un questionnaire A travers le lien Consultation Questionnaire. le service web enregistre sa préférence spécifique dans la base de données et l’affiche par la suite dans la page d’accueil de son espace de travail personnel. un apprenant ou un pédagogue consulte la liste des questionnaires disponibles auxquels il peut répondre afin de déterminer une préférence spécifique. L’utilisateur choisi alors le questionnaire auquel il va répondre.

l’utilisateur est invité à introduire lui-même l’ancien mot de passe. 3 Tests et vérification Dans cette partie nous allons faire les mêmes jeux de tests effectués dans le deuxième chapitre en sa partie empirique et par la suite nous procèderons à la comparaison. Figure 29 : Espace de gestion du compte personnel d’un utilisateur. lors du changement du mot de passe. Pour ce faire il suffit de cliquer sur le lien Gérer mon compte. Par suite chaque utilisateur a le droit de mettre à jour ses coordonnées. 2. Implémentation Affichage de l’accueil de l’espace personnel Affichage à la fin de la réponse Tableau 5 : Les différents affichages du résultat d’une réponse à un questionnaire. pour des mesures de sécurité. Un formulaire s’affiche dans lequel la plate forme charge les données personnelles de l’utilisateur en question et lui donne la main pour les modifier. Un appui sur le bouton envoyer permet d’enregistrer les modifications apportées au compte et de rediriger l’utilisateur à la page d’accueil de son espace de travail personnel. Cependant. 51 . Par la suite l’utilisateur souhaitant changer son mot de passe fourni le nouveau et le confirme.6 Gestion du compte personnel Chaque utilisateur a son propre compte.

Les jeux de tests présentés ci-dessus sont identiques à ceux présentés en deuxième chapitre. En effet. les valeurs sont des termes linguistiques alors que dans ce chapitre les valeurs des numériques. 52 . Si nous comparons les résultats obtenu dans la partie empirique du deuxième chapitre et les résultats obtenu dans cette partie nous remarquons qu’elles sont identiques ce qui manifeste la fidélité de fonctionnement du service Web implémenté. L’unique différence réside dans l’expression de la valeur d’une réponse. Implémentation Questions Jeux1 Jeux2 Jeux3 Jeux4 Jeux5 Question 1 1 7 4 2 1 Question 2 2 5 4 1 2 Question 3 5 6 5 3 1 Question 4 7 4 3 4 3 Question 5 1 5 4 2 4 Question 6 1 6 5 4 6 Question 7 2 5 7 4 2 Question 8 4 3 6 2 4 Question 9 5 1 1 4 5 Question 10 3 3 2 2 6 Question 11 2 5 4 7 5 Question 12 2 4 2 4 7 Question 13 4 2 1 4 1 Question 14 6 3 2 6 2 Question 15 6 2 4 7 1 Question 16 6 4 6 3 2 Question 17 6 2 7 3 3 Question 18 5 3 3 6 4 Question 19 7 5 5 4 5 Question 20 1 6 2 4 4 Question 21 2 7 3 6 1 Question 22 3 4 1 7 2 Question 23 4 5 4 3 2 Question 24 3 6 5 4 1 Question 25 4 7 6 2 5 Question 26 5 1 1 4 6 Question 27 3 2 5 2 4 Question 28 2 4 3 4 7 Question 29 5 6 6 3 5 Question 30 6 7 4 2 4 Question 31 7 4 6 4 6 Question 32 1 4 7 3 5 Question 33 2 2 5 2 4 Question 34 3 4 6 4 3 Question 35 4 2 4 2 5 Question 36 1 3 3 4 4 Par Par Par Par Par Préférence Objectif Collaboration Compétence Objectif Compétence Tableau 6 : Jeux de tests des réponses au questionnaire de l’approche pédagogique. dans le deuxième chapitre.

 Etape 6 : Rédaction du rapport.  Etape3 : Conception et spécification. 5 Conclusion Dans ce chapitre. nous avons détaillé la projection de la conception du plan théorique sur le plan pratique tout en montrant la fidélité de notre application produite par rapport à la conception.  Etape4 : Réalisation et mise en œuvre.  Etape2 : étude de faisabilité. De plus nous avons montré que le service Web fonctionne convenablement et produit les résultats prévus. Nous énoncerons alors en premier lieu les différentes étapes et nous présenterons en second lieu un chronogramme qui illustre les périodes consommées par chaque étape. Etape6 Chap1 Chap2 Chap3 Chap4 Etape5 Etape4 Etape3 Etape2 Etape1 S1 S2 S3 S4 S1 S2 S3 S4 S1 S2 S3 S4 S1 S2 S3 S4 S1 S2 S3 S4 Janvier Février Mars Avril Mai Figure 30 : Chronogramme de planification du projet de fin d’études. identification de problèmes et correction. Implémentation 4 Planification du projet Dans cette partie nous allons présenter les différentes étapes achevées afin d’élaborer notre projet de fin d’études.  Etape5 : Tests. tant disque l’axe horizontal présente l’écoulement du temps par semaine. Notre projet est passé par six étapes énumérées comme suit :  Etape 1 : étude et documentation. L’axe vertical présente les différentes étapes. 53 . La partie présentant le chronogramme de planification des travaux montre le passage fluide de l’étape documentation à l’étape mise en œuvre et ceci se manifeste par le chevauchement des différentes étapes comme exprimé dans le graphe.

A tout problème existe sa solution. A toute solution peut surgir un nouveau problème. Daniel Desbiens .

.......................................... 54 2 Problèmes au court du développement sous l’IDE Eclipse ............................................3 Manipulation du code FCL par la programmation JAVA .................................................................... 58 3 Exceptions rencontrées lors du déploiement du service Web .............................2 Exception liée à l’inclusion de bibliothèques dans l’application serveur .... 54 2.......... 60 3.................. 64 ..................1 Exceptions liées à la configuration de Tomcat et Axis.........................................1 Introduction ..................................................... 62 4 Conclusion.2 Recherche et expérimentation des variables significatives.....................................1 Création du fichier FCL de notre questionnaire ................ 60 3................................................ 54 2...................................................... 55 2....................

portera sur les exceptions rencontrées lors du déploiement du service Web élaboré. La contrainte la plus importante dans ce contexte. 54 .5]. Figure 31 : Edition d’un code FCL à l’aide d’un éditeur de texte. ce langage n’admet pas d’éditeur.1 Création du fichier FCL de notre questionnaire Comme nous avons cité dans les chapitres précédents. De plus. est qu’il n’y a pas de document solide qui explique ce langage à part le document fourni par l’IEC [4. nous devons maitriser les spécifications syntaxiques et lexicales du langage FCL. D’autre part. la manipulation de la logique floue nécessite un degré d’expertise assez élevé pour pouvoir comprendre les processus de fuzzyfication et de defuzzyfication. 2 Problèmes au court du développement sous l’IDE Eclipse 2. Alors nous ne pouvons créer des codes FCL que par le biais d’un éditeur de texte. La première catégorie. nous avons dû faire face à divers problèmes. La seconde catégorie. concerne les erreurs qui se sont lancées au court de l’implémentation du service Web sous l’environnement de travail intégré Eclipse. Ces problèmes peuvent être classés en deux grandes catégories. Résolution des problèmes rencontrés 1 Introduction Lors de l’implémentation de notre service Web.

la courbe exprimant le désaccord d’un apprenant sera triangulaire. Après quelques essais de réponse au questionnaire nous avons remarqué que les résultats de notre code FCL ne sont pas exacts. la courbe de ce terme sera une courbe triangulaire s’étalant sur sept niveaux pour garantir le respect du modèle TAM qui indique sept niveaux de réponses. Figure 32 : Première version des courbes des termes d’entrée d’une question. Ce terme en fait représente le degré de l’accord d’un apprenant exprimé à travers sa réponse.2 Recherche et expérimentation des variables significatives Notre problème est de trouver les termes d’entrée qui serviront par la suite à organiser les réponses des apprenants selon la structure du langage FCL puis procéder à leur traitement. Nous considérons dans nos démonstrations le questionnaire de détermination de l’approche pédagogique qui fait part de notre projet. 55 . Résolution des problèmes rencontrés 2. De plus. Alors nous avons déduit qu’il ne s’agit pas uniquement de détecter l’accord de l’apprenant. La figure ci-dessous exprime les deux termes linguistiques exprimant l’accord et le désaccord d’un apprenant envers une question. mais en contre partie il faut détecter l’opinion réciproque qui est le désaccord afin de garantir un équilibrage au niveau de l’application des règles. Par conséquence. Nous avons détecté en premier lieu le terme ‘agree’. De ce fait nous avons détecté un deuxième terme de qui est ‘desagree’. Ce terme à son tour s’étalera sur sept niveaux puisqu’il exprime la fonction mathématique symétrique.

Cependant il est à noté que le chevauchement exhaustif peut réduire les performances du calcul. De ce fait nous avons dû raccourcir l’échelle des courbes de l’accord et du désaccord pour ne contenir que quatre degré et demi au lieu de sept degrés. En effet. un apprenant peut être en accord avec la méthode autonome de résolution d’exercice dans certains domaines. 56 . A travers la multitude des termes linguistiques. nous avons détecté lors de l’expérimentation que les résultats obtenus ne sont pas assez précises. un avis total. En effet l’application de plusieurs règles permet d’assurer le non oubli et la non négligence de certaines informations. La première étant la détection d’une valeur de réponse plus précise surtout lorsqu’il s’agit d’un chevauchement des courbes des termes linguistique. La courbe de l’avis moyen couvrira la partie moyenne entre les deux courbes. La deuxième cause est l’augmentation des règles de defuzzyfication afin de garantir un traitement plus précis et ainsi obtenir de meilleurs résultats. pour deux raisons importantes. Si nous prenons à titre d’exemple la réponse d’un apprenant à la question1. cette valeur va être projetée trois fois sur les trois courbes. et si cette réponse est entre 3 et 5. La solution est d’ajouter un troisième terme pour donner un avis se situant entre l’accord et le désaccord. Si nous prenons le cas de la première question. Résolution des problèmes rencontrés Figure 33 : Deuxième version des courbes des termes d’entrée d’une question. Malgré que nous avons équilibré la defuzzyfication des termes linguistique. il préfère résoudre les exercices d’autres domaines avec un groupe d’apprenant. Cependant. nous déterminerons une préférence plus proche de ce que l’apprenant veut exprimer. ce chevauchement permet d’exprimer le comportement humain qui est d’ailleurs un comportement flou. Ce dernier ne donnera pas en conséquence.

Résolution des problèmes rencontrés

Figure 34 : Deuxième version des courbes des termes d’entrée d’une question.

Nous avons aussi rencontré un problème au niveau de la sortie du processus de
defuzzification. En effet, le calcul par la méthode de centre de gravité assure l’obtention d’un
résultat qui couvre toute la surface de l’avis d’un apprenant. Cependant les courbes de sortie
ne permettent pas d’atteindre le degré maximal de l’avis même si les réponses aux questions
le permettront. A titre d’exemple si un apprenant est totalement en accord (toutes les réponses
sont mises à 1) ou totalement en désaccord (toutes les réponses sont mises à 7) avec une
approche ou une autre, à la sortie nous n’obtenons jamais une sortie exprimant un avis
extrémum (réciproquement une sortie égale à 1 ou une sortie égale à 7), mais un avis qui
comprend certaine incertitude (réciproquement une sortie supérieur à 1 ou une sortie inférieur
à 7).

Figure 35 : Courbe de la sortie du processus defuzzyfication avant la correction.

57

Résolution des problèmes rencontrés

Nous avons compris alors que les courbes de sortie doivent non seulement représenter
les différents degrés des avis mais aussi doivent couvrir la surface symétrique par rapport à
l’axe horizontale passant par l’abscisse de l’avis maximal. Par exemple la courbe de ‘agree’
doit être une courbe triangulaire qui couvre l’intervalle [-2, 4] et le sommet admet comme
coordonnées (1, 0). La courbe ‘desagree’, à son tour, est triangulaire et couvre l’intervalle
[4, 10] et admet comme sommet le point de coordonnées (7, 1).

Figure 36 : Courbe de la sortie du processus defuzzyfication après la correction.

2.3 Manipulation du code FCL par la programmation JAVA

La création d’un système d’interférence flou FIS pour la manipulation du code FCL
est une tache assez compliquée. D’une part il faut respecter la syntaxe du langage FCL sans
pour autant avoir l’aide d’un éditeur puisqu’il n’en existe pas, comme c’est noté dans le
premier paragraphe de cette partie. D’autre part il faut préparer l’interception d’une exception
de type ‘Recognition Exception’. Au début de l’élaboration de notre projet nous n’avons pas
assez de documents qui nous permettent de bien manipuler cette exception. Cependant, après
avoir posé les questions techniques au chef du groupe responsable du développement du
package jFuzzyLogic [19], nous avons compris les démarches utilisées par ce groupe et nous
avons pu élaborer le code qui permettra l’interception de ce type d’exception. En effet il
s’agit de créer un bloc ‘try’ dans lequel nous programmons la création du FIS en question.
Puis nous passons à la création du bloc ‘catch’ dans lequel nous programmons l’interception
et le traitement de l’exception relative à la création des FIS. Pour plus de détails techniques,
veuillez consulter l’annexe D.

Une autre contrainte s’est posée lors de l’élaboration du service Web, du fait qu’il ne
s’agit plus de créer une application locale, mais en effet, de créer un service Web qui sera
58

Résolution des problèmes rencontrés

déployé dans la plate forme Web. De plus ce service Web va manipuler non seulement les
fichiers FCL mais aussi toute une base de données. Pour cela il est plus approprié de créer des
variables de type chaine de caractères (String) qui sauvegardera le FCL créé puis sauvegarder
cette variable dans la base de données. Ainsi il n’y aura qu’un seul accès à la base de données
pour récupérer le FCL souhaité. Cette solution s’avère meilleur que celle qui propose de créer
des fichiers FCL comme en local, puis sauvegarder leurs emplacements dans la base de
données puis effectuer un accès à ce dernier. La première solution assure le minimum d’accès
pour ne pas engorger le serveur hébergeant notre service Web surtout bien qu’il s’agira par la
suite d’un accès parallèle et concurrent au ressources.

Lors de la création de cette chaine de caractère, nous avons rencontré beaucoup de
problèmes que nous n’en citons que les plus significatifs. Le premier problème s’est produit à
cause de la concaténation de plusieurs chaines de caractères pour obtenir la variable finale.
Après plusieurs tests, nous avons conclu qu’il faut faire un retour à la ligne dès l’ajout d’une
chaine de caractère à la variable finale. Ce retour assure la conformité au standard de
définition du langage FCL [4,5].

Le second problème qui est vraiment critique pour notre projet est l’élaboration d’un
code java qui permet de créer des codes FCL selon les spécifications proposées par un
pédagogues et de les sauvegarder dans des variables de type chaine de caractère puis les
enregistrés dans la base de données.

La première étape de l’élaboration d’un tel code consiste en premier lieu à bien lire les
spécifications du langage FCL [4,5], puis par la suite élaborer un code JAVA qui permettra de
les intégrer dans le bon emplacement.

La seconde étape qui est vraiment la plus difficile est de détecter les codes qui se
reproduisent tels que les codes de création des variables d’entrées ou le code de création des
règles. Par la suite, nous procédons à l’élaboration d’un code qui permet la création
dynamique des codes FCL. Cette dynamique se manifeste par les courbes qui prennent les
paramètres nécessaires et construisent le code FCL.

Dans l’annexe D, nous présentons en détails les codes sources qui permettent de
générer les codes FCL.

59

1 Exceptions liées à la configuration de Tomcat et Axis Dès que nous avons terminé la création de notre application. Ce dernier 60 . En effet. nous avons trouvé la source du problème. Après une recherche exhaustive. le problème réside dans le processus d’entrée/sortie au niveau du serveur Tomcat. nous avons essayé de la déployer dans le serveur Tomcat pour voir son fonctionnement à l’extérieur de l’environnement de développement. Résolution des problèmes rencontrés 3 Exceptions rencontrées lors du déploiement du service Web 3. Figure 37 : Exception lancée lors du déploiement du service Web dans le serveur Tomcat.

pour l’implémentation de la lecture et de l’écriture.  Diverses -Filtres pour réalisations des filtres de fichier.util. Résolution des problèmes rencontrés est livré sans un système d’entrée/sortie puissant ce qui a poussé la fondation Apache à élaborer un package résolvant ce type d’exception. Comparateur pour des dossiers.avec des méthodes statiques pour effectuer des tâches communes. Commons IO est une bibliothèque d’utilités assistées pour développer la fonctionnalité d'E/S. Nous montrerons dans la figure ci-dessous le déploiement avec succès des applications serveur et client. qui est le ‘Common IO’.  Stream – Stream utilisable.  Diverses -Comparateurs pour réalisations de java. Figure 38 : Déploiement avec succès de l’application client et serveur. Il y a quatre domaines principaux inclus [20]:  Classes de service . 61 .

Cependant lors d’un appel du service Web pour la création ou la réponse à un questionnaire il y a lancement d’une exception. Figure 39 : Exception lancée lors de l’appel d’une méthode du service Web. Résolution des problèmes rencontrés 3.2 Exception liée à l’inclusion de bibliothèques dans l’application serveur L’application serveur ainsi que l’application client sont correctement déployées. 62 .

et la traduction [22]. 63 . Résolution des problèmes rencontrés Pareillement aux autres exceptions nous avons procédé à la recherche de la cause mère qui a produit cette exception afin d’effectuer les traitements nécessaires. Ainsi nous arrivons à faire fonctionner le service Web lors de son déploiement dans le serveur Tomcat. de C++. ANTLR fournit l'excellent appui pour la construction d'arbre. des compilateurs. La recherche nous a mené à comprendre qu’il faut intégrer la bibliothèque ANTLR dans la bibliothèque de l’application serveur. de C#. ou de python. un autre outil pour l'identification de langue. il y a plusieurs pages qui appellent des méthodes du service Web parmi lesquelles on cite la page ‘novice2. et des traducteurs des descriptions grammaticales contenant des actions de Java. Voici une illustration : Figure 40 : Exemple d’appel du service Web après déploiement.jsp’. ANTLR. l'arbre marchant. En effet. (autrefois PCCTS) est un outil linguistique qui fournit un cadre pour construire des reconnaisseurs (Recognizer).

Par la suite nous avons présenté les problèmes rencontrés lors du déploiement de l’application ainsi que les procédures suivies pour leurs résolutions. Nous sommes arrivés à résoudre ces problèmes et nous avons procédé ainsi à l’élaboration de l’application qui a un aspect généralisé. 64 . Résolution des problèmes rencontrés 4 Conclusion Dans ce chapitre. nous avons présenté les problèmes rencontré lors des la création des code ‘FCL’.

De plus l’utilisation de cet outil mathématique nécessite une expertise assez importante afin de pouvoir simuler les résultats obtenus par la réponse au questionnaire. En effet. La partie expérimentale nous a permis d’acquérir une expertise importante dans le domaine de la logique floue. Conclusion générale En guise de conclusion. L’approche pédagogique est un critère signifiant pour le calcul du profil de l’apprenant. Nous notons dans ce contexte que les domaines cognitif et psychologique nous ont posé d’énormes problèmes de sagacité. Cependant nous avons eu des doutes concernant l’application de la méthode de calcul dans notre contexte. nous avons entamé les travaux de projet de fin d’études en sélectionnant et en compulsant le maximum de documents portant sur les approches pédagogiques ce qui nous a permis de les définir et de délimiter leurs caractéristiques principales. nous reconnaissons que la réalisation de notre projet nous a permis de mettre en œuvre nos connaissances académiques acquises tout au long de notre formation et de les approfondir dans le domaine de la recherche sur le Web et les outils de recommandations dans la formation à distance. nous sommes passés à la conception du service Web qui accorde la détermination de l’approche pédagogique d’un apprenant tout en garantissant via cette 65 . chaque document portant sur la logique floue prévient les lecteurs que cette dernière n’est pas toujours applicable. Par la suite. Par conséquence. nous n’avons pas trouvé de moyens qui permettent concrètement de donner l’approche pédagogique préférée d’un apprenant. En second lieu nous avons étudié les différentes méthodes de validation et de calcul afin d’élaborer un questionnaire conforme qui permet de déterminer l’approche pédagogique appropriée à un apprenant. En effet. jusqu’à ce jour ci. Cependant. doit indispensablement souligner ce critère de personnalisation. La meilleur solution était donc d’essayer de faire une étude de cas dans laquelle on applique la logique floue sur notre raisonnement tout en utilisant le minimum de programmation et en comparant les résultats obtenu avec les résultats que nous devions obtenir en utilisant la logique ensembliste classique. toute plate forme d’e-Learning souhaitant garantir un maximum de raffinage et de personnalisation des objets d’apprentissage au profil des apprenants.

Cette exploration était structurée et organisée de façon à préserver le bon enchainement des travaux. 66 . la réutilisabilité. leur filtrage et leur préparation à la phase de calcul. mais qui trouvent de notre cas de figure un meilleur champ de convergence. la création des questionnaires conformes résolus par la logique floue. laquelle nous nous somme attaché à qu’elle soit interactive et fluide afin de garantir aussi bien la facilité d’utilisation que l’utilité d’utilisation. du personnel sur lequel nous allons effectuer nos tests à travers la proposition du questionnaire et enfin de l’expertise dans le domaine de statistique qui constituera notre outil de calcul et qui produira par la suite les résultats qui valideront notre questionnaire. nous citons que notre projet nous a permis d’une part de mobiliser nos différentes facultés de compréhension et d’intelligence et d’autre part de savoir quoi. Pour conclure. Nous avons eu également l’idée de généraliser la fonctionnalité du service Web pour permettre par ailleurs. Cette validation nécessite du temps pour la collecte des résultats. Conclusion générale technologie répondue l’interopérabilité. Nous avons prouvé de grands efforts pour entamer la réalisation dans un délai plus proche afin de passer à l’étape de validation qui est à son tour basée sur la théorie du modèle d’acceptation de la technologie (TAM). Par la suite nous sommes passés à l’implémentation du service Web. l’adaptabilité et la facilité d’utilisation. En effet notre projet qui est polyvalent nous a poussés à explorer divers domaines qui semblent divergents. où et quand chercher l’information souhaitée. La validation du questionnaire par la méthode TAM peut être le sujet d’un papier de travaux que nous essayerons de l’élaborer ultérieurement avec notre encadreur. l’accessibilité.

sun. [3] COMMISSION DES COMMUNAUTES EUROPEENNES. [12] Fred Davis. [11] Fred Davis. DOCUMENT DE TRAVAIL DES SERVICES DE LA COMMISSION. February 2003 updated for 2. Analyse des données et enquête par sondage.2003. eLearning : Penser l’éducation de demain. Introduction aux services web REST avec WCF 3. Université du Littoral Cote d’Opale. SEC (2003) 905. [4] Commission Electrotechnique Internationale IEC.fr [17] http://ec.com [7] Dictionnaire Encyclopédique LAROUSSE. [14] HENRI France. Leila Jemni Ben Ayed and Mohamed Jemni. Rapport à mi-parcours comme prévu par la résolution du Conseil du 13 juillet 2001. LUNDGREN-CAYROL Karin. Seventh IEEE International Conference on Advanced Learning Technologies (ICALT 2007). http://www. Bibliographie [1] Antoine Cornuéjols.07. Warshaw. [2] Christoph Fröschl Master’s Thesis .5. Apprentissage collaboratif à distance.europa. Richard P. [10] Florian Casabianca .alaide. IEC 61131 [6] Dictionnaire en ligne ‘A l’aide’.eu [18] http://java. Bruxelles. Inc.eclipse.com [19] http://jfuzzylogic.Bagozzi and Paul R. Introduction à la logique floue. Edition 2001.univ-lille1. University of Michigan. User acceptance of Computer Technology: acomparison of two theoretical models. User acceptance of information system: the Technology Acceptance Model (TAM) Working Paper #529.org [9] Fathi Essalmi. [15] http://concoursprof.chez. le 30.com [16] http://cueep. Originally published July 200. http://www.sourceforge. [8] Eclipse Platform Technical Overview Object Technology International.net 67 . IEC 1131 [5] Commission Electrotechnique Internationale IEC. User Modeling and User Profiling in Adaptive E-learning Systems : An approach for a service-based personalization solution for the research project AdeLE (Adaptive e-Learning with Eye-Tracking). A Multi-Parameters Personnalization Approach of Learning Scenarios. [13] Gérard Lécrivain.1. ISBN : 2-03-520154-3.

org [27] http://www.net [24] http://www. Bibliographie [20] http://tomcat. http://www. Unified Modeling LanguageTM (OMG UML).polymtl.org [28] Laurent AUDIBERT UML 2. Merise ou UML : quelle méthode pour les systèmes d’informations ? 68 .com [29] Laurent PIECHOCKI.wikipedia. www.omg. le langage de modélisation objet unifié.commentcamarche.developpez. L'apprentissage collaboratif en ligne : huit avantages qui en font un must. www.developpez.org [21] http://ws.apache.antlr2.org/ [23] http://www. UML.erudium.apache.ca [25] http://www. Superstructure.w3.org/axis [22] http://www.com [26] http://www.e-tud. Thomas De Praetere . [31] OMG.com [30] Marc Walckiers.org [32] Ronan HUOT.

.

Conception et modélisation de la base de données de l’application Modèle conceptuel de données Modèle physique de données 69 .

.

0 Figure 43 : Organigramme des diagrammes structurels et comportementaux d’UML 70 . Présentation d’UML 1 Hiérarchie des Diagrammes UML 2.

retenus par un observateur [29]. C’est précisément le rôle des diagrammes des cas d’utilisation qui permettent de recueillir. Il s’agit d’un processus qui consiste à identifier les caractéristiques intéressantes d’une entité. des idées. Nous concluons ainsi que chaque diagramme élaboré est une représentation normalisé et compréhensibles d’un modèle tel que vue par un concepteur. de l'anatomie etc.3 Diagramme des cas d’utilisation Bien souvent. employé dans tous les aspects des activités humaines pour visualiser et clarifier la matière. un modèle reflète des aspects important de la réalité. de mettre en évidence des corrélations en certains facteurs ou de représenter des parties d’un ensemble [27]. L’abstraction est un des piliers de l’approche objet. en vue d’une utilisation précise. des données statistiques. Un modèle est donc une vue subjective mais pertinente de la réalité. Présentation d’UML 2 Les diagrammes d’UML 2.1 Notion de modèle Un modèle est une abstraction de la réalité. Un diagramme permet aussi de décrire des phénomènes. il en donne donc une vue juste et pertinente [29]. Dans le cas de conception UML les deux notions présentées ci-dessus sont très importantes. Ce n’est pas ‘la réalité’ mais une vue très subjective de la réalité. 2. des relations. Elle désigne aussi le résultat de ce processus c'est-à-dire l’ensemble des caractéristiques essentielles d’une entité.2 Notion de diagramme Un diagramme est une représentation visuelle simplifiée et structurée des concepts. Cependant dans certains cas il est suffisant d’utiliser quelques diagrammes mais doivent être claires afin de garantir la compréhension des développeurs de l’application à programmer. Il leur faut donc un moyen simple d’exprimer leurs besoins. Pour une meilleur conception il est préférable d’utiliser tous les diagrammes disponibles d’UML car certains offrent une vue que d’autres ne le font pas. d’analyser et d’organiser les 71 . des constructions. Il définit une frontière entre la réalité et la perspective de l’observateur. Bien qu’il ne représente pas une réalité absolu. 2. la maîtrise d’ouvrage et les utilisateurs ne sont pas des informaticiens.

Présentation d’UML besoins. Ils centrent l'expression des exigences du système sur ses utilisateurs : ils partent du principe que les objectifs du système sont tous motivés. les cas d’utilisations ne présentent pas de solutions d'implémentation et ne forment pas un inventaire fonctionnel du système. On montre ces interactions dans le cadre d'un scénario d'un diagramme des cas d'utilisation. 2. Les principales informations contenues dans un diagramme de séquence sont les messages échangés entre les lignes de vie (qui représente les acteurs du système en question). Les cas d’utilisation permettent de structurer les besoins des utilisateurs et les objectifs correspondants d'un système. présentés dans un ordre chronologique. il faut se fonder sur des entretiens avec les utilisateurs [18]. Plusieurs types de messages (actions) peuvent transiter entre les acteurs et les objets [27] :  message simple : le message n'a pas de spécificité particulière d'envoi et de réception. Pour élaborer les cas d’utilisation. on représente l'acteur principal à gauche du diagramme. 72 . Ils identifient les utilisateurs du système (acteurs) et leur interaction avec le système et permettent de les classer et structurer les objectifs du système. De plus ils servent de base à la traçabilité des exigences d'un système dans un processus de développement intégrant UML [29]. [28] Les périodes d'activité des lignes de vie sont symbolisées par des rectangles. Dans un souci de simplification. Se limitant aux préoccupations ‘réelles’ des utilisateurs.  message avec durée de vie : l'expéditeur attend une réponse du récepteur pendant un certain temps et reprend ses activités si aucune réponse n'a lieu dans un délai prévu.4 Diagramme de séquences Les diagrammes de séquences sont la représentation graphique des interactions entre les acteurs et le système selon un ordre chronologique dans la formulation Unified Modeling Language. Le but étant de décrire comment se déroule les actions entre les acteurs ou les objets (échange d’information) [27]. et de recenser les grandes fonctionnalités d’un système. et les acteurs secondaires éventuels à droite du système. Il s’agit donc de la première étape UML d’analyse d’un système [28]. Il ne faut pas négliger cette première étape pour produire un logiciel conforme aux attentes des utilisateurs.

 message asynchrone : le message est envoyé. les objets contiennent leurs valeurs propres pour chacune de ces caractéristiques lorsqu'ils sont instanciés) [27]. Elles sont finalement instanciées pour créer des objets (une classe est un moule à objet : elle décrit les caractéristiques des objets. Les classes sont utilisées dans la programmation orientée objet. Une classe décrit les responsabilités. D'autres relations sont possibles entre des classes. l'expéditeur continue son activité que le message soit parvenu ou pris en compte ou non. Les classes peuvent être liées entre elles grâce au mécanisme d'héritage qui permet de mettre en évidence des relations de parenté.5 Diagramme de classe Le diagramme de classes est un schéma utilisé en génie logiciel pour présenter les classes et les interfaces d'un système ainsi que les différentes relations entre celles-ci. 2. le comportement et le type d'un ensemble d'objets.  message dérobant : le message est mis en attente dans une liste d'attente de traitement chez le récepteur. Elles permettent de modéliser un programme et ainsi de découper une tâche complexe en plusieurs petits travaux simples. Les messages synchrones sont symbolisés par des flèches barrées. Une classe est un ensemble de fonctions et de données (attributs) qui sont liées ensembles par un champ sémantique. Les éléments de cet ensemble sont les instances de la classe. 73 . Ce diagramme fait partie de la partie statique d'UML car il fait abstraction des aspects temporels et dynamiques. Présentation d’UML  message synchrone : l'expéditeur est bloqué jusqu'au signal de prise en compte par le destinataire. Les messages asynchrones sont symbolisés par des demi-flèches. chacune de ces relations est représentée par un arc spécifique dans le diagramme de classes.

.

Environnement de travail 1 Le Serveur Web Apache Tomcat Pour qu’il soit consultable à travers le Web par les clients. De plus le serveur est chargé aussi d’effectuer l’opération inverse qui consiste à traduire l’objet résultat en une requête de retour qui sera envoyé au client demandeur de service. Le serveur Tomcat se charge d’accomplir deux fonctionnalités de base à savoir. Dans le cadre d’un service web de type WS-*. nous allons utiliser le serveur Web Apache Tomcat qui est une implémentation des technologies Java Servlet et Java Server Pages. d'interroger des bases de données pour constituer des pages dynamiques [6]. un service Web doit être hébergé dans un serveur Web. Dans notre projet. 74 . Le Java Servlet et les caractéristiques de Java Server Pages sont développés sous le processus de la Communauté de Java [20]. Les détails techniques sont énoncés tels que présentés par le Consortium W3C. Le serveur web reçoit les requêtes des logiciels de navigation qui sont classées comme des applications clientes. Apache Tomcat est prévu pour être une collaboration des meilleurs réalisateurs de partout dans le monde [20]. 2 Le Serveur SOAP Apache AXIS Dans ce paragraphe. nous allons présenter les aspects techniques des langages SOAP et WSDL que nous avons présenté leurs états de l’art dans le premier chapitre. il exécute également des programmes chargés. l’exécution des applications Web afin de répondre aux requêtes lancées par des applications clientes et la traduction de ces requêtes en objet java (instance de java) afin qu’elles soient traitées par l’application qui est écrit généralement sous l’environnement java. En effet. par exemple. pour créer et gérer les enveloppes SOAP nous avons besoin d’un serveur auxiliaire qui gère ces deux opérations. un serveur http n’est pas suffisant pour la création et le fonctionnement d’un service web. et leur retourne des pages au format HTML. dit aussi serveur http. Tomcat est développé dans un environnement ouvert et participatoire et libéré sous le permis de logiciel d'Apache. Au besoin.

2 Le langage SOAP Simple Object Access Protocol est un protocole léger destiné à échanger l'information structurée dans un environnement décentralisé et distribué. Des points finaux concrets relatifs sont combinés dans des points finaux abstraits (services). Une collection de ports définit un service [26]. Le protocole SOAP permet la transmission de messages entre objets distants. Elle emploie des technologies de XML pour définir un cadre extensible de transmission de messages fournissant une construction de message qui peut être échangée au-dessus d'une série de protocoles fondamentaux. ou des ports. Les opérations et les messages sont décrits abstraits. Dans WSDL. Il est composé de deux parties fondamentales à savoir. Le transfert se fait le plus souvent à l'aide du protocole HTTP. Un port est défini en associant une adresse réseau à une attache réutilisable. 2. et les types des ports qui sont des collections abstraites d'opérations. WSDL est extensible pour permettre la description des points finaux et leurs messages indépendamment du format du message ou du protocole de réseau employé pour communiquer [26]. la définition abstraite des points finaux et des messages est séparée de leurs attaches concrètes de déploiement de réseau ou de format de données. comme le protocole SMTP. mais peut également se faire par un autre protocole. Ceci permet la réutilisation des définitions abstraites : les messages. Les caractéristiques concrètes de format de protocole et de données pour un type de port particulier constituent une attache réutilisable. qui sont des descriptions abstraites des données échangées. Un document de WSDL définit des services comme collections de points finaux de réseau.1 Le langage WSDL WSDL est un format de XML pour décrire des services en réseau comme un ensemble de points finaux fonctionnant sur des messages contenant des documents orientés ou des procédures orientées information. et bondissent alors à un protocole de réseau et à un format concret de message pour définir un point final. Nous concluons alors qu'il autorise un objet à invoquer des méthodes d'objets physiquement situés sur un autre serveur. Le cadre a été conçu pour être indépendant de n'importe quel modèle de programmation particulier et de toute autre sémantique de détail d'exécution [26]. Environnement de travail 2. l’enveloppe qui contient les informations sur le message lui- 75 .

par ailleurs. Les Servlets constituent une plate-indépendant se manifestant en modules côté- serveur qui s'insèrent sans couture dans un cadre de serveur Web et peuvent être employés 76 . Et toutes les étiquettes de formatage (HTML ou XML) sont passées directement de nouveau à la page de réponse. le protocole FTP. AXIS supporte de différents protocoles réseau tels que le protocole HTTP. La logique d'application peut résider dans les ressources basées au niveau du serveur (telles que l'architecture composante de JavaBeans) auxquelles la page accède avec ces étiquettes. Comme il peut fonctionner de façon autonome en tant que serveur SOAP ou comme un plug-in d’un moteur de Servlet.3 AXIS AXIS est l’acronyme d’Apache eXtensible Interaction System. 3 Java Server Page La technologie JSP utilise XML comme des étiquettes qui encapsulent la logique qui produit du contenu pour la page. AXIS est écrit en java et est élaboré par la fondation Apache. Environnement de travail même afin de permettre son acheminement et son traitement et le modèle de données qui définit le format du message manifestant ainsi les informations à transmettre. En addition à ces fortes caractéristiques techniques. ce qui encourage son utilisation comme un plug-in sous le moteur de Servlet Apache Tomcat. qui est d’ailleurs supportée par la fondation [21]. 2. ce qui explique sa robustesse lors de la sérialisation et la désérialisation des objets java dans des enveloppes SOAP [21] et assure le bon transport de l’information correcte. le protocole SMTP et d’autres [21]. En séparant la logique de page de sa conception et affichage et en soutenant une conception à base de composants réutilisable. AXIS est pratiquement le meilleur choix pour l’élaboration d’un service Web. Nous notons aussi dans ce contexte qu’AXIS sert. de convertir les classes java en code WSDL et d’effectuer l’opération réciproque. La technologie de Java Server Page est une prolongation de la technologie de Java Servlet. AXIS est en effet une implémentation du protocol SOAP. la technologie de JSP la rend plus rapide et plus facile que jamais pour établir des applications basées sur le WEB. D’autre part. et comme il présente un logiciel totalement libre sous-mis à la licence d’Apache Software Fondation.

les Servlets ne comportent aucune considération ou modification spécifique à la plate-forme . l’extensibilité dans l'entreprise et. 77 . et supporte le langage JSP ainsi que XML. la facilité d'utilisation [25]. À la différence d'autres langages manuscrits. du fait qu’il permet la création des projets Web dynamiques. tels que les sites web. hormis le noyau de la plate-forme nommé "Runtime". l’exécution augmentée. d'une manière plus importante. Parmi les outils que peut encapsuler l’environnement intégré de développement Eclipse on cite les serveurs Web tels que Apache Tomcat et Glassfish. la facilité d'administration. la séparation de la logique de l'affichage. Ce concept permet de fournir un mécanisme pour l'extension de la plate-forme et ainsi fournir la possibilité à des fournisseurs d’outils informatiques de développer des fonctionnalités qui ne sont pas fournies en standard par Eclipse. à la partie du système qui a besoin d’eux. Eclipse utilise énormément le concept de modules nommés "plug-ins" dans son architecture. ils sont des composants d'application qui sont téléchargés. sur demande. tout le reste de la plate-forme est développé sous la forme de plug-ins. la technologie de JSP et les Servlets fournissent une alternative attrayante à d'autres types de programme manuscrit dédié au Web dynamique par l'offre de l'indépendance de plate-forme. D'ailleurs. Environnement de travail pour prolonger les possibilités d'un serveur Web avec des frais généraux pour l'entretien et le support minimaux. Ensemble. les programmes java et d’autres [8]. 4 Eclipse Eclipse est un environnement de développement intégré (IDE :Integrated Development Environment) dont le but est de fournir une plate-forme modulaire pour permettre de réaliser des développements informatiques.

.

0) .i++)//parcourir le nb de question { fcl=fcl+"FUZZIFY QUEST"+i+"\n"+e2.0).i<nbquest."+"\n"+"ACCU : MAX. Elle se charge de retourner. 1)("+(((double)nbniv/2)+1)+".1)("+(1+((double)(nbniv-1)/2))+".5. 1. //retourner fcl } Figure 44 : Méthode creationNovice extraite de la classe ManipLogicFloue.0) .0)("+nbniv+".i<=nbquest. Codes Sources 1 Code source du service Web Dans cette partie nous allons présenter les méthodes les plus importantes de notre service Web.//ajout des régles for(int i=1."+"\n"+"END_RULEBLOCK"+"\n"+"END_FUNCTION_BLOCK"."+"\n"."+"\n"+"TERM average := (0. Cette méthode prend en paramètre le nombre de questions par catégorie et le nombre de niveaux.i++) { fcl=fcl+"(QUEST"+i+" IS agree )and".i++) { fcl=fcl+"(QUEST"+i+" IS average )and".0)("+(1+((double)(nbniv-1)/2))+".//ajout des règles for(int i=1.//declaration fcl for(int i=1.//décrire le contenu de input } fcl=fcl+"DEFUZZIFY PREFERENCE"+"\n"+"TERM grande := ("+(1-((double)(nbniv- 1)/2))+". dans une chaine de caractère nommé ‘fcl’.//ajout des methodes d’activation et d’accumulation fcl=fcl+"RULE 1 : IF ".i++)//parcourir le nb de question { fcl=fcl+"QUEST"+i+" : REAL.1).1 La méthode creationNovice public String creationNovice(int nbquest.i++) { fcl=fcl+"(QUEST"+i+" IS disagree )and".//ajout des réglés } fcl=fcl+"(QUEST"+nbquest+" IS disagree )"+"THEN PREFERENCE IS petite.1)("+(nbniv+((double)(nbniv-1)/2))+".0) .5)+".//ajout des régles for(int i=1.0)("+nbniv+". //ajout des règles + cloture fcl return(fcl)."+"\n"+"RULE 3 : IF ".1)("+(nbniv+((double)(nbniv- 1)/2))+"."+"\n"."+"\n"+"TERM petite := ("+(1+((double)(nbniv- 1)/2))+".0).//ajout des réglés } fcl=fcl+"(QUEST"+nbquest+" IS agree )"+"THEN PREFERENCE IS grande.i<=nbquest."+"\n"+"METHOD : COG.//contenue de output fcl=fcl+"\n"+"RULEBLOCK No1"+"\n"+"AND : MIN.i<nbquest.1)("+(nbniv+0.0)(1.//ajouter le tag output String e2="TERM agree := (1. le 78 .//ajout des règles } fcl=fcl+"(QUEST"+nbquest+" IS average )"+"THEN PREFERENCE IS moyenne."+"\n"+"TERM moyenne := ("+(1- ((double)(nbniv-1)/2))+"."+"\n"+"ACT : MIN."+"\nTERM disagree:= ("+((((double)nbniv/2)-1)+1)+".int nbniv) //création des fcl pour les novices { String fcl="FUNCTION_BLOCK testerecri"+"\n"+"VAR_INPUT"+"\n"."+"\n"+"END_VAR"+"\n"."+"\n"+"RULE 2 : IF ".i<nbquest."+"\n"+"END_FUZZIFY"+"\n".//contenue de input for(int i=1. "+"\n"+"DEFAULT := 0.//ajouter le num de question ds input } fcl=fcl+"END_VAR"+"\n"+"VAR_OUTPUT"+"\n"+"PREFERENCE : REAL."+"\n"+"END_DEFUZZIFY". 0)("+(1+((double)(nbniv-1)/2))+".

//création du Fis à partir d’un String double q[]=new double[(nbques)+1].750).printStackTrace().i++)//on determine le result pour { //chaque valeur de i fis.2 La méthode simulation public void simulation(int nbques.setAlwaysOnTop(true).1200. moyenne et grande) vont être crées dynamiquement.getVariable("QUEST"+i).String fcl) { Try { FIS fis = FIS. Cette méthode peut lever deux types d’Exception à savoir RecognitionException quand il y’a un problème avec la création du FIS (méthode 79 . //déclarer un tab pour contenir les x for(int i=1.i<=(nbques). Cette dernière va être transformée en FIS avec la méthode createFromString.dispose(). //mettre le jdf toujours visible jdf. //mettre le jdf au centre de l’écran jdf.}//intercépter l’exception } Figure 45 : Méthode simulation extraite de la classe ManipLogicFloue.int nbniv.setVisible(true). 1.setLocationRelativeTo(null). //initialisation du tab } JDialogFis jdf = new JDialogFis(fis. Codes Sources contenue qui va être transformé ultérieurement en FIS.createFromString(fcl. //mettre le jdv visible for( double i1 = q[1]. Selon les valeurs passées en paramètre.i++)//parcourir les nb question { q[i]=1.evaluate().i<=(nbques).1 for(int i=1. Un JDialogFis va être également crée et qui va contenir les courbes des termes d’entrée et de sortie ainsi que leur évolution dans le temps (assuré avec la méthode repaint). jdf.sleep(300). Nous notons aussi que cette création doit être conforme au langage de contrôle flou. //nb de milliseconde entre chaque délai } jdf.i<=(nbques). //création du JDIALOGFis jdf. Elle est invoqué si le pédagogue choisi la version novice pour créer son questionnaire. Elle prend comme paramètre le nombre de question par catégorie.// fermer le JDialogFis } catch(RecognitionException ee1){ee1. i1 += 0.true).repaint().//rafraichir le jdialog Thread. } fis.printStackTrace(). avrege et disagree) et de sortie (terme petite. Cette méthode simulation est responsable à la création de la simulation d’un questionnaire.setValue(q[i]). i1 <= (nbniv). } for(int i=1. les courbes des termes d’entrée (terme agree.1 )//commencer la simulati { //on avance par 0. le nombre de niveau et une chaine de caractère nommé fcl.i++)//les qi reçoivent la nouv val { q[i]=i1.}//intercépter l’exception catch(InterruptedException ee2){ee2.

//appeler la methde fuzzyfiedputbloc blocFCL=blocFCL+defuzzyfiedBloc.String ruleBloc) { String blocFCL= new String(). Elles sont appelés lorsqu’un pédagogue choisis la version expert lors de la création de son questionnaire. 80 . Cette méthode va fusionner les différents parties du fcl et de les retourner dans une chaine de caractère en incluant les entêtes (FUNCTION_BLOCKResolutionQuestionnaire) et la fin du FCL (END_FUNCTION_BLOCK). setOutputBloc and setRuleBloc Ces méthodes vont êtres chargés de créer les différents compartiments du fcl.3 Les méthodes setFuzzyfiedBloc. //appeler la methde inputbloc blocFCL=blocFCL+setOutputBloc(). setDefuzzyfiedBloc . //retourner la chaine de caractère } Figure 46 : Méthode creationFCL extraite de la classe ManipLogicFloue. //appeler la methde defuzzyfiedputbloc blocFCL=blocFCL+ruleBloc.String fuzzyfiedBloc.//nom functionblock blocFCL=blocFCL+setInputBloc(nbquest).//ajouter la fin du FUNCTIONBLOCK return blocFCL. Codes Sources createFromString) et l’Exception InterruptedException si le problème est causé par le Thread. setInputBloc .4 La méthode creationFCL public String creationFCL(int nbquest.String defuzzyfiedBloc.//declaration du String blocFcl blocFCL="FUNCTION_BLOCK ResolutionQuestionnaire \n". 1.sleep responsable du nombre de milliseconde entre chaque repaint.//appeler la methde outputbloc blocFCL=blocFCL+fuzzyfiedBloc. //appeler la méthode rulebloc blocFCL=blocFCL+"END_FUNCTION_BLOCK\n". 1.

5 La méthode determineresultat public double[] determineresultat (String e. La méthode determineresultat est très importante dans notre projet. La détermination de la préférence se fait à l’aide de la méthode getVariable("PREFERENCE"). 81 .6 Conclusion Dans cette partie nous avons essayé de présenter les méthodes les plus critiques de notre service Web. Double. Il est à noter qu’il existe d’autre méthodes mais qui ne représentent pas des fonctionnalités critiques.valueOf(e.createFromString(fcl.getVariable("PREFERENCE").i++)//commencer le parcourt de détermination pour { //chaque catégorie for(int j=1. } } Figure 47 : Méthode determineresultat extraite de la classe ManipLogicFloue. Puisque on a besoin de la méthode de création de FIS à partir d’une chaine de caractère.getValue().evaluate(). 1. //dans le tab result } return result.//creation fu FIS à partir de String double result[]=new double [nbcategories].j<=nbquest. Elle va retourner un tableau de double de taille le nombre de catégorie et contenant la préférence pour chaque catégorie.i<nbcategories.String fcl ) { try { FIS fis = FIS.parseDouble(String.out. Elle a comme tâche de déterminer la préférence de l’apprenant selon ses réponses passé en paramètre.int nbcategories.int nbquest.j++)//commencer le parcourt de détermination pour { //chaque question fis.setVariable("QUEST"+j. //variable pour parcourir la chaine d’entrée e for (int i=0.//Evaluer le résultat pour la catégorie en question result[i]= fis. true). notre méthode doit intercepter l’exception RecognitionException comme dans les méthodes précedentes.println(result[i]). //tableau contenant les résultats int k=0. //entrer la valeur du question j k++. //retourner le tableau des résultats } catch(RecognitionException ea) //intercepter l’exception { ea.printStackTrace(). Codes Sources 1.getValue().charAt(k)))).//avancer le k pour la valeur suivante } fis. return new double[0].//mettre le résultat System.

fcl). 82 . sampleManipLogicFloueProxyid. Pour ce faire il faut inclure l’identifiant. le scope et la classe du useBean dans les pages jsp qui font appel aux méthodes du service Web.niveau. nous avons recours à l’utilisation de javascript. Codes Sources 2 Code source de l’application Notre service Web a besoin d’une application cliente pour le manipuler de façon souple et facile.//appel à la méthode simulation Figure 49 : Appel du useBean extraite de la page novice2. Dans un second lieu nous décrirons les méthodes importantes de notre application.ManipLogicFloueProxy" /> //inclusion du useBean dans la page Figure 48 : Utilisation du useBean extraite de la page novice2. Pour faire un appel aux méthodes du service Web il suffit alors de mettre l’id du useBean suivi du nom de la méthode comme suit. ajax et les expressions régulières. La transformation en useBean est assuré par axis qui est présenté dans l’annexe C.jsp. Pour cela on a développé une partie dite cliente basé sur JSP (Java Server Page) afin d’assurer ces objectifs. <jsp:useBean id="sampleManipLogicFloueProxyid" scope="session" class="fcl. Enfin nous montrerons l’organigramme de notre application cliente avec toutes ses pages jsp.jsp.1 Liaison entre service Web et application cliente La liaison entre service Web et application cliente est assuré avec les useBean. Dans cette partie nous présenterons en premier lieu la liaison entre service web et application cliente. 2.2 Vérification des paramètres Pour faciliter l’utilisation de l’application.simulation(nbquestion. 2.

<input name="nom" type="text" id="pmp" onKeyUp="verifinom(this.length>15) //si la longueur de la chaine est supérieur à 15 { verifnom=1.gif"/>&nbsp.&nbsp. <script language="JavaScript"> function verifinom(pseudo) { if(pseudo != '') { if(pseudo.&nbsp.value)" onChange="verifnom_=2. nous avons utilisé les trois événements javaScript onKeyUp.length<2) //si la longueur de la chaine est inférieur à 2 { verifnom=1.'+pseudo+' : ce nom est trop long</div>'.getElementById('id_nom').getElementById('id_nom'). //variable pour dire que le champs est bon document.&nbsp.&nbsp.innerHTML='<div class="champ_invalide"><img src="images/n.'+pseudo+' : ce nom est trop court</div>'.&nbsp.&nbsp. //variable pour dire qu’il y a un pb avec ce champ document.&nbsp. //afficher à coté du champs texte le pb si il est survenue } else { verifnom=2. Il est à noter que chaque champ de nos formulaires possède une fonction qui le vérifie. onBlur et onChange pour appeler les méthodes responsables.ok</div>'.getElementById('id_nom').&nbsp.value)" onBlur="verifinom(this.jsp.1 Javascript Pour permettre une vérification instantanée des champs de nos formulaires. //afficher à coté du champs texte que c’est OK } } else { verifnom=1. Ces fonctions javascript sont définies dans la partie head de nos pages jsp et permettent de vérifier en temps réelles les différentes possibilités qui peuvent se produire.2.gif" />&nbsp.gif"/>&nbsp.innerHTML='<div class="champ_invalide"><img src="images/n.&nbsp.&nbsp.innerHTML='<div class="champ_valide"><img src="images/o. //variable pour dire qu’il y a un pb avec ce champ document.gif"/>&nbsp. //afficher à coté du champs qu’il est vide et lui demander de l’entrer } } </script> Figure 51 : Fonction verifinom extraite de la page gerer-compte-u." style="width: 207px" /> //ajout d’un champ de texte et appel à la fonction verifinom si un événement est déclenché Figure 50 : Les inputs extraite de la page gerer-compte-u. //variable pour dire qu’il y a un pb avec ce champ document.innerHTML='<div class="champ_invalide"><img src="images/n.jsp. Codes Sources 2.Veuillez entrer votre nom</div>'. //afficher à coté du champs texte le pb si il est survenue } else if(pseudo. 83 .getElementById('id_nom').

<%@ page import="java.jsp va chercher dans la base de donnés si le nom d’utilisateur est disponible.jsp.jsp?pseudo='+pseudo)) // appeler la methode file Figure 53 : Appel à la fonction file extraite de la page inscription. while(rs. Par exemple lors de l’inscription. 84 .forName("com.jdbc. Voici l’appel à cette fonction.le nom d’utilisateur et le mot de passe stmt= e. Class. xhr_object.send(null).rs1=null.getParameter("pseudo")).//spécification du nom du connecteur Connection e=DriverManager.responseText).mysql. // retourner 1 si le résultat est positif } if (a==0) out. Nous avons créé une fonction nommée ‘file’ qui appelle à un autre script de vérification de nom d’utilisateur. out.ActiveXObject) // Internet Explorer xhr_object = new ActiveXObject("Microsoft. // retourner le resultant else return(false).sql.jsp.2.Driver"). Pour ce faire l’intervention d’ajax est obligatoire. // execution de la requête SQl pour voir la disponibilité du login String mess1. } Figure 52 : Fonction file extraite de la page inscription."root". if(xhr_object.* <% String login=(request."0000").").XMLHTTP").jsp. // retourner 2 si le résultat est négatif %> Figure 54 : Contenue de la page script.readyState == 4) return(xhr_object. function file(fichier) { if(window.print(1).ResultSet rs = null.*" %>// importer la bibliothèque java.open("GET".createStatement().// recevoir la valeur du login Statement stmt = null.executeQuery("select login from utilisateur where login='"+login+"'.int a=0.2 Ajax L’utilisation d’ajax est très importante puisqu’il est plus puissant que javascript en termes de fonctionnalités.getConnection("jdbc:mysql:///pedago".XMLHttpRequest) // Firefox xhr_object = new XMLHttpRequest(). else if(textee = file('script. Codes Sources 2. // method GET xhr_object. Pour faciliter ce chois notre application va chercher en temps réel si le nom d’utilisateur entré est disponible. false).print(2).next()) { a=1.// créer l’objet XMLHttpRequest pour firefox else if(window. fichier.sql. rs = stmt. // spécification de la nom de la BD. La page script. les utilisateurs de la plate forme ne doivent pas avoir des noms d’utilisateurs semblables.// créer l’objet ActiveXObject pour IE else return(false).

test(chaine) ){return 1. Codes Sources Et de cette façon nous avons pu résoudre ce problème. la forme de nos champs doit être quatre valeur entière séparé par espace et dans l’ordre croissant."g"). Par exemple pour tester si un champ est un entier positif ou négatif avec une partie flottante il suffit d’écrire sa forme dans l’expression de RegExp puis appeler la fonction test pour vérifier.2. 2. La vérification classique dans ce cas est très difficile voir impossible donc nous avons décidé d’utilisé les expressions régulières. Cette même procédure va être appliquée pour d’autres champs comme par exemple lors de la modification du mot de passe puisque l’utilisateur est invité à entrer son ancien mot de passe et la vérification de ce dernier se déclenche.][0-9][0-9]*)?$". L’acteur principal dans les expressions régulières est l’objet RegExp qui contient la forme du champ à vérifier.} //retourner 2 si la chaine ne vérifie l’expression régulière } Figure 55 : Fonction verifier-num extraite de la page expert2. function verifier_num(chaine) { var exp=new RegExp("^[+-]?[0-9]+([. Par exemple si le pédagogue choisit la fonction trapézoïdale comme terme d’entrés. }//retourner 1 si la chaine vérifie l’expression régulière else {return 2. 85 .jsp. la vérification des champs doit être très précise et conforme au type de fonction choisis. Cet exemple est très simple car dans notre cas nos expressions régulières sont très complexes.//forme de l’expression régulière if ( exp.3 Les expressions régulières Comme les pédagogues doivent entrer les types de fonctions ainsi que leur cordonnés.

gif" />&nbsp.&nbsp.i<tt. 86 .lengt h==4)&&(tt[2]>=tt[3]))) { document. //le champ contient 4 valeurs mais pas des réelles alors //problème verifpseudo2=2. } else { document. Le champs doit contenir 4 réel seulement</span>'.innerHTML='<span class="champ_invalide"><img src="images/n. Pour décomposer la valeur introduite.&nbsp.getElementById(k).length==4)&&(tab[0]==1)&&(tab[1]==1)&&(tab[2]==1)&&(tab[3]==1)&& (tt[0]<tt[1]) &&(tt[1]<tt[2])&&(tt[2]<tt[3])) { document.length==4)) { document.length==4)&&(tt[1]>=tt[2]))||((tt. la fonction VerifReel utilise la méthode split qui est propriétaire au javascript.//autres erreurs verifpseudo2=2.getElementById(k). //convertir les element en float if((tt.&nbsp.&nbsp.gif" />&nbsp.jsp.&nbsp. .//le champ contient 4 valeurs réelles mais pas //ordonnées alors problème verifpseudo2=2. //appeler la méthode VerifReelet mettre le resultat dans le tt if(tt[tt.getElementById(k).getElementById(k). Le quatres valeurs doivent étre des réels</span>'.innerHTML='<span class="champ_invalide"><img src="images/o. } } } Figure 56 : Extrait de la page expert2.length. La fonction VerifReel retourne deux tableaux.getElementById(k).innerHTML='<span class="champ_invalide"><img src="images/n. Le quatres valeur doivent étre dans un ordre croissant</span>'.&nbsp. } else if(((tt.innerHTML='<span class="champ_valide"><img src="images/o.errur</span>'.length==4)&&(tt[0]>=tt[1]))||((tt.&nbsp.&nbsp.gif"/>&nbsp.length!=4) { document. // le champ contient 4 //valeurs et ordonnés alors OK } else if(tt.innerHTML='<span class="champ_invalide"><img src="images/n.length-1]!="") { for(i=0.verifpseudo2=2.verifpseudo2=1.&nbsp. //le champ ne contient pas 4 valeurs alors //porblème } else if(((tab[0]==2)||(tab[1]==2)||(tab[2]==2)||(tab[3]==2))&&(tt. Le premier contient les entiers extrait et le deuxième contient sa conformité à l’expression régulière.i++)tt[i]=parseFloat(tt[i]).gif"/>&nbsp.ok</span>'.gif" />&nbsp. Codes Sources if(l=="trape") //si la méthodes est trapézoïdal { tt=VerifReel(t).&nbsp.&nbsp.

{ //mettre dans le deuxième tab que la sous-chaine est conforme tab[i]=1.i<tabNom. la fonction gaussienne.split(exp). //déclarer un tableau et mettre dedans les sous-chaine extraite if (tabNom==null) //si le tableau est nul { alert("Problème dans l'expression !"). Ce traitement a été fait pour chacun des termes choisis par le pédagogue à savoir.//retourner le tableau tabNom } } Figure 57 : Fonction VerifReel extraite de la page expert2. la fonction trapézoïdale. la fonction sigmoïdale. } //affichage=affichage + " ["+ tabNom[i] + "]\n"."g").i++) { if(verifier_num (tabNom[i])==1)//vérifier pour chaque sous-chaine est un //numero en appelant la fonction verifier_num présenté précédemment. } return (tabNom).length. } else { //mettre dans le deuxième tab que la sous-chaine n’est conforme tab[i]=2. la fonction cloche généralisée. Codes Sources function VerifReel(chaine) { var exp=new RegExp("[ ]+". les singletons et les morceaux linéaires. la fonction triangulaire. //informer l’utilisateur qu’il y’a un pb dans //l’affichage } else { for (var i=0.jsp.//délimiteur entre expression régulière var tabNom=chaine. 3 Organigramme du site Web 87 .

jsp BD mail_succes.jsp gerer_utilisateur.jsp liste_fcl_p.jsp gerer_compte_a.jsp modifier_p.jsp expert3.jsp BD BD modifier_u.jsp Légende : utilisateur_succes.jsp administrateur_succes.jsp BD Web gerer_compte.jsp novice2.jsp expert1.jsp authentification.jsp index_pedagogue.jsp inscription.jsp BD : Interaction avec la base de données BD : Redirection Figure 58 : Organigramme du site Web .jsp questionnaire_p.jsp expert4.jsp modifier_p.jsp Web index.jsp determination_p. Service Service Service Web Web Web inscription_succes.jsp expert2.jsp BD BD mot_passe_oublie.jsp BD expert6.jsp expert_erreur.jsp Novice3.jsp : Page d’accueil : Page jsp affiché BD administrateur.jsp gerer_a_utilisateur.jsp BD Service index_utilisateur.jsp : Appel à une méthode du service Web validation.jsp mail_erreur2.jsp BD inscription_base.jsp inscription_erreur.jsp utilisateur_erreur.jsp expert5.jsp : Page jsp appelé mais pas affiché administrateur_erreur.jsp mail_mot_passe.jsp BD BD Service Web expert_succes.jsp determination.jsp suppression.jsp Service gerer_compte_p.jsp questionnaire.jsp mail_erreur.jsp novice1.jsp liste_fcl.

ce service donne la main à son paramétrage pour satisfaire les besoins des pédagogues selon leurs degrés d’expertise dans le domaine de la logique floue.‫اﻟﻤﻨﻄﻖ اﻟﻐﺎﻣﺾ‬ . The main aim of this project is the design and the implementation of a Web service for the calculation of the Profile of learner through the questionnaires. Personnalisation. e-Learning. Il s’agit de la conception et l’implémentation d’un service Web pour le calcul du Profil de l’apprenant à travers les questionnaires.‫ھﺬه اﻟﺨﺪﻣﺔ ﻣﻦ إﻧﺠﺎز إﺳﺘﺠﻮاب‬ ‫ ﻣﻦ ﺟﮭﺔ أﺧﺮى ﯾﻤﻜﻦ ﻟﻠﺒﯿﺪاﻏﻮﺟﻲ ﺗﻜﯿﯿﻒ ھﺬه اﻟﺨﺪﻣﺔ ﺗﻤﺎﺷﯿﺎ ﻣﻊ درﺟﺔ ﺧﺒﺮﺗﮫ ﻓﻲ ﻣﺠﺎل اﻟﻤﻨﻄﻖ‬. Approche pédagogique. Abstract The context of this work is the project of end of studies.‫اﻟﺒﯿﺪاﻏﻮﺟﯿﺔ‬ . Fuzzy logic. In addition. TAM. Key words : Web Service. Mots clés : Service Web. Les réponses à un questionnaire seront utilisées pour le calcul des préférences en se basant sur la logique floue. it gives the hand to its parameter setting to satisfy the needs for the pedagogs according to their degrees of expertise in fuzzy logic. e-Learning. The responses of a questionnaire are used to calculate the preferences by using the fuzzy logic.Résumé Ce travail est effectué dans le cadre du Projet de Fin d’Etudes de la Maitrise en Informatique. D’autre part.‫اﻟﻐﺎﻣﺾ‬ ‫ ﺧﺪﻣﺔ واب‘ اﻟﻤﻨﻄﻖ اﻟﻐﺎﻣﺾ‘ﻧﻤﻮذج ﺗﻘﺒﻞ اﻟﺘﻜﻨﻮﻟﻮﺟﯿﺎ ‘ اﻟﺘﻌﻠﻢ ﻋﻦ ﺑﻌﺪ‘ اﻟﺘﺸﺨﯿﺺ‘ اﻟﻄﺮق‬: ‫اﻟﻜﻠﻤﺎت اﻟﻤﻔﺎﺗﯿﺢ‬ .‫ﯾﻨﺪرج ھﺬا اﻟﻌﻤﻞ ﻓﻲ إطﺎر ﻣﺸﺮوع ﻧﮭﺎﯾﺔ اﻟﺪروس ﻟﻠﺤﺼﻮل ﻋﻠﻰ ﺷﮭﺎدة اﻷﺳﺘﺎذﯾﺔ ﻓﻲ ﻋﻠﻮم اﻹﻋﻼﻣﯿﺔ‬ ‫ ﺗﻤﻜﻦ‬. ّ ‫ﻣﻠﺨﺺ‬ ‫ ﯾﺘﻤﺤﻮر‬. Ce service Web offre la fonctionnalité de la création de questionnaire.‫ھﺬا اﻟﻤﺸﺮوع ﺣﻮل ﺗﺼﻤﯿﻢ و إﻧﺠﺎز ﺧﺪﻣﺔ واب ﺗﻤ ّﻜﻦ ﻣﻦ ﺣﺴﺎب ﺧﺎﺻﯿّﺎت اﻟﻤﺘﻌﻠﻢ ﻣﻦ ﺧﻼل اﻻﺳﺘﺠﻮاﺑﺎت‬ ‫ ﯾﺘﻢ اﺳﺘﻌﻤﺎل اﻹﺟﺎﺑﺎت ﻋﻦ اﻻﺳﺘﺠﻮاب ﻟﺤﺴﺎب اﻟﻤﯿﻮﻻت و ذﻟﻚ اﻋﺘﻤﺎدا ﻋﻠﻰ‬. TAM. Logique floue. This Web service offers the functionality of the creation of questionnaire. Personalization. Teaching approach.