« Publishflow » : différence entre les versions

De MoodleDocs
Aller à :navigation, rechercher
Aucun résumé des modifications
 
(6 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
[[Category:Contributed code]]
[[Category:Code tiers]]


Le bloc Publishflow propose une architecture de transport et de publication de cours à travers le réseau Moodle. Le bloc propose de publier, déployer ou réalimenter un site de production de cours à partir du cours lui-même. La publication, le déploiement ou la réalimentation (concepts définis ci-après) utilisent le même protocole de transport du contenu du cours entre les plates-formes et est basé sur le mécanisme de sauvegarde/restauration de Moodle.
Le bloc Publishflow propose une architecture de transport et de publication de cours à travers le réseau Moodle. Le bloc propose de publier, déployer ou réalimenter un site de production de cours à partir du cours lui-même. La publication, le déploiement ou la réalimentation (concepts définis ci-après) utilisent le même protocole de transport du contenu du cours entre les plates-formes et est basé sur le mécanisme de sauvegarde/restauration de Moodle.
Ligne 88 : Ligne 88 :
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a ''Disabled Student'' additional custom role so they get disabled.
* Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a ''Disabled Student'' additional custom role so they get disabled.


==Block Operations and implementation documentation==
==Documentation d'implémentation et d'utilisation==


===Implementation Documentation===
===Documentation d'implémentation===
* [[Publishflow Block : Requirements|Requirements]]
* [[Bloc Publishflow : Requirements|Requirements]]
* [[Publishflow Block : Installation|Installation]]
* [[Publishflow Block : Installation|Installation]]
* [[Publishflow Block : Initialization|Initialization : getting everyone to know about possible targets]]
* [[Bloc Publishflow : Initialisation|Initialisation : permettre à chaque plate-forme participante de connaître ses cibles]]
* [[Publishflow Block : Global Settings|Global Settings]]
* [[Bloc Publishflow : Réglages généraux|Réglages généraux]]
* [[Publishflow Block : Capabilities|Capabilities]]
* [[Bloc Publishflow : Capacités|Capacités]]
* [[Publishflow Block : Additional Roles|Additional Roles]]
* [[Bloc Publishflow : Rôles additionnels|Rôles additionnels]]
* [[Publishflow Block : MNET Services|MNET Services ( Developer)]]
* [[Bloc Publishflow : Services MNET|Services MNET (Développeur)]]
* [[Publishflow Block : Cron]]
* [[Bloc Publishflow : Cron]]


===Screens===
===Ecrans et interfaces===


*[[Publishflow Block: Publishing view|Publishing view]]
*[[Bloc Publishflow : Interface de publication|Interface de publication]]
*[[Publishflow Block: Deploy view|Deploy view]]
*[[Bloc Publishflow : Interface de déploiement|Interface de déploiement]]
*[[Publishflow Block: Retrofit|Retrofit and course life-cycle management view]]
*[[Bloc Publishflow : Interface de réalimentation|Interface de réalimentation et gestion du cycle de vie du cours]]
 
===Operations===
 
====Making a course publishable====
 
A course is publishable if :
* MNET is activated.
* MNET Services for publishing architecture (Publishflow services) is enabled :
* The network has been scanned for publishing structure recognition (the current node knows what kind of Moodle peers he has in the environment and a suitable peer for the operation is available).
* A publishflow block is added to the course
* The course has been indexed (has an IDNumber) (using the publishflow block in a Factory node)
* The course has got a transportable backup stored in the ''publishflow'' filearea.
* The current user has block/publishflow:publish capability enabled on this course.


==Credits==
==Credits==


This module is developped and maintained by valery.fremaux@gmail.com
Ce module est développé et maintenu par valery.fremaux@gmail.com (MyLearningFactory)


[[fr:Publication de cours]]
[[en:Course Publication Block (publishflow)]]

Dernière version du 26 février 2014 à 23:18


Le bloc Publishflow propose une architecture de transport et de publication de cours à travers le réseau Moodle. Le bloc propose de publier, déployer ou réalimenter un site de production de cours à partir du cours lui-même. La publication, le déploiement ou la réalimentation (concepts définis ci-après) utilisent le même protocole de transport du contenu du cours entre les plates-formes et est basé sur le mécanisme de sauvegarde/restauration de Moodle.

course life cycle.jpg

Types de plates-formes (au sens de la publication)

L'architecture de publication propose trois affectations principales pour une plate-forma Moodle. Ces affectations ne sont pas toutes nécessaires dans une installation :

  • Le concept "Fabrique" : Une "fabrique" est une plate-fome dans laquelle on élabore les cours et on les teste. Il n'est pas supposé avoir de formations actives dans une fabrique, même si certains apprenants testeurs peuvent y être conviés. Les cours peuvent être "ouverts" en accès de manière plus libérale que dans une plate-forme opérationnelle, pour permettre une vision coopérative de la production pédagogique. Les cours en production peuvent être à de divers niveaux de réalisation, sans nuire à la gestion opérationnelle des formations effectives.
  • Le concept "Catalogue" : Un "catalogue" est une plate-forme Moodle dans laquelle on stocke des versions finalisées des volumes de formation. Comme la Fabrique, un "Catalogue n'est pas un endroit où se déroule les formations, et dans lequel on peut alors modifier les contenus et adapter les scénarios pédagogiques. Il s'agit d'un point de référence qui stocke des modèles stables à déployer pour initier une session de formation.
  • Le concept "Site de formation" : Plus proche du concept standard d'usage d'une plate-forme Moodle, Ce type de plate-forme est la destination du déploiement des cours à partir du catalogue. Un même volume de cours peut alors être déployé plusieurs fois pour plusieurs sessions différentes, avec des variantes locales ad hoc produit de l'activité pédagogique effective dans le volume.

Une plate-forme Moodle peut être amenée à adopter l'un des fonctionnements ci-dessus par le réglage général du bloc Publishflow. (Voir Administration -> Plugins -> Blocs -> Réglages du bloc "publication de cours").

Attention : Le nom du bloc peut changer suivant la modalité de plate-forme pour offrir un intitulé proche de la fonction proposée (Publication, Déploiement, Réalimentation)

L'association et la composition de ces trois modèles permet de constituer des architectures éditoriales très variées correspondant à des macro-modèles de gestion des contenus de formation différents.

Lire plus à propos des modèles et topologies de l'architecture de publication

Cas d'usages

  • Publication d'un cours : La publication d'un cours est le tranfert d'un cours en production dans une Fabrique vers un Catalogue, en vue de sa mise à disposition à des plates-formes de formation.
  • Déploiement du cours : Le déploiement d'un cours est le tranfert d'un matériel de cours d'un Catalogue vers une plate-forme de formation en vue de son usage par une session de formateurs et d'étudiants.
  • Réalimentation d'un cours : La réalimentation d'un cours est le transfert d'une copie de l'état final d'une session de formation vers une Fabrique, en vue de sa réintroduction dans le cycle complet de production.

Méthodes de transport du cours

Publication, déploiement et réalimentation utilisent les archives de sauvegarde de cours Moodle comme élément transportable. L'architecture de publication simplifie les opérations d'archivage/déplacement/restauration et les organise dans un "workflow" cohérent. Trois méthodes peuvent être utilisées pour le tranfert du matériel de cours :

Par le système de fichiers local

Ceci est le plus rapide, et permet le transport de très gros volumes (plusieurs centaines de Mo). L'archive de cours est "attrapée" par l'insance d'arrivée dans le répertoire Moodledata de la première. Ceci permet donc un transpot très rapide de très gros volums, mais oblige donc les deux plates-formes Moodle à fonctionner sur le même environnement de stockage. Ce mode est très adapté aux déploiements virtualisés sur la base du bloc VMoodle.

Rétro appel MNET

Le rétro appel MNET récupère l'archive à déplacer comme contenu d'une transaction XMLRPC du réseau Moodle entre les deux plates-formes. Ceci permet de publier des cours entre des plates-formes ne résidant pas sur la même infrastructure physique, mais subit une contrainte de taile autour de 40Mo dü à des limites structurelle de l'encryptage XMLRPC.

Appel HTTP

Si l'archive publiée peut être sans risque exposée à un accès public, le bloc Publishflow envisage une récupération par chargement HTTP simple à l'archive disponible sur le serveur source.

Cette dernière modalité n'est pas implémentée actuellement.

Fonctionnalités

Dans une "Fabrique"

  • Indexer un cours : Le cours doit avoir une identité (un index). L'architecture actuelle utilise l'Idntifiant Moodle, non fonctionnel dans Moodle, à cet usage.
  • Générerune archive transportable : Une achive de cours convient à la publication si la sauvegarde est faite SANS DONNES UTILISATEURS. Le bloc prend en charge le stockage d'archives sauvegardées avec ce réglage.
  • Publier : Publier une archive disponible vers un catalogue (connu comme tel dans l'environnement réseau).
  • Déployer pour test : Si un cours non complètement finalisé devait pouvoir être testé dans un environnement plus opérationnel, alors cette fonction permet de publier "pour test" un cours depuis une Fabrique directement vers un site de formation.

Dans un "Catalogue de cours"

  • Déployer un cours : Une archive de cours publiée est répliquée dans un des sites de formation par un administrateur ou un usager disposant des droits suffisants.
  • Déployer avec une clef: Le cours peut être déployé dans tout environnement cible où l'utilisateur à des droits de publication ET s'il dispose de la clef de publication.

Le déployement crée une copie du matériel de cours :

  • dans une catégorie choisie à distance depuis le catalogue émetteur
  • dans une catégorie prédéfinie du côté de la réception (Voir la configuration du bloc).

Dans un "Centre de formation"

  • Ouvrir(*) / Réouvrir : Le cours est rendu disponible pour les apprenants, ou réouvert s'il est fermé.
  • Clôturer : Le cours est placé hors d'atteinte des apprenants.
  • Réalimenter : Le volume de cours (une sauvegarde disponible pour la publication) est tranféré dans l'une des fabriques disponibles dans le réseau.

A l'issue d'un déploiement à partir d'un Catalogue, un cours est systématiquement réglé sur "Non visible pur les étudiants" et peut être placé dans une catégorie particulière non visible aux apprenants (pointée par la configuration du bloc).

Options pour l'ouverture d'un cours

When opening a course, the course may be moved to a predefined category (See Global Settings) and is set to a visible state (enroll mode unchanged).

  • Opening with notification: All user that have role assigned within the course will be notified of opening.
  • Opening without notification: No one will be notified. The course opens silently.

Closing course options

When closing a course, the course might be moved to a predefined category (See Global Settings). Closing a course might result in three distinct final states:

  • Private closing: the course is set to not visible state and no one else than teachers can go in.
  • Protected closing: the course does'nt changes its enroll settigns and student users are shifted to a Disabled Student additional custom role. Enrolled Students may thus continue to access to the course content and production whithout any interaction being possible any more.
  • Public closing: the course is allowed to guest entry and open to guests. All users are shifted to a Disabled Student additional custom role so they get disabled.

Documentation d'implémentation et d'utilisation

Documentation d'implémentation

Ecrans et interfaces

Credits

Ce module est développé et maintenu par valery.fremaux@gmail.com (MyLearningFactory)