awslabs / fhir-works-on-aws-deployment
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 19% duplication:
    • 4,317 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 862 duplicated lines
  • 385 duplicates
system19% (862 lines)
Duplication per Extension
yaml33% (824 lines)
ts2% (20 lines)
py6% (18 lines)
Duplication per Component (primary)
cloudformation45% (601 lines)
ROOT20% (186 lines)
auditLogMover7% (25 lines)
bulkExport10% (22 lines)
scripts2% (18 lines)
updateSearchMappings20% (10 lines)
src0% (0 lines)
src/implementationGuides0% (0 lines)
javaHapiValidatorLambda/src0% (0 lines)
javaHapiValidatorLambda0% (0 lines)
ddbToEsLambda0% (0 lines)
bulkExport/glueScripts0% (0 lines)

Duplication Between Components (50+ lines)

G auditLogMover auditLogMover cloudformation cloudformation auditLogMover--cloudformation 160 ROOT ROOT cloudformation--ROOT 94

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 385 duplicates...
Size#FoldersFilesLinesCode
27 x 2 ROOT
ROOT
serverless.yaml
serverless.yaml
619:645 (3%)
686:712 (3%)
view
15 x 2 ROOT
ROOT
serverless.yaml
serverless.yaml
668:682 (1%)
724:738 (1%)
view
13 x 2 cloudformation
cloudformation
alarms.yaml
alarms.yaml
160:172 (2%)
189:201 (2%)
view
12 x 2 cloudformation
cloudformation
bulkExport.yaml
bulkExport.yaml
14:25 (3%)
263:274 (3%)
view
11 x 2 ROOT
ROOT
serverless.yaml
serverless.yaml
541:551 (1%)
672:682 (1%)
view
11 x 2 ROOT
ROOT
serverless.yaml
serverless.yaml
532:542 (1%)
635:645 (1%)
view
11 x 2 ROOT
ROOT
serverless.yaml
serverless.yaml
541:551 (1%)
728:738 (1%)
view
11 x 2 ROOT
ROOT
serverless.yaml
serverless.yaml
532:542 (1%)
702:712 (1%)
view
10 x 2 cloudformation
cloudformation
alarms.yaml
alarms.yaml
25:34 (1%)
106:115 (1%)
view
10 x 2 bulkExport
updateSearchMappings
uploadGlueScriptsToS3.ts
index.ts
17:31 (15%)
21:36 (20%)
view
9 x 2 cloudformation
cloudformation
kms.yaml
kms.yaml
36:44 (7%)
74:82 (7%)
view
9 x 2 cloudformation
cloudformation
alarms.yaml
alarms.yaml
107:115 (1%)
193:201 (1%)
view
9 x 2 cloudformation
cloudformation
alarms.yaml
alarms.yaml
107:115 (1%)
164:172 (1%)
view
9 x 2 cloudformation
cloudformation
kms.yaml
kms.yaml
55:63 (7%)
107:115 (7%)
view
9 x 2 cloudformation
ROOT
bulkExport.yaml
serverless.yaml
108:116 (2%)
499:507 (1%)
view
9 x 2 ROOT
ROOT
serverless.yaml
serverless.yaml
522:530 (1%)
692:700 (1%)
view
9 x 2 cloudformation
ROOT
bulkExport.yaml
serverless.yaml
108:116 (2%)
481:489 (1%)
view
9 x 2 cloudformation
cloudformation
kms.yaml
kms.yaml
17:25 (7%)
36:44 (7%)
view
9 x 2 cloudformation
cloudformation
kms.yaml
kms.yaml
17:25 (7%)
55:63 (7%)
view
9 x 2 cloudformation
cloudformation
kms.yaml
kms.yaml
17:25 (7%)
74:82 (7%)
view