The main objective of software coding is to produce quality software applications. However, to do that, the software code, which we will refer as codebase, must tick certain checkpoints such as code reviews, technical debt, design flaw review, bugs or errors, platform compatibility and dependencies. The JArchitect is a static codebase management tool that allows the software developer and architect to analyse the code structure, specify rules for the software design, review the code written and manage different versions by comparing the different versions of the code. While the tool can help in building a quality software application, getting to know it through the product documentation can be difficult because it is poorly written. Also, the cost of the product can be prohibitive and erects a huge entry barrier for software developers with a tight budget.
The sections below provide an objective review of the JArchitect tool.
Monitor and manage overall code quality
Software companies can set up the JArchitect as part of the overall build and continuous integration process. Since software codes from everyone are integrated and run, it will be a great opportunity to analyse the code and identify errors at run time. Managers and QA specialists can keep an eye on the various reports generated and the overall software code quality.
Write dynamic queries on Java code
The CQLinq feature allows the developer to write dynamic queries on Java. For example, you can query JArchitect with questions like “is the code correctly refactored?”, “which API was last refactored before the last release?” It is not difficult to learn CQLinq especially if you happen to know SQL. Even if you did not know CQLinq, you can form intuitive queries with the help of the graphical user interface and the rich code search feature offered by JArchitect for architects and software developers.
Review software architecture
The interactive diagrams generated by JArchitect are intuitive and easy to use. You can click and drill down the diagrams with just a few clicks by just modifying the CQLinq query. For example, the diagram can highlight the top 10 methods based on cyclomatic complexity in a particular type of diagram. You can view dependency graphs to analyse and review low coupling and high cohesion, dependency cycles or codes having multiple layers.
Compare codes across versions
Software companies tend to struggle managing multiple versions of the software code. This can be especially problematic when you need to roll back code done a long time ago. For example, if a certain feature or functionality in the software is identified as redundant and needs to be removed, the code is written probably six months ago. It would be a humongous task to identify the code related to the functionality. JArchitect can compare several versions of the code and identify the code that needs to be changed or removed.
Representation of information
One of the most attractive features is probably how it presents information for the developers and architects. It presents information in a variety of ways which comprise graphical views, nested views and cross-referencing graphs and more. Most of these views are configurable according to your requirements and you can write queries in the CQLinq to configure the views.
Poor product documentation
For certain software developers and architects, getting to use JArchitect may be a steep learning curve and this can be solved by having good user assistance materials in the form of documentation. The documentation is inadequate, shallow and written in broken English. For a product that is projected as a premium, top-class tool, having a poor product documentation can be a real poor thing. The people should also have paid more attention to small things such as providing proper links to demo videos. The links to JArchitect videos go to the videos of a related software program or worse, throws up a 404 error.
Steep product price
It is clear that the tool is not intended for non-commercial developers or organizations with a tight budget. There are two prices: $ 599 for a single user license for 1 year while the license for JArchitect for Build Machine costs $799 for a single user. One would probably buy the license only if absolutely clear and convinced about the benefits that would be derived from the use of the license. The product, however, offers a 14-day trial for free and this period should be utilized to find out the utility or relevance of the product.
In spite of the poor user assistance materials and its steep, prohibitive price, the JArchitect can be potentially a great tool that can contribute to quality software applications. This tool can be especially useful and relevant given the Agile methodology of software development these days. Software developers need to identify and fix issues on the go because they might not have the time to do so after a release. JArchitect helps them to roll out quality code right from the word go.
Please find more details about the product at JArchitect