microsoft / WPF-Samples
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 (28 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 28 components.
  • 1,934 files, 125,864 lines of code (100.0% vs. main code).
  • "Sample Applications" is biggest, containing 19.57% of code.
  • "ROOT" is smallest, containing 0.12% of code.


Sample Applications24632 LOC (19%) 248 files
Getting Started20110 LOC (15%) 152 files
Graphics18252 LOC (14%) 243 files
Documents14714 LOC (11%) 132 files
Animation8653 LOC (6%) 142 files
Tools6126 LOC (4%) 36 files
Data Binding5641 LOC (4%) 223 files
Migration and Interoperability5058 LOC (4%) 114 files
Accessibility4174 LOC (3%) 49 files
Input and Commands3832 LOC (3%) 100 files
Windows2247 LOC (1%) 86 files
Globalization and Localization1370 LOC (1%) 73 files
PerMonitorDPI1348 LOC (1%) 27 files
Elements1185 LOC (<1%) 51 files
Clipboard1116 LOC (<1%) 10 files
Drag and Drop978 LOC (<1%) 31 files
Application Management906 LOC (<1%) 55 files
Styles & Templates862 LOC (<1%) 33 files
Speech and Media837 LOC (<1%) 17 files
Visual Layer705 LOC (<1%) 17 files
Threading609 LOC (<1%) 15 files
eng596 LOC (<1%) 4 files
Properties554 LOC (<1%) 20 files
Events337 LOC (<1%) 21 files
Resources332 LOC (<1%) 17 files
Compatibility312 LOC (<1%) 5 files
Element Tree224 LOC (<1%) 11 files
ROOT154 LOC (<1%) 2 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-01-30 09:50