Relationships on attribute level in Enterprise Architect - attributes

I am looking for the best solution to draw mapping diagram in EA. I find that composite structure diagram might suits my needs. I have even found good example of such diagram on the net:
(Original source: http://www.dthomas.co.uk/dtalm/images/eshot/test/data_map.JPG)
This diagram was fully created in EA (as author claims). However I am not able to attach 'represents' relation to the attribute. Does any one know how to do that (I am talking about those little open squares in class representations).
Thank you in advance for your answer.

Good question!
I found your answer in Google Groups:
draw a dependency from one class to the other.
Then Right Click on the left side of the dependency and chose Link to Element Feature, chose Attribut and then select your attribute.
On the right side the same procedure.
On my EA 10 (Corp.Ed.), I was able to reproduce the described steps. See attached image.

I just downloaded EA and created a simple example by creating :
one class with a part
one collaboration with also a part
one 'represents' relation by using the command highlighted
Hoping it helps,
EBR.
PS: it is out of the scope of your question but what is the goal of this mapping diagram? It is just curiosity..

Related

Generating out of a C program: Component diagram, SYSML and SystemC

I have a C project. It has been imported to Rhapsody 8.2.
Now I want to generate:
Component diagram.
Structural diagram.
Dataflow.
UML
SystemC
How to do that?
Thanks in advance
Amnon
You can add a self-populating Object Model Diagram by ticking the 'Populate Diagram' tick box when you create it, then selecting the packages/classes to include.
I think the others will have to be created and populated manually.
You have imported a 'C' program. I think you have used "Reverse Engineering" to do that.
As already mentioned in one of the answers: C is not OO so you have little chance to derive the information that you want to generate simply because that information is not in your your source code.
You have probably already noticed that there will be no Classes with attributes and operations in your model, just files with variables and functions.
I'm always surprised to see people's expectations to reverse engineering... RE is a so-called GIGO process: Garbage in- Garbage out. Don't listen to sales people that tell you that there are tools that can automatically document your code afterwards: There is no such thing possible.
Component diagram. - Have to made by Hand
Structural diagram. - you can right click on a function and choose "populate flowchart"
Dataflow. - There is no Dataflow diagram in UML
UML. - As already said, there is not enough information in your source code to convert your C to a readable UML diagram
SystemC - You have to add a lot of information to create System-C, as already stated above, please contact Sodius in France or the US, they can provide you with more information.
W.

How to show name of choice elements in StarUML?

I'am creating an statechart diagram in StarUML and I want to show the name of choice elements in the diagram, but I don't know how to do it without adding a text annotation.
Do you know if it is possible?
Thanks!
(...)
Showing names of control nodes (including decision, merge, ...) diagram is not supported. It was never supported in previous versions, even in V1. Typically just show the guards of the control flows connected to the decision node, instead of showing the name of decision node. At this time, we recommend to use "Text" or "Note" annotation.
(...)
Thanks,
StarUML Team
This was the answer about the same question in this forum. Take a look.
Agree with #Victor, I just add Text Element inside the Choice Element.

Mapping UI elements in a Logical Data Model

I'm currently in a project where I have been asked to create a logical data model in UML. Now i've defined all my logical data entities and know all my attributes i'm just a little lost on how I can map these attributes to the UI.
The point of the exercise is to prove all the attributes in the requirements have been met in the system we have chosen to deploy. Happy to supply more information.
The application I am using is Enterprise Architect.
This question was solved the Enterprise Architect Support Forums.
Connect both classes with an association
Right click the assoc. near the class with attributes
Context menu/Link to Element Feature
Attributes
-> select the one and the assoc. is attached to it
There is an elegant approach which is to use Database stereotypes in your class diagram on attributes and then map it to java ORM annotation in the code.
I don't think EA can do this ORM mapping but other tools can.
Do you have artifacts in your model for the UI, too? That is, as a screen mock up or as a class model of the underlying UI classes? If yes, then you may find it very helpful to establish a traceability for your artifacts using a realization or dependency relationship.
You can further support that by creating requirement entities (in a SysML requirements diagram) and drag'n'drop the respective requirement onto the entity which provides a solution to it. This is described on page 31 in the following EA whitepaper: http://community.sparxsystems.com/whitepapers/Requirements%20Management%20with%20Enterprise%20Architect/Requirements_Management_in_Enterprise_Architect.pdf
I made a screenshot for you of how this looks, but unfortunately I am not yet allowed to post it here since I am a new member. Maybe you can get a rough idea from this screenshot I found on the web: http://www.sparxsystems.com.au/enterprise-architect/images/traceability_lg.png
That mechanism works on class level. On the attribute level you may want to add a link to specific related (requirements) elements in the notes field, if necessary.

How to mark classes as Obsolete on UML

I have a few classes on my UML diagram which should not be used, but still available.
Is there any way to mark these classes as obsolete?
I've seen <> notation somewhere, but can not find how to use it in MS Visio 2003.
And another question. Should these classes be on UML diagram at all? I can imagine answer on this question would be on "per case" basis, but I'm interested in hearing general opinions. And if you put obsolete classes on your UML diagrams, why you did it? or why not?
Thanks!
It's not clear to me what you mean by " should not be used, but still available.". If they need to stay in the diagram but you want to visualize that they are now obsolete you can create a new stereotype <> and use it to annotate the obsolete classes.
If you don't really need them in the diagram then use a version control system for models as duffymo suggested. A list of version control tools for modeling elements can be founde here
I think if you're going to take the time to update the UML, the best idea is to remove it from the model. Leaving a bunch of "obsolete" diagram elements hanging around makes as much sense as keeping commented code in a version control system. Let the version control system manage the history.
I think that your model should include all your project and then you extract views from your model. If a class is not having any value in a specific view then this class should be removed from your class diagram view diagram but not from your model.
If you want to keep this class in your diagram then you can add a small comment (usually yellow square) or change the color of the class. I usually use green for class and then change the color to grey/green almost invisible but still visible color for non strategic classes.
Hope this help.

"Narrowed" structural diagram

I'm a total rookie in UML and modelling. I'm learning some framework, and I'm trying to grasp and outline its key aspects. I've decided to do it with UML. But the problem is, the whole structural diagram of the framework is of no use to me, because classes have a lot of properties and methods, and there's a lot of classes.
What I need is a series of structural diagrams, each of which shows some specific aspect of the framework. And the classes involved should display only those attributes/operations that are of certain value to this specific aspect.
Does UML (as a standard) supports this on some level, and is there some tool that allows to do just that? I've tried Visio 2007 and Enterprise Architect, but I didn't found out the way to do what I need.
Thanks in advance.
What your are looking for seems to be able to customize views of your model and not to visualize the full class diagram. This concept is developed by Omondo which provides customizable views of your model by drag and drop. You can create as many views as needed, each could be different from the others while just using the same model element. This also the metamodeling approach for me where the model is not the diagram but the metamodel on which your build your graphical model.
If you don't need attributes/methods then you can try to click directly on attributes and methods keeping the ctrl button pressed, then you should be able to find a menu in the class diagram to hide them. The traditional menu is Hide from diagram.
This is what I do and it works really well.
You can also just click directly on attributes and methods but I don't see any documentation on this subject. It seems that nobody knows except the developer and myself about this option but this is my favorite one :-)

Resources