Initiating an analysis
Last updated
Last updated
To begin the analysis of a project, you will have logged into your Version-Control System (VCS) such as GitHub, which is being used in our examples. You connected to the Navigator using your server’s Public IP address and port 3001. Once connected to the Navigator, you selected the project that you wanted to analyze, cloned it and then selected the branch that you wished to analyze (See Authorizing Access to Your Source Code).
To begin the analysis of the branch, click on the Analyze button. Once clicked, iCR scans the repository for source code in any of the supported languages. Once that completes, a popup appears showing the discovered candidate languages for analysis:
If one of the available languages is Python, there is an extra step offered in this popup.
Python employs a class library to provide the standard suite of runtime classes needed to execute your Python scripts. The libraries are frequently updated and each project branch may depend upon a particular version of the libraries. iCR allows you to select the library version needed for each branch.
Below the Python language selection, there is a drop-down menu. Notice that if this is the first time the repository is being scanned, there is no library in place as indicated by the drop-down button being labeled Not Selected. Clicking on the drop-down menu will display all the available library versions. Select your required version from this list:
In this Python example, we selected 3.7 as our desired version. This will set 3.7 as the default version for all branches, and analysis can continue. After selection, the pull-down menu will now display the chosen Python library version:
Smaller projects (< 100,000 Lines of Code) tend to be less complex in terms of number of files and method or functions. These may be analyzed within minutes. However, larger projects (> 1M LoC) may take much longer to analyze. That’s OK. You don’t have to sit and watch as it could take many hours for a large, complex project to be thoroughly analyzed.
At the bottom of the popup is displayed the option of requesting an email notification when the analysis completes. If you click the box requesting a notification, an email prompt is displayed. Enter the email to which iCR will address your notification.
To initiate the analysis, click Yes. A new tab opens which takes you to the Monitor Analysis screen.
This display will be updated as the analysis progresses. The first step that the analysis undertakes is a check of the license. The license is used to authenticate this instance of iCR and manages the number of OBLoCs that are authorized for this instance.
The Checking License Information step requires access to the Internet in order to reach the License Management software. This usually happens quickly and goes unnoticed. However, in some cases, if the Internet connection is a bit slower, you may occasionally see this progress message letting you know that the license checking process is still underway:
If your are analyzing a Python project, there is an additional step needed at the start of an analysis: the selected Python libraries, as noted above, need to be loaded. For Python analysis to continue, the Analysis Engine will pull the desired Python library version from the Internet. The class libraries are large and this may take a few minutes. The Monitor display will present a progress indicator during this download process
Once that step completes, the analysis is running.