microsoft / Recurring-Integrations-Scheduler
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
  • 31% duplication:
    • 13,255 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 4,211 duplicated lines
  • 528 duplicates
system31% (4,211 lines)
Duplication per Extension
cs31% (4,211 lines)
Duplication per Component (primary)
Scheduler32% (3,472 lines)
Common26% (389 lines)
Job.ExecutionMonitor41% (78 lines)
Job.ProcessingMonitor57% (69 lines)
Job.Import32% (68 lines)
Job.Upload50% (55 lines)
Job.Download33% (38 lines)
Job.Export36% (35 lines)
Server5% (7 lines)
Setup0% (0 lines)
ROOT0% (0 lines)

Duplication Between Components (50+ lines)

G Job.ExecutionMonitor Job.ExecutionMonitor Job.ProcessingMonitor Job.ProcessingMonitor Job.ExecutionMonitor--Job.ProcessingMonitor 145 Job.Import Job.Import Job.ExecutionMonitor--Job.Import 74 Job.Export Job.Export Job.ExecutionMonitor--Job.Export 70 Job.Upload Job.Upload Job.ExecutionMonitor--Job.Upload 64 Job.ProcessingMonitor--Job.Upload 64 Job.Import--Job.Upload 98 Job.Import--Job.ProcessingMonitor 74 Job.Download Job.Download Job.Download--Job.Upload 76 Job.Download--Job.ExecutionMonitor 64 Job.Download--Job.Import 64 Job.Download--Job.ProcessingMonitor 64 Job.Download--Job.Export 60 Job.Export--Job.Import 70 Job.Export--Job.ProcessingMonitor 70 Job.Export--Job.Upload 60

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 528 duplicates...
Size#FoldersFilesLinesCode
56 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.Designer.cs
UploadJobV3.Designer.cs
129:205 (6%)
189:265 (3%)
view
52 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
247:321 (18%)
245:319 (17%)
view
40 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.Designer.cs
ExportJobV3.Designer.cs
499:553 (4%)
871:925 (3%)
view
39 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.Designer.cs
ExportJobV3.Designer.cs
389:439 (4%)
1006:1056 (3%)
view
38 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
326:385 (13%)
336:394 (12%)
view
35 x 2 Scheduler/Forms
Scheduler/Forms
ExportJobV3.Designer.cs
UploadJobV3.Designer.cs
875:918 (3%)
1102:1145 (2%)
view
35 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.Designer.cs
UploadJobV3.Designer.cs
503:546 (3%)
1102:1145 (2%)
view
31 x 2 Job.Download
Job.Upload
Download.cs
Upload.cs
68:134 (29%)
57:123 (31%)
view
31 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.Designer.cs
ExportJobV3.Designer.cs
702:738 (3%)
291:327 (2%)
view
30 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.Designer.cs
ExportJobV3.Designer.cs
246:284 (3%)
188:226 (2%)
view
30 x 2 Job.ExecutionMonitor
Job.Import
ExecutionMonitor.cs
Import.cs
63:128 (16%)
61:126 (14%)
view
30 x 2 Job.ExecutionMonitor
Job.ProcessingMonitor
ExecutionMonitor.cs
ProcessingMonitor.cs
63:128 (16%)
59:124 (27%)
view
30 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
100:144 (10%)
104:148 (10%)
view
30 x 2 Scheduler/Forms
Scheduler/Forms
AadApplicationForm.Designer.cs
DataJobForm.Designer.cs
10:58 (22%)
10:58 (24%)
view
30 x 2 Job.Import
Job.ProcessingMonitor
Import.cs
ProcessingMonitor.cs
61:126 (14%)
59:124 (27%)
view
29 x 2 Scheduler/Forms
Scheduler/Forms
ExportJobV3.Designer.cs
UploadJobV3.Designer.cs
964:1001 (2%)
1557:1594 (1%)
view
29 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
160:199 (10%)
150:189 (9%)
view
28 x 2 Job.Import
Job.Upload
Import.cs
Upload.cs
43:116 (13%)
39:112 (28%)
view
27 x 2 Common/JobSettings
Common/JobSettings
ExecutionJobSettings.cs
ProcessingJobSettings.cs
31:85 (61%)
39:93 (60%)
view
25 x 2 Job.Download
Job.ExecutionMonitor
Download.cs
ExecutionMonitor.cs
68:123 (24%)
63:118 (13%)
view
Duplicated Units
The list of top 10 duplicated units.
See data for all 10 unit duplicates...
Size#FoldersFilesLinesCode
26 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
261:289 
259:287 
view
20 x 2 Scheduler/Forms
Scheduler/Forms
MainForm.cs
MainForm.cs
123:144 
521:542 
view
20 x 2 Scheduler/Forms
Scheduler/Forms
MainForm.cs
MainForm.cs
146:167 
563:584 
view
18 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
355:375 
365:384 
view
17 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
334:353 
344:363 
view
15 x 2 Job.ExecutionMonitor
Job.ProcessingMonitor
ExecutionMonitor.cs
ProcessingMonitor.cs
140:156 
136:152 
view
11 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
402:413 
410:421 
view
11 x 4 Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
ImportJobV3.cs
UploadJobV3.cs
433:445 
441:453 
768:780 
627:639 
view
10 x 2 Scheduler/Forms
Scheduler/Forms
DownloadJobV3.cs
ExportJobV3.cs
208:219 
202:213 
view
7 x 15 Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
Scheduler/Forms
...
AadApplicationForm.Designer.cs
AboutBox.Designer.cs
Connect.Designer.cs
CronExamples.Designer.cs
DataJobForm.Designer.cs
DownloadJobV3.Designer.cs
ExportJobV3.Designer.cs
ImportJobV3.Designer.cs
InstanceForm.Designer.cs
JobGroupForm.Designer.cs
...
16:23 
15:22 
16:23 
16:23 
16:23 
16:23 
16:23 
16:23 
16:23 
16:23 
...
view