awslabs / kubeflow-manifests
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 (42 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 42 components.
  • 876 files, 99,885 lines of code (51.8% vs. main code).
  • "common/cert-manager" is biggest, containing 26.93% of code.
  • "ROOT" is smallest, containing 0.01% of code.


common/cert-manager26904 LOC (13%) 5 files
apps/kfserving16670 LOC (8%) 39 files
contrib/flink7681 LOC (3%) 14 files
common/istio-1-96836 LOC (3%) 23 files
common/knative6639 LOC (3%) 17 files
apps/xgboost-job6435 LOC (3%) 8 files
contrib/spark5318 LOC (2%) 13 files
apps/jupyter3586 LOC (1%) 42 files
apps/kfp-tekton3389 LOC (1%) 143 files
apps/pipeline3050 LOC (1%) 140 files
contrib/tektoncd1900 LOC (<1%) 37 files
distributions/aws1482 LOC (<1%) 56 files
apps/katib1258 LOC (<1%) 47 files
contrib/feast1050 LOC (<1%) 6 files
apps/tensorboard830 LOC (<1%) 43 files
contrib/dex-auth624 LOC (<1%) 19 files
apps/profiles601 LOC (<1%) 29 files
common/dex440 LOC (<1%) 18 files
contrib/application437 LOC (<1%) 14 files
hack428 LOC (<1%) 4 files
apps/mpi-job424 LOC (<1%) 9 files
apps/centraldashboard373 LOC (<1%) 12 files
apps/mxnet-job362 LOC (<1%) 13 files
contrib/modeldb337 LOC (<1%) 14 files
apps/admission-webhook329 LOC (<1%) 14 files
common/kubeflow-roles328 LOC (<1%) 2 files
apps/pytorch-job286 LOC (<1%) 10 files
contrib/seldon266 LOC (<1%) 7 files
apps/tf-training256 LOC (<1%) 10 files
apps/volumes-web-app244 LOC (<1%) 9 files
apps/kubebench217 LOC (<1%) 13 files
contrib/basic-auth192 LOC (<1%) 9 files
common/oidc-authservice174 LOC (<1%) 8 files
contrib/spartakus129 LOC (<1%) 8 files
contrib/metacontroller116 LOC (<1%) 5 files
contrib/experimental103 LOC (<1%) 3 files
common/istio58 LOC (<1%) 4 files
contrib/gatekeeper45 LOC (<1%) 2 files
common/user-namespace38 LOC (<1%) 3 files
example33 LOC (<1%) 1 files
common/kubeflow-namespace12 LOC (<1%) 2 files
ROOT5 LOC (<1%) 1 files
Dependencies
Dependencies among components are static code dependencies among files in different components.

No component dependencies found.



2022-01-31 22:44