Processus Métier
Objectifs
Ce TD vient en complément du cours qui introduit plus généralement la notion de BP.
Ce TD basé sur l'outil “Bonitasoft” s'inspire librement du tutoriel qu'ils proposent.
Notre objectif est de définir le BP (Business Process) correspondant au scénario suivant :
Initialisation : Un internaute déclenche le processus : il note son nom et son adresse, et sélectionne une musique
Analyse : Un des employés étudie la commande et l'accepte ou la rejette
Si la commande a été accepté,
Le système réserve le produit Reserver
En même temps, l'internaute est invité à payer en donnant les informations sur sa carte de crédit(Payer)
Ensuite La musique est “packagée” (Préparer) et la transaction est enregistrée (Enregistrer)
Si la commande a été rejetée, un email est envoyé à l'internaute (Envoyer Mail), et la transaction est enregistrée.
Voici la forme du BP correspondant
Exercice Entrainement
[]
création des tâches
création des données globales et locales
Associer les données
(nom et email) à l'ensemble du processus [
]
Associer une donnée
valide de type boolean à la tâche “Valider”
création des transitions par défaut et conditionnelles
création des connecteurs d'envoi de mails
exécution du BP
Retour sur l'exécution
Cas Archivés
Modifier pour gérer
Exécuter
Modifier les formulaires en particulier pour que le formulaire de validation n'autorise plus la modification des informations (text au lieu de champs de texte).
Affectation des acteurs : Seul un employé sera à présent autorisé à valider une demande.
Création des acteurs : userXP, administration, Organisation, Utilisateurs
Association des acteurs aux tâches [
]
Exécuter [
] [
]
Utilisation de tâches envoi et réception de messages pour la gestion des fraudes.
Vous pouvez faire le même exercice en utilisant en réception un évènement
Ajouter une boucle dans la tâche
Analyser qui se termine uniquement si le nom est validé (ajouter une variable validé) …
Ce qui précède, vous a donné les bases pour construire un processus plus important. Vous pouvez faire l'exercice suivant qui continue à vous guider, ou passer directement à l'étude du projet fil rouge.
Modélisation du processus
Initialisation
Nouveau
(en haut à gauche)
Modifier le nom du BP (Attention à ne pas avoir sélectionner “la pool”
Modélisation des tâches
Le processus commence par la soumission d'une commande. Renommer la tâche initiale de début en “Soumettre commande”.
Renommer la tâche créée pour qu'elle corresponde à l'étude de la commande par un employé (
Analyse).
Ajouter la tâche correspondant à Payer qui est encore une tâche “humaine”
Les tâches
Reserver, Préparer, Enregistrer, et Envoyer Mail sont des tâches correspondant à un “Service”
Définir les transitions et terminaison
Une fois, le paiement effectué (Payer), la commande est préparée (Préparer) puis enregistrée (Enregistrer) : dessiner les transactions correspondantes.
Le passage de
Analyser à
Envoyer un mail est conditionnée. Pour cela, nous allons ajouter un “gateway” de type ou exclusif.
Valider et
Payer se font en “même” temps, nous ajoutons un “gateway” AND.
La préparation ne se fera que lorsque les deux tâches précentes seront terminées, nous ajoutons un nouveau gateway mais en sortie.
Terminer le processus principal par un évènement d'arrêt.
Sous-processus
La préparation de la commande consiste à :
sélectionner le fichier correspondant à la musique
Ajouter un fichier Readme
Assembler le tout et en faire une archive
Pour cela nous allons définir un sous-processus.
Créer une nouvelle pool
La renommer
Puis ajouter les tâches de début,
Sélectionner, Ajouter Readme et
Archiver et
fin.
Modifier à présent le type de l'activité
Préparer en une activité “call” ou “appelante”
Préciser le sous-processus appelé en le sélectionnant sous “nom”
Acteurs et affectation des tâches
Nous avons deux types d'acteurs : les internautes et les employés.
Pour leur affecter des tâches, nous allons définir des lanes.
L'une correspond à “un” internaute, l'autre aux employés.
Vous pouvez choisir de n'affecter qu'un individu à une tâche.
Définition du processus
Affectation des acteurs
L'acteur correspondant à l'internaute est celui qui déclenche le processus. Il est l'initiateur du processus.
Les acteurs qui peuvent traiter la commande forme un groupe. Pour cela, nous les définissons à présent manuellement
Définition des données
Voici les données attendues par l'internaute :
- son adresse email
- la référence de la musique sélectionnée
- le numéro de carte de credit et la date d'expiration
L'acceptation ou non d'une commande sera également enregistrée sous la forme d'une variable.
Ces variables sont utiles dans l'ensemble du processus.
- Définir ces variables en sélectionnant le pool principal puis données.
Définition des conditions
Définition du comportement : ajout de connecteurs
Vous pouvez utiliser des variables dans le message.
Vers l'application
Tester l'exécution
Puisque nous n'avons pas défini tous les éléments, des formulaires par défaut s'appliquent.
Nous allons à présent particulariser les formulaires.
Formulaire de saisie de la commande
Formulaire de validation
Formulaire de paiement : deux pages
Creer une page avec nom et email
Créer une nouvelle page pour saisir identifiant et date d'expiration
Modifier le type du bouton du premier formulaire pour référencer la page suivante
-
Définition des acteurs
Sélectionner “User XP” en haut
Administration (en haut à droite)
Utilisateurs
Ajouter les utilisateurs employés que vous aviez prévu.
Exécuter
Sélectionner le bouton en haut Lancer
Vous êtes alors connecté automatiquement comme un admin (mdp : bpm)
Déconnexion
Connectez-vous comme un des employés, le formulaire de validation apparaît :
Déconnexion, puis reconnection comme adminn et paiement.
…
Exécuter comme User XP
Travail sur le projet Tutoré
Identification du BP à étudier
Sélection de l'étude à mener par groupe de 3
Evaluation
A rendre pour
sur la forge :
Le BP que vous avez choisi de modéliser