UML Class Diagram Generator for PHP and/or Java - java

With reference to this question here - there is a Class Diagram generator for Visual Studio. I've used it and its very useful indeed!
But what I wannna ask - Is there anything like this for PHP and/or Java?

GenMyModel matches, it's an UML online tool that generates Java from class diagrams. HTH

This one knows Java and also PHP: http://www.visual-paradigm.com/ And I have got quite good experience with that one. :)
VisualParadigm can help you to generate class diagrams and if you wish, generate also ORM diagrams and make mapping (e.g. in hibernate) between domain classes and database. But you should rather see the official tutorials here: http://www.visual-paradigm.com/product/vpuml/tutorials/

ArgoUML is nice. You should also check out UMLet. UMLet is a a stand-alone UML tool, good for quick class/sequence diagrams.

Visual Paradigm is quite nice, but a bit expensive I think.
A free alternative is ArgoUml. It can generate class diagrams from Java source code (I do not think for php, but I am not sure). It is not quite as good as vp, but it does work and is easy to use.
Netbeans had UML generation integrated up to version 5 or 6, but it was discontinued, so using an older version might work as well.
Eclipse has a plugin called papyrus which also does code to uml.
For the same functionality for PHP, see this question and see here for a general overview over UML diagrams.

Enterprise Architect and JetBrains phpStorm seem to support UML and PHP.

Related

Java API to create UML diagrams

Is there any Java API (Opensource) that can be used in drawing/creating UML diagrams.
JFreeChart is a Java API to draw charts/bars/graphs, similarly is there any tool to draw UML diagrams using Java ?
Perhaps not specifically for UML diagrams but I have been using JUNG to create hierarchical graphs and am very happy with it. Take a look at the examples they have and see if it's useful for you.
If you want to create class diagrams, this tutorial shows how to do it with eclipse draw2d.
You could check the EMF-based implementation of the UMLTM 2.4.1 metamodel for the Eclipse platform.
This will allow you to create the UML diagrams. Then you could use any EMF-UML compatible tool to visualize them
I was looking for a similar thing and then I found about this open source project called PlantUML. They have some good example and pretty much cover everything that you may have wanted.

UML Plugin for Eclipse - Class Diagrams & Java Code Generation - Indigo/Juno

I am looking for a UML plugin for Eclipse. I know this questions has been asked several times, but most of them are a few years old. From what I read I would say that most people prefer eUML2, but this officially supports only Helios.
So far I am using argoUML, but the absence of an undo-button is really an usability nightmare, to say the least. Additionally I would prefer integration into Eclipse.
What I want is:
Free/Open-source
Actively developed tool (support for Indigo, planned support for Juno)
Hassle-free installation in Eclipse
Class diagrams
Generate Java code from diagrams
Update the class diagrams after implementation is done (round-trip)
What would be nice:
Other diagrams, where for me the most important are sequence and use case diagrams
If there are in fact no suitable Eclipse plugins, than I would be happy if you could point out other tools that are free/open source and linux-based and which workflow you are using to accomplish the aforementioned requirements.
I'll definitely go with ObjectAid.
It supports drag and drop of classes and packages directly from your code in eclipse.
No need to open another application for your modeling.
Model files (*.ucls) can be kept in a separate project in eclipse while you code/develop your Java codes in another project. All these can be done on a single eclipse session.
Just want to emphasize on the drag-n-drop. I simply love it!
I'm using Eclipse Juno.
I tried other modeling tools but didn't get what I wanted.
P.S.
Creation of class diagrams is free, but needs an evaluation license for creating Sequence diagrams.
For now I will go with either Green UML or UML Lab. Green UML fulfills all the points I asked for, except that I'm not a hundred percent sure it is very actively developed. But the last update is from November 2011. It only supports class diagrams, but that is ok for me. It can be found here.
Other than that I will try the academic version of UML Lab as it looks a bit more promising, though not being free is a draw back.
Papyrus is probably the best choice. It is actively developed and is an industry backed project. It does not have code-generation capabilities by since the uml model is stored as an emf model you can use acceleo for code generation.
Round trip (update of diagram after code update) is also not supported.
But it does support many other UML diagrams.
I tried a number of open source tools, and actually found none that are good to use inside eclipse, so I am using Visual Paradigm for UML, community edition. Not free, does not do what you want, but for modeling purposes it is way above any eclipse plug-in.
The best is Omondo EclipseUML for Java code generation because I can model but also hand code. I never loose my model because multiple iterations are possible opposite to other tools just working from model to code.
Accelero code generation is too complex and the code is not really good. It requires to fix it manually once generated. If more than one package then relations between packages are not generated. I would say that accelero is good for a single class diagram code generation but as soon as you have more than one diagram in a package or multiple package then it is better not to use this plugin.
I was looking for UML Round Trip Engineering tool that supports reversing and drawing sequence Diagrams. Focus is on sequence diagrams as majority of tools can help with class diagrams, but not sequence diags.
Among the Free or cheap tools: I tried Papyrus, Modisco, Modelio, ObjectAid - first 3 are bit over complicated for some basic reversing, tend to ask too many question to locate source and libraries and all is bit clumsy, and they don't help much with sequence diagrams. ObjectAid works well even with the most recent eclipse (Luna). Sequence diagrams have cheap license. Sadly - none of them understands Spring annotations (e.g. #autowire).
Among big and expensive tools like EA, Sparx, Magic Draw, UML Lab (Yatta) - I like none, I find them too expensive for what they offer. Also, Complicated to reverse code (endless search source path problems). Magic and Modelio can't reverse and auto-generate sequence diagrams.
Alternative to these expensive tools is Altova UModel, it works as independent tool or eclipse plugin (I used it independently of eclipse, faster install, offers sync diagram with code function). It's the only tool that can open eclipse project extensions (doesn't ask about classpaths, however can't find maven libraries) and no support for Spring annotations. Java 7 is not officially supported but it works (minor exceptions with some rare generics). If they add: full java 7 support, spring support, open whole eclipse workspace and support pom/maven libraries, that would be the best round trip engineering tool around.
I ended up using ObjectAid, which is free/cheap and does things well (except spring autowire), lacks communication diagram which was great thing in Altova.
HTH someone...
PS: I use MyEclipse Pro sometimes, decent yearly price, it can do some things from above, you need to see trial version and if UML are suitable for business documentation (too many boxes/packages make diagrams confusing).

Free UML tool/plugin for Eclipse can generate Java code?

I'm newbie for Eclipse. I don't know what plugin can create class diagram, sequence diagram... and generate java code and of coursce, it's free. Anyone know some tools like this ?
eUML2 Free Edition gathers all basic features needed by java developpers and is free of use (even for commercial purposes)
I would recommend to use Togethersoft or Omondo for java but these tools are not free.
The only java free UML tool is eUML but it adds plenty of tags in my code. The generated code is a mess because the UML model is using # UML directly in my java code. Both UML model and java code are therefore mixed mixed.
If I refactor my code then all my model is lost. I only change one of my attribute and all my model was immediately lost. What was the worst is that I also lost my code which was changed. I needed to paste a copy manually all my classes and create a new project. I lost many hours of work just because I did create 2 small class diagrams !!
My code format has been changed without my permission. This is an unacceptable behavior. I like the tool but don't want that UML code generation be so intrusive in my java code. The graphical design is pretty nice but because this is live code and model syncrhonization and that the code is dirty this is a no go for me. It would have been good to separate live code generation from model and UML design like the other tools.
For Eclipse, I suggest using eUML2 (http://www.soyatec.com/euml2/installation/).
If using Eclipse is not a must, I think the better choice would be https://www.magicdraw.com/ - they have a free version for students.
Topcased contains a UML editor together with a Java generator (and reverse).
The Papyrus Editor is included in Topcased.
They are both based on Eclipse Modeling Project.
Have a look on tutorials.

tools for reverse engineering for java

Is there any tool that can be used to generate the UML diagram from Java code. I am currently using STAR UML for the same. But the tool is unable to design the dependency like if one class calls another class, rest the class diagram is generated stating interfaces, classes, extended classes and all..
can anyone please help me for the same.
You can try Sparx Enterprise Architect. It can import Java or C# nicely. It also has a runtime feature that allows you to step through code and generate sequence diagrams.
Take a look at nWire for Java. It is not a UML tool. However, it will quickly draw a diagram of your code artifacts with all possible dependencies. Many people use it for reverse engineering and for digging into legacy code.
You could use MagicDraw UML to achieve this. It's not free, but it's definitly worth the money.
Check out the trial version before buying.

Is there any smart enough tool to build UML class-diagram based on not very complicated Java sources?

I'm using IntelliJ IDEA and I tried its tool for building class diagram. Unfortunatelly, it draws classes from java package as well as necessary classes. That's why built diagram is very messed.
Are there any more smart tool? Or, is there any way to 'turn off' drawing java classes in IDEA?
Almost any reasonable UML tool provides this service. Sometimes you need to have a licensed version for this feature to be enabled.
I suggest that you simply check out the different tools.
Apparently ArgoUML (open source) does reverse engineering but sadly, I've not had incredible success using that tool.
There's a very good plugin for Eclipse that I use. It's called ObjectAid.
Just add this URL: http://www.objectaid.com to your Available Software page in Help -> Software updates and install the plugin.
It's a very simple drag and drop utility, that enables you the automatically add childern/parents to your class diagram.
Hope this helps!
You can try Gentleware's Poseidon.
There is a free Community Edition.
I'd recommend JUDE community edition. It's an excellent UML tool that supports Java reverse engineering nicely.

Categories