Méta-modélisation UML pour la conception et la mise en œuvre de situations-problèmes coopératives Soutenance de thèse présentée par Pierre Laforcade Laboratoire d’Informatique de l’Université de Pau et des Pays de l’Adour Directeur de thèse : Franck Barbier Encadrants : Thierry Nodenot, Christian Sallaberry
Plan Introduction aux modèles pour la e-formation Étude des situations-problèmes, plates-formes et UML Contribution Langage de conception CPM Modèle de composant éducatif CPL Bilan et perspectives
Plan Introduction aux modèles pour la e-formation Domaine des EIAH Cadre de travail : situation-problème et plate-forme Processus de e-formation et phase de conception Notre problématique Objectif, orientations et méthodologie Étude des situations-problèmes, plates-formes et UML Contribution : langage CPM et composant CPL Bilan et perspectives
Domaine des EIAH EIAH (Environnement Informatique pour l’Apprentissage Humain) Tout environnement informatique conçu pour favoriser un apprentissage humain Recherche pluridisciplinaire : Sciences Humaines et Sociales + Informatique Ingénierie des EIAH Fournir des moyens reproductibles et/ou réutilisables pour faciliter la mise en place de situations d’apprentissage dans leur articulation avec les dispositifs informatiques [Tchounikine, 02]
Problématique générale Comment modéliser la complexité d’une situation d’apprentissage ? Problèmes inter-reliés Identification des objectifs d’apprentissage Analyse didactique du contexte Étude du contexte d’insertion de l’activité Conception et spécification de l’activité proposée : Conception de la tâche à réaliser Identification des acteurs et de leurs rôles Articulation acteurs/outils … Étude des comportements émergents, activité réelle, usage effectif des outils
Cadre de travail : PBL et plates-formes EIAH : Intention didactique + environnement informatique Situation-problème coopérative (PBL) Plates-formes de formation à distance (FAD) Ingénierie des EIAH : E-formation Processus industrialisé Importance des modèles de conception
Processus de e-formation Processus itératif de conception Conception Mise en œuvre Processus d’utilisation Instanciation de la formation Exécution de la formation Formation Module Unité pédagogique objectifs de formation pré-requis contenu durée
Phases de conception et de mise en œuvre en détail Informations sur la plate-forme cible Ressources pédagogiques met à disposition nouvelles fonctionnalités à développer ressources Description (informelle) de la tâche Scénario pédagogique
Notre problématique Comment faciliter l’élaboration de modèles pour la conception et la mise en œuvre de situations-problèmes coopératives sur des plates-formes de formation à distance ?
Objectif, orientations et méthodologie Fournir un langage de modélisation Dédié aux PBL et aux plates-formes de FAD Public cible langage l’ingénieur pédagogique modèles élaborés l’équipe pluridisciplinaire de conception Usages des modèles Outils de communication et d’abstraction Orientation pour le langage Langage graphique Spécialisation d’UML PBL plates-formes de FAD Modélisation UML Méta-modélisation UML
Plan Introduction aux modèles pour la e-formation Étude des situations-problèmes, plates-formes et UML Situations-problèmes coopératives Plates-formes de formation à distance Modélisation et méta-modélisation UML Contribution : langage CPM et composant CPL Bilan et perspectives
Situations-problèmes coopératives (PBL) Cas d’étude : SMASH (enfants 8-12 ans) Objectifs pédagogiques/apprentissage Présentation Analyses/productions Présentations individuelle et production d’une solution commune Correction Activités responsabilisation sécurité/prévention routière code de la route effectué en surmontant lié à la réalisation Ressources témoignages carte village feuille de notes Problème/obstacle plusieurs responsables Contraintes témoignages différents nombre limité Situation authentique accident de vélo Rôles enquêteurs chef de police Tâche/objectif reconstituer l’accident trouver responsable
Plates-formes de formation à distance Définition Dispositif de formation à distance utilisant les réseaux informatiques comme support Diffusion de cours individualisé en asynchrone temps Technologies Évolutions plates-formes applications synchrones Suivi des apprenants Interactivité (chat, forum, classe virtuelle,…) Support d’apprentissages coopératifs applications distribuées (composant) Apport pour architecture et structure : environnement ouvert et flexible Nouveaux usages ? Constat Concepteur doit s’adapter aux plates-formes Objets d’apprentissage et services
Le langage UML Utilité Langage semi-formel 12 diagrammes (UML 2) visualiser, spécifier, construire, documenter les éléments d’un système Langage semi-formel 12 diagrammes (UML 2) Diagrammes statiques (classe, objet, paquetage, etc.) Diagrammes dynamiques (états/transitions, activités, etc.) Syntaxe UML abstraite : méta-modèle UML, enrichi par contraintes OCL concrète : la notation
Méta-modélisation UML Utilité Spécialisation d’UML à un domaine Représentation partagée pour le public cible « Outil » de communication « Outil » de partage de modèles Solution : profil UML Mécanisme d’extension Ensemble cohérent de : Éléments sélectionnés Stéréotypes, définitions de valeurs marquées Contraintes, règles Utilité des outils supportant les profils UML Aide à l’élaboration des modèles Exploitation des modèles
Plan Introduction aux modèles pour la e-formation Étude des situations-problèmes, plates-formes et UML Contribution Contribution globale Langage de conception CPM Modèle de composants éducatifs CPL Bilan et perspectives
Constat, positionnement et contribution globale Un langage support pour la modélisation de PBL dédié à la phase de conception indépendant des plates-formes sous la forme d’un profil UML Contribution 2 Un modèle de composant éducatif pour réduire l’écart entre : les besoins de conception les fonctionnalités fournies par la plate-forme
Plan Introduction aux modèles pour la e-formation Étude des situations-problèmes, plates-formes et UML Contribution Contribution globale Langage de conception CPM Modèle de composants éducatifs CPL Bilan et perspectives
Le langage CPM (Cooperative PBL Metamodel ) Profil CPM spécialise Syntaxe concrète (notation) : le profil CPM Syntaxe abstraite (concepts et relations) : le méta-modèle CPM Méta-modèle CPM conforme à Démarche de spécification du langage CPM Sémantique : Descriptions et règles (langage naturel & OCL) M0 M1 M2 M3 Le réel « perçu », run-time instances Méta-méta-modèle Méta-modèle Modèle MOF UML conforme à
<<enumeration>> Le modèle conceptuel RôleType apprenant tuteur <<enumeration>> Rôle roleType : RôleType * joue * 1 0..1 enCollaborationAvec Activité pédagogique * réalise * utilise * produit Ressource * 1 estResponsableDe Personne objet d’apprentissage service savoir savoir-faire représentation mentale événement pédagogique
Construction du méta-modèle CPM Modèle conceptuel CPM Basé sur Étude de structures d’organisation pour l’activité DARE SIMULIGNE [Guareis,00] SPEM IMS-LD Aspects structurels Décomposition interne Composition externe Aspects sociaux Rôles/activités Collaboration Droits/outils Aspects pédagogiques Règles/contraintes Pré-requis/objectifs Ressources/outils
Le méta-modèle CPM Les différents paquetages du méta-modèle CPM Sous-ensemble d’UML 1.4 <<metamodel>> CPM_Foundation <<use>> CPM_Extensions <<metamodel>> <<metamodel>> CPM_SocialPackage CPM_PedagogicalPackage <<metamodel>> <<metamodel>> CPM_BasicElements CPM_StructuralPackage
Le méta-modèle CPM : extraits CPM_StructuralPackage CPM_SocialPackage Context ActivityStructure inv: self.subStructure->forall( v | v.oclIsKindOf(ActivityStructure) or v.oclIsKindOf(Activity) )
Le profil CPM Diagrammes privilégiés pour la notation : Diagramme de classes Permet de modéliser l’ensemble des relations statiques entre concepts d’une PBL Diagramme de cas d’utilisation Permet en amont de définir les activités et les rôles impliqués Diagramme d’états Permet de détailler l’évolution temporelle des états des ressources Diagramme d’activités Permet de détailler la dynamique de l’enchaînement des activités
Le profil CPM : extraits Stéréotype Méta-classe Contrainte Icône LearningPhase Core::Operation ActivityGraphs::ActionState ActivityGraphs::SubactivityState UseCases::UseCase Core::Classifier Activity oui Role UseCases::Actor ActivityGraphs::Partition Classes alternatives Définition valeur marquée Type valeur Sur stéréotype phaseKind String LearningPhase roleKind Role activityKind Activity
Exemples de modèles CPM : aspects structurels <<LearningPhase>> Acte 1 - Présentation {phaseKind="Acte"} Class Diagramme de classes
Exemples de modèles CPM : aspects structurels <<LearningPhase>> Act 3 – Result pooling {phaseKind="Acte"} Class <<LearningPhase>> Scene X - … {phaseKind="Scene"} Operation Diagramme de classes
Exemples de modèles CPM : aspects structurels <<LearningPhase>> Act 3 – Result pooling {phaseKind="Acte"} SubActivityState <<LearningPhase>> Scene X - … {phaseKind="Scene"} ActionState Diagramme d’activités
Exemples de modèles CPM : aspects sociaux <<Role>> Chef de la police {roleKind="Tuteur"} Actor <<Role>> Les enquêteurs {roleKind="Apprenant"} Actor <<Activity>> … UseCase Diagramme de cas d’utilisation
Exemples de modèles CPM : aspects sociaux <<Role>> {roleKind="Apprenant"} Partition <<Role>> {roleKind="Tuteur"} Partition <<CollaborativeActivity>> ActionState Diagramme d’activités
Vérifications et mises à l’essai Méta-méta-modèle Profile Builder Modeler mis en œuvre UML M2 Méta-modèle spécialise Profil CPM conformes à des modèles pour SMASH Modèle M1 M0 Réel perçu
Réalisations Outillage avec un AGL existant : Objecteering Objectifs Implémenter le langage CPM Vérifier l’élaboration de modèles conformes au langage CPM Prototyper un système-auteur adapté à l’ingénieur pédagogique Expérimenter la plus-value de modèles graphiques et interprétables par la machine Outillage avec un AGL existant : Objecteering Objectifs Implémenter le langage CPM Vérifier l’élaboration de modèles conformes au langage CPM Prototyper un système-auteur adapté à l’ingénieur pédagogique Outillage avec un AGL existant : Objecteering Objectifs Implémenter le langage CPM Vérifier l’élaboration de modèles conformes au langage CPM Outillage avec un AGL existant : Objecteering Objectifs Implémenter le langage CPM Extrait du profil implanté dans Objecteering Profile Builder Élaboration de modèles avec Objecteering Modeler Ajout d’éléments Onglet de propriétés Recherche guidée d’informations Vérification des modèles (contraintes syntaxiques) Projection vers d’autres langages
Les modèles produits avec CPM Mise à l’essai de SMASH Sur la base de documents pédagogiques validés en amont par des pédagogues/enseignants Définition des objectifs de la fiche de tâche des critères de succès de l’obstacle des rôles Analyse détaillée des rôles des ressources des activités des connaissances Spécification d’un scénario : rôles, ressources activités individuelles activités collaboratives coopération événements Vue = ensemble de diagrammes Modèle = ensemble de vues Expression initiale des besoins Analyse Conception
Plan Introduction aux modèles pour la e-formation Étude des situations-problèmes, plates-formes et UML Contribution Contribution globale Langage de conception CPM Modèle de composants éducatifs CPL Bilan et perspectives
Contribution 2 : le problème de la mise en oeuvre
Contribution 2 : notre approche Idée : ajouter de nouvelles fonctionnalités aux plates-formes capturer les activités de base récurrentes dans les modèles de conception de PBL Proposition : Le composant éducatif CPL capture une activité élémentaire réutilisable (pour les concepteurs) est implémenté comme un composant logiciel « métier » sur la plate-forme (pour les développeurs de composants)
Contribution 2 : détails des réalisations Un modèle spécifique pour le composant CPL Basé sur le modèle de composant UML 2 Permet de décrire, spécifier les composants CPL sur la base des composants logiciels des plates-formes Composé de Une vue d’assemblage « boîte noire » Des vues comportementales Démarches Construction d’une bibliothèque de modèles de CPL (pour les développeurs de composants et les concepteurs) Réutilisation des modèles de CPL (pour les concepteurs) Extension du langage CPM Ajout du concept d’activité réutilisable (pour les concepteurs) Modélisation des composants CPL (pour les développeurs de composants)
Contribution 2 : illustration des démarches Modèles de CPL Gestion Conflit Question/ réponse abstraction Modèles de CL Chat Mettent en valeur Besoins en activités élémentaires Nouveaux modèles de conception avancée CPL Situations-problèmes coopératives Modèles de conception Langage CPM Plates-formes de FAD Chat Agenda Forum Instant messaging Mailing Lecture FAQ Timer Visioconf
Plan Introduction aux modèles pour la e-formation Étude des situations-problèmes, plates-formes et UML Contribution Bilan et perspectives
Bilan Aide à la conception et la mise en œuvre de PBL Objectif Aide à la conception de PBL en phases amont : décrire, spécifier, documenter, abstraire complexité, favoriser communication équipe pluridisciplinaire Réalisations Langage CPM pour l’ingénieur pédagogique Prototype d’environnement-auteur via un AGL existant Mise à l’essai sur un cas d’étude riche Objectif Aide à la mise en œuvre de PBL sur des plates-formes Réalisations Composant éducatif CPL Modélisation UML 2 Double démarche (1-spécification de CPL, 2-réutilisation de CPL) Extension du langage CPM Langage CPM Modèle CPL Expression initiale des besoins Conception avancée Implémentation Déploiement Test Évaluation Phase de conception Analyse Modèles
Bilan sur les apports de la contribution Le modèle de composants CPL Approche originale et novatrice Nécessite un travail en profondeur Le langage CPM : identifier et décrire les apports de la (méta)-modélisation UML Conceptualisation explicite Meilleure capitalisation des connaissances Améliore communication Exploitation des modèles via les AGL Vers des nouveaux usages pour les modèles CPM Difficulté de modélisation Choix de représentation Complexité des modèles
Perspectives Validation des modèles CPM Méthode adaptée au langage CPM Comment : Expérimentation du langage CPM par Communauté UML et communauté EIAH Pour quoi : Cadrer les usages du langage Servir de base pour l’élaboration d’une méthode Méthode adaptée au langage CPM Méthodes UML (RUP, 2TUP, etc.) Méthodes de design pédagogique (MISA, Recre@sup, etc.) Guider la conception des modèles Vers une ingénierie des modèles ?
Merci de votre attention Méta-modélisation UML pour la conception et la mise en oeuvre de situations-problèmes coopératives Merci de votre attention
Illustration du modèle en couche de l’OMG Le réel « perçu », run-time instances Méta-méta-modèle (MOF) Méta-modèle (Ex. UML) Modèles Class <<instanceOf>> <<instanceOf>> <<metaclass>> Attribute Instance Class <<Role>> Chef_Police {type="tuteur"} <<stereotype>> Role {<<taggedValue>> type : string[1] } Chef_Police nom : string :Chef_Police nom= "Nicolas" Un chef de police
Exemple de modèles de CPL Modélisation UML 2 Gestion conflit
Exemple de CPL (2) State Machine associé à l’interface Ituteur
Exemple de CPL (3) State Machine associé à l’interface Iapprenant
Techniques et langages existants Méta-données Ontologies éducatives Langage de modélisation pédagogique Définition Données décrivant des données Définition explicite d’une conceptualisation Modèle d’information et de binding Usages Décrire, identifier, rechercher, assembler, délivrer des contenus de formations Décrire des contenus, supporter et guider la conception de scénarios, formalisation des scénarios Spécifier formellement un scénario, modèle interprétable par la machine Exemples LOM, LRS Travaux de Mizoguchi EML-OUNL, IMS-LD Public Fournisseur de ressources Ingénieur Pédagogique Pédagogique « expert » Limites Pas adapté à la scénarisation d’activités Modèles non destinés aux « humains » « Usine à gaz » Prise en charge PBL non peu IMS-LD propose et s’appuie sur UML comme langage de modélisation intermédiaire entre les narrations des enseignants et les modèles qu’il propose
Propriétés du langage CPM Reproductibilité, réutilisation, indépendance médium/configuration/plates-formes, personnalisation Propriétés de personnalisation : Terminologie « ouverte » : peut être enrichie selon besoins des concepteurs Via : Les stéréotypes : Relation, Activity, StaticPBLElement, DynamicPBLElement, resource, PBLConstraint Et leurs valeurs marquées : relationKind, activityKind, … Exemples : Une contrainte de durée pour les activités : <<PBLConstraint>> avec {constraintKind=Duration} Une relation d’équivalence entre 2 ressources : <<Relation>> avec {relationKind=IsEquivalentOf}
Le méta-modèle CPM Les concepts
Proposition 2 : démarche à la IMS-LD Fonctionnalités plates-formes = services dans le scénario
Ingénierie des connaissances Définition « L'ingénierie des connaissances propose des concepts, méthodes et techniques permettant de modéliser, de formaliser, d'acquérir des connaissances dans les organisations dans un but d'opérationalisation, de structuration ou de gestion au sens large. Ces mêmes connaissances sont des informations destinées à être, in fine, interprétées par un humain, dans son interaction avec l'artefact, i.e. le système à base de connaissances (SBC) construit » [IC’2001] nouveaux points de convergence : construction et l’utilisation d’ontologies, la modélisation de documents pédagogiques avec XML, les hypermedia adaptatifs, travaux sur CSCL/CSCW IC I-EIAH [Tchounikine,STE] modélisation de la connaissance du domaine d’apprentissage des connaissances des apprenants, etc. Un usage de CPM ???
Correspondances Terminologie PBL et terminologie CPM
Correspondances Terminologie IMS-LD et terminologie CPM
Exemple de CPL (4) Extrait de modèle de conception avancée
Publications SCI’02 EJC’02 Projet équipe IDEE WCC’02 INFORSID’02 TICE’02 ITS’02 Contexte – État de l’art IRMA’03 ITRE’03 Méta-modèle CPM Modèle de CE AIED’03 Profil CPM Prototype IT’04 ICCI’03 Expérimentation Extension du profil WWW’04 STICEF’05 ? ??’05 ? EIAH’05 ? Proposition 1 Proposition 2 Revue Chapitre Conférence Internationale Conférence nationale Divers Perspectives
Le langage CPM et la théorie de l’activité CPM est basé sur une approche centrée sur l’activité des modèles conceptuels de l’activité Toutefois, fondation théorique limitée car Son potentiel est dans l’étude de l’activité effective Nous sommes dans un contexte prescritif où l’activité est déjà « formatée » par de nombreux travaux.
Comparaison de l’approche par « profil UML » avec autres approches de méta-modélisations