Скачать презентацию Soutenance de thèse de doctorat MDEduc concevoir et Скачать презентацию Soutenance de thèse de doctorat MDEduc concevoir et

440b3534f6197eb67d6fa6eb7a18fd1f.ppt

  • Количество слайдов: 48

Soutenance de thèse de doctorat MDEduc: concevoir et implémenter une approche orientée langage pour Soutenance de thèse de doctorat MDEduc: concevoir et implémenter une approche orientée langage pour la conception de scénarios d’apprentissage automatisés César Olavo de Moura Filho Directeur de thèse: Alain Derycke Co-encadrant: Yvan Peter 1

Plan 1. Problématique et situation du domaine d’étude 2. Proposition conceptuelle • L’approche Multi-EML Plan 1. Problématique et situation du domaine d’étude 2. Proposition conceptuelle • L’approche Multi-EML 3. Réalisation technique • Le Prototype MDEduc 4. Conclusion 2

Problématique et situation du domaine d’étude L’ingénierie des Environnements Informatiques pour l’Apprentissage Humain 3 Problématique et situation du domaine d’étude L’ingénierie des Environnements Informatiques pour l’Apprentissage Humain 3

L’Ingénierie des EIAH Analyse Langage Auteur • Outils CASE Educational Instructional System Design Modeling L’Ingénierie des EIAH Analyse Langage Auteur • Outils CASE Educational Instructional System Design Modeling Languages (EML) Design • Processus de développement de logiciel • Approche générative • Domain Specific Languages/Frameworks • Approche systématique, division du travail (fig. ) • • Ex. Authorware, Tool. Book, LAMS (fig. ), etc. Ex. IMS-LD (fig. ) Développement • Ex. ADDIE (fig. ) • Application vs. Scénarios • Application vs. scénarios • Programmation des scénarios: orientée blocs de • construction (gabarits) Spécification des scénarios: orientée approche pédagogique • Scénarios prédéfinis Implémentation Evaluation 1970 1980 1990 2000 4

Les problèmes des approches (1/2) v ISD: couteaux (long, complexe, cher) v EML / Les problèmes des approches (1/2) v ISD: couteaux (long, complexe, cher) v EML / Langages auteur Langages uniques et fédérateurs § Peu spécifiques, perte sémantique “When the language is defined, many of the choices about what to leave in and what to leave out, and therefore what can be said, are made ahead of time by the constraints of syntax and semantics […] Or to put it another way: When all you have is a hammer, every problem looks like a nail. ” (Fields, 2001) Perspectives “valuing one perspective means that other perspectives will be given less value” (Wilson, 1997) 5

Les problèmes des approches (1/2) v EML / Langages auteur (continuation) Decontextualisé “[W]hen developing Les problèmes des approches (1/2) v EML / Langages auteur (continuation) Decontextualisé “[W]hen developing content for a given course, we take context into account beforehand in the elaboration of our materials, and we then forget about it, trusting that its behavior will always be as expected. ” (Figueiredo & Afonso, 2005) Paradigmes “paradigmatic differences cannot be reconciled” (Kuhn, 1962) Neutralité “[T]here is no chance [of] being neutral, as referring to an epistemological and ontological position is unavoidable. Defining the structure of metadata and specifying a conceptual data schema inevitably reflects a specific concept of knowledge and meaning”. (Allert, 2004) v Conclusion 6

IDM Le Génie Logiciel a mêmes préoccupations et une tendance actuelle est créer des IDM Le Génie Logiciel a mêmes préoccupations et une tendance actuelle est créer des modèles riches et spécifiques Ingénierie Dirigée Modèles • Caractéristique ? • Adaptation EIAH? • Application vs. scénarios ? • Spécification de scénarios ? 1970 1980 1990 2000 7

L’Approche IDM v Language-Oriented Programming (Fowler) Monter le niveau d’abstraction des spécifications des logiciels L’Approche IDM v Language-Oriented Programming (Fowler) Monter le niveau d’abstraction des spécifications des logiciels (DSL vs. GPL) La programmation de bas niveau est laissée à la machine (générateur) paramétrage 8

ISD, langage auteur/EML et IDM EIAH EML(s) ISD Scénario(s) Concepteur en amont IDM … ISD, langage auteur/EML et IDM EIAH EML(s) ISD Scénario(s) Concepteur en amont IDM … LA/EML Concepteur de langage Concepteur en aval 9

La solution IDM pour les EIAH v Langages fédérateurs Langages sur mesure (ex. PBL, La solution IDM pour les EIAH v Langages fédérateurs Langages sur mesure (ex. PBL, Jigsaw, etc. ) v Perspectives, neutralité, paradigmes Différentes perspectives => différents langages v Langage décontextualisé Langages conçus par l’enseignant, sur place, juste-àtemps v Découplage entre langage et code un même concept peut donner lieu à des différentes implémentations 10

Différents approches disponibles v. Model Driven Architecture (OMG) v. Software Factories (Microsoft) v. Eclipse Différents approches disponibles v. Model Driven Architecture (OMG) v. Software Factories (Microsoft) v. Eclipse Modeling Framework (Eclipse) v. Literate Programming (Knuth) v. Generative Programming (Czarnecki) v. Intentional Software (Simonyi) vetc. 11

Model Driven Architecture (OMG) 12 Model Driven Architecture (OMG) 12

Literate Programming (Knuth) File containing both documentation and code (e. g. my. Prog. web) Literate Programming (Knuth) File containing both documentation and code (e. g. my. Prog. web) Literate Programming Tool (e. g. WEB) Traditional GPL code (e. g. my. Prog. java) Documentation file (e. g. my. Prog. tex) 13

Generative Programming (Czarnecki) 14 Generative Programming (Czarnecki) 14

Software Factories (Microsoft) 15 Software Factories (Microsoft) 15

Intentional Software (Simonyi) 16 Intentional Software (Simonyi) 16

EMF/Eclipse 17 EMF/Eclipse 17

Multi-EML: Adaptant l’IDM aux EIAH 18 Multi-EML: Adaptant l’IDM aux EIAH 18

Multi-EML: Adaptant l’IDM aux EIAH 1. Commencer la création d’un scénario par une spécification Multi-EML: Adaptant l’IDM aux EIAH 1. Commencer la création d’un scénario par une spécification informelle Patrons Pédagogiques (PP) 2. Capturer un EML à partir d’une spécification informelle 3. Garder côte à côte et en coïncidence les différentes formes de spécification d’un scénario (spécifications informelles, EMLs et code généré) 4. Simplifier: le processus de création de nouveaux EMLs le processus de génération de code pour des différentes plates-formes 19

Multi-EML vs. IDM Multi-EML simplifier Patrons pédagogiques IDM paramétrage 20 Multi-EML vs. IDM Multi-EML simplifier Patrons pédagogiques IDM paramétrage 20

Les Patrons (ou Patterns) Pédagogiques v. Spécialisation des patrons de conception Concept partagé par Les Patrons (ou Patterns) Pédagogiques v. Spécialisation des patrons de conception Concept partagé par des différents domaines v. Patrons de Conception (Alexander) Façon d’extraire les bonnes pratiques d’un domaine l’importance de documenter les pratiques, pour qu’on puisse, postérieurement, les reproduire, partager, discuter, adapter, améliorer, etc. Contexte, problème et solution (prouvée) v. Langage naturel 21

Un Patron Pédagogique* Section contexte Section Problème CHALLENGE UNDERSTANDING ** (This pattern was written Un Patron Pédagogique* Section contexte Section Problème CHALLENGE UNDERSTANDING ** (This pattern was written by H. Sharp) You are teaching a course or seminar. You want students' understanding to be (extrait) challenged so that you and they will know how well they have learned a topic. *** Students may think they understand a topic when in fact they do not. If they think they understand, they will not ask questions and will not know Section Solution the gaps in their knowledge. In addition it is not possible to cover all (extrait) nuances of a topic in notes …One way in which students learn is to ask questions of you and their peers, but…. *** Therefore, give the participants exercises, tasks or activities that challenge their understanding. These can be in the form of exercises, which help the student to apply techniques by Try it Yourself, or Groups Work [EBS] during… *** This pattern is quite abstract, and other patterns are needed to refine, extend, and implement it. However we do not refine it in this language, although it is …. * Peer Feedback pattern (extrait du Feedback Pattern Language - Bergin et al. , 2002) 22

Multi-EML: rôles envisagés Spécification de la plate-forme Auteur Créer le scénario pédagogique (dans une Multi-EML: rôles envisagés Spécification de la plate-forme Auteur Créer le scénario pédagogique (dans une notation informelle) Learning designer 1. Créer des spécifications formelles (EMLs) 2. Générer des applications dirigées par les EMLs Informaticien Créer des spécifications pour les différentes plates-formes 23

Réalisation technique Le prototype MDEduc 24 Réalisation technique Le prototype MDEduc 24

MDEduc PPEditor Edu. Model Edu. Gen Powered by Eclipse/EMF (http: //sourceforge. net/projects/mdeduc) 25 MDEduc PPEditor Edu. Model Edu. Gen Powered by Eclipse/EMF (http: //sourceforge. net/projects/mdeduc) 25

PPEditor Patron pédagogique PPEditor 26 PPEditor Patron pédagogique PPEditor 26

PPEditor v Editeur syntaxique Respecte la syntaxe du formulaire originel de C. Alexander. v PPEditor v Editeur syntaxique Respecte la syntaxe du formulaire originel de C. Alexander. v Syntaxe définie à base de: règles (pattern matching) templates (parties fixes) v Et si l’on veut changer le formulaire? Par exemple, par le « Go. F Form » Concept Rule Multi. Line Rule v D’autres bookmarks et annotations 27

Règles Templates 28 Règles Templates 28

Edu. Model 29 Edu. Model 29

Edu. Model v Editeur d’EML v N’a pas d’interface graphique oblige à commencer la Edu. Model v Editeur d’EML v N’a pas d’interface graphique oblige à commencer la conception de l’EML à partir d’une spécification informelle (textuelle) N’impose pas une nouvelle interface Permet de capturer des EMLs à partir de plusieurs sources: PPEditor, Edu. Browser et extensions. v Éléments basiques de méta-modélisation Sous-ensemble de l’Ecore v Synchronisé avec PPEditor 30

Création d’un EML: nouveau concept PPEditor n PPModel 31 Création d’un EML: nouveau concept PPEditor n PPModel 31

EML créé (XMI-Ecore) peerfeedback. ecore 32 EML créé (XMI-Ecore) peerfeedback. ecore 32

Implémenter la synchronisation Point d’extension pour l’Edu. Model listeners. exsd Edu. Model Listener interface Implémenter la synchronisation Point d’extension pour l’Edu. Model listeners. exsd Edu. Model Listener interface IModel. Change. Listener listeners Other. Plugin PPEditor Method: model. Changed Class: Model. Change Listener Method: Classifier. Changed Class 1 Listener Method: operation. Changed() Class 2 Listener PPEditor. Listener Other. Listener 33

Application de la synchronisation associer simulation 34 Application de la synchronisation associer simulation 34

Application de la synchronisation 35 Application de la synchronisation 35

Edu. Gen 36 Edu. Gen 36

Edu. Gen v Génère l’application choisie à partir d’un EML v Prend en compte Edu. Gen v Génère l’application choisie à partir d’un EML v Prend en compte l’Ecore complet v Spécification de la plate-forme Java Emitter Templates (JET) 37

La transformation EML / code v EMF => Gen. Model v Solution Edu. Gen La transformation EML / code v EMF => Gen. Model v Solution Edu. Gen § Différent de l’approche standard EMF (évite Gen. Model) § Ecore -> EAnnotation A B Stéreotype C Méta-modèle domaine v Exemple pour une application Web § servlet, JSP, HTML, DTO, DAO, web deployment descriptor et ANT script Méta-modèle Plate-forme 38

Règles de Transformation Ecore / Web Application Métamodèle Stéreotype Code généré EClass Session Servlet, Règles de Transformation Ecore / Web Application Métamodèle Stéreotype Code généré EClass Session Servlet, JSP EClass Entity DAO, DTO EPackage - Page HTML (de navigation) EPackage Descriptor Web descriptor, ANT Script EReference - (JSP), Request. Dispatcher (servlet), etc. EAttribute Input. Field (JSP), String (servlet), etc. EAttribute Text. Area