Un modèle d'état représente un modèle de processus correspondant à un type d'enregistrement. Un état représente l'état d'un enregistrement, par exemple Soumis, Affecté, Ouvert et Fermé. Une action CHANGE_STATE correspond à une activité effectuée par un utilisateur qui fait passer un enregistrement vers l'état suivant. Les actions CHANGE_STATE courantes sont Soumettre, Affecter et Fermer.
Ce changement de statut de l'enregistrement est appelé transition d'état. Une transition comprend un état source (l'état en cours), un état cible et une action provoquant le passage de l'un à l'autre.
Le modèle d'état affiche tous les états valides et les transitions d'état pour ce type d'enregistrement. Par exemple, le modèle d'état dans la figure montre comment le type d'enregistrement EnhancementRequest (qui est inclus dans plusieurs schémas prédéfinis) change d'état en fonction des actions de l'utilisateur (Figure 1).
La meilleure façon pour commencer à créer un modèle d'état est de répertorier et de décrire tous les état valides pour un type d'enregistrement donné (c'est-à-dire pour un type spécifique d'enregistrement). A titre d'exemple, le tableau ci-dessous décrit les états du type d'enregistrement EnhancementRequest.
Deux mécanismes permettent de modifier des modèles d'état et des actions : la matrice de transition d'état et la grille Actions.
La matrice représente le modèle d'état sous forme d'une grille semblable à une feuille de calcul. Les états figurent sur l'axe vertical et horizontal, tandis que les actions permettant la transition entre deux états sont affichées dans les cellules du tableau.
La grille Actions affiche la liste des actions définies dans le schéma. Chaque ligne de la grille comprend un nom d'action, le type d'action, le paramètre de contrôle d'accès de l'action et les paramètres facultatifs initialisation, validation, valider, notification et script d'enregistrement.