Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Topics - ngong

Pages: [1] 2 3
General Board / Plugin of Script?
« on: October 18, 2017, 05:12:21 am »
In order to speed up my everyday work I need to automate (put on a shortcut key)
- right-click on an element / Advanced /  Use Circle Notation (preferably for the set of selected elements)

As I do not have any experience in writing a plugin or a script I tried to find out, what would be the best.
However, I found several tutorials that would bind me a day or so, but I could not find out whether it is possible what I am trying to achieve.
Is it possible?
If so what the closest example to choose?


General Board / too many stereotypes
« on: October 01, 2017, 03:44:03 am »
Is there a way to identify and delete all stereotypes from a model which are not backed-up by an imported profile?

General Board / cannot find my classifier profile tag at an interface
« on: September 27, 2017, 05:35:30 am »
Tags of a stereotype extending Classifier meta class do not appear at Interfaces.

EA seems to identify only the Component and Class meta classes as inherited from Classifier. According to UML 2.5 DataType and Interface meta classes - at least - should be Classifiers as well.

In order to cope with variants I introduced a stereotype named variant-specific with two tags: variant and replaces. The idea is to have all elements as part of the reference model that do not use the variant-specific stereotype. If a list of variants is entered in the regarding tag, that element contributes to those variants, optionally replacing elements of the same type as found in the reference model. (If you want to exclude an element from a variant, introduce an empty one that overloades it. This could be a whole package.)

As all my variing elements are Components, Classes, DataTypes, and Interfaces I thought it would be a good idea to use Classifier as a meta class for "variant-specific".

My workaround so far:
Define the one stereotype variant-specific as an extension to all meta classes where one likes to see those tags. (This results in the wanted behavior of EA, but what about the UML 2.5 compliance, regarding the set and interrelationsships of meta classes?)

General Board / Primitive Types in Tags
« on: September 18, 2017, 06:05:09 pm »
Sometimes I cannot add any value to a tag of an element of a certain stereotype. I got no clue, why.

The chosen primitive type for the regarding attribute in the profile that defines that stereotype may be the cause for my problem.

How do I define the set of primitive types to choose from in creating the profile? Selecting a certain Product Name in the Code Engineering Datatypes? If so is that binding for the whole model or just one element? What would be the best to choose for creating attributes for stereotypes that should become a string value?

Any advice or link to read would be welcome.

Kind Regards


p.s. even if I change the datatype back to int, I am not able to enter any value. Maybe there is different reason why I cannot enter a tag-value than the profile datatype.

General Board / Best way to share a package
« on: September 10, 2017, 11:17:29 pm »
Assume 2 or more models sharing a set of basic data types in a certain package.
It has been xmi exported by the front-most project and imported by others at starttime.
All projects refer to the same GUID when they refer to a certain datatype.

Now assume the front-most model extends that basic types package, corrects some flaws and improves some of the types.
What would be the best strategy to get those changes to the other model as well?

Bugs and Issues / Alias does not show
« on: May 19, 2017, 03:03:01 am »
What I did:
Placing several InteractionOccurence elements on an InteractionOverview diagram and give some InteractionOccurence an Alias text. Now switch on in the diagrams properties "Use Alias if Available".

What I expected:
to see the Alias text on the diagram instead of the names of InteractionOccurence elements.

What I got:
I still see the names of InteractionOccurence elements.

Doing the same on the same diagram e.g. with Requirement elements works as expected.

Bugs and Issues / Problem to check-in to PTC
« on: May 10, 2017, 06:37:13 pm »
For some weeks now, I am using "Package Control" together with PTC, prior to roll it out in the team. Once you get used to it, it seems to be quite productive.
However, today I tried to check-in a package and got the message MKS125628: Could not compute text delta ... (see attached).
I repaired the data base, compacted it. But nothing helped.

Any suggestion?

(how to attach a screenshot?)
The whole failure message from PTC is: MKS125628: Could not compute text delta. Likely cause is that you are attempting to check in binary data into a text archive.
I am using EA13 producing into an .eap file, PTC/Integrity with APIU 4.15.7925.

Automation Interface, Add-Ins and Tools / How to find a role by name?
« on: November 18, 2016, 10:06:26 pm »
Sometimes I remember just a name. Trying to find it with Simple or Extended find does not reveal it. What helps is, looking through all diagrams and eventually I catch it, e.g. a name of a Role of an Aggregation.
Is there an easier way to locate that name?

Automation Interface, Add-Ins and Tools / xmi:id how to?
« on: November 14, 2016, 06:03:45 am »
I have been successful so far in generating xmi files for to import in an eap file. So far it work by keeping xmi:id just unique, no more rules. However, now I started to produce tags against some profile. When I use an arbitrary - but unique - xmi:id for a tag element, it will not be imported.
What I did was manually enter tags in the eap file and then exporting the package, copying the xmi:id's to my file to get imported. That works.
What I found out so far is, that I shall not change the first 24 characters for the tag's xmi:id. For uniqueness I may change the last 17 characters.

Is there anywhere a rule that I can follow, to successfully produce the first 24 characters of an xmi:id?

Here you can see the xmi file that can be imported successfully. E.g. when I change the beginning of the xmi:id EAID_EC46D93B_5E30_7e5e_0000_000000000001 the tag Bit_No will not be imported.

Code: [Select]
<?xml version="1.0" encoding="windows-1252"?>
<xmi:XMI xmlns:uml="" xmlns:xmi="" xmlns:SignalProfile="">
<xmi:Documentation exporter="Enterprise Architect" exporterVersion="6.5"/>
<uml:Model xmi:type="uml:Model" name="EA_Model">
<packagedElement xmi:type="uml:Package" xmi:id="RSCID_Signals" name="Signals">
<packagedElement xmi:type="uml:Interface" xmi:id="RSCID_Signal1" name="Signal1" isAbstract="true"/>
<packagedElement xmi:type="uml:Interface" xmi:id="RSCID_Signal2" name="Signal2" isAbstract="true"/>
<profileApplication xmi:type="uml:ProfileApplication" xmi:id="profileap_13E3FB92-0">
<appliedProfile xmi:type="uml:Profile" href=""/>
<xmi:Extension extender="Enterprise Architect" extenderID="6.5">
<element xmi:idref="RSCID_Signal1" xmi:type="uml:Interface" name="Signal1" scope="public">
                <properties documentation="comment to Signal Function of Signal1" isSpecification="false" sType="Interface" nType="0" scope="public" stereotype="Signal" isRoot="false" isLeaf="false" isAbstract="true"/>
<tag xmi:id="EAID_EC46D93B_5E30_7e5e_0000_000000000001" name="Bit_No" value="3" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_9A779570_3D05_a03d_0000_000000000002" name="Byte_No" value="1" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_640BFE5F_7DD4_4a7d_0000_000000000003" name="Cycle Time" value="CycleTime_100#NOTES#Values: CycleTime_40,CycleTime_100,CycleTime_1000,CycleTime_10000,NoCycleTime&#xA;" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_04C5B725_62DA_ee62_0000_000000000004" name="Default" value="6" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_A1E56D61_FA76_75fa_0000_000000000005" name="direction" value="s#NOTES#Values: r,s&#xA;" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_7DCA38DC_C011_cdc0_0000_000000000006" name="Launch Parameter" value="LaunchParameter_20#NOTES#Values: LaunchParameter_10,LaunchParameter_20,LaunchParameter_100,LaunchParameter_200,NoLaunchParameter&#xA;" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_462950BD_42D2_6942_0000_000000000007" name="Launch Type" value="CyclicAndChange#NOTES#Values: Cyclic,CyclicAndChange,Spontanious,None&#xA;" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_034EE602_6F17_866f_0000_000000000008" name="Length" value="3" modelElement="RSCID_Signal1"/>
<tag xmi:id="EAID_736065D1_2526_7c25_0000_000000000009" name="Not_Available" modelElement="RSCID_Signal1"/>
                <xrefs value="$XREFPROP=$NAM=Stereotypes$NAM;$TYP=element property$TYP;$VIS=Public$VIS;$PAR=0$PAR;$DES=@STEREO;Name=Signal;FQName=SignalProfile::Signal;@ENDSTEREO;$DES;$SUP=&lt;none&gt;$SUP;$ENDXREF;"/>
<element xmi:idref="RSCID_Signal2" xmi:type="uml:Interface" name="Signal2" scope="public">
                <properties documentation="comment to Signal Function of Signal2" isSpecification="false" sType="Interface" nType="0" scope="public" stereotype="Signal" isRoot="false" isLeaf="false" isAbstract="true"/>
<tag xmi:id="EAID_EC46D93B_5E30_7e5e_0000_000000000010" name="Bit_No" value="0" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_9A779570_3D05_a03d_0000_000000000011" name="Byte_No" value="1" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_640BFE5F_7DD4_4a7d_0000_000000000012" name="Cycle Time" value="CycleTime_100#NOTES#Values: CycleTime_40,CycleTime_100,CycleTime_1000,CycleTime_10000,NoCycleTime&#xA;" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_04C5B725_62DA_ee62_0000_000000000013" name="Default" value="27" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_A1E56D61_FA76_75fa_0000_000000000014" name="direction" value="s#NOTES#Values: r,s&#xA;" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_7DCA38DC_C011_cdc0_0000_000000000015" name="Launch Parameter" value="LaunchParameter_100#NOTES#Values: LaunchParameter_10,LaunchParameter_20,LaunchParameter_100,LaunchParameter_200,NoLaunchParameter&#xA;" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_462950BD_42D2_6942_0000_000000000016" name="Launch Type" value="CyclicAndChange#NOTES#Values: Cyclic,CyclicAndChange,Spontanious,None&#xA;" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_034EE602_6F17_866f_0000_000000000017" name="Length" value="5" modelElement="RSCID_Signal2"/>
<tag xmi:id="EAID_736065D1_2526_7c25_0000_000000000018" name="Not_Available" modelElement="RSCID_Signal2"/>
<xrefs value="$XREFPROP=$NAM=Stereotypes$NAM;$TYP=element property$TYP;$VIS=Public$VIS;$PAR=0$PAR;$DES=@STEREO;Name=Signal;FQName=SignalProfile::Signal;@ENDSTEREO;$DES;$SUP=&lt;none&gt;$SUP;$ENDXREF;"/>

General Board / How to make property type visible.
« on: December 08, 2014, 06:20:55 am »
SysML: I placed a property in an internal block diagram by dragging a block in that diagram expecting to see some text like /PropertyType inside that block. But it did not appear.  :-[

Probably I am too blind to find the regarding checkbox. Can someone help me here and point me to a solution? :)

I am using EA11.1112.


p.s. in the Sparx example I found some properties which show their type but cannot tell the difference to properties which hide their type.

General Board / How to delete an Association from the model?
« on: October 11, 2014, 02:16:07 am »
EA 11.1.1112
What I did:
put 2 classes on a class diagram, put an association in between.
deleted the association by right-clicking it and clicking on the red cross next to the word "Delete".
Deleted one class from the diagram by selecting it and using the delete button. (It is still part of the model)
Draw the deleted class from Project Browser back on the class diagram.

What I expected:
Two unrelated classes.

What I got:
The association appeared back, too. It is still part of the model. How can I definitely delete an association from the model?

Work around:
Put a third class on the diagram. Drag the association from one of the two other classes to the new one. Delete the new one by selecting it in Project Browser and using the right-click-Delete.

Any one to know a more straight forward way for deleting an association not only from a class diagram but from the model?

General Board / move a message from one liveline to the other
« on: July 14, 2014, 03:35:21 am »
Dear EA experts,
I am using sequence diagrams to explain use-cases.
I do that in two steps:
1. create a somewhat "generic" sequence, that is: leave types and formal parameters of operations in for message definitions.
2. copy that generic sequence to a number of fully explored examples, changing any variability to fixed valued messages, e.g. "interger" to 5, Color to blue, TimeSpan to 5s.

Now the problem: Sometimes I have to exchange a class by a more specific one and have to move one end of all messages from the old to the new lifeline.
This gives me a hard time: in 4 of 5 cases I cannot select the message end but exidentially select the whole lifeline.
Is there any trick to select the end of the message for sure?

Any help welcome.

General Board / How to connect to an attribute or operation
« on: July 05, 2014, 02:42:25 pm »
In this example I found the neat feature to source a <<represents>> dependency from an operation to something else.
A nice right square bracket is drawn right to the attribute/operation at the source of the arrow.

How can I accomplish this?

If I try myself the dependency link alwas starts from the complete interface instead of a single attribute or operation.

General Board / How to find a string in a Tag name or Tag value?
« on: July 01, 2014, 06:54:58 pm »
What I did:
I related a reference to a sequence diagram to a requirement (trace). I added a condition to that trace that is based on a change request outside EA. I added the change request ID as a tag-value to that trace relation.
I opened a find dialog and searched for that ID.

What I expected:
to get anyhow near to that trace relation.

What I got:
no result

I cannot think of a workaround.
What did I wrong?
Any idea for an alternate solution with the same intention appreciated:
Finding specifically conditioned requirement traces.

General Board / default linestyle
« on: June 26, 2014, 10:46:37 pm »
I really appreciate the improvement of working with the linestyle "orthogonal rounded". I wonder if it would be possible to make it my default linestyle, saving me the time to rightclick every relation.

Where can I change the default settings for linestyle from Direct to Orthogonal-Rounded?

Pages: [1] 2 3