In discussions with jQAssistant users we’re repeatingly asked about the following scenario: analysis and refactoring of monolithic Java systems. These have usually aged over many years and are packed with business critical functionality, implemented by many developers that joined and left the project taking their knowledge away. Since quite some time there’s now also a…
jQAssistant is a QA tool, which allows the definition and validation of project specific rules on a structural level. It is built upon the graph database Neo4j and can easily be plugged into the build process to automate detection of constraint violations and generate reports about user defined concepts and metrics.
Example use cases:
- Enforce naming conventions, e.g. EJBs, JPA entities, test classes, packages, Maven modules etc.
- Validate dependencies between modules of your project
- Separate API and implementation packages
- Detect common problems like cyclic dependencies or tests without assertions
Rules are expressed in Cypher - the easy-to-learn query language of Neo4j:
MATCH (t:Test:Method) WHERE NOT (t)-[:INVOKES]->(:Assert:Method) RETURN t AS TestWithoutAssertionGet started here!
12. April 2019
23. Dezember 2018
We released jQAssistant 1.6.0 and it comes with the following improvements: Dependency Graph for Maven Projects The full dependency graph of a Maven project is now scanned if jQAssistant is used as Maven plugin and can be visualized in the browser using the following query: MATCH (p:Maven:Project)-[:CREATES]->(a:Artifact)-[:DEPENDS_ON*]->(d:Artifact) RETURN * Here’s the result for the Spring…
19. Oktober 2018
jQAssistant 1.5.0 has been released supporting wildcards for rule references, labels for :Main and :Test artifacts and improved Spring rules.
26. September 2018
We invite you to welcome a new contribution to the jQAssistant eco-system: An extensible dashboard for interactive visualization of software structures and metrics. It is a contribution of the research group Visual Software Analytics (Leipzig University) and has mainly been developed by Tino Mewes. For a first impression have a look at the following screencast…
24. September 2018
jQAssistant 1.5.0-RC1 is now available. This pre-release focuses on providing bug fixes, improving our release pipeline and comes with the following notable changes for our users: Rules may now be referenced using wildcards, e.g. [role=group,includesConstraints="my-rules:*"] The order of rule execution within a group is now defined: concepts, nested groups, constraints Upgraded embedded Neo4j 3.x to…
5. Juni 2018
Today we’re proud to announce two new releases: one coming from the jQAssistant team itself and the other from the community. Let’s start with the latter! SonarQube 5/6 Plugin The SonarQube plugin for jQAssistant got an refurbishment and now supports SonarQube 5 and 6! It allows publishing the results of jQAssistant analysis to SonarQube and…
25. Oktober 2017
We thought it might be interesting for you to see what other users of jQAssistant are doing with it. Therefore this blog post presents a collection of interesting posts from the community: Jens Nerche has contributed a collection of useful plugins and he’s regularily writing articles about what he’s doing with them. For a start…
3. Oktober 2017
A new plugin jQAssistant is available providing functionality for test impact analysis. The idea is to select only tests for execution that are most likely affected by changes in the version control system in large projects. Therefore commits within the current Git branch of a Maven project are evaluated for changes on Java types. Using…
View All »
Lasst uns einen Monolithen (z)erlegen!
Check out the new 2-day-workshop. The full agenda is available at www.buschmais.de/seminare
(Only in German).
jQAssistant – Getting Started.
If you want a fast and effective start with jQAssistant you should check out the new 2-day-workshop. The full agenda is available at www.buschmais.de/seminare
(Only in German).
Meet and Greet
You want to have a chat about Software Architecture and Quality Assurance?
Dirk, Stephan and Oliver will be attending the following events either as a visitor or as a speaker.
Feel free to contact him beforehand!
"jQAssistant: Treat your code as a graph" Talk, Heisenbug Conference, 17. - 18.05.2019, St. Petersburg, Russia
"Lasst uns einen Monolithen (z)erlegen!", Workshop, 22. - 23.05.2019, Dresden