Using Understand 6 with CMRI
Understand 6 is a beta feature of CodeMRI® and therefore may have unexpected bugs. Therefore, by default. Understand 5 is the default analysis engine for CodeMRI®. Currently, CodeMRI® does not allow for switching between analysis engines for the same system. To compare results between the two, you must create two identical systems and set one of them to use the Understand 6 engine.
Some of the Major Updates between Understand 5 & Understand 6 as they relate to use by CodeMRI® Software are:
Produced analytics are now directory based projects instead of stored within .udb files. In 6.0, all of the necessary information needed to create a project is located in one directory and is text based and small enough to easily be checked in for sharing and Version Control.
Several improvements to Graphing Capabilities
Better analytic capabilities and proper supports Javascript and Typescript support.
Configure CodeMRI® to use Understand 6
Install CodeMRI® to your Operating System
Follow Instructions here for Linux Installation
Follow Instructions here for Windows Installation
Currently CMRI is configured to expect Understand 5 to be ran as the original analysis engine in order to configure licensing with SciTools. As such, if you are running from a freshly installed CMRI then run the following commands first.
project add -n test
adds the burner project for configuring a SciTools License.system add -n test -v 1 -o "path/to/source/code"
adds the burner system.select --add test/test-1
selects the system for the following command to be ran.job run produce_reports
will generate a SciTools Understand License.select --remove test/test-1
will remove the burner system from selection for the next steps.
Now, setup a project and system for the code base you intend to analysis with Understand 6.
project add -n <project-name>
creates the project we will configure to use Understand 6.system add --selection <project-name -n <system-name> -v <version-number> -o "path/to/source/code"
creates the system we will configure to use Understand 6.select --add <project-name>/system-name>-<version-number>
will select the just created system for further the next step.
By default, CMRI is configured to use Understand 5 as the backend analysis engine. this can be verified and changed to Understand 6 with the following commands:
system config get analysis_engine
which should return “understand”.system config set analysis_engine understand6
will configure the system to use understand6 now.system config get analysis_engine
which should return “understand6”.
CMRI should now be configured to use Understand 6 as the analysis engine for your product. Running
job run produce_reports
or a similar job will now produce results using Understand 6.
Systems that use Understand 6 and systems that use Understand 5 are not compatible with each other, so its best to keep them in separate projects to not confuse yourself. You can also set the analysis_engine
at the project level, by substituting the system
keyword for project
.
Understand 6 Command Usage Cheatsheet
Below are some helpful commands directly associated with configuring CMRI to swap analysis engines. For a full list of commands, please refer to the following Confluence page: https://silverthread.atlassian.net/wiki/spaces/CKB/pages/2527789057
project config set analysis_engine <understand5|understand6>
- Configures which analysis engine is used at the project level.system config set analysis_engine <understand5|understand6>
- Configures which analysis engine is used at the system level. Overrides project configuration for this system.project config get analysis_engine
- List the current analysis engine used by CMRI at the project level.system config get analysis_engine
- List the current analysis engine used by CMRI at the system level.