Publishflow

De MoodleDocs
Aller à :navigation, rechercher


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.

Course transportation principles

Course archives are being transported from a Moodle to another Moodle using the Publishflow simple publishing use cases. There are three transporting modes that a publishflow can operate:

Using the local file system

This is the fastest one. The course archive is picked up from one Moodle within the moodledata container of the source Moodle. This allows quite big size transportation in a very fast way, but of course needs the filesystem to be the same (or network mounted) between both Moodle instances. This is fully operable on a Virtualized Moodle installation. (also see https://docs.moodle.org/24/en/VMoodle_Block)

Using MNET back call

Using MNET back call will transport the material through a Moodle MNET XMLRPC operation. This allows transporting Moodle archives between distinct physical servers an filesystems, but has a size limitation of about 40Mo due to XMLRPC encoding library breakdown.

Using simple HTTP back call

If the course archive does not need to be so protected during transport, the publishflow bloc envisages using a simple HTTP call to get the archive.

this is still to be implemented.

Bloc Features

Within a Course Factory Moodle

  • Indexing: The course needs to be indexed (ie : having a non empty IDNumber to track published copies).
  • Making a transportable archive: The course needs to be backup WITHOUT ANYTHING RELATIVE TO USERS to be tranportable. The bloc provides a control to make such an archive in "two clicks" process.
  • Publish: Publishing a course to a remote Course Catalog choosing the target Moodle within the list of available targets.
  • Deploy for test: As widely required by our peer teachers, the possibility to deploy directly from a Factory to a Training Center an unpublished, yet to validate, course content is possible.

Within a Course Catalog Moodle

  • Deploy: The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it.
  • Deploy with key: The course can be deployed to any Training Center known in the MoodleNetwork neighborhood by people having capabilities to do it AND having a preset deployment key.

Deploying will make a remote copy of the course, landing in :

  • a category choosen at deploy time
  • a predefined category for incoming courses, setup in the remote Moodle Publishflow BLock configuration.

Within a Training Center Moodle

  • Open/Reopen: The course is set available for use, or reopen if it is in a closed state.
  • Close: The course is closed.
  • Retrofit: The course can be retrofit to any Factory in the network neighbourhood.

When a course is coming from deployment, it is set to a non visible state and can be attached to a predefined category.

Opening course options

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.

Block Operations and implementation documentation

Implementation Documentation

Screens

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

This module is developped and maintained by valery.fremaux@gmail.com