Is there a modified UML version for Android Applications? - java

I'm rather new to android development but have a decent knowledge of C++/UML diagrams. Is there any way sort of UML that incorporates both layouts as well as Java classes in a diagram to structure your program? I'm not sure if I'm crazy for asking this or if I should just stick to using UML to model my classes but I thought this would be very helpful to have a sort of system to 'quickly' be able to visualize an android application including layouts and java classes. Any feedback is appreciated!

You can visualize any type of application on any type of environment using standard UML withou modifications.
But, UML allows to create profiles, to build user's specific set of element to simplify of specific domain model. (it is extension mechanism of UML) For example html, SOAP, GUI etc.
For more details read UML Superstructure document, section profiles.

Related

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).

AgroUML how to generate UML diagram from java code

I have a java project.How can i generate UML diagrams of that ptoject using AgroUML.
I downloaded agroUML but the UI is very confusing. I thought might be it will be something like import package and than generate UML diagram for that package.
Anybody has any idea about how to use AgroUML UI to generate UML diagrams if you already have source code.?
Maybe this would help, gives details of the ui and navigation.
Generating UML diagrams out of existing java projects is mostly a very frustrating experience. The amount of complexity that is still easy to handle in a text-based project creates an enormous mess when displayed in the form of UML diagrams. If you want to improve your understanding of a java project, using MOOSE provides a better way.

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.

Drawing a simple library dependency scheme

I am looking for a tool and a guide/example to show how you can write a simple picture that explains the relationship between the following components:
A java applet
A c++ library
A java wrapper for the C++ library (using JNI)
A c library
The applet is using the java wrapper methods.
The java wrapper is a wrapper for the c++ library. It is possible to invoke methods both ways (C++ --> java, java --> c++)
The c++ library is basically an interface for the c library.
I got argoUML and Microsoft Visio; anything works, just some simple picture displaying this, it dosn't have to be too specific or pretty (just not paint-level).
Can someone point me to resources explaining how to picture program relationships like this?
I think you can use a UML Component Diagram
The UML tutorial of Enterprise Architect here may give you some idea about the several UML diagrams that are of use to your needs.
In general dependencies are shown in class diagrams (between several classes), package diagrams (between namespaces/libraries) and component diagrams.
If you ask more specifically about UML representation of something in your mind I will be of help.
Maybe jGraph will be helpful for you?
Cheers

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.

Categories