Debug, Enhance, Tune and Document in just a few minutes


Our Selected Client List

  • ibm
  • ge
  • disney
  • hp
  • emc
  • aig
  • vmware
  • cisco
  • verizon
  • wells
  • fiserve
  • fed
  • usarmy
  • canada


Effort Saved

30% - 40%

Maintenance Effort Saved



Product Downloads



Check Here

Learn what MaintainJ can do for you


Save 35% of investigation effort while debugging

Debugging Without MaintainJ

Debugging With MaintainJ


Locate the bugs in just a few minutes!

Investigating a defect usually takes 40% of the total effort spent on bug fixing. With MaintainJ, you need only 5% of the effort (2 hours instead of 2 days). MaintainJ does this by enabling you to quickly find the method or JSP or SQL where the bug exists. Once you identify where the bug is, it is easy to fix.

Watch the demo to see how you can debug a complex 8000 class Java application in just 2 minutes.




Save 20% of enhancing effort

Reduce enhancing effort by understanding the design of similar features

Most enhancements involve adding new features. The design for a new feature would often be similar to the design of an existing feature. Once we understand the existing feature, a new feature could easily be built by imitating the existing feature.

MaintainJ helps you to quickly understand the existing features, thereby enabling you to build new features much quicker.

Other enhancements would involve enhancing existing components. Using MaintainJ, you can quickly find the components to enhance.



Enhancing Without MaintainJ

Enhancing With MaintainJ


Save 40% of response time tuning effort

Tuning Without MaintainJ

Tuning With MaintainJ


Locate hotspots in minutes and optimize!

The first task of tuning is to locate the hotspots. The second task is to find ways to optimize them. Other tuning tools may be good with the first task, but they don't provide insights into how the use case works at runtime. MaintainJ helps you to do both.

Besides identifying the hotspots like methods that take long time, MaintainJ can also identify the method calls that are called repeatedly to retrieve the same data from database. By caching the data returned by these methods, you could reduce the response time of a use case.

Watch the demo to see how you can find the hotspots and candidate methods for caching in an 8000 class Java application in just 2 minutes.




Save 90% of documentation effort

Generate UML diagrams in 2 minutes!

To document a use case, first you need to understand the use case and then draw the diagrams. MaintainJ combines these two steps. If you normally take 2 days to document a complex use case, now you can do it in just 1 hour.

MaintainJ generates the class and sequence diagrams at runtime while you run a use case. Hence, the generated diagrams represent the truth, not your understanding of the truth. MaintainJ's diagrams show response time of each call, the runtime parameter data and runtime SQL statements.



Effort to draw sequence and class diagrams with and without MaintainJ



Save 75% of ramp up effort when starting on a new project

Ramp up effort when starting on a new application

Deliver in the first week on a new project

Most developers take up to 4 weeks before they start delivering on large new Java applications. This time is spent in understanding the design, many Java frameworks used in the application, some of which may be unfamiliar to the developer.

Using MaintainJ's runtime analysis features, new developers can start fixing the defects and performing minor enhancements in the first week itself, regardless of the developer's familiarity with the design, frameworks used and the size or complexity of the application.




Debug and Enhance

  • Generate runtime sequence and class diagrams for a single use case
  • View the runtime context of a call (the call arguments, return value, etc.)
  • View the runtime SQL calls regardless of the database frameworks used
  • Search the diagram by class/method names, runtime data or SQL
  • Trace applications deployed on multiple JVMs


  • View the response time of each method call in the use case
  • Identify the call stack that takes the maximum time in a use case
  • View runtime SQL statements generated by ORM frameworks and tune


  • Filter unwanted classes from diagrams quickly using predefined filters
  • Print and export class and sequence diagrams as images
  • Export as diagrams as UML2 models which can be imported into other compliant tools



Get started in under 15 minutes

The detailed installation instructions can be found at user guide. Below are the instructions for a quick start.

1. Install the MaintainJ Eclipse Plug-in using the Update URL: http://www.maintainj.com/updates/4.2.0

To verify the installation, create a 'MaintainJ Trace Files Project' in Eclipse by following File-->New-->Project-->MaintainJ-->MaintainJ Trace Files Project. Open the sample trace file Alfresco_Login.ser in the project to see sequence and class diagrams. You may use this sample trace file to try out the various features of MaintainJ.

2. Get free evaluation license

To fully experience MaintainJ on your application, please get the evaluation license. You will receive an email with the license installation instructions.

3. Demos to generate the call trace files

Demos to generate MaintainJ trace files for different types of applications can be found here. Below wizard helps you to a quick start.

What is the type of your application?

Web App Core Java App JUnit Applet None of these