aws-samples / kda-metrics-dashboard
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 50 units with 389 lines of code in units (47.9% of code).
    • 0 very long units (0 lines of code)
    • 0 long units (0 lines of code)
    • 6 medium size units (144 lines of code)
    • 5 small units (74 lines of code)
    • 39 very small units (171 lines of code)
0% | 0% | 37% | 19% | 43%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
java0% | 0% | 37% | 19% | 43%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics0% | 0% | 100% | 0% | 0%
demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/payloads0% | 0% | 41% | 11% | 46%
demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/payloads0% | 0% | 41% | 11% | 46%
demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics0% | 0% | 0% | 100% | 0%
demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/utils0% | 0% | 0% | 45% | 54%
demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/sources0% | 0% | 0% | 0% | 100%
demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/utils0% | 0% | 0% | 0% | 100%
demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/operators0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
public static void main()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/DemoKDAApp.java
30 3 1
private Builder()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
23 6 1
private Builder()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
23 6 1
private Builder()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
23 6 1
private Builder()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
23 6 1
public static DataStream createKinesisSource()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/DemoKDAApp.java
22 2 2
public static void main()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/DemoKinesisDriver.java
18 3 1
public static FlinkKinesisProducer createKinesisSink()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/DemoKinesisDriver.java
16 1 2
public EmployeeInfo deserialize()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/utils/EmployeeInfoDeserializationSchema.java
14 1 6
public EmployeeInfo build()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
13 7 0
public EmployeeInfo build()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
13 7 0
public void run()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/sources/RandEmployeeInfoSource.java
10 3 1
private EmployeeInfo getNextEmployee()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/sources/RandEmployeeInfoSource.java
10 1 0
public void put()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
10 6 2
public void put()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
10 6 2
public static ParameterTool fromArgsAndApplicationProperties()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/utils/ParameterToolUtils.java
9 2 1
public static ParameterTool fromArgsAndApplicationProperties()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/utils/ParameterToolUtils.java
9 2 1
public void apply()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/operators/CountWindowFn.java
8 1 4
public EmployeeInfo()
in demo-apps/demo-kinesis-driver/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
7 1 5
public EmployeeInfo()
in demo-apps/demo-kda-app/src/main/java/com/amazonaws/services/kinesisanalytics/payloads/EmployeeInfo.java
7 1 5