Sparx Systems Forum

Enterprise Architect => General Board => Topic started by: gsparks on May 22, 2002, 06:04:29 am

Title: New UML Profile support in EA  
Post by: gsparks on May 22, 2002, 06:04:29 am
Hello all,
 
As you may be aware if you read the latest news on this forum, we have just posted build 490 of Enteprise Architect.

Among other things, this new release includes the first support in EA for customisable UML Profiles.

For those of you not familiar with UML Profiles, these specify a set of stereotypes, tagged values, constraints and other values that together help solve a particular modeling problem in UML. For example, there are profiles for modeling web sites, XML Schemas, business process and more.

A new tab has been added to the Project Workspace named "Resources". In the Resources tree there is a section to hold imported UML Profiles. Profiles are defined  in XML format and can be imported by right clicking on the UML Profile node and selecting to import a profile XML file.

To help get you started we have posted a few common profiles. These can be found at:

http://www.sparxsystems.com.au/uml_profiles.htm

along with some explanation and instructions.

As always, we would appreciate any suggestions/feedback about this new feature - and hope it provides a worthwhile addition to EA's current functionality.

Geoff Sparks
Title: Re: New UML Profile support in EA  
Post by: cloudsoup on May 22, 2002, 06:28:49 am
Looks interesting - but whereabouts is the download? I can only find build 489.

Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 22, 2002, 08:10:18 am
Geoff,

Looks good, and I think it will meet the requirements I've been talking to you about.

A couple of questions/issues:

1) EA doesn't seem to import constraints properly (can't get them to show up in the dialogs).

2) Is there an XML schema describing the format of a profile XML document?

Cheers,

Stephen
Title: Re: New UML Profile support in EA  
Post by: cloudsoup on May 22, 2002, 08:21:33 am
Yes, in particular, can you assign attributes to profile stereotypes?
Title: Re: New UML Profile support in EA  
Post by: gsparks on May 22, 2002, 04:49:29 pm
Hi guys,

I will put together a schema over the next couple of weeks. I think there will be a few refinements in the XML format in that time - and I will wait for the dust to settle a bit :-)

We also intend to add a 'Profile Editor' within EA to help build and modify profiles - this is a few weeks of too.

I checked out the Constraint problem - and it appears a late change does appear to have caused a problem - I will get that fixed straight away and post a new build when its ready.

With regard to attributes - Im not quite sure of the question. You can stereotype Attributes, then drag them onto classes in a diagram.

Geoff Sparks



Title: Re: New UML Profile support in EA  
Post by: cloudsoup on May 23, 2002, 12:11:01 am
I'll wait for the schema but what I was asking about attributes was whether a sterotype can have attributes with default calues so that it's dragged onto a diagram it appears complete with those attributes already entered and assigned.

Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 23, 2002, 01:52:59 am
Is it possible to apply stereotypes to aggregations and compositions? I'm trying to write an XML file for the UML Profile for Database Design, and it requires that an "Identifying relationship" is created with a stereotype of <<Identifying>> on a composite aggregation.
Title: Re: New UML Profile support in EA  
Post by: gsparks on May 23, 2002, 02:09:42 am
Hi ,

I will try and get 'aggregation' and 'composition' added during the next day or so - if there is anything else that you think would help, let me know ASAP.


Cheers,

Geoff Sparks
Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 23, 2002, 02:45:00 am
Geoff,

The composition thing should be all I need to complete the Database Profile. I may find other things when I come to look at the EJB profile in detail, but from a first glance through it I'm not expecting anything.

Thanks,

Stephen
Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 23, 2002, 03:07:22 am
Having said that, I've thought of a "nice-to-have". How about being able to associate an icon with a stereotype, ie with a view to displaying it in the top right corner of a class?

Stephen
Title: Re: New UML Profile support in EA  
Post by: gsparks on May 23, 2002, 03:22:59 am
Stephen,

This isnt too far around the corner I hope. You can already associate a metafile with a stereotype - there just needs to be a setting to draw the metafile as an icon in the corner - rather than taking over the whole appearance. I hope something will be available in the next couple of weeks - it will still need to be a metafile at this stage, but there are a few graphics programs around that will do the conversion.

Geoff
Title: Re: New UML Profile support in EA  
Post by: Tjerk on May 23, 2002, 04:37:48 am
Hi,

Nice work on the profiles! Two remarks for the moment:

BUG: Right-click Stylesheets->import stylesheet, selecting filetype gives XSL stylesheet AND some lines of random garbage.

FEAT.Req.: I would like to be able to create document groups under RTF documents and have the possibility to generate all documentation in such a group (or when no group, generate all RTF documentation).

Keep on going :). It keeps getting better and better.

Tjerk
Title: Re: New UML Profile support in EA  
Post by: Tjerk on May 23, 2002, 04:42:01 am
Sorry, found another thing:

right-click on resources element in resource tab gives context menu of an RTF document -> disable context menu for this item?

Tjerk
Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 23, 2002, 05:12:22 am
Geoff,

Some more comments/queries:

1) How does EA handle the stereotypes with similar names being defined in more than one profile? For example, the database profile has stereotypes called Server, and Table. EA already has stereotypes called server and table built in. When I use my Table stereotype, the properties dialog shows table (lower case t) rather than Table, and the stereotype does not show on the diagram.

2) My initial assumption with the metafiles was that is was for icons rather than to display the object graphically, so I added some to my profile. I have now removed them from the profile XML document and re-imported it, but EA still places the metafiles on the diagram.

Cheers,

Stephen
Title: Re: New UML Profile support in EA  
Post by: gsparks on May 23, 2002, 05:15:30 am
Hi Tjerk,

Thanks for the report. I have fixed the Stylesheet file dialog problem and context menu on root element - these both will be available in the next build - which will probably be in the next day or so.

Sorting RTF documents into packages is something I had in mind and I think it is a good idea. Web reports will also be included under the Documentation node as well - and the same will apply to them.

Regards,
Geoff Sparks
Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 23, 2002, 06:32:08 am
On a similar note to the constraints problem, tagged values don't seem to be imported for associations.
Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 23, 2002, 06:57:51 am
Continuing from the above, even if you add tagged values manually they do not appear on the diagram. The only thing I can get to appear on an association is the first constraint. This could be a problem since some profiles require the application of tagged values to associations, but currently these are not visible in the diagrams (and hence the exported documentation).

Also, I've noticed that tagged values on nodes appear in the format
{
Tagged value
}

rather than in a compartment, and they appear whether they have a value or not. Is this intentional, and if so could it be changed to a compartment or suppressed in some way? I thin it would be worth doing so there is a consistent approach across classes, components and nodes.

Thanks again,

Stephen
Title: Re: New UML Profile support in EA  
Post by: gsparks on May 23, 2002, 07:02:37 am
Stephen,

EA keeps a list of stereotypes that you can edit in Reference/Stereotypes. This list should be unique on 'Applies To' and 'Stereotype'.  

When profiles are imported -EA checks if the stereotype already exists - if it doesnt it is added. Note that this check is not case sensitive ... so if you try to add <<table>> when <<Table>> already exists, it will not be imported.

When you delete a Profile, EA will delete the imported stereotypes - unless they are in use within the model. SO in your case I would suspect the images are still showing because the Stereotype was in use - and so not deleted.

You could track this down in the Reference/Stereotype dialog. Remove the profile, then make sure all stereotypes are deleted in the Reference/Stereotypes dialog, then import the profile again.

All the stereotype information - such as tagged values, constraints etc. is stored in XML with the original stereotype name - so the name collision does not impact this.

So the major issue is mainly case sensitivity. I had a quick look thru the code and I believe you could change the <<table>> stereotype in EA to <<Table>> OK. I think <<server>> will be a problem if you want the web modeling icon to still work.

I will think a bit more on how this might be handled.

Geoff Sparks





Title: Re: New UML Profile support in EA  
Post by: sbaishya on May 23, 2002, 07:33:38 am
Ok...

Tried the stereotypes which used the metafiles in a new clean model, and the metafiles were still displayed. Seems like they are being persisted somewhere.

I'm not sure I like the idea of removing built in stereotypes, but I had a go anyway:

Removed my profile, and the <<table>> stereotype.

Imported my profile  - References/Stereotypes shows 'Table'

Dragged a table onto the diagram. The class was still displayed with no stereotype and the icon, rather than with the stereotype <<Table>> and no icon.

On looking at the properties, the stereotype was 'table', not 'Table'.

Works fine for server...

I'm not sure I like the idea of having to delete a load of built in stereotypes before importing a profile. Could EA highlight clashes via a dialog on import and give the option to overwrite individual or all clashes?

As ever, many thanks for your time.

Stephen