apache / tuscany-sca-2.x
Source Code Overview

Analysis scope, overview of main, test, generated, deployment, build, and other code.

Source Code Analysis Scope
Files includes and excluded from analyses
xsd
properties
wsdl
txt
profile
command
Overview of Analyzed Files
Basic stats on analyzed files
Intro
For analysis purposes we separate files in scope into several categories: main, test, generated, deployment and build, and other.

  • The main category contains all manually created source code files that are being used in the production.
  • Files in the main category are used as input for other analyses: logical decomposition, concerns, duplication, file size, unit size, and conditional complexity.
  • Test source code files are used only for testing of the product. These files are normally not deployed to production.
  • Build and deployment source code files are used to configure or support build and deployment process.
  • Generated source code files are automatically generated files that have not been manually changed after generation.
  • While a source code folder may contain a number of files, we are primarily interested in the source code files that are being written and maintained by developers.
  • Files containing binaries, documentation, or third-party libraries, for instance, are excluded from analysis. The exception are third-party libraries that have been changed by developers.

main165783 LOC (59%) 2,908 files
test61371 LOC (22%) 1,286 files
generated6156 LOC (2%) 134 files
build and deployment20673 LOC (7%) 388 files
other23616 LOC (8%) 590 files
Main Code
All manually created or maintained source code that defines logic of the product that is run in a production environment.
wsdl
profile
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*".
  • 2908 files match defined criteria (165,783 LOC, 100.0% vs. main code):
    • 2,597 *.java files (153,151 LOC)
    • 54 *.wsdl files (5,705 LOC)
    • 211 *.xml files (3,301 LOC)
    • 7 *.js files (1,669 LOC)
    • 14 *.py files (1,101 LOC)
    • 3 *.profile files (520 LOC)
    • 12 *.jsp files (214 LOC)
    • 9 *.html files (86 LOC)
    • 1 *.css files (36 LOC)
  • " *.java" is biggest, containing 92.38% of LOC.
  • " *.css" is smallest, containing 0.02% of LOC.


*.java153151 LOC (92%) 2,597 files
*.wsdl5705 LOC (3%) 54 files
*.xml3301 LOC (1%) 211 files
*.js1669 LOC (1%) 7 files
*.py1101 LOC (<1%) 14 files
*.profile520 LOC (<1%) 3 files
*.jsp214 LOC (<1%) 12 files
*.html86 LOC (<1%) 9 files
*.css36 LOC (<1%) 1 file
Test Code
Used only for testing of the product. Normally not deployed in a production environment.
wsdl
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/[Tt]est/.*".
    • files with paths like ".*/[Tt]ests/.*".
    • files with paths like ".*[-]tests/.*".
    • files with paths like ".*[-]tests[-].*".
    • files with paths like ".*[-]test[-].*".
    • files with paths like ".*/test_.*".
    • files with paths like ".*_test[.].*".
  • 1286 files match defined criteria (61,371 LOC, 37.0% vs. main code):
    • 1,135 *.java files (56,932 LOC)
    • 99 *.xml files (2,620 LOC)
    • 33 *.wsdl files (1,530 LOC)
    • 5 *.html files (230 LOC)
    • 5 *.py files (32 LOC)
    • 3 *.rb files (9 LOC)
    • 3 *.groovy files (9 LOC)
    • 3 *.js files (9 LOC)
  • " *.java" is biggest, containing 92.77% of LOC.
  • " *.js" is smallest, containing 0.01% of LOC.


*.java56932 LOC (92%) 1,135 files
*.xml2620 LOC (4%) 99 files
*.wsdl1530 LOC (2%) 33 files
*.html230 LOC (<1%) 5 files
*.py32 LOC (<1%) 5 files
*.rb9 LOC (<1%) 3 files
*.groovy9 LOC (<1%) 3 files
*.js9 LOC (<1%) 3 files
Generated Code
Automatically generated files, not manually changed after generation.
wsdl
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with any line of content like "// This file was generated .*".
    • files with paths like ".*/generated/.*".
    • files with any line of content like "\<\!\-\-[ ]*Generated by .*".
  • 134 files match defined criteria (6,156 LOC, 3.7% vs. main code):
    • 119 *.java files (5,086 LOC)
    • 15 *.wsdl files (1,070 LOC)
  • " *.java" is biggest, containing 82.62% of LOC.
  • " *.wsdl" is smallest, containing 17.38% of LOC.


*.java5086 LOC (82%) 119 files
*.wsdl1070 LOC (17%) 15 files
Build and Deployment Code
Source code used to configure or support build and deployment process.
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*/pom[.]xml".
    • files with paths like ".*/assembly/src[.]xml".
    • files with paths like ".*[.]sh".
    • files with paths like ".*[.]bat".
    • files with paths like ".*/build[.]xml".
    • files with paths like ".*[.]git[a-z]+".
    • files with paths like ".*/[.]gitignore".
  • 388 files match defined criteria (20,673 LOC, 12.5% vs. main code):
    • 385 *.xml files (20,538 LOC)
    • 2 *.bat files (83 LOC)
    • 1 *.sh files (52 LOC)
  • " *.xml" is biggest, containing 99.35% of LOC.
  • " *.sh" is smallest, containing 0.25% of LOC.


*.xml20538 LOC (99%) 385 files
*.bat83 LOC (<1%) 2 files
*.sh52 LOC (<1%) 1 file
Other Code
xsd
txt
properties
Explore:   circles  |  sunburst
  • The following criteria are used to filter files:
    • files with paths like ".*[.]json".
    • files with paths like ".*[.]txt".
    • files with paths like ".*[.]properties".
    • files with paths like ".*/resources/.*[.]xsd".
    • files with paths like ".*/README[.][a-z0-9]+".
    • files with paths like ".*/[Ss]amples/.*".
    • files with paths like ".*[.]svg".
    • files with paths like ".*/[.]gitignore".
  • 590 files match defined criteria (23,616 LOC, 14.2% vs. main code):
    • 129 *.xsd files (5,910 LOC)
    • 27 *.txt files (4,612 LOC)
    • 201 *.java files (4,430 LOC)
    • 108 *.xml files (3,808 LOC)
    • 102 *.properties files (3,133 LOC)
    • 14 *.html files (1,046 LOC)
    • 2 *.svg files (608 LOC)
    • 3 *.scala files (29 LOC)
    • 2 *.jsp files (22 LOC)
    • 1 *.bat files (17 LOC)
    • 1 *.sh files (1 LOC)
  • " *.xsd" is biggest, containing 25.03% of LOC.
  • " *.sh" is smallest, containing 0% of LOC.


*.xsd5910 LOC (25%) 129 files
*.txt4612 LOC (19%) 27 files
*.java4430 LOC (18%) 201 files
*.xml3808 LOC (16%) 108 files
*.properties3133 LOC (13%) 102 files
*.html1046 LOC (4%) 14 files
*.svg608 LOC (2%) 2 files
*.scala29 LOC (<1%) 3 files
*.jsp22 LOC (<1%) 2 files
*.bat17 LOC (<1%) 1 file
*.sh1 LOC (<1%) 1 file
Analyzers
Info about analyzers used for source code examinations.


2023-08-10 13:36