Skip to content
mrumpf edited this page Jun 18, 2012 · 28 revisions

What is fawkeZ?

The fawkeZ project provides a set of Java classes, tools, and utilities that are freely available under a BSD license. More fundamentally fawkeZ incorporates a set of principles and guidelines for agile software development. Of course the Java components, tools, and utilities can be used without strictly following those principles, but they reveal their real power only when used in combination.

fawkeZ has been developed during many years in software development. In the past, the combination of tools, components and principles supported us in writing high-quality Java software. We are releasing fawkeZ as open-source library now in order to make those benefits freely available to everyone.

What components does fawkeZ consist of?

Code Analysis Sample

Tools like PMD, Checkstyle, FindBugs and Cobertura deliver high-quality code-analysis features. But what we found missing is a combined representation of the various findings. The jCoderZ report tool reads the XML output of the code-analysis tools and creates a single report which combines all findings in one XML report file and a set of easy to browse HTML files. More...

Another feature of the jCoderZ report tool is a summary report generator. The jCoderZ report tool creates separate reports but there is no linking between the reports and no statistical overview on how the number of findings evolve over time. The jCoderZ summary report tool tracks the number of findings from the XML files, generated jCoderZ report tool and stores them into different categories: error, warning, info, filtered. The final output is a HTML page that shows the trend in the number of findings. More...

Documentation

The fawkeZ project provides a set of tools and some guideline documents from the area of software lifecycle documentation:

  • Software Requirements Specification (SRS) Generator
    The SRS Generator uses an XML file as input where the requirements are defined in a formal structure. This input format can then be rendered as PDF or HTML.
  • Software Architecture Document (SAD) Generator
    The SAD Generator uses XML fragments and Javadoc input to generate docbook XML. This input format can also be rendered as PDF or HTML.
  • A Java coding guideline document
    This is our Java coding guidelines document that can easily be used as a template for your own Java coding guideline documents.
  • A SQL coding guideline document
    This is our SQL coding guidelines document that can easily be used as a template for your own SQL coding guideline documents.

All of the documentation tools use docbook as a backing technology. More...

Utility Classes

Many useful utility classes for Java development are included in the fawkeZ project. There is for example a null assertion class, a date class, a base64 encoder / decoder. More...

Code Generators

A bunch of XSLT based code generators that generate java code out of structured XML input. There are generators to create exceptions and log messages supporting our JSR47 based logging concept. Other generators generate strong types including enums for JDK 1.4 and earlier. Last not least there is a generator that generates composite objects - better known as POJOs or Java Bean.

The generators are build to run with every compile as opposed to one shot code generators. So you only store the XML input and generate the java code with every compile. This supports the DRY principle.

Misc

There is even more stuff in the fawkeZ project. If you are interested, then click here...

Getting fawkeZ

If you now want to use any of the features, mentioned above, then please read the page on how to get fawkeZ. This page will give you an overview on the different ways to get the distribution archives from.

Contributing to fawkeZ

The fawkeZ project is an open-source project which lives from the contributions of the community. We appreciate any help you can offer us, so don't hesitate to contact us. In order to guarantee that your contributions are recognized effectively, please read the page on how to contribute to fawkeZ first.

FAQ

The answers to the most frequently asked questions can be found in the FAQ.

Clone this wiki locally