Choudary Kothapalli

Greenhorn
+ Follow
since Mar 20, 2007
Merit badge: grant badges
For More
Cows and Likes
Cows
Total received
0
In last 30 days
0
Total given
0
Likes
Total received
1
Received in last 30 days
0
Total given
0
Given in last 30 days
0
Forums and Threads
Scavenger Hunt
expand Ranch Hand Scavenger Hunt
expand Greenhorn Scavenger Hunt

Recent posts by Choudary Kothapalli

MaintainJ does support JDK 1.4 since its first release in 2007. Any details on what failed?

Choudary Kothapalli
MaintainJ Inc.
This is a very old post, but because it keeps coming up in Google search results, I am replying now so that it can be useful for any future visitors.

MaintainJ is by far the best tool when it comes to generating the sequence diagrams for Java applications. The quickest way understand the tool's capabilities is to view the demo video. The demo is recorded on a large application with 8000+ classes.

Sample screenshots

Here are the main features of the tool:

1. It generates the runtime sequence and class diagrams for a single use case.

2. The sequence diagrams are easy to explore with simple user interface. You would not be looking at a 5000 call sequence diagram. Instead, you will initially be presented with a few calls, which you will expand depending on what interests you.

3. The sequence diagrams show the call context - the values of the arguments, return values and state of the called object

4. The sequence diagrams also show the actual runtime SQL calls made during the use case. This feature works regardless of the database framework used. The SQL statements are populated with the runtime parameters passed.

5. You can generate the end-to-end sequence diagram of a request that flows through multiple JVMs. So, if you have a web application calling a web service on another machine, you can generate an end-to-end sequence diagram.

6. You can export the diagrams into UML2 format and import them into RSA (Rational Software Architect) though you would be losing the above benefits like call context, SQL statements and the dynamic sequence diagram. The main idea is to enhance the model in RSA and probably to generate the source code.

7. MaintainJ provides many ways to filter out unwanted details from the diagrams. You can generate the sequence diagrams to include just your application classes and then apply some predefined filters on the diagrams to view just the business tier classes or just the web tier classes.

8. It also allows searching for a class or method or SQL statement across trace files. What this means is, you can easily find all the use cases that depend on a class or method or a database table or field.

9. It works on all kinds of Java applications. It provides out-of-the-box wizards for the most typical runtime configurations, but with a few changes to the application classpath and JVM arguments, it will work for any Java application.

10. It integrates seamlessly with JUnit. So, you can generate a sequence diagram for every test case and check the sequence diagram for any quick troubleshooting later.

I am the author MaintainJ. So, I could be biased in my statement that it is by far the best tool currently available in the market. I will be very interested to know if any other tool matches these capabilities. It is a commercial tool, but if you like to tool but cannot pay at the moment, write to me at support@maintainj.com and something can be worked out.

Choudary Kothapalli.
MaintainJ Inc.

12 years ago
In response to the above answer:

The MaintainJ generated sequence diagrams are very advanced compared to the other tools. In addition to the dynamic and readable sequence diagrams for a single use case, MaintainJ shows the call context and the runtime SQL statements. It has many other features like tracing a multi-JVM application, facilities to see how multiple threads interact at runtime, perform runtime impact analysis, etc. It's a must have tool when you are changing a complex legacy application.

Check the demo video.

Note: I'm the author of MaintainJ.
Hi Shobhit,

You may want to try MaintainJ, an Eclipse plug-in to generate runtime sequence and class diagrams for a use case. You can define the start and end points of a use case and generate the sequence diagram for all the object interactions for that use case. Check the demo on the web site.
[ March 20, 2007: Message edited by: Choudary Kothapalli ]