Réserver une Démo
Pré. Proc.

Créer Objets dans une Simulation

Dans un modèle Simulation , vous pouvez créer des classes et soit créer des instances de celles-ci (objets globaux) pour représenter les objets qui existent dans le processus, soit définir des actions pour générer un ou plusieurs objets à tout moment pendant le processus.

Vous disposez de trois options pour créer des objets dans un modèle Simulation :

  • Créer manuellement l' Object
  • Créer dynamiquement un Object via un élément Action CreateObject
  • Utilisez la fonction JavaScript sim.CreateObject (« nom ») comme « Effet » d'un élément Action , pour créer à nouveau un Object de manière dynamique
Après avoir créé un Object de manière dynamique, vous pouvez également instancier tous les objets internes de cet Object , comme une activité sur une classe, et agir sur les propriétés de cet object interne.

Créer un Object manuellement

Créez simplement un élément Object sur un diagramme dans le modèle, soit en :

  • Faire glisser un élément Object depuis les pages « Object » de la boîte à outils Diagramme et définir son classificateur, ou
  • Faire glisser un élément de classificateur depuis la fenêtre Navigateur et le coller dans le diagramme en tant qu'instance
Dans le modèle Simulation , vous pouvez ensuite configurer les propriétés Object elles-mêmes (comme la définition des états d'exécution pour réinitialiser la valeur initiale d'un attribut) ou les comportements des actions pour agir sur l' Object (comme le transmettre le long d'un flux de processus) et observer ce qui arrive à l' Object dans une Simulation .

Créer un Object via une Action CreateObject

Si votre processus génère des objets lors de l'exécution, vous pouvez simuler cela à l'aide d'une Action CreateObject.

Étape

Action

Voir aussi

1

Sur votre diagramme d'activité, faites glisser une icône « Action » depuis la boîte à outils Diagramme et sélectionnez l'option de menu contextuel « Autre | CreateObject » pour la définir comme un élément Action CreateObject.

Action

2

Définissez le classificateur de l' Action CreateObject sur la classe dont l' Object sera une instance. Cette option est définie dans la fenêtre Propriétés > CreateObjectAction > Classificateur, à l'aide du bouton [...].

Action Pin

3

Créez une Action Pin sur l' Action CreateObject, de type sortie.

Action Pin

4

Créez ou sélectionnez l’ Action suivante dans la séquence de traitement et ajoutez une broche Action de type entrée.

Connectez les deux actions avec un connecteur de flux de contrôle et les deux Pins Action avec un connecteur de flux Object .

CreateObject in uml simulation

Contrôle du flux Flux Object

5

Effectuez une Simulation sur le diagramme . Lorsque l' Action CreateObject est exécutée, elle crée un Object ayant les propriétés du classificateur et le stocke dans sa broche de sortie. L' Object lui-même est transmis via la connexion Object Flow à la broche d'entrée de Action 2, où ses propriétés peuvent être répertoriées dans la fenêtre Locals pour la Simulation .

Créer Object à l'aide de JavaScript

Vous pouvez également créer des objets Simulation de manière dynamique à l'aide d'une commande JavaScript dans le champ « Effet » de l'élément Action . La commande est :

sim.newObject = sim.CreateObject("NomDeClasse");

ou

sim.newObject = new SimObject("ClassName"); ( JavaScript naturel)

C'est-à-dire : « Simuler la création d'un Object basé sur la classe <nom> ». La classe classificatrice existerait dans le même Paquetage que l' Action .

En ce qui concerne l'élément Action CreateObject, l' Object est créé pendant la Simulation et peut être transmis et traité par des éléments « en aval ». Dans cet exemple, l' Object créé est identifié comme sim.object1 et dans Action 2, il est accessible et l'un de ses attributs reçoit une valeur différente (également par JavaScript en tant qu'effet de l' Action ).

Use of Javascript in simulation

Instancier des objets internes

Comme décrit précédemment, vous pouvez créer un Object à l'aide JavaScript ou d'une Action CreateObject. De même, vous pouvez instancier des objets internes à l'aide JavaScript ou d'une Action CallBehavior.

Dans cet exemple, à l'aide JavaScript , la Simulation crée d'abord un object de test basé sur la classe 1. La classe 1 comporte un élément Activity et diagramme , avec un paramètre Activity 1 défini sur l' integer 5 et un paramètre Activity 2 défini sur la string 'test'. La valeur du paramètre Activity 1 est capturée sous la forme d'une valeur tampon 'buf'.

Instantiation of inner objects in model simulation

Apprenez Plus