AgileJ StructureViews

AgileJ StructureViews

AgileJ StructureViews is a commercial Java visualization product packaged as an Eclipse Feature. It brings together aspects of the Eclipse JDT Java Model, Set Theory, Class Diagrams and XP/Agile Methods. The results resemble reverse engineered CASE tool drawings, but are faster to create, require no maintenance, and reveal the detail of only one concern at a time.

Contents

Foundations

AgileJ StructureViews is loyal to the Java programming language, the Eclipse IDE and XP/Agile methods. It conforms to UML as far as possible within the constraints of these loyalties.

JDT

The Eclipse JDT model performs a number of functions in the Eclipse Java IDE, including populating the package explorer and type hierarchy trees. AgileJ StructureViews taps into that same source of information to populate its class diagrams. Consequently, each diagram needs only to store the fully qualified names of the classes it depicts.

Set Theory

Borrowing from Set Theory to some extent, a set of JDT model elements (types, fields and methods) can be declared in XML. The criteria for membership of a declared set are:

  • Depends Upon
  • Fields
  • Initializers
  • Methods
  • Modifier
  • Name
  • OtherSet
  • Owner
  • Owns
  • ReadOnly
  • Tag
  • Types

These criteria can be combined by OR, AND and NOT to define an Element Set. Unions, intersections, and complements can be declared using the OtherSet criterion.

These sets are used to:

  1. Define if and how an element should be presented
  2. Control the order in which members should be listed
  3. Declare a stereotype

Class Diagrams

The visualizations are U M L class diagrams, and these can be printed or exported as JPEG images. With the feature installed, class diagrams appear alongside source file editors in the Eclipse IDE and navigation is possible from any element on a diagram back to its source code.

XP/Agile Methods

To comply with the XP target of minimal documentation, no presentation-specific information is stored with a diagram. From the bare list of class names, all other information - class members, inner classes, inheritances, associations and dependencies - is derived from Eclipse. The intention is that the diagrams serve only to increase comprehension of the coding model which they illustrate. Making diagrams fully automatic reduces the tendency for programmer time to be wasted repeatedly preening the appearance of diagrams.

History

The company was started in 1998, and released its first product, Modelistic, in September 2000. Modelistic was a full round trip Java modeling tool packaged as a stand alone Java Swing application. Two years later the company realised that most of its customers wanted reverse engineering only, mainly because they were uncomfortable with their hand-written code being edited by software. In 2002, work started on a new tool better adapted to needs of Java programmers, and in particular the XP/Agile community. The first beta release of Modelistic JME happened in 2004, and full releases followed in 2005. In July 2006, the company was renamed to AgileJ and the product renamed to AgileJ StructureViews.

External links


Wikimedia Foundation. 2010.

Игры ⚽ Нужно решить контрольную?

Look at other dictionaries:

  • AgileJ — StructureViews is a commercial Java visualization product packaged as an Eclipse Feature. It brings together aspects of the Eclipse JDT Java Model, Set Theory, Class Diagrams and XP/Agile Methods. The results resemble reverse engineered CASE tool …   Wikipedia

  • List of Unified Modeling Language tools — This article compares Unified Modeling Language tools. Contents 1 General 2 Features 3 Other UML tools 4 References …   Wikipedia

  • List of UML tools — This article lists Unified Modeling Language tools, classified by their proprietary or non proprietary status. Non proprietary UML tools *Acceleo: Eclipse and EMF template based system for source code generation from UML models. *AmaterasUML:… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”