Macker is a build-time architectural rule checking utility for Java developers. It's meant to model the architectural ideals programmers always dream up for their projects, and then break -- it helps keep code clean and consistent. You can tailor a rules file to suit a specific project's structure, or write some general "good practice" rules for your code. Macker doesn't try to shove anybody else's rules down your throat; it's flexible, and writing a rules file is part of the development process for each unique project.
Read more about what it does and what it's for in the very exciting FAQ. If your curiousity's piqued, skim the guide, or inspect a few simple examples.
It's free (GPL). You can download it and try it out.
Questions or suggestions? Feel free to share them.
SONAR is a code quality management platform, dedicated to continuously analyze and measure technical quality, from the projects portfolio to the class method.
Lattix has pioneered an award-winning approach using system interdependencies to create an accurate blueprint of software applications, databases and systems. Architects and developers can analyze their systems in detail, edit the structure to create what-if scenarios, and specify design rules, allowing them to formalize and communicate the architecture to the entire organization. The result is higher quality, improved reliability, and much easier maintenance.
JDepend sorgt für gute Beziehungen
Author: dbt23
11 Mai
Irgendwie spuckt jDepend interessante Werte aus, aber was so richtig damit anfangen? Nur eine Zahl um so etwas wie Paket-Instabilität auszudrücken? Wieso soll ich mich überhaupt um zyklische Abhängigkeiten kümmern, wenn mein System doch prima läuft? Und was um alles in der Welt ist ein dot in der Graphenvisualisierung?
ztest
ztest is a small classlibrary based on java 1.5 intended to be used in junit tests.
The main purpose of ztest is to put constraints on the code structure of java programs.
It can and should be used to specify an architecure by putting constraints on class dependencies. The architecture can be reused by reusing the test.
ztest scans the bytecode of class files in directories, jars, wars, ears and computes a dependency graph. You can query this dependency graph and define the architecure by specifying valid dependencies and rejecting invalid ones.
ztest comes with a dependency-test (ZDependencyTest) with which you can define sets of classes and the allowed dependencies between them.
The class sets are defined by filtering the nodes of the dependeny graph.
How good is your software? jmove eases the understanding and valuation of the design and architecture of complex software written in java. It provides dependency analysis, metrics, design rule checking and impact analysis. Define your desired architecture model and check consistency with the implementation.
jmove offers a framework and an extendable set of tools to ease the understanding of the design and architecture of software systems and to provide support to control the software from this point of view. It is based on a model centric approach which allows to analyze different kind of sources like source code and byte code.
JayWalker is an open-source build and deployment analysis tool which interrogates a Java application's compiled artifacts and generates static and interactive graphical reports from it. In turn, a software professional can interpret and use these reports to improve software quality and to understand the current state of the software application in question.
Although there are quite a few dependency analysis tools on the market, JayWalker is different because:
* It walks the class files rather than the source files
* It can interrogate nested archives (i.e. a JAR within a WAR within an EAR file)
* It can detect a variety of conflicts that can be identified at build and deployment time in an effort to minimize runtime dependency errors.
* It can be incorporated into a continuous integration solution so conflicts can be identified as they are introduced into source code control rather than addressing errors at runtime.
* It can be run standalone via the commandline on a system which just has a JRE installed
* Other dependency tools are package or class specific. JayWalker has support for archives, packages, and classes.
* Report attributes can be toggled on or off
* Walking across classlist elements can be done in several different ways:
o Deep (default) - recursively follow all paths
o Shallow - recursively follow paths up to and including a boundary element
o System - recursively follow paths up to a boundary element which is not part of the deployment, but is provided by a server or environment.
This is the homepage of the Code Analysis Plugin (CAP).
CAP is a plugin for the eclipse platform and analysis the dependencies of your Java project. It opens a own perspective and displays the results in an clear way using different diagrams.