+  Flower Platform
|-+  Development
| |-+  Bug Reports
| | |-+  Reverse engineering - class related elements and relations not working properly
Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

« previous next »
Pages: [1] Print
Author Topic: Reverse engineering - class related elements and relations not working properly  (Read 1389 times)
wildgeeza
Newbie
*
Posts: 3


« on: November 12, 2010, 03:04:52 PM »

Firstly - loving this application... thanks for all the efforts!  It's a novel idea, and has better integration than the AS3 StarUML plugin.


However, one fundamental bug I've found is issues with processing existing packages and classes, for reverse engineering existing projects.

I've found that Unidirectional associations and Generalizations don't work when I first drag the existing classes to a new diagram.  

I have to physically delete my existing corresponding attributes, imports and class extensions in my .as files, then recreate them using the diagram drawing tools.  

- What's most frustrating about this, is that the subsequent code that's reproduced is EXACTLY as I originally had it !!

"Add Related Elements and Display Relations" doesn't always work, even though my classes are organised and publish correctly.

Any ideas why this happens?
Logged
Cristian
UML4AS Architect
Administrator
*****
Posts: 283



« Reply #1 on: November 12, 2010, 08:39:53 PM »

Hi!

Thanks a lot for your appreciations.

Quote
I have to physically delete my existing corresponding attributes, imports and class extensions in my .as files, then recreate them using the diagram drawing tools. 

You don't have to do this. I'll explain: when classes are reverse engineered, unidirectional associations are not automatically created (e.g. the var contact:Contact, doesn't create an unidirectional association automatically). BUT, you can do this manually, if you wish, using the "Create Association for Attribute" command. Please have a look here:
http://www.uml4as.com/flower-platform/documentation/21--diagram-features-documentation.html#4-1-creating-associations-from-attributes

I agree that unidirectional association can be detected automatically as well. We'll add this feature. However, this is not true for bi-directional associations. Btw, bi-directional associations can already be handled manually (cf. the doc from the link).

As for generalizations and interface realizations: it should work out of the box (e.g. A extends B => the synchronization detects A, B and the generalization between them). If it doesn't, could you please post a scenario?

Best wishes,
Cristian.
Logged
wildgeeza
Newbie
*
Posts: 3


« Reply #2 on: November 24, 2010, 11:54:34 AM »

Hi, many thanks for the reply..

Again, I truly appreciate all your efforts on this as I can see it being a really helpful and fundamental tool.. I'm not trying to be over gushing.. I'm just stating that there's few people and tools out there that help as much as this with the bi-directional update of UML and AS code, and I hope you continue your future releases.

Coming from a part FDD (feature driven development) background, starting with a visualised project helps a great deal... not to mention the ability to reverse engineer, as needed in my current job, in order to see "what the hell" a previous developer did before me...

Having played with this more over the last couple of days (other work took hold the previous weeks) - I've noticed the linkages and flow reacts a lot better than I expected.

The Unidirectional 'issue' still causes a few problems on reverse engineering, but it's fine when you're creating classes from scratch.


One other 'nice' thing to have would be the ability to ignore certain errors without it falling over...

An example here is I use TweenMax and TweenLite alot and even though the code runs, extends and compiles properly, UML4AS gets a tad upset trying to sync with it, saying it has code errors and issues.  The result is, I have had to split out all my com.grreensock.Tween classes from the UML4AS - Root.src capturing model.
Logged
wildgeeza
Newbie
*
Posts: 3


« Reply #3 on: November 24, 2010, 12:20:43 PM »

Ahhh... ignore me....

It was my own folder structure setups....  sorry!
Logged
Cristian
UML4AS Architect
Administrator
*****
Posts: 283



« Reply #4 on: November 24, 2010, 01:12:06 PM »

Hello,

If a source file cannot be parsed, warning icon is displayed next to the element. The user is not blocked, but the "errors" popup is displayed at the end of the synchronization (unless disabled).

There is a "Lock Sync" feature, and this kind of element should be "locked". The current version (M1) has an issue regarding this, and even if the element is locked, the parse error message still appears. The new version (M2) will correct this (i.e. if an element is locked, it isn't opened during synchronization.

Thanks a lot for your kind words. The M2 version (out in December) will have a lot of improvements and I hope you'll like it even more. Smiley

Best regards,
Cristian.
Logged
Pages: [1] Print 
« previous next »
Jump to: