aws-samples / flink-stream-processing-refarch
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 59 units with 544 lines of code in units (34.0% of code).
    • 0 very long units (0 lines of code)
    • 2 long units (133 lines of code)
    • 3 medium size units (102 lines of code)
    • 6 small units (95 lines of code)
    • 48 very small units (214 lines of code)
0% | 24% | 18% | 17% | 39%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
java0% | 24% | 18% | 17% | 39%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch0% | 100% | 0% | 0% | 0%
kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch0% | 50% | 30% | 15% | 3%
kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/utils0% | 0% | 29% | 33% | 37%
flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/utils0% | 0% | 31% | 0% | 68%
flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/events/kinesis0% | 0% | 0% | 47% | 52%
kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/events0% | 0% | 0% | 19% | 80%
flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/events/es0% | 0% | 0% | 0% | 100%
flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/events0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
public static void main()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/ProcessTaxiStream.java
76 7 1
private void populate()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/StreamPopulator.java
57 9 0
public TripEvent next()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/utils/TaxiEventReader.java
43 8 0
public static void main()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/StreamPopulator.java
34 3 1
public void open()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/utils/ElasticsearchJestSink.java
25 1 1
private void refreshShards()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/utils/WatermarkTracker.java
20 4 0
private void sentWatermarkToShards()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/utils/WatermarkTracker.java
19 3 0
public StreamPopulator()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/StreamPopulator.java
17 1 9
public static Event parseEvent()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/events/kinesis/Event.java
16 4 1
public static TripEvent adaptTime()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/events/TripEvent.java
12 4 2
public void seek()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/utils/TaxiEventReader.java
11 5 2
public TripEvent()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/events/kinesis/TripEvent.java
9 1 0
public void invoke()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/utils/ElasticsearchJestSink.java
9 4 1
public static TripEvent fromStringOverwriteTime()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/events/TripEvent.java
9 1 1
public ElasticsearchJestSink()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/utils/ElasticsearchJestSink.java
8 1 5
public void snapshotState()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/utils/ElasticsearchJestSink.java
8 3 1
public static TripEvent fromStringShiftOrigin()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/events/TripEvent.java
8 1 2
public WatermarkEvent()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/events/WatermarkEvent.java
8 1 1
public void acquire()
in kinesis-taxi-stream-producer/src/main/java/com/amazonaws/flink/refarch/utils/BackpressureSemaphore.java
8 2 1
public TripDuration()
in flink-taxi-stream-processor/src/main/java/com/amazonaws/flink/refarch/events/es/TripDuration.java
7 1 5