Construx Surveyor supports easy, automated collection of size, complexity, and other code measurements. Surveyor provides out-of-the-box measurements for many languages and can be tuned through configuration. It can also be extended through code. Construx Surveyorâ„¢ version 4 is available for download under the GNU license.
|
|
| Measure Across Technologies |
Surveyor provides per-file measurements of any programming language and other project artifacts such as test scripts, configuration data, Word documents, etc. |
| Size Measurement |
Out-of-the-box measurement includes Non-Blank, Non-Comment (NBNC) line counts for: C++, Java, C#, VB, SQL, C, Python, Ruby, Perl, JS, JSP, ASP, PHP, XSL/XML, TCL, Lua, Flash, Delphi, shell scipts, LISP, FORTRAN, RPG, COBOL, Matlab and others. |
| Complexity Metrics |
Measure cyclomatic complexity of files and routines, as well as routine length, maximum nesting depth and other indicators of potential risk in your code. |
| Rich Data Analysis |
Surveyor output is designed for easy spreadsheet analysis. Chart, pivot, roll-up, and drill-down on file types, folders, and user defined tags. |
| Adaptable and Extensible |
Tuning provides fine-grained control over what is measured and how it is measured. New measures can be easily developed within the Surveyor framework. |
| Code Searching |
Code-sensitive searching allows you to zero in on magic numbers, third-party code, etc. Surveyor can also separate machine-generated code from human-created code. |
Surveyor uses configuration files to determine how source files will be measured. You can roll up, group, and filter information from different parts of your folder structure through file information and user-defined tags. Surveyor behavior is tailorable through command-line options, configuration files and easy Python scripting to customize measurements. Surveyor is based on regular expression processing rather than interpretation, trading some precision for much greater flexibility.
Output data can be used to identify risk-prone areas of code, provide historical data for estimating future work, help manage a project (e.g., plotting a code-growth curve), or to just figure out what code you have! Surveyor grew up on real world projects and Construx uses it regularly to measure and characterize systems for clients.
If you have questions or comments about Surveyor please e-mail us.