microsoft / omi
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 (44 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 44 components.
  • 584 files, 188,752 lines of code (26.4% vs. main code).
  • "Unix/base" is biggest, containing 16.9% of code.
  • "Unix/midll" is smallest, containing 0% of code.


Unix/base31902 LOC (4%) 86 files
Unix/codec14485 LOC (2%) 40 files
Unix/wsman13826 LOC (1%) 15 files
Unix/mof12158 LOC (1%) 21 files
Unix/miapi9362 LOC (1%) 18 files
Unix/provmgr8997 LOC (1%) 25 files
Unix/http8716 LOC (1%) 13 files
Unix/nits7808 LOC (1%) 30 files
Unix/pal7208 LOC (1%) 67 files
Unix/common7015 LOC (<1%) 6 files
Unix/gen6723 LOC (<1%) 15 files
Unix/xmlserializer5034 LOC (<1%) 8 files
Unix/micxx4919 LOC (<1%) 21 files
Unix/xml4821 LOC (<1%) 11 files
Unix/doc4738 LOC (<1%) 1 files
Unix/scriptext3322 LOC (<1%) 8 files
Unix/oi3222 LOC (<1%) 24 files
Unix/wql3026 LOC (<1%) 13 files
Unix/protocol2789 LOC (<1%) 5 files
Unix/disp2767 LOC (<1%) 4 files
Unix/indication2706 LOC (<1%) 20 files
Unix/cli2514 LOC (<1%) 2 files
Unix/deprecated2474 LOC (<1%) 13 files
Unix/sock2219 LOC (<1%) 8 files
Unix/omi_error2152 LOC (<1%) 8 files
Unix/omiutils2050 LOC (<1%) 8 files
Unix/server1969 LOC (<1%) 5 files
Unix/omiclient1834 LOC (<1%) 6 files
Unix/provreg1584 LOC (<1%) 4 files
Unix/providers1531 LOC (<1%) 5 files
Unix/ut999 LOC (<1%) 17 files
Unix/tools816 LOC (<1%) 5 files
Unix/omireg747 LOC (<1%) 1 files
Unix/strhash428 LOC (<1%) 1 files
Unix/configeditor419 LOC (<1%) 1 files
Unix/agent389 LOC (<1%) 3 files
Unix/scripts356 LOC (<1%) 1 files
Unix/etc284 LOC (<1%) 35 files
Unix/check283 LOC (<1%) 2 files
Unix/engine94 LOC (<1%) 3 files
Unix/image28 LOC (<1%) 1 files
Unix/chkshlib20 LOC (<1%) 1 files
ROOT10 LOC (<1%) 1 files
Unix/midll8 LOC (<1%) 2 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-01-30 11:30