A gas leak at Rapsodee is answered by a solution whose deduction inserted move and wait tasks. Its tasks are then carried out on the field, first on a phone with r-io4U, then in the r-ioga to-do list: the actor accepts, the field values of the indicators arrive, and Done is enabled. Those values come either from the real field (GPS, typing) or from r-iosemit, which plays the field when the simulation is on; r-io itself cannot tell the difference.
What this scenario demonstrates
For r-io, every task is real. A task is accepted, then updated with its field values (the measured or reported value of each indicator, and its output data), then ended with Done, which is only enabled once every field value is there.
Who brings the field values does not matter. On the field, the GPS of the actor measures a move, the clock measures a duration, and the actor types the rest. In a simulation, r-iosemit listens to the task events like any other subscriber and answers an accepted task with an update carrying simulated values. No r-io application calls r-iosemit or even knows it exists: switching a task from simulated to real is a checkbox in r-iosemit, and nothing else changes.
The deduction can also insert Move tasks (an actor travels to where the next task happens) and Wait tasks (an actor stands idle until the next task can start).
Video
The whole scenario in three minutes
The scenario played end to end on a running r-io, narrated in English or French. Choose the audio language and the subtitles under the video, or download the MP4: it holds both narrations and both subtitle tracks.
01 · Step
Load the use case and keep only the gas leak
The Default Game Scenario of IMT Albi Crisis plans a social-media message, a gas leak at Rapsodee, then a presence and an alert at Iomega. To follow the tasks of a single solution, only the gas leak is played: the other items of the timeline are muted.
In r-ioga, load IMT Albi Crisis from the Projects workspace, then open Project List.
Open r-iosemit and r-iota from the Applications column of the project row.
In the r-iosemit timeline, mute the social-media message and the two Iomega actualities (sound icon of each card).
Click Next step twice.
r-ioga, Project List: IMT Albi Crisis loaded, its applications in the Applications column.r-iosemit: the timeline with the social message and the Iomega actualities muted; only the gas sensor of Rapsodee is played.
ResultThe values of Gas Sensor Rapsodee cross their threshold and the CEP rule raises the gas leak alert.
02 · Step
Deduce a solution with moves and waits
The deduction can complete the process with the travels and the idle times of the actors. A Move is inserted before a task whose actor is not already where the task happens; its expected path is computed on the pedestrian network. A Wait is inserted where an actor must wait for another branch before going on.
In r-iota, click Find solution(s) and keep the Crisis strategy.
Set Insert move tasks and Insert wait tasks to Yes, then run the deduction.
Deploy the solution and supervise it.
r-iota: one sure alert, the gas leak at Rapsodee.The deduction dialog: Crisis strategy, Insert move tasks and Insert wait tasks set to Yes.The supervised solution and its telemetry cockpit.The process: moves before the field tasks, a wait before Send a message to colleagues.
ResultThe supervised solution holds 16 tasks, including 4 moves and 1 wait.
03 · Step
Prepare the field in the r-iosemit TASKS tab
The TASKS tab of r-iosemit lists every task of the supervised solutions with its actor, its status (Not started, Waiting for acceptance, Accepted, Done…), its expected indicators and the values r-iosemit will report. The On box says whether the task is simulated (checked) or real (unchecked).
Open the TASKS tab of r-iosemit.
On the row of Confirm gas leak, set the output to Yes and repairable: the process will take the repair branch.
On the move of Emily, choose another path and a speed of ×8 to watch it.
r-iosemit, TASKS: each task with its actor, its status, the expected indicators and the simulated values.The output of Confirm gas leak set to Yes and repairable; an edited value is kept.A move row: the expected path (613 m, 446 s) and the simulated one (891 m, 646 s), played 8 times faster.The two paths of the move on the map.
ResultThe simulated values default to precise values: the middle of the expected interval (when there are several, the middle of the whole range if it falls inside one of them, otherwise the middle of the widest), and the default value of each output. They are editable inputs; an edited value is kept when the simulation is regenerated.
04 · Step
r-io4U: a move, followed live
On the phone, the to-do list of r-io4U shows the tasks of the day. The sheet of a move shows its expected path in 2D and in 3D, with a ghost walking it at the expected pace.
In r-io4U, open the move to Confirm gas leak.
Click Accept, then follow the actor on the map.
When the actor has arrived, click Done.
r-io4U: the tasks of the day.The move sheet: the expected path and its ghost.After Accept, the position of the actor is followed: late or ahead of the ghost, on or off the path.Arrival at the boiler: the path really taken is replayed.The field values: 652 s and 809 m, in red because they exceed the expected ones by more than 20 %.
ResultThe field values of a move are measured from the GPS of its actor: the duration and the distance really covered. Here r-iosemit plays the GPS; on the field it would be the phone, and r-io4U would show exactly the same.
05 · Step
r-io4U: an ordinary task and its output
Confirm gas leak is an ordinary task: its sheet shows the expected values of its indicators and the output data the actor must report.
Open Confirm gas leak and click Accept.
Check the field values and the output data, then click Done.
Before Accept: the expected values.After Accept: the field values are on the task.The output data, filled with Yes and repairable.
ResultThe output carries the value chosen in r-iosemit, and the process takes the repair branch.
06 · Step
r-io4U: the values arrive in the open sheet
The sheet follows the task as it is updated: there is nothing to reload.
Open Cut off the local gas valve and click Accept.
Wait a moment with the sheet open, then click Done.
Just after Accept: Done is not enabled yet.A moment later: the field values have arrived and Done is enabled.The to-do list, the finished tasks ticked.
ResultDone is enabled as soon as every field value is there.
07 · Step
The same tasks in the r-ioga to-do list
The to-do list of r-ioga shows the same tasks to the crisis unit, each with the picture of its actor (a person, a good or a group), whose name appears on hover.
In r-ioga, open the to-do list.
Open the wait task before Send a message to colleagues.
Open Grab the toolbox, click Accept, then Done once the values have arrived.
r-ioga: the to-do list, each task with its actor.The inserted wait: Alice will stand idle for 470 seconds.Grab the toolbox after Accept: the field values have arrived, Done is enabled.
ResultThe wait belongs to the branch that was not taken: it stays planned. Accepting a task in r-ioga only updates the task; the values come back through the task events.
08 · Step
Switch a task to real
Unchecking On in r-iosemit makes a task real: r-iosemit no longer answers it, and the field values must come from the field.
In the r-iosemit TASKS tab, uncheck On on Report the damage.
In r-ioga, open Report the damage and click Accept.
Type the remaining field value, then click Done.
r-iosemit: Report the damage switched off, the task is real.r-ioga: the duration is measured, the other value is typed by the actor.All field values filled: Done is enabled.
ResultNothing looks different in r-ioga: the duration is measured from the acceptance, and the actor types the indicators that do not depend on the duration and are not computed by a function.
09 · Step
End of the process
Once the last task of the repair branch is done, the process ends and the objective is reached.
Look at the TASKS tab of r-iosemit, then at r-iota.
r-iosemit, TASKS: every task of the repair branch is Done.r-iota: No alert detected.
Resultr-iota reports No alert detected.
Going further
Behind the scenes: one path for real and simulated values
The cycle of a task only goes through the model and its events:
r-ioga or r-io4U updates the task with its acceptance.
The model publishes the task event. r-iosemit, subscribed to the task events, sees an accepted task that it simulates.
r-iosemit updates the task with its field values: immediately for an ordinary task, after the simulated duration for a move.
The model publishes the event again; the open sheets of r-ioga and r-io4U show the field values, and Done is enabled once they are all there.
On the field, step 3 is done by the phone (GPS) and by the actor (typing). No application of r-io calls r-iosemit: it is an ordinary subscriber of the events, which is why the same scenario can be played half simulated, half real.
Une fuite de gaz à Rapsodee reçoit une solution dont la déduction a inséré des tâches de déplacement et d’attente. Ses tâches sont ensuite exécutées sur le terrain, d’abord sur un téléphone avec r-io4U, puis dans la to-do list de r-ioga : l’acteur accepte, les valeurs terrain des indicateurs arrivent, et Done devient cliquable. Ces valeurs viennent soit du vrai terrain (GPS, saisie), soit de r-iosemit, qui joue le terrain quand la simulation est active ; r-io lui-même ne fait pas la différence.
Ce que montre ce scénario
Pour r-io, toute tâche est réelle. Une tâche est acceptée, puis mise à jour avec ses valeurs terrain (la valeur mesurée ou rapportée de chaque indicateur, et ses données de sortie), puis terminée par Done, qui n’est cliquable qu’une fois toutes les valeurs terrain présentes.
Peu importe qui apporte ces valeurs. Sur le terrain, le GPS de l’acteur mesure un déplacement, l’horloge mesure une durée, et l’acteur saisit le reste. En simulation, r-iosemit écoute les événements des tâches comme n’importe quel abonné et répond à une tâche acceptée par une mise à jour qui porte des valeurs simulées. Aucune application r-io n’appelle r-iosemit ni même ne sait qu’il existe : passer une tâche de simulée à réelle est une case à cocher dans r-iosemit, et rien d’autre ne change.
La déduction peut aussi insérer des tâches Move (un acteur se rend là où se déroule la tâche suivante) et des tâches Wait (un acteur attend que la tâche suivante puisse commencer).
Vidéo
Tout le scénario en trois minutes
Le scénario joué de bout en bout sur un r-io en marche, commenté en anglais ou en français. Choisissez la langue de l’audio et les sous-titres sous la vidéo, ou téléchargez le MP4 : il contient les deux narrations et les deux pistes de sous-titres.
01 · Étape
Charger le cas d’usage et ne garder que la fuite de gaz
Le Default Game Scenario d’IMT Albi Crisis planifie un message de réseau social, une fuite de gaz à Rapsodee, puis une présence et une alerte à Iomega. Pour suivre les tâches d’une seule solution, seule la fuite de gaz est jouée : les autres éléments de la frise sont mis en sourdine.
Dans r-ioga, charger IMT Albi Crisis depuis le Projects workspace, puis ouvrir Project List.
Ouvrir r-iosemit et r-iota depuis la colonne Applications de la ligne du projet.
Dans la frise de r-iosemit, mettre en sourdine le message de réseau social et les deux actualités d’Iomega (icône de son de chaque carte).
Cliquer deux fois sur Next step.
r-ioga, Project List : IMT Albi Crisis chargé, ses applications dans la colonne Applications.r-iosemit : la frise avec le message social et les actualités d’Iomega en sourdine ; seul le capteur de gaz de Rapsodee est joué.
RésultatLes valeurs de Gas Sensor Rapsodee franchissent leur seuil et la règle CEP lève l’alerte de fuite de gaz.
02 · Étape
Déduire une solution avec déplacements et attentes
La déduction peut compléter le processus avec les trajets et les temps morts des acteurs. Un Move est inséré avant une tâche dont l’acteur n’est pas déjà sur place ; son trajet prévu est calculé sur le réseau piéton. Un Wait est inséré là où un acteur doit attendre une autre branche avant de continuer.
Dans r-iota, cliquer sur Find solution(s) et garder la stratégie Crisis.
Mettre Insert move tasks et Insert wait tasks à Yes, puis lancer la déduction.
Déployer la solution et la superviser.
r-iota : une alerte sûre, la fuite de gaz à Rapsodee.Le dialogue de déduction : stratégie Crisis, Insert move tasks et Insert wait tasks à Yes.La solution supervisée et son cockpit de télémétrie.Le processus : des moves avant les tâches de terrain, un wait avant Send a message to colleagues.
RésultatLa solution supervisée compte 16 tâches, dont 4 moves et 1 wait.
03 · Étape
Préparer le terrain dans l’onglet TASKS de r-iosemit
L’onglet TASKS de r-iosemit liste toutes les tâches des solutions supervisées avec leur acteur, leur statut (Not started, Waiting for acceptance, Accepted, Done…), leurs indicateurs attendus et les valeurs que r-iosemit rapportera. La case On dit si la tâche est simulée (cochée) ou réelle (décochée).
Ouvrir l’onglet TASKS de r-iosemit.
Sur la ligne de Confirm gas leak, mettre la sortie à Yes and repairable : le processus prendra la branche de réparation.
Sur le déplacement d’Emily, choisir un autre chemin et une vitesse ×8 pour le regarder.
r-iosemit, TASKS : chaque tâche avec son acteur, son statut, les indicateurs attendus et les valeurs simulées.La sortie de Confirm gas leak mise à Yes and repairable ; une valeur modifiée est conservée.Une ligne de déplacement : le trajet attendu (613 m, 446 s) et le trajet simulé (891 m, 646 s), joué 8 fois plus vite.Les deux trajets du déplacement sur la carte.
RésultatLes valeurs simulées valent par défaut des valeurs précises : le milieu de l’intervalle attendu (quand il y en a plusieurs, le milieu de l’ensemble s’il tombe dans l’un d’eux, sinon le milieu du plus large), et la valeur par défaut de chaque sortie. Ce sont des champs modifiables ; une valeur modifiée est conservée quand la simulation est régénérée.
04 · Étape
r-io4U : un déplacement suivi en direct
Sur le téléphone, la to-do list de r-io4U montre les tâches du jour. La fiche d’un déplacement montre son trajet prévu en 2D et en 3D, avec un fantôme qui le parcourt à l’allure prévue.
Dans r-io4U, ouvrir le déplacement vers Confirm gas leak.
Cliquer sur Accept, puis suivre l’acteur sur la carte.
Une fois l’acteur arrivé, cliquer sur Done.
r-io4U : les tâches du jour.La fiche du déplacement : le trajet prévu et son fantôme.Après Accept, la position de l’acteur est suivie : en retard ou en avance sur le fantôme, sur le trajet ou à côté.Arrivée à la chaufferie : le trajet réellement suivi est rejoué.Les valeurs terrain : 652 s et 809 m, en rouge car elles dépassent les valeurs attendues de plus de 20 %.
RésultatLes valeurs terrain d’un déplacement sont mesurées à partir du GPS de son acteur : la durée et la distance réellement parcourue. Ici, c’est r-iosemit qui joue le GPS ; sur le terrain ce serait le téléphone, et r-io4U montrerait exactement la même chose.
05 · Étape
r-io4U : une tâche ordinaire et sa sortie
Confirm gas leak est une tâche ordinaire : sa fiche montre les valeurs attendues de ses indicateurs et les données de sortie que l’acteur doit rapporter.
Ouvrir Confirm gas leak et cliquer sur Accept.
Vérifier les valeurs terrain et les données de sortie, puis cliquer sur Done.
Avant Accept : les valeurs attendues.Après Accept : les valeurs terrain sont sur la tâche.Les données de sortie, remplies avec Yes and repairable.
RésultatLa sortie porte la valeur choisie dans r-iosemit, et le processus prend la branche de réparation.
06 · Étape
r-io4U : les valeurs arrivent dans la fiche ouverte
La fiche suit la tâche au fil de ses mises à jour : il n’y a rien à recharger.
Ouvrir Cut off the local gas valve et cliquer sur Accept.
Attendre un instant, fiche ouverte, puis cliquer sur Done.
Juste après Accept : Done n’est pas encore cliquable.Un instant plus tard : les valeurs terrain sont arrivées et Done est cliquable.La to-do list, les tâches terminées cochées.
RésultatDone devient cliquable dès que toutes les valeurs terrain sont là.
07 · Étape
Les mêmes tâches dans la to-do list de r-ioga
La to-do list de r-ioga montre les mêmes tâches à la cellule de crise, chacune avec la photo de son acteur (une personne, un bien ou un groupe), dont le nom s’affiche au survol.
Dans r-ioga, ouvrir la to-do list.
Ouvrir la tâche d’attente avant Send a message to colleagues.
Ouvrir Grab the toolbox, cliquer sur Accept, puis sur Done une fois les valeurs arrivées.
r-ioga : la to-do list, chaque tâche avec son acteur.L’attente insérée : Alice restera inactive 470 secondes.Grab the toolbox après Accept : les valeurs terrain sont arrivées, Done est cliquable.
RésultatL’attente appartient à la branche non prise : elle reste planifiée. Accepter une tâche dans r-ioga ne fait que mettre la tâche à jour ; les valeurs reviennent par les événements des tâches.
08 · Étape
Passer une tâche en réel
Décocher On dans r-iosemit rend une tâche réelle : r-iosemit ne lui répond plus, et les valeurs terrain doivent venir du terrain.
Dans l’onglet TASKS de r-iosemit, décocher On sur Report the damage.
Dans r-ioga, ouvrir Report the damage et cliquer sur Accept.
Saisir la valeur terrain restante, puis cliquer sur Done.
r-iosemit : Report the damage désactivée, la tâche est réelle.r-ioga : la durée est mesurée, l’autre valeur est saisie par l’acteur.Toutes les valeurs terrain remplies : Done est cliquable.
RésultatRien ne change en apparence dans r-ioga : la durée est mesurée depuis l’acceptation, et l’acteur saisit les indicateurs qui ne dépendent pas de la durée et ne sont pas calculés par une fonction.
09 · Étape
Fin du processus
Une fois la dernière tâche de la branche de réparation terminée, le processus s’achève et l’objectif est atteint.
Regarder l’onglet TASKS de r-iosemit, puis r-iota.
r-iosemit, TASKS : toutes les tâches de la branche de réparation sont Done.r-iota : No alert detected.
Résultatr-iota affiche No alert detected.
Pour aller plus loin
En coulisses : un même chemin pour les valeurs réelles et simulées
Le cycle d’une tâche ne passe que par le modèle et ses événements :
r-ioga ou r-io4U met à jour la tâche avec son acceptation.
Le modèle publie l’événement de la tâche. r-iosemit, abonné aux événements des tâches, voit une tâche acceptée qu’il simule.
r-iosemit met à jour la tâche avec ses valeurs terrain : immédiatement pour une tâche ordinaire, après la durée simulée pour un déplacement.
Le modèle publie à nouveau l’événement ; les fiches ouvertes de r-ioga et de r-io4U affichent les valeurs terrain, et Done devient cliquable quand elles sont toutes là.
Sur le terrain, l’étape 3 est faite par le téléphone (GPS) et par l’acteur (saisie). Aucune application de r-io n’appelle r-iosemit : c’est un abonné ordinaire des événements, et c’est pourquoi un même scénario peut se jouer à moitié simulé, à moitié réel.