Sparx Systems Forum

Enterprise Architect => General Board => Topic started by: dhsieh on January 28, 2008, 01:01:56 pm

Title: reverse engineer class/sequence/package diagrams
Post by: dhsieh on January 28, 2008, 01:01:56 pm
I am using EA 7.0 and have a major complaint about its reverse engineer cababilities:

(1) First, using the "import source directory" menu only generates individual class diagram per directory/folder. How does it generate an entire class diagram for all directories/folders?

(2) Second, it does not generate a single package diagram for all packages from the directories/folders

(3) Third, it does not reverse engineer sequence diagram like MagicDraw (aother UML tool)

I submited requests/compalints to Sparx and never receive an answer.
Title: Re: reverse engineer class/sequence/package diagra
Post by: Martin Terreni on January 28, 2008, 10:00:59 pm
1) just drop all classes in one diagram and you'll get it like magic :)
2) right you are!, though I'm not sure it is realy straight foward in all cases. Not always the folders represent the actual packages.
3) It has a free plug in for this. It reveres engineer SD while runnning the application and will have even further capabilities with the next versions.
Title: Re: reverse engineer class/sequence/package diagra
Post by: dhsieh on January 28, 2008, 10:10:01 pm
1) just drop all classes in one diagram and you'll get it like magic

>> Not sure what you mean by dropping all classes. Are they done manually? What if I have a few hundreds of them scattered in dozens of folder/subfolder?
Title: Re: reverse engineer class/sequence/package diagra
Post by: Mr. Sanders on January 29, 2008, 03:55:33 am
Hi,

creating sequence diagram from code is not very usefull in general. Maybe you have a different scenatio.

Like every diagram, each diagram has some context.
you will have a lot of class diagrams showing different aspects, sometimes with the same classes as in other diagrams.

The same is with sequence diagram.

Sequence diagrams show some special sequences in a certain context. The context is given by the designer at design time or by the reverse engineer person at runtime by setting certain break points at which creating the sequence diagram starts and at which creating the sequence diagram stops.

So one SD with all possible runtime paths is normaly bogus, esecially when having hundreds of classes splattered across the file system (or maybe even over assemblies splattered over a network).

So you can create sequence diagrams from running code.

But normally one wants to see a special scenario/context like in all other diagrams too.

Regards

Title: Re: reverse engineer class/sequence/package diagra
Post by: Mr. Sanders on January 29, 2008, 04:02:52 am
Hi,

i have forgotton something.

1. See at UML what a package is.

It is a namespace, so being UML compliant the classes shouldn't be generated into one package if they do not share the same namespace.
Ok. I understand that you probably don't care about UML in your case.

so
2. In one of the next EA releases there will be some sort of favorite folders in EA. There you can place all your elements into it. As far as I understood, they will provide sort of logical views the user can define, where you are more flexible by clustering your EA elements.

This is what they said to me after I wrote a feature request. So trust in sparxians and hope it will fix your problem.

Michael

Title: Re: reverse engineer class/sequence/package diagra
Post by: Mr. Sanders on January 29, 2008, 04:07:08 am
I am getting old.

There is a possibility for getting one diagram.

You can iterate through your model packages with a script and add all your classes found in it into a diagram via an ea autmation script.

This shouldn't be that difficult, because the algortihm seems to be straight forward.

I don't know how long it last running such a script.
We heve 15.000+ classes and about 3.000+ interfaces.

This could last a while, but I don't want do see them in one diagram. It doesn't makes sense, but for imrpessing the management, when the printout of it clusters all walls of the development halls.

regards