microsoft / ailab
Components & Dependencies

An overview of source code logical components.

Intro

Logical decomposition is a representation of the organization of the main source code, where every and each file is put in exactly one logical component.

  • A software system can have one or more logical decompositions.
  • A logical decomposition can be defined in two ways in Sokrates.
  • First approach is based on the folders structure. Components are mapped to folders at defined folder depth relative to the source code root.
  • Second approach is based on explicit definition of each component. In such explicit definitions, components are explicitly named and their files are selected based on explicitly defined path and content filters.
  • A logical decomposition is considered invalid if a file is selected into two or more components.This constraint is introduced in order to facilitate measuring of dependencies among components.
  • Files not assigned to any component are put into a special "Unclassified" component.
Learn more...
Logical Decompositions Overview

Analyzed system has 1 logical decomposition:

  • primary (24 components)

Logical Decomposition #1: PRIMARY

The decompositions is based on the folder structure (relative to the source code root), with automatically defined folder depth to have at least 10 components.

Bubble Chart | Tree Map
Components
The "primary" logical decomposition has 24 components.
  • 861 files, 72,441 lines of code (100.0% vs. main code).
  • "Snip-Insights/SnipInsight" is biggest, containing 33.31% of code.
  • "Snip-Insights/StyleCop" is smallest, containing 0.01% of code.


Snip-Insights/SnipInsight24130 LOC (33%) 190 files
Sketch2Code/Sketch2Code.Web14047 LOC (19%) 71 files
VirtualStage/Speaker.Recorder7159 LOC (9%) 75 files
JFKFiles/frontend5922 LOC (8%) 192 files
Snip-Insights/SnipInsight.Forms5609 LOC (7%) 135 files
BuildAnIntelligentBot/src4190 LOC (5%) 45 files
Snip-Insights/SnipInsight.Forms.GTK2351 LOC (3%) 26 files
Pix2Story/source2143 LOC (2%) 44 files
Sketch2Code/Sketch2Code.Core1213 LOC (1%) 13 files
GoogleAssistantConnector/GoogleAssistant1211 LOC (1%) 25 files
VirtualStage/BackgroundMatting1142 LOC (1%) 11 files
Snip-Insights/Installers1056 LOC (1%) 3 files
JFKFiles/JfkWebApiSkills715 LOC (<1%) 13 files
GoogleAssistantConnector/DemoBot533 LOC (<1%) 4 files
Sketch2Code/Sketch2Code.AI290 LOC (<1%) 4 files
VirtualStage/KinectMaskGenerator282 LOC (<1%) 1 files
JFKFiles/resources148 LOC (<1%) 1 files
MachineTeaching/Smart-Building75 LOC (<1%) 1 files
MachineTeaching/Machine-Calibration65 LOC (<1%) 1 files
MachineTeaching/Motion-Control63 LOC (<1%) 1 files
Sketch2Code/Sketch2Code.Api52 LOC (<1%) 1 files
Pix2Story22 LOC (<1%) 1 files
Snip-Insights13 LOC (<1%) 2 files
Snip-Insights/StyleCop10 LOC (<1%) 1 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-01-30 20:35