Concevoir les démarches en ligne avec Publik Formation administrateur fonctionnel Donnée par XXXXXXXXXXXXXXXXXX Le XXXXX/XXXXXXXX/2017
Aide et documentation Ce support Guide de l’administrateur fonctionnel (https://doc‑publik.entrouvert.com/admin- fonctionnel) Site communautaire Bistro (http://bistro.entrouvert.com) Questions sous forme de tickets sur votre extranet Liste du club utilisateur Publik (publik‑club‑utilisateur@listes.entrouvert.com)
Terminologie Portail citoyen, Front-Office Portail agents, Back-Office Utilisateur : dispose d'un compte d'accès à Publik, usager ou agent Le contenu d'un formulaire saisi par un usager = une demande Le formulaire + le circuit de traitement (le workflow) = une démarche Une demande est traité par une ou des fonctions Un rôle est imputé à une fonction https://doc-publik.entrouvert.com/glossaire/
Panorama de Publik Le Front-Office (FO) Publik – interface de l'usager Le Back-office (BO) Publik – espace de travail des agents Construction modulaire Webservices internes Menu de gauche dynamique en fonction des rôles [Rq : à rafraîchir (clic-droit) si changement de rôle]
Utilisateurs (comptes) et rôles Accessibles en gestion, lorsqu'on a les bonnes permissions (rôles de gestion des rôles et utilisateurs), depuis le menu latéral en backoffice. Chaque utilisateur peut avoir un ou plusieurs rôles Héritages possibles entre rôles La CNIL recommande d'avoir 10 familles de télé- services, chacune reliée à au moins un rôle. Différence entre : Rôles internes qui définissent des droits dans l’application. Rôles créés pour chaque plate-forme (agrégation de rôles internes ou rôles purement métiers) qui définissent ce qu’un utilisateur peut faire à chaque étape du circuit de traitement
Exemples de rôles "Service urbanisme" : rôle qui pourra traiter les demandes du domaine (pas de recouvrement avec administrateur fonctionnel) "Administrateur fonctionnel" (rôle construit) : rôle pour administrer la plate-forme au quotidien (utilisateurs, rôles, démarches, portails) Administrateur de démarches (rôle interne) Possible de créer des rôles uniquement d’agrégation d’autres rôles, sans droits spécifiques à ce dernier, exemple : agent traitant de toutes les demandes Rôle != fonction (destinataire, usager, saisie backoffice voir expert, élu…)
Les rôles internes Administrateur des entités Administrateur des rôles Administrateur des utilisateurs Administrateur de Démarches Administrateur de "Compte citoyen" Administrateur de "Portail agent" Administrateur de Porte-documents Administrateur de Passerelle Administrateur de Accueil multi-canal Administrateur de Hobo
Rôles et utilisateurs Gérer un utilisateur Gérer un rôle → Vérification ou initialisation des comptes des participants → Création d’un compte métier et/ou usager
TP1 : Utilisateurs et rôles Créer un utilisateur suivant votre charte de nommage (LDAP interne) puis la respecter Générer un mot de passe automatiquement. Donner à cet agent les droits de gérer les utilisateurs, les rôles et les téléservices. Donner à cet agent l'accès au portail. Tester dans un autre navigateur ou en navigation privée. Supprimer le compte (ou pas)
Formulaire Nouveau formulaire ex-nihilo en important les champs depuis un autre formulaire en important un xml (plate-forme Bistro, échange) Informations (titre, catégorie, mots-clés) Workflows (choix du workflow, rôles attribués aux fonctions) Options
Informations Catégories servent à classer l'affichage des formulaires, c'est tout. Catégories peuvent être utilisées dans le portail citoyen Publication d’une catégorie complète Description affichée dans certains cas Mots-clés
Formulaire et workflow C’est sur le formulaire que se fait l’association entre un formulaire et son workflow. Au départ workflow par défaut imposé (un workflow est obligatoire) Attribution d’un rôle aux "acteurs" Destinataire et autres fonctions définies dans le workflow Utilisateur : qui peut remplir le formulaire (si aucun rôle spécifié, accessible à tous) Saisie back-office : qui peut remplacer l’utilisateur pour sa saisie On reviendra sur ce point avec les workflows !
Options du formulaire Page de confirmation (non éditable, permet de se relire et revenir sur la page du champ à corriger) Historique et statuts : maintenant réglage par statut Autoriser un seul formulaire par utilisateur. Lorsqu'on souhaite que les utilisateurs répondent une seule fois (consultations). Vue 360° : recherche des formulaires depuis l’usager Code de suivi : générer un code unique ET permet sauvegarde automatique Géolocalisation : active la potentialité d’enregistrer des coordonnées x,y, à compléter par actions dans le workflow Publication : activation du formulaire ou pas, peut ensuite être édité ou pas sur le portail citoyen possible de rediriger un formulaire désactivé vers une autre URL programmation
Édition des champs Cliquer sur « Édition » Choisir un libellé (qui sera le texte affiché à l'utilisateur) et un type. Créer tous les types de champs Texte, Texte Long, Courriel, Case à cocher, Upload de fichier, Date ,Liste ,Liste à choix multiple, Tableau, Tableau de listes, Éléments classés, Titre, Sous-titre, Commentaire, Nouvelle page Après création on peut éditer, supprimer ou dupliquer un champ en le survolant cliquer/déplacer.
Option générale des champs Obligatoire ou facultatif Remarque : permet d'apporter une aide au répondant (texte affiché sous le champ) Affichage dans les listings : détermine si le champ concerné doit figurer dans le listing back- office (une colonne du listing) Classe supplémentaire pour les styles CSS : permet d'indiquer une classe CSS pour le champ. Cette classe doit évidemment exister dans la feuille de style du thème choisi pour être opérante. Positionnement possible avec "Grid", grid-1-2 : la ligne comprend 2 colonnes et le champ en occupera une (la moitié de la ligne donc). Nom de variable : permet d'attribuer un identifiant au champ en question. Cet identifiant pourra ensuite être utilisé, en tant que variable, pour faire des formulaires conditionnels et autres opérations dans les workflows, modèles...
Options spécifiques Regex de validation : pour contrôler ce qui est saisi Code postal à 5 chiffres : \d{5} Heures et minutes : ^([0-1][0-9]|2[0-3]):[0-5][0-9] Voir https://doc-publik.entrouvert.com/admin- fonctionnel/fabrique-formulaires/form- champs/champ_texte-ligne/ Pré-remplissage. Avec les données utilisateur du compte citoyen le plus souvent. Est aussi utilisé pour interroger un référentiel distant. Longueur de ligne en nombre de caractères, nombre de lignes (si « grid » : alors celle-ci prioritaire). Date minimale, maximale, date dans le futur, date du jour Nombre maximal de choix (liste à choix multiple) Ajouter une ligne au total (tableau) Condition (champs nouvelle page)
Créer un formulaire conditionnel La condition concerne toujours l'affichage d'une page entière et pas d'un seul champ Les champs obligatoires le sont dans une page : si une page non affichée à l'usager contient des champs marqués obligatoires, ils ne seront pas renseignés mais la demande globalement valide quand même Mettre un nom de variable différent à chaque champ dont les valeurs entre dans la condition d'affichage de la page. Créer au minimum deux pages. Éditer le champs page pour ajouter une condition sous la forme : form_var_nom-de-la-variable == « La réponse qui déclenche l'affichage de la page » Syntaxe du langage Python Attention à la casse (majuscules/minuscules), aux espaces, aux tirets, aux accents...
TP Formulaire Créez un formulaire ex nihilo, mettez votre prénom dans le titre, « Théodule - xxx », mettez le dans la catégorie « Formation » Il doit avoir un titre, un sous-titre, un commentaire, un champ texte « nom », un champ liste avec au moins 2 éléments, un champ carte centré sur votre ville. Le champ nom doit-être pré-rempli avec le profil de l’usager (s’il est connecté) Le formulaire doit comporter plusieurs pages dont une page conditionnelle. Cela implique : De créer un champs liste dont la valeur va déclencher ou non l’affichage de la page Un nom de variable « xxxx » donné à ce champs liste L’écriture d’une condition dans le champs page, sous la forme form_var_xxxx == « réponse dans la liste qui doit déclencher l’affichage » Déterminez les champs qui apparaîtront dans le listing des demandes en backoffice Bonus : obliger à saisir un n° de téléphone OU un n° de portable, empêchez le changement de page si l’usager clique sur la carte en dehors de votre ville...
Workflows Circuit que suit une demande dans son traitement Une série d'étapes appelées statuts À chaque statut on définit ce qui peut se passer pour la demande via une série d'actions disponibles Les actions sont parfois déclenchées par des utilisateurs ayant une fonction explicite, elle sont parfois automatiques
Gérer un workflow From scratch En dupliquant le workflow par défaut ou autre (workflow de base) En important un workflow existant (fichier .wcs). Si les rôles utilisés dans le workflow n'existent pas sur la plate-forme au moment de l'import il faudra reconfigurer le workflow (intérêt des fonctions;-) Liens à droite pour la suppression, la copie, l'export
Les statuts Les statuts sont les différentes étapes pouvant être suivies par un formulaire soumis Créer / Supprimer un statut Options : Changer le nom du statut. Il faut noter que ce nom apparaît pour l’usager (citoyen) d'une part et pour l’agent traitant le formulaire (le destinataire) d'autre part. Changer la visibilité du statut pour le cacher au demandeur. Changer le caractère final du statut : affirmer le caractère final d'un statut même si il peut déboucher sur d'autres statuts (permet de faire figurer la demande comme terminée dans les listings de l'agent et de l'usager). Très important d’utiliser les couleurs et les aides contextuelles pour faciliter le travail des agents.
Les actions C'est l'ensemble des « choses » qui se passent lorsque un formulaire se trouve dans un statut donné. Ajouter une action avec la liste déroulante Supprimer /éditer en cliquant dessus Il y a des actions pour : Faire évoluer la demande dans le workflow (changement de statut, de rôles/fonctions) Envoyer de l'information (e-mails, SMS, commentaires) Gérer la demande (éditer, anonymiser, supprimer) Échanger avec d'autres applications (webservices) Attention les actions sont ordonnées au sein de chaque statut Par exemple, si vous avez une action automatique de changement de statut sans condition, toutes les actions qui suivent ne seront pas exécutées. L’entrée dans le workflow se fait par le premier statut de la liste
Les types d'action Afficher un formulaire Afficher un message https://doc-publik.entrouvert.com/admin-fonctionnel/fabrique-de-workflows/les-actions-de-workflow/ Afficher un formulaire Afficher un message Agréger dans un message de récapitulatif Ajouter un rôle à l'usager Anonymiser Appeler un webservice Attribuer une fonction Changer de statut Changer de statut automatiquement Changer de statut à la soumission Créer un document Enregistrer dans le journal Envoyer un SMS et/ou Envoyer un courriel Géolocaliser Modifier la criticité Modifier le profil de l’usager Modifier les données de traitement Permettre de joindre un fichier Permettre l'édition Permettre un commentaire Rediriger vers une URL Supprimer le formulaire Retirer un rôle à l'usager
Fonctions, rôles et utilisateurs Les actions dans un workflow sont associées à une fonction (tel "Destinataire") [ou directement à un rôle] Il est à proscrire pour des questions de généricité et lisibilité l'usage des rôles dans les actions de workflow Les rôles sont associés aux fonctions via les formulaires (ou via l’action "Attribuer une fonction") Les fonctions vont ainsi déterminer ce qu’un utilisateur peut faire en terme de traitement des demandes. Tous les utilisateurs qui ont une fonction pourront voir les demandes dans les listings. Les actions "manuelles" sont attribuées à une fonction Si le rôle associé à une fonction est changé, les utilisateurs avec le premier rôle ne verront plus aucune demande. Un seul rôle est associé à une fonction mais il est possible que ce rôle possède d'autres rôles (« héritage »). Lorsque des courriels sont envoyés dans le cours du worflow il faut s'assurer que sur les rôles impliqués soit coché l'option de propagation des emails aux membres du rôle.
Formulaire et workflow, le retour Dans l'encart worflow du formulaire. Fonction destinataire => indiquer le rôle que doivent avoir les agents pour traiter les demandes « début du workflow ». Ce rôle peut être modifié en cours de traitement de la demande. Rôles de l'utilisateur => indiquer le rôle que doit avoir l'utilisateur pour qu'il puisse remplir le formulaire. Rôles pour la saisie backoffice => indiquer le rôle que doivent avoir les agents pour être autorisés à saisir des demandes pour le compte des citoyens (guichet, téléphone...) Fonctions supplémentaires. Toutes ces fonctions peuvent ne pas avoir de rôle attribué via le formulaire et se voir un rôle assigné seulement au cours du traitement (i.e. dans le workflow). Dès qu'un rôle est associé à une fonction, les utilisateurs qui ont ce rôle pourront voir le contenu de la demande.
Les variables Les variables sont essentielles pour construire les modèles de courriels et de documents Variables systèmes liées au site, aux catégories ou à l'utilisateur [site_name], [site_url], [session_user_var_nom] Variables liées au formulaire : [form_details], [form_name], [form_url] Utilisation d’une variable de champ : [form_var_identifiant_du_champ] Variable d’un sous-formulaire [nom_du_formulaire_var_nom_de_variable_du_ch amp] Exemple : formulaire de contact dont le nom de variable est contact, on obtiendra le contenu du champ téléphone (dont le nom de variable est telephone) en mettant dans le modèle de message [contact_var_telephone] Dans la documentation : https://doc-publik.entrouvert.com/admin- fonctionnel/utiliser-les-variables/
Options avancées Criticité : niveaux définis librement + action pour la faire évoluer. On peut créer des actions changement de statut « criticité + » / « criticité - » Variables de workflow : leur valeur sera définie au niveau de chaque formulaire Actions globales : des actions de workflows automatiquement disponibles pour tous les statuts. Champs de traitement : champs qui viennent se greffer aux demandes. Par exemple : quartier, choisi par un agent.
Sources de données Pour utiliser dans plusieurs formulaires, ou plusieurs fois, dans le même formulaire une même liste La source de données peut également correspondre à un référentiel proposé en webservice par un logiciel tiers
Associer workflows et formulaires Depuis le formulaire, cliquer sur « Changer » en face de « workflow » et sélectionner le nouveau workflow S'il y a déjà des demandes remplies pour ce formulaire, il faut faire correspondre les statuts de l'ancien workflow et du nouveau
Tester un formulaire et un workflow Avoir autant de comptes que de rôles intervenants dans le workflow, chaque compte doit avoir uniquement un des rôles du workflow Attribuer les bons rôles aux différents comptes Utiliser plusieurs navigateurs (ou une session privée du navigateur) pour voir simultanément les écrans des différents utilisateurs. À chaque étape, vérifier ce que chaque utilisateur est en mesure de faire et les mails qui sont envoyés.
Bonnes pratiques et évolutions Pratiques visant à assurer que votre démarche en ligne est facile à maintenir et à faire évoluer. Utiliser le bon type de champs (liste à choix multiple plutôt que plusieurs cases à cocher successives par exemple). Faire des WF simples. Ordonner les actions des statuts pour faciliter la compréhension. Mettre une description soignée dès que cela est possible. Donner des identifiants de champs explicites, cohérence (intitulés composés) pour avoir des variables compréhensibles KO : dst, g23... OK : commune, id_procedure, date-naissance, birthday… qui sont lisibles et mémorisables (form_var_commune, form_var_id_procedure, form_var_date-naissance...)
TP1 Workflow Copiez le workflow par défaut et donnez lui un nom avec votre prénom dedans L’objectif est d’ajouter une étape de validation : l'agent accepte une demande, son chef de service doit valider son choix avant que le traitement soit effectif. Le chef peut rejeter la demande. Il faut ajouter une fonction chef de service à laquelle on donnera un rôle dans le formulaire Il faudra tester le workflow en utilisant plusieurs navigateurs (pour pouvoir avoir plusieurs rôles en même temps sans se délogguer).
TP 1 Workflow correction Créer un statut validation Créer une fonction chef de service Donner à cette fonction le rôle adéquat dans le formulaire Faire en sorte que le destinataire (agent traitant) puisse passer de « nouveau » vers « validation » (action changement de statut) Validation est un statut dans lequel le chef doit pouvoir accepter la demande ou la rejeter (2 actions « changement de statut », réservée à la fonction chef de service)
TP2 workflow L’objectif est de tester facilement notre workflow Ajouter une fonction « Testeur » et lui donner dans le formulaire un rôle que vous possédez (par exemple « administrateur fonctionnel ») Créez une « action globale » qui va vous permettre de revenir vers le premier statut de traitement. Cela évite de saisir plusieurs demandes pour pouvoir tester Clic sur « action globale » depuis la barre latérale de l’accueil du workflow et choix du nom de l’action Faire un déclencheur manuel que vous allez réserver à la fonction « Testeur » Créer l’action de changement de statut vers le premier statut de traitement Testez le workflow en utilisant plusieurs navigateurs (pour pouvoir avoir plusieurs rôles en même temps sans se délogguer).
TP3 workflow L’objectif est de transmettre dans un mail, un commentaire saisi par l’agent traitant en cours de traitement Il faut donner un nom de variable « xxxx » à une action « permettre un commentaire » Utiliser cette variable sous la forme [comment_xxxx] dans le template du mail envoyé Vérifiez le mail reçu
CMS Combo Conçu spécifiquement pour fonctionner avec les formulaires et catégories, les démarches, le code de suivi.... Pas de chaîne éditoriale : validez c’est publié Templates (modèles) de pages permettent d’avoir une ou plusieurs colonnes. Cellules sont des blocs d’information dont l’affichage permet de couvrir les besoins classiques pour un portail de démarches en ligne Possibilité de n’afficher certaines cellules/pages qu’à certains rôles On hiérarchise les pages avec un simple glisser/déplacer
CMS Combo Différentes cellules Texte Lien Fil RSS Une démarche Mes démarches (en cours, brouillon, terminées) Toutes les démarches d’une catégorie Liste des catégories Jauge Indicateur statistique Identique au parent On déplace les cellules dans les bonnes zones et dans le bon ordre par glisser/déplacer Créez une page avec votre nom dans le nom de la page et manipulez-là
Agendas 2 types d’agendas : évènements et rendez-vous On créé un agenda en choisissant son type On crée une ou plusieurs durées de RV On créé une ou plusieurs plages horaires pour les RV Il faut ensuite utiliser les agendas dans les formulaires et les workflows https://doc-publik.entrouvert.com/admin- fonctionnel/prises-de-rendez-vous/
Dématérialisation L'existant doit-il être conservé à l'identique ? Conception d'un formulaire structuré, avec un vocabulaire adapté Identification des intervenants (fonctions) dans le traitement Définition des étapes du traitement Identification des permissions de chaque intervenant à chaque étape Définition des actions à chaque étape du traitement, avec fonctions associés
Indicateurs statistiques Les indicateurs statistiques peuvent être créés pour une démarche particulière ou pour toutes les démarches (avec des filtres pour réduire à certain types de démarches) On peut mesurer : le nombre de demandes, le temps moyen de résolution d'une demande le temps maximum de résolution d'une demande, le temps minimum de résolution d'une demande, le pourcentage de demande (à n'utiliser qu'avec un regroupement) Les demandes peuvent être regroupés selon différents critères: l'année, le mois, le jour de la semaine, l'heure, le premier agent traitant, les valeurs de n'importe quelle liste à choix fermée utilisée dans le formulaire, le statut en cours.