ter Alternatives - Architecture Rules - Wiki

Alternatives

From Architecture Rules - Wiki
Jump to: navigation, search

This is the known list of java architecture-monitoring alternatives. Most or all of these are open source projects. If you know of any others, please mail the name of the project to the mailing list.

Contents

SonarJ hello2morrow

SonarJ is free for open-source and private use, and more complete architecture monitoring solution than Architecture Rules is.

SonarJ is an innovative solution, that helps you to manage and monitor the logical 
architecture and the technical quality of your Java projects. The approach of SonarJ 
is absolutely unique on the market. It is light-weight and easy to use. It enables 
you to effectively avoid the well known effect of structural erosion. Without any 
extra overhead you can now make sure, that your logical architecture is implemented 
as planned. Moreover you can define thresholds for some key metrics affecting technical 
quality, that will allow you to maintain a high level of technical quality.

http://www.hello2morrow.com/en/sonarj/sonarj.php

Macker Sourceforge

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.

http://innig.net/macker/

Japan - Java Package Analyzer Sourceforge

Japan is an Ant task and IntelliJ plugin for checking you haven’t broken any of the 
package dependency rules within your Java project. For example, you might want to 
allow the ‘client’ and ’server’ packages to see ‘remote’, but not allow ‘remote’ 
to see ‘client’ or ’server’. Japan works on Java source files and the dependency 
rules are defined in an XML configuration file.

http://japan.sourceforge.net/

JDepend Clarkware

JDepend is not really an alternative, because Architecture Rules wraps JDepend, to make it easier to use and to make your rules easier to maintain and read. However, if you want to tackle JDepend on your own, or want to extend JDepend, then it could be considered an alternative.

JDepend traverses Java class file directories and generates design quality metrics 
for each Java package. JDepend allows you to automatically measure the quality 
of a design in terms of its extensibility, reusability, and maintainability to 
manage package dependencies effectively.

http://clarkware.com/software/JDepend.html

Classycle Sourceforge

Classycle’s Analyser analyses the static class and package dependencies in Java 
applications or libraries. It is especially helpful for finding cyclic dependencies 
between classes or packages. Classycle is similar to JDepend which does also a 
dependency analysis but only on the package level.
Classycle’s Dependency Checker searchs for unwanted class dependencies described 
in a dependency definition file. Dependency checking helps to monitor whether 
certain architectural constrains (e.g. in a layered architecture) are fulfilled or not.

http://classycle.sourceforge.net/

Lattix

Lattix is a comprehensive solution for architecture management. Lattix supports the analysis of Java, Spring Framework, Hibernate, .NET, C/C++, Ada, Delphi, Oracle, SQL Server, Sybase, UML/SysML and LDI.

Lattix provides tools and algorithms for architecture discovery, a means to specify
architectural rules, support for architectural refactoring and the ability to track the
evolution. Lattix supports a range of reports and metrics. Lattix has pioneered the use of
Dependency Structure Matrix (DSM) for a highly scalable representation. Examine the
demos or try it out.

http://www.lattix.com/products

PatternTesting Sourceforge

Every project defines a set of rules that all (or most :-)) developers agree on. 
These rules can be coding conventions, naming conventions or at a higher level 
architecture decisions or best practices.
Usually these rules are either mentioned verbally or written in a “Developer Guide” 
(I am personally using an internal Wiki web site for sharing this best practices 
knowledge). However, it is not enough. How am I going to verify that I have properly 
coded against these rules?
Pattern Testing is about providing the means to automatically check for 
Architecture/Design/Implementation decisions.

http://patterntesting.sourceforge.net/05/whatis.html

Structure101

Structure101 is a more complete solution for understanding, controlling and tracking evolving software architecture. Structure101 is free for use on open-source, $299 for personal use and $599 for commercial licenses.

Check out the demos  or better still just download it and take it for a spin on your own code.

http://www.headwaysoftware.com/products/structure101/index.php

Personal tools