Combinaison de sous-tâches pour former des flux de production

Il vous est possible de lier les sous-tâches d’une tâche principale (et aussi les tâches d’un pro­jet ou d’une phase) pour former un flux de production sur une base de données partagées ou d’un ensemble de conditions d’état. Compte tenus de deux sous-tâches S1 et S2, vous pouvez établir les spécifications suivantes concernant leurs données d’entrée et de sortie :

Pour la sous-tâche S2, on spécifie comme données d’entrée un document D qui appar­tient aux données de sortie de S1. Ainsi, S2 ne peut démarrer que si S1 est terminée et que le document D a été publié. Il existe une relation de livraison entre les deux sous-tâches : S1 délivre D à S2.

De même, on peut spécifier comme données de sortie de S1 le document D qui appar­tient aux données d’entrée de S2. L’effet est le même ; la différence dans la procédure dépend de quelle sous-tâche a été créée en premier, S1 ou S2.

Vous pouvez également relier les sous-tâches à la tâche principale, par exemple en prenant en compte les données d’entrée de la tâche principale comme données d’entrée d’une sous-tâche ou en déclarant des données de sortie d’une sous-tâche comme une partie des données de sortie de la tâche principale. Ainsi, l’élaboration de la tâche principale peut être totalement ou partiellement distribuée aux sous-tâches.

Si vous spécifiez, par exemple un champ de données d’entrée d’une sous-tâche comme champ de données d’entrée de la tâche principale, la tâche principale et la sous-tâche partagent ce champ de données. Les tâches qui partagent un champ de données partagent également la va­leur contenue quand elle est libérée. Ceci entraîne que la valeur du champ de données est copiée de la tâche principale à la sous-tâche lorsque celle-ci est disponible, dans notre exemple lorsque la tâche principale est effectivement démarrée. La valeur du champ de don­nées ne peut être modifiée dans la sous-tâche de manière indépendante de la tâche principale.

Vous pouvez relier plusieurs sous-tâches pas uniquement par l’intermédiaire de champs de don­nées concrets, mais également par des conditions préalables sur l’état de progression d’une sous-tâche qui est caractérisé par l’état de délivrance de ses données d’entrée et de sor­tie :

<entrée libérée> : Les données d’entrée d’une tâche sont libérées par une action de tâche, par exemple par le démarrage du donneur d’ordre : celui-ci déclare les données d’entrée valides et ne peut alors les modifier. La tâche est dans un état démarré, en­ga­gé, ou probablement déjà fini, mais non à l’état initial, retiré ou annulé par exemple. La condition <entrée de S1 libérée> pour le démarrage d’une autre tâche entraîne que l’autre tâche peut démarrer dès que S1 change dans un état où ses données d’entrée sont disponibles.

<sortie libérée> : Les données de sortie d’une tâche sont livrées par une action de tâche (finir ou compléter) du preneur d’ordre : celui-ci déclare les données de sortie va­lides et ne peut alors les modifier. La tâche est dans un l’état fini, accepté ou comp­lété), mais non à l’état démarré ou engagé. La condition <sortie de S1 libérée> pour le démarrage d’une autre tâche entraîne que l’autre tâche peut démarrer dès que S1 change dans un état où ses données de sortie sont disponibles.

Si vous souhaitez avoir une sous-tâche S2 démarrée uniquement après que la sous-tâche S1 ait été terminée, vous devez sélectionner la condition <sortie de S1 libérée> comme données d’entrée de S2. Si une tâche principale devrait être terminée que lorsque sa sous-tâche S2 a été terminée, vous devez sélectionner la condition <sortie de S2 libérée> comme données de sor­tie de la tâche principale.