Éléments de processus

Élément normal 'Event'

La figure représente quatre types d'événements.

Events

Pour ces événements, les éléments suivants sont générés par principe dans le fichier BPMN :

Events

Les sous-types des objets du type Event sont définis au moyen d'un élément spécifique eventDefinition. Pour chaque objet du type Événement Message, un élément messageEventDefinition est généré. Dans ARIS, aucun message relié n'est utilisé. C'est donc un message vide qui est généré.

Evénement - Partie 2

Pour les objets du type Événement Minuterie, un élément timerEventDefinition contenant l'un des éléments subordonnés possibles timeDate, timeDuration ou timeCycle est généré.

Evénement - Partie 3

On peut définir une durée devant s'écouler avant le démarrage de l'objet du type Événement Minuterie. Ceci génère un sous-élément au sein de l'élément timerEventDefinition. Dans l'exemple, il s'agit de 20 jours.

Evénement - Partie 4

La troisième option définit un cycle temporel, un intervalle qui se répète. Dans l'exemple, il s'agit de 10 heures.

Evénement - Partie 5

Un élément du type escalationEventDefinition est généré pour un objet du type Événement Escalade.

Evénement - Partie 6

Un élément du type compensateEventDefinition est généré pour un objet du type Événement Compensation.

Evénement - Partie 7

Un élément du type conditionalEventDefinition avec un élément subordonné comprenant la condition est généré pour un objet du type Événement conditionnel. Cet élément n'est généré que si une condition est définie dans ARIS.

Evénement - Partie 8

Un élément linkEventDefinition est généré pour les objets du type Link Event. DansARIS, on utilise des copies de valeur de la même définition d'objet pour représenter la relation entre les événements liés. Les éléments source et cible ne peuvent donc pas être créés dans l'élément linkDefinition.

Evénement - Partie 9

Pour chaque objet du type Événement de signal, un élément signalEventDefinition est généré.

Evénement - Partie 10

Un élément terminateEventDefinition est généré pour les objets du type Terminate Event.

Evénement - Partie 11

De nombreuses définitions d'événements peuvent être ajoutées en tant que symbole dans ARIS. Toutefois, comme ces événements ne contiennent aucune description de tous les événements à prendre en compte, ils sont ignorés par la sérialisation BPMN2.

Evénement - Partie 12

Pour chaque objet du type Événement Erreur, un élément errorEventDefinition est généré. Comme ARIS ne prend pas en compte la référence d'erreur, cette dernière n'est pas disponible dans le fichier BPMN.

Evénement - Partie 13

Élément 'Événement Annulation'

Les objets du type Événement Annulation sont utilisés lors des sous-processus de transaction et peuvent être modélisés en tant qu'objet du type Intermediate Boundary Event ou Événement de fin incorporé dans une tâche.

Événement Annulation

S'il s'agit d'un objet du type Boundary Event, un élément boundaryEvent comprenant une référence à la transaction est généré. S'il s'agit d'un End Event incorporé, un élément subordonné endEvent est généré au sein de l'élément de transaction.

Événement Annulation

Élément 'Boundary Event'

La figure représente toutes les combinaisons d'objets du type Boundary Event.

Boundary Events

Lors de la sérialisation, un élément du type boundaryEvent est généré pour tous les types d'objets du type Boundary Event. Cet élément contient un attribut attachedToRef comprenant une référence à l'objet sur le bord duquel il a été placé. Les éléments du type eventDefinition sont créés comme expliqué précédemment.

Boundary Events

Élément 'Événement de sous-processus'

Cet objet est contrôlé par les objets du type Événement positionnés sur un élément du type Sous-processus. La figure représente toutes les combinaisons possibles de types d'événement et d'objets du type Sous-processus d'événement.

Événements de sous-processus

L'élément Event est incorporé dans l'élément lié subProcess. L'élément subProcess comprend un attribut triggeredByEvent contenant la valeur true. Cet attribut n'est disponible que lorsqu'un événement est incorporé dans un sous-processus. Si l'événement est du type Non-Interrupting, l'élément Event comprend un attribut isInterrupting avec la valeur false.

Événement de sous-processus

Élément simple 'Task'

La figure représente toutes les tâches simples.

Tâches simples

Chacun de ces objets du type Task génère un élément Task du type correspondant dans le fichier BPMN.

Task

Élément 'Sous-processus'

Sous-processus

Élément 'Activité d'appel'

La figure représente un objet du type Activité d'appel auquel est associé un processus global.

Activité d'appel

La figure suivante représente le processus invoqué global.

Processus global invoqué

Lors de l'exportation dans un fichier BPMN, les deux processus générent un élément du type process au même niveau. Le premier élément contient un élément Activité d'appel avec la référence au processus invoqué global. Si le processus appelé contient plus d'une piste, la première piste (piste supérieure gauche) est considérée comme le processus appelé.

Activité d'appel

Élément global 'Task'

Un objet global du type Task peut être appelé par un objet du type Activité d'appel. La figure représente les objets globaux possibles du type Task.

Tâches globales

Lors de l'exportation dans un fichier BPMN, un élément du type globalTask du type correspondant est généré. Les éléments suivants sont possibles : globalUserTask, globalTask, globalBusinessTask, globalManualTask et globalScriptTask.

Ces éléments sont appelés depuis l'objet lié du type Activité d'appel.

Tâches globales

Élément 'Type de boucle'

Type de boucle

Lors de l'exportation dans un fichier BPMN, des éléments du type Boucle correspondant (standardLoopCharacteristic ou multiInstanceLoopCharacteristic) sont générés pour les objets du type Type de boucle :

Type de boucle

Élément 'Compensation'

Si un objet du type Tâche est identifié comme Compensation, ceci sera réalisé dans le fichier BPMN par un attribut.

Événement Compensation

Éléments 'Branchement'

La figure représente tous les branchements possibles.

Branchement

Lors de l'exportation, pour chaque objet du type Branchement, un élément correspondant est généré dans le fichier BPMN.

Branchement

Élément 'Flux de séquence'

La figure représente un flux de séquence simple composé d'un événement de départ et d'une tâche.

Flux de séquence

Un élément subordonné du type outgoing est généré dans l'élément de flux avec la liaison sortante. Un élément subordonné du type incoming est généré dans l'élément cible. Les deux éléments font référence au même élément sequenceFlow possédant un attribut sourceRef et un attribut targetRef dans lesquels l'élément de flux respectif est référencé. L'ID de l'élément du type sequenceFlow est composé de la suite de caractères FLOW_ et du GUID de la liaison.

Flux de séquence

Un élément du type sequenceFlow peut contenir une condition ou être caractérisé en tant qu'élément de flux par défaut. Plusieurs éléments du type outgoing peuvent exister. Le flux de séquence sur la figure possède trois liaisons sortantes. Un des flux est caractérisé en tant que flux par défaut.

Flux de séquence conditionnel

Dans l'élément exclusiveGateway, l'attribut default possède comme valeur la référence vers la liaison par défaut. Pour les flux conditionnels, un élément subordonné conditionExpression contenant le texte de la condition est généré.

ARIS ne prend aucune condition formelle en charge.

Flux de séquence conditionnel

Élément 'Annotation'

Annotation

Dans ARIS, les objets du type Annotation ne doivent pas être incorporés dans une piste ou dans un sous-processus. Comme ils doivent être incorporés dans un élément conteneur, ils sont incorporés lors de l'exportation dans un fichier BPMN dans le même élément du type flowContainerElement dans lequel est incorporé l'élément lié du type flowElement.

Annotation

L'ID de l'élément Annotation est composé de la suite de caractères FLOWNODE_ et du GUID externe de l'objet du type Annotation. L'ID de l'élément de flux lié est composé de la suite de caractères FLOW_ et du GUID de la liaison. L'attribut souceRef fait référence à l'élément textAnnotation et l'attribut targetRef à l'élément flowElement.

Groupes

Les groupes sont toujours incorporés en tant qu'éléments subordonnés dans l'élément référencé par le diagramme BPMN. Si un groupe est contenu dans un sous-processus modélisé séparément, l'élément correspondant est généré lors de l'exportation sous l'élément que représente le sous-processus.

L'ID est composé de la suite de caractères FLOW_ et du GUID du groupe. Un élément supérieur category est généré. Son ID est composé de la suite de caractères CAT et du GUID du diagramme BPMN. Sous cet élément, un élément categoryValue est généré. Son ID est composé de la suite de caractères CATV et du GUID du groupe.

L'élément de groupe fait référence à cet élément category via un attribut categoryValueRef. Chaque élément de flux contenu dans le groupe fait référence à cet élément category via un élément subordonné categoryValueRef.

Groupes

Élément 'Objet de données'

Les connexions d'un objet du type Objet de données vers une valeur d'un élément de flux comme une tâche ou un évènement ne sont utiles que si on peut accéder à l'élément de flux.

ARIS permet également de tirer de telles liaisons via les limites de la piste, ce qui n'est pas autorisé par la spécification BPMN 2.0. De tels objets de données n'ont pas accès à des éléments de flux non accessibles.

Dans ce cas, le contrôle sémantique exécuté avant l'exportation d'un diagramme BPMN dans un fichier BPMN affiche une erreur. Vous pouvez également valider un diagramme BPMN à exporter avant l'exportation et de manière ciblée.

Pour chaque objet du type Objet de données, un élément dataObject est généré dans le fichier BPMN.

Objet de données

Les descriptions de la structure de données sont ajoutées sous l'élément itemDefinition. Tous les éléments du type dataObject générés pour le même objet de données ARIS possèdent la même structure. Ils font tous référence au même élément itemDefinition. L'ID de cet élément est composé de la suite de caractères ITEM_ et du GUID de l'objet de données ARIS.

Le conteneur pour l'élément dataObject et l'élément lié dataObjectReference peuvent se trouver dans des conteneurs différents. L'élément dataObject est généré dans le conteneur supérieur lors d'un contexte de processus. L'ID de l'élément dataobject est composé de la suite de caractères dataobject, du GUID de l'objet conteneur et du GUID de l'objet de données.

L'élément dataObjectReference représente en revanche une valeur d'objet concrète et il est généré sous l'élément correspondant au conteneur dans le diagramme BPMN. L'ID est composé de la suite de caractères FLOWNODE_ et du GUID de la valeur de l'objet de données. Chaque élément dataobjectReference fait référence à l'élément lié dataObject dans le même contexte de processus ou de sous-processus.

Éléments 'DataInput' et 'DataOutput'

DataInput et DataOutput

Dans le fichier BPMN, les éléments dataInput et dataOutput sont générés pour chaque objet du type Objet de données selon la direction fournie par la liaison. Les données d'entrée et de sortie sont générées sous un élément spécification io. L'ID d'un tel élément est composé de la suite de caractères FLOWNODE_ et du GUID de l'objet ARIS.

Pour les objets du type dataInput, un élément subordonné inputSet est généré en plus. Il contient un élément dataInputRefs qui fait à son tour référence à l'élément dataInput.

Pour les objets du type dataOutput, un élément subordonné inputSet est généré en plus. Il contient un élément dataOutputRefs qui fait à son tour référence à l'élément dataOutput.DataIpnut et DataOutput

Liaisons vers les objets de données

Lors de la sérialisation BPMN, les liaisons des objets de données vers les événements sont traités différemment que les liaisons vers les objets du type Activity.

Liaisons vers les événements

Si un objet du type Sortie de données est lié à un événement de départ, les éléments dataOutput, dataOutputAssociation et dataOutputSetsont générés dans le fichier BPMN sous l'élément startEvent.

L'ID de l'élément dataOutput est composé de la suite de caractères DATA_OUTPUT_ et du GUID de l'objet du type Sortie de données. Si le symbole Collection est utilisé pour l'objet dans le diagramme BPMN, la valeur de l'attribut isCollection est définie sur true , sur false dans le cas contraire.

L'attribut itemSubjectRef fait référence à l'élément supérieur itemDefinition créé pour chaque objet de données. Son ID est composé de la suite de caractères ITEM_ et du GUID de l'objet de données. L'élément dataOutputSet contient un élément dataoutputRefs faisant référence à l'élément dataOutput.

Les éléments sourceRef et targetRef sont générés dans l'élément dataOutputAssociation. Le premier élément fait référence à l'élément dataInput et le second à l'élément dataOutput du processus.

Comme l'événement de fin est lié à un élément du type Entrée de données, les éléments subordonnés dataInput, dataInputAssociation et dataInputSetsont générés sous l'élément endEvent. Les attributs et les ID sont générés de la même manière que pour l'événement de départ.

Liaisons vers les événements

Liaisons vers les objets du type 'Activity'

Si un objet du type Tâche Utilisateur possède une liaison entrante et une liaison sortante vers deux objets du type Sortie de données, un élément ioSpecification est généré lors de l'exportation dans un fichier BPMN sous un élément Tâche Utilisateur.

Pour la liaison entrante, un élément dataInput est généré et, pour la liaison sortante, un élément dataOutput est généré. L'ID respectif est composé de la suite de caractères DATA_INPUT_ ou DATA_OUTPUT_ et du GUID de l'objet de données lié. La suite de caractères OF est suivie du GUID de l'objet du type Tâche utilisateur.

Les éléments inputSet et outputSet contiennent, comme pour les événements, les éléments dataInputRefs ou dataOutputRefs qui font référence aux données.

Les éléments dataInputAssociation et dataOutputAssociation relient les éléments dataInput et dataOutput pour l'objet du type Tâche utilisateur à l'élément dataOutput pour le processus.

Liaisons vers les objets du type 'Activity'