512 lines
25 KiB
Plaintext
512 lines
25 KiB
Plaintext
|
|
|||
|
********************************************************************
|
|||
|
****** ******
|
|||
|
****** LDRA Testbed (R) Quality Review Report ******
|
|||
|
****** ******
|
|||
|
****** File : /home/student/anw0044/CPE455/lab08/mode-s.c ******
|
|||
|
****** ******
|
|||
|
********************************************************************
|
|||
|
|
|||
|
|
|||
|
Report Production
|
|||
|
-----------------
|
|||
|
* C/C++ LDRA Testbed Version: 9.8.2
|
|||
|
* Report Produced On: Tue Mar 29 2022 at 10:19:30
|
|||
|
* Metrics Data File: /apps/ldra2019/ldra_toolsuite/metpen.dat
|
|||
|
|
|||
|
Report Configuration
|
|||
|
--------------------
|
|||
|
* Report Format: By Metric
|
|||
|
* Procedures Reported: All Procedures
|
|||
|
* Show Metric Passes: Yes
|
|||
|
* Show Metric Fails: Yes
|
|||
|
* Reporting Scope: Source file and associated header
|
|||
|
|
|||
|
Analysis Phases Completed
|
|||
|
-------------------------
|
|||
|
* Static: Yes
|
|||
|
* Complexity: Yes
|
|||
|
* Dataflow: Yes
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
|
|||
|
Contents
|
|||
|
--------
|
|||
|
|
|||
|
Metrics
|
|||
|
* List of File and Procedure Metrics
|
|||
|
|
|||
|
Procedure Table
|
|||
|
|
|||
|
Results
|
|||
|
* Results for each Metric
|
|||
|
|
|||
|
|
|||
|
|
|||
|
List of Metrics to be Displayed
|
|||
|
-------------------------------
|
|||
|
Reformatted Code Information for File
|
|||
|
-------------------------------------
|
|||
|
* Total reformatted Lines, Total comments in ref. Code, Executable ref. Lines, Non-executable ref. Lines
|
|||
|
Number of Procedures, Total source Lines, Expansion Factor.
|
|||
|
|
|||
|
Procedure Information
|
|||
|
---------------------
|
|||
|
* Executable reformatted Lines, Number of Basic Blocks, Average Length of Basic Blocks, Procedure Entry Points
|
|||
|
Procedure Exit Points.
|
|||
|
|
|||
|
Comments Associated with Procedures (% of total)
|
|||
|
------------------------------------------------
|
|||
|
* Total Comments, Comments in Headers, Comments in Declarations, Comments in Executable Code
|
|||
|
Blank Lines.
|
|||
|
|
|||
|
Ratio of Comments to Executable lines (%)
|
|||
|
-----------------------------------------
|
|||
|
* Executable reformatted Lines, Total Comments/Exe. Lines, Header Comments/Exe. Lines, Declaration Comments/Exe. Lines
|
|||
|
Code Comments/Exe. Lines.
|
|||
|
|
|||
|
Complexity Metrics
|
|||
|
------------------
|
|||
|
* Knots, Cyclomatic Complexity, Essential Knots, Essential Cyclomatic Complexity
|
|||
|
Procedure Structured (SPV).
|
|||
|
|
|||
|
Halsteads Metrics
|
|||
|
-----------------
|
|||
|
* Total Operators, Total Operands, Unique Operators, Unique Operands
|
|||
|
Vocabulary, Length, Volume.
|
|||
|
|
|||
|
Loop/Interval Analysis
|
|||
|
----------------------
|
|||
|
* Number of Loops, Depth of Loop Nesting, Number of Order 1 Intervals, Maximum Interval Nesting
|
|||
|
Reducible (Intervals).
|
|||
|
|
|||
|
LCSAJ and Unreachability
|
|||
|
------------------------
|
|||
|
* Total LCSAJs, Reachable LCSAJs, Unreachable LCSAJs, Maximum LCSAJ Density
|
|||
|
Unreachable Lines, Unreachable Branches.
|
|||
|
|
|||
|
Dataflow Information
|
|||
|
--------------------
|
|||
|
* Globals in Procedure, File Fan in, Fan Out.
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
|
|||
|
**************
|
|||
|
* *
|
|||
|
* mode-s.c *
|
|||
|
* *
|
|||
|
**************
|
|||
|
|
|||
|
*****************************************************
|
|||
|
* *
|
|||
|
* Overall Results - Percentage of metrics passing *
|
|||
|
* *
|
|||
|
*****************************************************
|
|||
|
|
|||
|
Total Metrics: 48
|
|||
|
Clarity Metrics: 14 (of which 4 are whole file only)
|
|||
|
Maintainability Metrics: 11 (of which 7 are whole file only)
|
|||
|
Testability Metrics: 15 (of which 7 are whole file only)
|
|||
|
|
|||
|
|
|||
|
===============================================================================================
|
|||
|
PROCEDURE ALL METRICS CLARITY MAINTAINABILITY TESTABILITY
|
|||
|
===============================================================================================
|
|||
|
|
|||
|
mode_s_init 85 ######### 70 ######## 75 ######## 88 #########
|
|||
|
mode_s_checksum 96 ########## 90 ########## 100 ########### 100 ###########
|
|||
|
mode_s_msg_len_by_type 74 ######## 40 ##### 100 ########### 88 #########
|
|||
|
fix_single_bit_errors 74 ######## 70 ######## 50 ###### 75 ########
|
|||
|
fix_two_bits_errors 74 ######## 80 ######### 25 ### 75 ########
|
|||
|
icao_cache_has_addr 81 ######### 50 ###### 100 ########### 100 ###########
|
|||
|
add_recently_seen_icao_addr
|
|||
|
78 ######## 40 ##### 100 ########### 100 ###########
|
|||
|
icao_addr_was_recently_seen
|
|||
|
81 ######### 50 ###### 100 ########### 100 ###########
|
|||
|
brute_force_ap 89 ######### 90 ########## 100 ########### 88 #########
|
|||
|
decode_ac13_field 78 ######## 70 ######## 75 ######## 88 #########
|
|||
|
|
|||
|
decode_ac12_field 85 ######### 70 ######## 100 ########### 88 #########
|
|||
|
mode_s_decode 78 ######## 90 ########## 50 ###### 38 ####
|
|||
|
mode_s_compute_magnitude_vector
|
|||
|
85 ######### 60 ####### 100 ########### 100 ###########
|
|||
|
detect_out_of_phase 81 ######### 60 ####### 100 ########### 88 #########
|
|||
|
apply_phase_correction 96 ########## 90 ########## 100 ########### 100 ###########
|
|||
|
mode_s_detect 63 ####### 90 ########## 0 38 ####
|
|||
|
|
|||
|
Total for mode-s.c 89 ######### 100 ########### 82 ######### 80 #########
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
|
|||
|
**************************************************
|
|||
|
* *
|
|||
|
* File and Procedure Results, Metric by Metric *
|
|||
|
* *
|
|||
|
**************************************************
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Reformatted Code Information for File (mode-s.c)
|
|||
|
------------------------------------------------
|
|||
|
|
|||
|
==============================================================================================================================
|
|||
|
FILE TOTAL REF. TOTAL EXECUTABLE NON-EXECUTABLE NUMBER OF TOTAL EXPANSION
|
|||
|
LINES COMMENTS REF. LINES REF. LINES PROCEDURES SRC. LINES FACTOR
|
|||
|
==============================================================================================================================
|
|||
|
|
|||
|
Total for mode-s.c 1407 (P) 242 (P) (17%) 918 (P) (65%) 247 (P) (18%) 16 (P) 740 (P) 1.90 (P)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
Procedure Information (mode-s.c)
|
|||
|
--------------------------------
|
|||
|
|
|||
|
=================================================================================
|
|||
|
PROCEDURE EXECUTABLE BASIC AVE. BLOCK PROCEDURE PROCEDURE
|
|||
|
LINES BLOCKS LENGTH ENTRIES EXITS
|
|||
|
=================================================================================
|
|||
|
|
|||
|
mode_s_init 35 (P) 11 (P) 3.18 (P) 1 (P) 1 (P)
|
|||
|
mode_s_checksum 27 (P) 10 (P) 2.70 (P) 1 (P) 1 (P)
|
|||
|
mode_s_msg_len_by_type 23 (P) 11 (P) 2.09 (P) 1 (P) 3 (F)
|
|||
|
fix_single_bit_errors 38 (P) 8 (P) 4.75 (P) 1 (P) 2 (F)
|
|||
|
fix_two_bits_errors 49 (P) 12 (P) 4.08 (P) 1 (P) 2 (F)
|
|||
|
icao_cache_has_addr 9 (P) 1 (P) 9.00 (F) 1 (P) 1 (P)
|
|||
|
add_recently_seen_icao_addr
|
|||
|
7 (P) 1 (P) 7.00 (F) 1 (P) 1 (P)
|
|||
|
icao_addr_was_recently_seen
|
|||
|
14 (P) 4 (P) 3.50 (P) 1 (P) 1 (P)
|
|||
|
brute_force_ap 42 (P) 13 (P) 3.23 (P) 1 (P) 2 (F)
|
|||
|
decode_ac13_field 25 (P) 8 (P) 3.12 (P) 1 (P) 2 (F)
|
|||
|
|
|||
|
decode_ac12_field 16 (P) 6 (P) 2.67 (P) 1 (P) 3 (F)
|
|||
|
mode_s_decode 285 (F) 69 (F) 4.13 (P) 1 (P) 1 (P)
|
|||
|
mode_s_compute_magnitude_vector
|
|||
|
28 (P) 9 (P) 3.11 (P) 1 (P) 1 (P)
|
|||
|
detect_out_of_phase 39 (P) 13 (P) 3.00 (P) 1 (P) 5 (F)
|
|||
|
apply_phase_correction 26 (P) 8 (P) 3.25 (P) 1 (P) 1 (P)
|
|||
|
mode_s_detect 255 (F) 90 (F) 2.83 (P) 1 (P) 1 (P)
|
|||
|
|
|||
|
Total for mode-s.c 918 (P) 274 (P) 3.35 (P) 1 (P) 13 (F)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
Comments Associated with Procedures (% of total) (mode-s.c)
|
|||
|
-----------------------------------------------------------
|
|||
|
|
|||
|
======================================================================================================
|
|||
|
PROCEDURE TOTAL IN IN IN BLANK
|
|||
|
COMMENTS HEADERS DECLARATIONS EXECUTABLE CODE COMMENTS
|
|||
|
======================================================================================================
|
|||
|
|
|||
|
mode_s_init 9 (F) 1 (F) (11%) 0 (P) (0%) 8 (P) (89%) 1 (P)
|
|||
|
mode_s_checksum 20 (P) 18 (P) (90%) 0 (P) (0%) 2 (P) (10%) 5 (P)
|
|||
|
mode_s_msg_len_by_type 2 (F) 2 (F) (100%) 0 (P) (0%) 0 (F) (0%) 0 (P)
|
|||
|
fix_single_bit_errors 6 (F) 3 (F) (50%) 0 (P) (0%) 3 (P) (50%) 0 (P)
|
|||
|
fix_two_bits_errors 11 (P) 3 (F) (27%) 0 (P) (0%) 8 (P) (73%) 0 (P)
|
|||
|
icao_cache_has_addr 4 (F) 2 (F) (50%) 2 (P) (50%) 0 (F) (0%) 0 (P)
|
|||
|
add_recently_seen_icao_addr
|
|||
|
3 (F) 3 (F) (100%) 0 (P) (0%) 0 (F) (0%) 0 (P)
|
|||
|
icao_addr_was_recently_seen
|
|||
|
3 (F) 3 (F) (100%) 0 (P) (0%) 0 (F) (0%) 0 (P)
|
|||
|
brute_force_ap 23 (P) 15 (P) (65%) 0 (P) (0%) 8 (P) (35%) 5 (P)
|
|||
|
decode_ac13_field 7 (F) 2 (F) (29%) 0 (P) (0%) 5 (P) (71%) 0 (P)
|
|||
|
|
|||
|
decode_ac12_field 5 (F) 2 (F) (40%) 0 (P) (0%) 3 (P) (60%) 0 (P)
|
|||
|
mode_s_decode 51 (P) 2 (F) (4%) 2 (P) (4%) 47 (P) (92%) 4 (P)
|
|||
|
mode_s_compute_magnitude_vector
|
|||
|
3 (F) 1 (F) (33%) 2 (P) (67%) 0 (F) (0%) 0 (P)
|
|||
|
detect_out_of_phase 6 (F) 6 (P) (100%) 0 (P) (0%) 0 (F) (0%) 1 (P)
|
|||
|
apply_phase_correction 29 (P) 26 (P) (90%) 0 (P) (0%) 3 (P) (10%) 6 (P)
|
|||
|
mode_s_detect 60 (P) 3 (F) (5%) 22 (P) (37%) 35 (P) (58%) 3 (P)
|
|||
|
|
|||
|
Total for mode-s.c 242 (P) 92 (P) (38%) 28 (P) (12%) 122 (P) (50%) 25 (P)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
Ratio of Comments to Executable lines (%) (mode-s.c)
|
|||
|
----------------------------------------------------
|
|||
|
|
|||
|
===================================================================================
|
|||
|
PROCEDURE EXECUTABLE TOTAL IN IN IN
|
|||
|
LINES COMMENTS(%) HEADERS(%) DECL.(%) CODE(%)
|
|||
|
===================================================================================
|
|||
|
|
|||
|
mode_s_init 35 (P) 26 (P) 3 (P) 0 (F) 23 (P)
|
|||
|
mode_s_checksum 27 (P) 74 (P) 67 (P) 0 (F) 7 (P)
|
|||
|
mode_s_msg_len_by_type 23 (P) 9 (F) 9 (P) 0 (F) 0 (F)
|
|||
|
fix_single_bit_errors 38 (P) 16 (P) 8 (P) 0 (F) 8 (P)
|
|||
|
fix_two_bits_errors 49 (P) 22 (P) 6 (P) 0 (F) 16 (P)
|
|||
|
icao_cache_has_addr 9 (P) 44 (P) 22 (P) 22 (P) 0 (F)
|
|||
|
add_recently_seen_icao_addr
|
|||
|
7 (P) 43 (P) 43 (P) 0 (F) 0 (F)
|
|||
|
icao_addr_was_recently_seen
|
|||
|
14 (P) 21 (P) 21 (P) 0 (F) 0 (F)
|
|||
|
brute_force_ap 42 (P) 55 (P) 36 (P) 0 (F) 19 (P)
|
|||
|
decode_ac13_field 25 (P) 28 (P) 8 (P) 0 (F) 20 (P)
|
|||
|
|
|||
|
decode_ac12_field 16 (P) 31 (P) 13 (P) 0 (F) 19 (P)
|
|||
|
mode_s_decode 285 (F) 18 (P) 1 (P) 1 (P) 16 (P)
|
|||
|
mode_s_compute_magnitude_vector
|
|||
|
28 (P) 11 (P) 4 (P) 7 (P) 0 (F)
|
|||
|
detect_out_of_phase 39 (P) 15 (P) 15 (P) 0 (F) 0 (F)
|
|||
|
apply_phase_correction 26 (P) 112 (P) 100 (P) 0 (F) 12 (P)
|
|||
|
mode_s_detect 255 (F) 24 (P) 1 (P) 9 (P) 14 (P)
|
|||
|
|
|||
|
Total for mode-s.c 918 (P) 26 (P) 10 3 (P) 13 (P)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
Complexity Metrics (mode-s.c)
|
|||
|
-----------------------------
|
|||
|
|
|||
|
======================================================================================
|
|||
|
PROCEDURE CYCLOMATIC ESSENTIAL ESS. CYCL. STRUCTURED
|
|||
|
KNOTS COMPLEXITY KNOTS COMPLEXITY PROC (SPV)
|
|||
|
======================================================================================
|
|||
|
|
|||
|
mode_s_init 8 (F) 4 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
mode_s_checksum 5 (P) 4 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
mode_s_msg_len_by_type 3 (P) 6 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
fix_single_bit_errors 7 (F) 3 (P) 4 (F) 3 (P) No (F)
|
|||
|
fix_two_bits_errors 13 (F) 4 (P) 7 (F) 4 (F) No (F)
|
|||
|
icao_cache_has_addr 0 (P) 1 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
add_recently_seen_icao_addr
|
|||
|
0 (P) 1 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
icao_addr_was_recently_seen
|
|||
|
0 (P) 3 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
brute_force_ap 2 (P) 9 (P) 2 (P) 3 (P) No (F)
|
|||
|
decode_ac13_field 4 (P) 3 (P) 3 (F) 3 (P) No (F)
|
|||
|
|
|||
|
decode_ac12_field 3 (P) 2 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
mode_s_decode 7 (F) 34 (F) 0 (P) 1 (P) Yes (P)
|
|||
|
mode_s_compute_magnitude_vector
|
|||
|
4 (P) 4 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
detect_out_of_phase 4 (P) 5 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
apply_phase_correction 5 (P) 3 (P) 0 (P) 1 (P) Yes (P)
|
|||
|
mode_s_detect 36 (F) 42 (F) 13 (F) 6 (F) No (F)
|
|||
|
|
|||
|
Total for mode-s.c 101 (F) 113 (P) 29 (P) 15 (P) No (F)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
Halsteads Metrics (mode-s.c)
|
|||
|
----------------------------
|
|||
|
|
|||
|
============================================================================================================
|
|||
|
FILE TOTAL TOTAL UNIQUE UNIQUE
|
|||
|
OPERATORS OPERANDS OPERATORS OPERANDS VOCABULARY LENGTH VOLUME
|
|||
|
============================================================================================================
|
|||
|
|
|||
|
Total for mode-s.c 952 (F) 908 (P) 33 (P) 174 (P) 207 (P) 1860 (P) 14309 (P)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
Loop/Interval Analysis (mode-s.c)
|
|||
|
---------------------------------
|
|||
|
|
|||
|
=======================================================================================
|
|||
|
PROCEDURE NUMBER OF NESTING ORDER 1 MAX. INT. REDUCIBLE
|
|||
|
LOOPS DEPTH INTERVALS NESTING (INTERVALS)
|
|||
|
=======================================================================================
|
|||
|
|
|||
|
mode_s_init 2 (P) 2 (P) 4 (P) 3 (P) Yes (P)
|
|||
|
mode_s_checksum 1 (P) 1 (P) 2 (P) 2 (P) Yes (P)
|
|||
|
mode_s_msg_len_by_type 0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
fix_single_bit_errors 1 (P) 1 (P) 2 (P) 2 (P) Yes (P)
|
|||
|
fix_two_bits_errors 2 (P) 2 (P) 4 (P) 3 (P) Yes (P)
|
|||
|
icao_cache_has_addr 0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
add_recently_seen_icao_addr
|
|||
|
0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
icao_addr_was_recently_seen
|
|||
|
0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
brute_force_ap 0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
decode_ac13_field 0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
|
|||
|
decode_ac12_field 0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
mode_s_decode 0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
mode_s_compute_magnitude_vector
|
|||
|
1 (P) 1 (P) 2 (P) 2 (P) Yes (P)
|
|||
|
detect_out_of_phase 0 (P) 0 (P) 1 (P) 1 (P) Yes (P)
|
|||
|
apply_phase_correction 1 (P) 1 (P) 2 (P) 2 (P) Yes (P)
|
|||
|
mode_s_detect 4 (P) 2 (P) 6 (F) 3 (P) Yes (P)
|
|||
|
|
|||
|
Total for mode-s.c 12 (P) 2 (P) 16 (P) 3 (P) Yes (P)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
LCSAJ and Unreachability (mode-s.c)
|
|||
|
-----------------------------------
|
|||
|
|
|||
|
=================================================================================================
|
|||
|
FILE TOTAL REACHABLE UNREACHABLE MAX. LCSAJ UNREACHABLE UNREACHABLE
|
|||
|
LCSAJS LCSAJS LCSAJS DENSITY LINES BRANCHES
|
|||
|
=================================================================================================
|
|||
|
|
|||
|
Total for mode-s.c 387 (P) 376 (P) 11 (F) 18 (P) 0 (P) 6 (P)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
Dataflow Information (mode-s.c)
|
|||
|
-------------------------------
|
|||
|
|
|||
|
=====================================================
|
|||
|
PROCEDURE GLOBALS IN FILE FAN
|
|||
|
PROCEDURE FAN IN OUT
|
|||
|
=====================================================
|
|||
|
|
|||
|
mode_s_init 0 (P) 0 (P) 3 (P)
|
|||
|
mode_s_checksum 1 (P) 4 (P) 0 (P)
|
|||
|
mode_s_msg_len_by_type 0 (P) 2 (P) 0 (P)
|
|||
|
fix_single_bit_errors 1 (P) 1 (P) 2 (P)
|
|||
|
fix_two_bits_errors 1 (P) 1 (P) 2 (P)
|
|||
|
icao_cache_has_addr 0 (P) 2 (P) 0 (P)
|
|||
|
add_recently_seen_icao_addr
|
|||
|
0 (P) 1 (P) 2 (P)
|
|||
|
icao_addr_was_recently_seen
|
|||
|
0 (P) 1 (P) 2 (P)
|
|||
|
brute_force_ap 1 (P) 1 (P) 3 (P)
|
|||
|
decode_ac13_field 0 (P) 1 (P) 0 (P)
|
|||
|
|
|||
|
decode_ac12_field 0 (P) 1 (P) 0 (P)
|
|||
|
mode_s_decode 1 (P) 1 (P) 11 (F)
|
|||
|
mode_s_compute_magnitude_vector
|
|||
|
0 (P) 0 (P) 0 (P)
|
|||
|
detect_out_of_phase 0 (P) 1 (P) 0 (P)
|
|||
|
apply_phase_correction 0 (P) 1 (P) 0 (P)
|
|||
|
mode_s_detect 1 (P) 0 (P) 7 (F)
|
|||
|
|
|||
|
Total for mode-s.c 6 (P) 18 (P) 32 (P)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
|
|||
|
|
|||
|
******************
|
|||
|
* *
|
|||
|
* Key to Terms *
|
|||
|
* *
|
|||
|
******************
|
|||
|
|
|||
|
|
|||
|
Clarity
|
|||
|
-------
|
|||
|
Metrics that indicate how easy it is likely to be
|
|||
|
to read and understand the purpose of a source code module or procedure:
|
|||
|
|
|||
|
* Executable ref. Lines
|
|||
|
* Total Comments
|
|||
|
* Comments in Headers
|
|||
|
* Comments in Declarations
|
|||
|
* Comments in Executable Code
|
|||
|
* Blank Lines
|
|||
|
* Total Comments/Exe. Lines
|
|||
|
* Declaration Comments/Exe. Lines
|
|||
|
* Code Comments/Exe. Lines
|
|||
|
* Average Length of Basic Blocks
|
|||
|
* Unique Operands
|
|||
|
* Total LCSAJs
|
|||
|
* Depth of Loop Nesting
|
|||
|
* Expansion Factor
|
|||
|
|
|||
|
|
|||
|
Testability
|
|||
|
-----------
|
|||
|
Metrics that indicate the amount testing that will be required,
|
|||
|
particularly with respect to achieving high Dynamic Coverage :
|
|||
|
|
|||
|
* Knots
|
|||
|
* Cyclomatic Complexity
|
|||
|
* Executable reformatted Lines
|
|||
|
* Number of Basic Blocks
|
|||
|
* Total Operands
|
|||
|
* Number of Loops
|
|||
|
* Procedure Exit Points
|
|||
|
* Number of Procedures
|
|||
|
* Total LCSAJs
|
|||
|
* Unreachable LCSAJs
|
|||
|
* Maximum LCSAJ Density
|
|||
|
* Unreachable Lines
|
|||
|
* Unreachable Branches
|
|||
|
* File Fan in
|
|||
|
* Fan Out
|
|||
|
|
|||
|
|
|||
|
Maintainability
|
|||
|
---------------
|
|||
|
Metrics that indicate the level of consideration that must be given
|
|||
|
to modifying a source code module or procedure:
|
|||
|
|
|||
|
* Essential Knots
|
|||
|
* Essential Cyclomatic Complexity
|
|||
|
* Knots
|
|||
|
* Cyclomatic Complexity
|
|||
|
* Vocabulary
|
|||
|
* Number of Procedures
|
|||
|
* Total LCSAJs
|
|||
|
* Unreachable LCSAJs
|
|||
|
* Maximum LCSAJ Density
|
|||
|
* Unreachable Lines
|
|||
|
* Unreachable Branches
|
|||
|
|
|||
|
|
|||
|
Metric results Pass/Fail indicators.
|
|||
|
------------------------------------
|
|||
|
The display of Pass and Fail indicators is controlled by two environment variables:
|
|||
|
|
|||
|
=====================================================================
|
|||
|
RESULT ENVIRONMENT FLAG INDICATOR
|
|||
|
=====================================================================
|
|||
|
Pass SHOW_METRIC_PASS (P)
|
|||
|
Fail SHOW_METRIC_FAIL (F)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
Upper and lower limits for a "Total for <file>" metric can be derived from the
|
|||
|
upper and lower limits for a procedure where appropriate.
|
|||
|
This is achieved using the 'c' marker in the Metrics Data File.
|
|||
|
|
|||
|
The base for this calculation is currently variable between files:
|
|||
|
(Number of procedures in each source file)
|
|||
|
|
|||
|
|
|||
|
|
|||
|
--------------------------------------------------------------------------------
|
|||
|
===========================================================
|
|||
|
* *
|
|||
|
* End of Quality Review Report *
|
|||
|
* *
|
|||
|
* Copyright (C) 2019 Liverpool Data Research Associates *
|
|||
|
* *
|
|||
|
===========================================================
|
|||
|
|
|||
|
|