2016-08-23 3 views
0

Mes questions portent sur la mise en pratique d'un concept grâce à la disponibilité technique d'EA.Comment «transmettre» des valeurs étiquetées dans Enterprise Architect d'une instance à une autre

Je cherche un moyen de connecter des instances à un diagramme d'objets à travers lequel je peux transférer des valeurs étiquetées. Laissez-moi vous expliquer le contexte du projet.

Le but est d'abord Stéréotypes pour des rôles spécifiques dans le système, tels que « Calcul », « Transmission », « la décision », « Qualification », « abstrait », etc.

Chacun de ces stéréotypes PRÉCISE valeurs étiquetées adaptées à leur objectif. Puis, je crée des instances à partir de ces stéréotypes, par exemple. "MotorTorque: Calcul" et "LimitedTorque: Abstraction"

Chacune de ces instances a une valeur balisée commune, "criticality", booléenne et je souhaite que cette valeur balisée passe de "MotorTorque: Calcul" à "LimitedTorque: Abstraction" à travers un port de sortie> une sorte de flux> entrée type de manière.

Les questions sont:

1- Cette approche est techniquement réalisable dans l'évaluation environnementale? Si oui, quelle serait la bonne façon de le faire?

2- Le but est que cette "connexion" soit lisible dans l'export XMI du diagramme que je vais utiliser comme entrée dans un autre but.

J'ai créé une technologie MDG pour mon projet avec des stéréotypes et des valeurs étiquetées, mais j'ai du mal à réaliser cette «connexion», ce «flux» de valeurs.

Nous vous remercions de votre temps.

+0

Avez-vous regardé dans SysML? –

+0

Que voulez-vous dire par "télévision commune"? Partagé? –

+0

J'ai déjà adopté des parties de SysML pour créer mon propre MDG et cela a bien fonctionné. Cependant, SysML vous donnera probablement quelques idées. (Votre dernier commentaire n'était pas complet) –

Répondre

0

Ce que vous demandez n'est pas directement réalisable. Cependant, de nombreux chemins mènent à Rome. Un moyen serait de <<trace>> connecter ces objets à une classe Status (ou quoi que vous aimiez nommer) et avoir ceci porter le "téléviseur partagé".

Une autre façon est (de loin plus complexe) d'utiliser un complément. Vous auriez de toute façon besoin de moyens pour créer des groupes qui partagent la télévision. D'après votre explication actuelle, je ne vois pas ce que cela pourrait être. Peut-être la classe instanciante de ces instances? Si c'est le cas, vous créez un script qui propage un paramètre TV du courant ist à toutes les autres instances liées. Je ne suis pas sûr que les évènements se déclenchent lorsqu'un téléviseur change (j'ai quelques doutes ici). Si nécessaire, je pourrais regarder ça.

+0

Merci beaucoup Thomas, je vais consacrer un peu de temps à essayer vos suggestions et mettra à jour ce post pour l'utilisation future des autres . –

+0

Ne pas oublier de poster des conseils comme réponse à soi-même et non comme une modification à la question. À votre santé –

0

Ce que vous proposez est partiellement réalisable.

Il existe une chaîne d'héritage de valeurs étiquetées dans EA, dans laquelle les valeurs étiquetées sont héritées dans la chaîne de généralisation et d'un classificateur à ses instances. Dans l'interface graphique, les valeurs balisées héritées sont affichées séparément de celles de l'instance, et dans l'API, elles sont accessibles à l'aide de la propriété Element.TaggedValuesEx. Les valeurs balisées héritées peuvent également être remplacées. Étant donné que la manière correcte de créer un port (ou une partie/propriété) est d'en faire une instance d'un composant, un port héritera des valeurs balisées de ce composant. Donc, si votre stéréotype de calcul s'applique au composant, les ports qui sont des instances de composants de calcul hériteront de la valeur étiquetée MotorTorque.

Cependant, il n'y a aucun moyen de "transférer" des valeurs étiquetées d'un port à un autre. Si vous voulez une telle fonction, vous devrez l'implémenter vous-même avec un Add-In. En ce qui concerne XMI, vous devez d'abord comprendre qu'une exportation XMI est basée sur un package et non sur un diagramme. Le format XMI lui-même est extensible, ce qui signifie que différents fournisseurs d'outils créent leurs propres extensions qui ne sont généralement pas documentées publiquement. Fondamentalement, les dispositions de diagramme font partie de ces extensions non standardisées. Dans le cas d'EA, les données d'image sont une sorte de bitmap codé UU dont vous ne pourrez extraire aucune information utile.

Les valeurs étiquetées des éléments sont incluses dans une exportation XMI, mais là encore, les extensions EA ne sont pas documentées publiquement. En d'autres termes, vous pouvez importer le format XMI d'EA: s dans un autre programme, mais vous devrez effectuer une rétro-ingénierie du format. Pas impossible, mais il est probablement préférable d'écrire votre propre fonction d'exportation spécialisée, ou export via CSV. Notez cependant que l'export CSV ne peut pas être automatisé - il n'y a pas d'appel dans l'API.