Click here to return to the home page
Change Currency      
 
Search:

Home

 » 

Catalogue

 » 

Development & Testing

 » 

IDEs

 » 

Java Tools

 » 

Modelistic JME

Modelistic JME [Java]


Modelistic JME [Java] boxshot.
Not what you're looking for? Use our free sourcing request service.

Modelistic JME is an Eclipse plugin which extends the Java development capabilities of Eclipse by supporting UML class diagrams. It differs from competing UML products in that it is targeted at Java programmers who need to quickly gain a feel for the existing code when they join a new project. So the emphasis is upon speed of creation of diagrams, ease of navigation, diagrams which stay up-to-date by themselves and show different aspects of the design. This is ideal for fitting in with the eXtreme Programming methods gaining in popularity.

Modelistic JME 1.3.0 has many new features as requested in the feedback from those who evaluated the beta version.
  • The profile file editor has been made much easier to use with new navigation functions for links between related files.
  • The help documentation has been re-written and extended.
  • A new filter has been added to define sets of types by dependency.
  • Diagrams now support orthogonal line routing
  • A preview panel shows what to expect before selecting a new diagram style.
Joining a Java development project with lines of Java code numbering in the hundreds of thousands - where many of its contributors have been and gone, and the remainder are too busy to help - how do you get your head round all that code? If you're lucky, some of the original design documentation may have survived; but how relevant might that be? What about XP projects where the design is shifting all the time and "there should be minimal documentation beyond the code"*? In the majority of cases the gospel version of the design lies within the code itself. There's a lot of it; so you need all the help you can get to build up a picture of its structure.

Faced with this situation most programmers turn to the Eclipse package explorer and hierarchy trees. These are a good first choice, because they present an immediate, current, filtered view of the code which is navigable back to the source text with only one click.

But these out-of-the-box views fall short of showing you references and dependencies and other essential clues to the structures within the code. To see the whole picture you need class diagrams - but how do reverse engineered class diagrams normally measure up to the four points of usability of Eclipse out-of-the-box?

  • Immediate: - Starting a stand-alone tool, setting up a project, reverse engineering a model - all before you can start seeing classes on a diagram - that's hardly immediate.
  • Current: - Creating snap-shot diagrams and repeating the whole process each time you need to see an up-to-date version - that's hardly current.
  • Filtered: - Sifting through large numbers of fields and methods because you only have basic controls to hide them according to visibility - that's hardly filtered.
  • Navigable: - Manually drilling down to the source in Eclipse after you spot something interesting on a class diagram - that's hardly navigable.

No wonder class diagrams are not routinely used for Java browsing; the effort outstrips the usefulness. Class diagrams would play a more prominent role if they could be created quickly, reflect a live-fed model, apply filters to show one aspect at a time, and offer quick navigation back to source editing - and this is the service which our new Modelistic JME plugin provides.

The Publisher, Modelistic's, objective is improved understanding of Java models through class diagrams - not the production of the class diagrams themselves.

Modelistic JME lets you quickly generate class diagrams populated directly from the Eclipse JDT model - the same model which Eclipse uses internally to drive its Package Explorer and Hierarchy trees. You can produce insightful diagrams in seconds - diagrams which will update themselves each time they're opened. Ideal for XP. And there's a popup menu which navigates you back to the code anytime.

So yes it is immediate, yes it is current and yes it is navigable - but what about filtering in Modelistic JME?

We've all seen sprawling, densely populated class diagrams which show everything and show nothing. Without specialized filtering Modelistic JME would be equally unhelpful, but we don't think that's good enough. So Modelistic JME offers advanced filtering and sorting capibilities. As well as the usual fixed set of discriminators (name, visibility, static final abstract) Modelistic JME supports filtering options based on javadoc tag, code body content, read onliness, inheritance, owner, owned elements, availability of source, method signature - you get the idea. But it doesn't stop there. Once sets of elements have been defined using these primitive filter types, they can be combined to create complex sets.

Here's a simple example:

All methods which throw an exception

Or more complex

All methods which throw a RemoteException

Or more complex still

All methods which throw a RemoteException and belong to a class which extend a class whose name starts with 'Distributed', and has a javadoc tag @author Fred and which does not override any other method.

Any depth of filtering is made possible by Modelistic JME's handling of model elements according to the sets you define. How the members of those sets are displayed is controlled by presentation parameters. The full directive could be:

All methods which throw a RemoteException, belong to a class which extend a class whose name starts with 'Distributed', and has a javadoc tag @author Fred and which does not override any other method should be displayed with a fully qualified return type on a green background with large red text showing the names, but not types, of its parameters.

This is one of those technologies the full significance of which doesn't hit you straight away. Modelistic JME delivers class diagrams which are not only immediate, current and navigable, but can be tuned to any particular Java technology, highlighting the use of its libraries with your code and filtering out the mundane parts.

Modelistic JME - a powerful tool for Java design recovery.

  • Instant reverse engineered Jva class diagrams
  • Eclipse 3.0 compliant plug-in
  • Eclypse symbols (inc. Java problem markers) on diagrams
  • Auto layout
  • Self-populating diagrams sourced from the Eclypse JDT
  • Zoom, navigation history, undo/redo
  • Advanced model element filtering
  • Extensive content presentation controls
  • Add supertypes, subtypes or dependents with a single click
  • Switch diagram style as you view diagrams
  • Ideal for Java XP projects

Home

 » 

Catalogue

 » 

Development & Testing

 » 

IDEs

 » 

Java Tools

 » 

Modelistic JME

Help
My Account
Corporate Info
Other Info
Secure Shopping
Copyright © Grey Matter Ltd. 1983 - 2009. Registered office: 2 Prigg Meadow, Ashburton, Devon, TQ13 7DF. Registered in England. Company no: 1671407. VAT no: GB 384904621.