microsoft / Analysis-Services
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
  • 15% duplication:
    • 24,192 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 3,804 duplicated lines
  • 273 duplicates
system15% (3,804 lines)
Duplication per Extension
cs15% (3,277 lines)
ts23% (208 lines)
js88% (179 lines)
xaml44% (140 lines)
Duplication per Component (primary)
BismNormalizer15% (3,114 lines)
AsTrace95% (418 lines)
MetadataTranslator10% (148 lines)
AsPartitionProcessing9% (87 lines)
AsPerfMon8% (37 lines)
AASAutoScale0% (0 lines)
ASJobGraphEvents0% (0 lines)
AsXEventSample0% (0 lines)
BestPracticeRules0% (0 lines)
BlogArticleUploads0% (0 lines)
RestApiSample0% (0 lines)
SetUpAggs0% (0 lines)

Duplication Between Components (50+ lines)

G AsPerfMon AsPerfMon BismNormalizer BismNormalizer AsPerfMon--BismNormalizer 130 AsTrace AsTrace AsTrace--BismNormalizer 63

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 273 duplicates...
Size#FoldersFilesLinesCode
141 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
Service1.cs
Service1.cs
37:266 (100%)
37:266 (100%)
view
134 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
ManagedIpHelper.cs
ManagedIpHelper.cs
1:280 (100%)
1:281 (100%)
view
109 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
222:410 (33%)
429:616 (17%)
view
73 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
WindowTitle.cs
WindowTitle.cs
1:157 (100%)
1:158 (100%)
view
42 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.Designer.cs
ComparisonControl.Designer.cs
104:157 (23%)
408:461 (9%)
view
32 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
417:460 (9%)
618:661 (5%)
view
28 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.Designer.cs
ComparisonControl.Designer.cs
74:101 (15%)
377:404 (6%)
view
25 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
ProjectInstaller.Designer.cs
ProjectInstaller.Designer.cs
3:60 (100%)
3:60 (100%)
view
22 x 2 BismNormalizer/BismNorma...ultidimensionalMetadata
BismNormalizer/BismNorma...Compare/TabularMetadata
Comparison.cs
Comparison.cs
1230:1290 (3%)
1965:2025 (2%)
view
22 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
467:504 (6%)
663:700 (3%)
view
22 x 2 BismNormalizer/BismNormalizer/TabularCompare/UI
BismNormalizer/BismNormalizer/TabularCompare/UI
Connections.cs
ConnectionsAlmt.cs
26:63 (7%)
41:78 (7%)
view
22 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
613:647 (6%)
1102:1136 (3%)
view
20 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
PowerBIHelper.cs
PowerBIHelper.cs
42:84 (37%)
31:73 (44%)
view
20 x 2 MetadataTranslator/Metadata Translator/UI
MetadataTranslator/Metadata Translator/UI
xaml
ImportExportPanel.xaml
LanguagePanel.xaml
18:40 (30%)
26:48 (32%)
view
19 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.Designer.cs
ComparisonControl.Designer.cs
173:197 (10%)
477:501 (4%)
view
19 x 2 AsPartitionProcessing/AsPartitionProcessing
AsPartitionProcessing/AsPartitionProcessing
PartitionProcessor.cs
PartitionProcessor.cs
359:387 (5%)
432:461 (5%)
view
18 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
ProjectInstaller.cs
ProjectInstaller.cs
8:40 (100%)
8:40 (100%)
view
18 x 2 BismNormalizer/BismNorma...ultidimensionalMetadata
BismNormalizer/BismNorma...ultidimensionalMetadata
Comparison.cs
Comparison.cs
383:415 (3%)
438:470 (3%)
view
17 x 2 BismNormalizer/BismNorma...ultidimensionalMetadata
BismNormalizer/BismNorma...Compare/TabularMetadata
Comparison.cs
Comparison.cs
12:45 (2%)
11:44 (1%)
view
16 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
53:83 (4%)
36:66 (2%)
view
Duplicated Units
The list of top 20 duplicated units.
See data for all 50 unit duplicates...
Size#FoldersFilesLinesCode
48 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
Service1.cs
Service1.cs
168:230 
168:230 
view
42 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
Service1.cs
Service1.cs
112:166 
112:166 
view
36 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
279:327 
485:533 
view
35 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
ManagedIpHelper.cs
ManagedIpHelper.cs
154:194 
155:195 
view
30 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
ManagedIpHelper.cs
ManagedIpHelper.cs
118:152 
119:153 
view
28 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
WindowTitle.cs
WindowTitle.cs
35:73 
36:74 
view
27 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
Service1.cs
Service1.cs
46:80 
46:80 
view
21 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
WindowTitle.cs
WindowTitle.cs
136:158 
137:159 
view
20 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
Service1.cs
Service1.cs
82:109 
82:109 
view
20 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
344:369 
550:575 
view
20 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
ProcessExtensions.cs
ProcessExtensions.cs
9:29 
10:30 
view
17 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
WindowTitle.cs
WindowTitle.cs
115:134 
116:135 
view
17 x 2 BismNormalizer/BismNorma...ultidimensionalMetadata
BismNormalizer/BismNorma...Compare/TabularMetadata
Comparison.cs
Comparison.cs
1274:1292 
2009:2027 
view
16 x 2 AsTrace/ASTrace CS - 2014/ASTrace
AsTrace/ASTrace CS - 2016/ASTrace
ProjectInstaller.Designer.cs
ProjectInstaller.Designer.cs
29:55 
29:55 
view
16 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
WindowTitle.cs
WindowTitle.cs
94:112 
95:113 
view
12 x 2 BismNormalizer/BismNorma...ultidimensionalMetadata
BismNormalizer/BismNorma...Compare/TabularMetadata
Comparison.cs
Comparison.cs
1234:1249 
1969:1984 
view
11 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
625:636 
1114:1125 
view
11 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNormalizer/TabularCompare/UI
ComparisonControl.cs
ComparisonControl.cs
638:649 
1127:1138 
view
11 x 2 BismNormalizer/AlmToolkit
BismNormalizer/BismNorma...ompare/DesktopInstances
WindowTitle.cs
WindowTitle.cs
76:90 
77:91 
view
11 x 2 BismNormalizer/BismNorma...ultidimensionalMetadata
BismNormalizer/BismNorma...Compare/TabularMetadata
MeasureCollection.cs
MeasureCollection.cs
86:97 
67:78 
view