Upload
moritz-beller
View
179
Download
1
Tags:
Embed Size (px)
Citation preview
The Last Line Effect
Moritz Beller@Inventitech
Andy Zaidman
Andrey Karpov
TrinityCore ExampleLast Line Effect
TrinityCore ExampleLast Line Effect
TrinityCore ExampleLast Line Effect
Chromium ExampleLast Statement Effect
Chromium ExampleLast Statement Effect
Chromium ExampleLast Statement Effect
Chromium ExampleLast Statement Effect
Chromium ExampleLast Statement Effect
Chromium Example
Chromium Example
Chromium Example
Chromium Example
Chromium Example
Chromium Example
Chromium Example
Clone Class
Chromium Example
Clone Class
AST-Node1
Chromium Example
Clone Class
AST-Node
1
1
Chromium Example
Clone Class
AST-Node
1 2
1
Chromium Example
Clone Class
AST-Node
1 2 3
1
Chromium Example
Clone Class
AST-Node
1 2 3 4
1
Chromium Example
Clone Class
AST-Node
1 2 3 4 5
1
Chromium Example
Clone Class
AST-Node
1 2 3 4 5
1
Chromium Example
Clone Class
AST-Node
1 2 3 4 5
1
Type 2 Clone: “syntactically identical cop[ies]; only variable, type, or function identifiers have […] changed.” Koschke, 2007.
Chromium Example
Clone Class
AST-Node
1 2 3 4 5
1
Type 2 Clone: “syntactically identical cop[ies]; only variable, type, or function identifiers have […] changed.” Koschke, 2007.
Very Short Type 2-Clone: Micro-Clone
Very Short Clones: Micro-Clones
Shortcut: Identical Subexpressions
Shortcut: Identical Subexpressions
Shortcut: Identical Subexpressions
Shortcut: Identical Subexpressions
Shortcut: Identical Subexpressions
Shortcut: Identical Subexpressions
Shortcut to Faulty Micro-Clones
PVS-Studio
PVS-Studio
208 OSS projectsPVS-Studio
208 OSS projectsPVS-Studio
208 OSS projectsPVS-Studio
208 OSS projectsPVS-Studio
202 Faulty Micro-Clones
208 OSS projectsPVS-Studio
202 Faulty Micro-Clones
Error Distribution for Micro-Clones> 1 Line
Error Distribution for Micro-ClonesWithin 1 Line
What We Do Not Know (Yet) ...
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Are faulty micro-clones common among micro-clones?
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Are faulty micro-clones common among micro-clones?
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Are faulty micro-clones common among micro-clones?
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Are faulty micro-clones common among micro-clones?
● How are micro-clones created and evolved?
● Why did we find so few faulty micro-clones?
What We Do Not Know (Yet) ...
● Are faulty micro-clones common among micro-clones?
● How are micro-clones created and evolved?
@InventitechMoritz Beller, TU Delft
The Last Line Effect
@InventitechMoritz Beller, TU Delft
The Last Line Effect
@InventitechMoritz Beller, TU Delft
The Last Line Effect
> code.|