ArgoUML
The Source Code
Our results for ArgoUML were based on the source code obtained from their CVS respository.
PINOT in Action
PINOT is based on Jikes,
so it works like a compiler. PINOT needs all the JAR files required for the
actual build process. I basically followed ArgoUML's
build instruction and tried to replace calls to javac as pinot.
The build process first compiles source code in argouml/src/model,
which generates argouml-model.jar for compiling argouml/src_new.
Each directory contains a build.xml for ANT to build the source.
The <javac> tag in each build.xml and the default.properties
file indicate the required JAR files and JAVA files to compile.
Before running PINOT, I built the source with ANT using its default compiler
(javac) to make sure that all the required JAR files are properly created
and placed.
Here's how I run PINOT in each directory after ArgoUML has been successfully built:
argouml/src/model
pinot -classpath $CLASSPATH:<your-cvs-root>/argouml/lib/log4j-1.2.6.jar
`ls src/org/argouml/**/*.java`
You can view the raw output for this part
here.
argouml/src_new
pinot -classpath $CLASSPATH
:<your-cvs-root>/argouml/build/log4j.jar
:<your-cvs-root>/argouml/build/argouml-model.jar
:<your-cvs-root>/argouml/lib/gef-0.11.3M1.jar
:<your-cvs-root>/argouml/lib/swidgets-0.1.1.jar
:<your-cvs-root>/argouml/lib/toolbar-1.1.1.jar
:<your-cvs-root>/argouml/lib/antlrall-2.7.2.jar
:<your-cvs-root>/argouml/lib/ocl-argo-1.1.jar
`cat files1346359594`
files1346359594 contains all the JAVA files that should compiled in this directory.
Somehow it was created during the ANT build.
You can view the raw output for this part
here.
Please refer to
ArgoUML Javadocs
for more information regarding the source (look under Documentation).
Discussions
- Use of the
Singleton
pattern.
- Use of the
Command
pattern.
- Use of the
Observer
pattern by instantiating the java.util.Observable class.
Notes
PINOT only runs correctly if the analyzed source code
is able to be compiled with Jikes.
It would be nice to have a copy of
Jikes-1.22-1
available.
You can change the default compiler for ANT by specifying the global
build.compiler property to jikes (see ANT manual for details).
back to PINOT