detection strategies metrics-based rules for detecting design flaws

19

Click here to load reader

Upload: usi

Post on 06-May-2015

944 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Detection StrategiesMetrics-Based Rules forDetecting Design Flaws

M.... N.....1

1Universita della Svizzera Italiana, Switzerland

Software Design and Evolution, WS 2009

Nowak Faculty of Informatics

Detection Strategies

Page 2: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Author

Dr. Radu Marinescu

Associate Professor -Department of Computer Science and Engineering"Politechnica" University at TimisoaraAuthor of "Object-Oriented Metrics in Practice"

Ph.D defense

Mircea Lungu, Today, 17.30, A21, Red Building

Nowak Faculty of Informatics

Detection Strategies

Page 3: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Author

Dr. Radu Marinescu

Associate Professor -Department of Computer Science and Engineering"Politechnica" University at TimisoaraAuthor of "Object-Oriented Metrics in Practice"

Ph.D defense

Mircea Lungu, Today, 17.30, A21, Red Building

Nowak Faculty of Informatics

Detection Strategies

Page 4: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Outline

1 Introduction

2 Problem

3 Demand

4 Solution

5 Implementation

6 Evaluation

7 Summary

Nowak Faculty of Informatics

Detection Strategies

Page 5: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Metrics

Metrics

ambiguous definitionsnoiserelevance

Interpretation

experience basedno modelshowing symptoms not a disease

Nowak Faculty of Informatics

Detection Strategies

Page 6: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Metrics

Metrics

ambiguous definitionsnoiserelevance

Interpretation

experience basedno modelshowing symptoms not a disease

Nowak Faculty of Informatics

Detection Strategies

Page 7: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Metrics

Metrics

ambiguous definitionsnoiserelevance

Interpretation

experience basedno modelshowing symptoms not a disease

Nowak Faculty of Informatics

Detection Strategies

Page 8: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Strategy

Strategy

"A detection strategy is the quantifiable expression of a rule bywhich design fragments that are conforming to that rule can bedetected in the source code"

Nowak Faculty of Informatics

Detection Strategies

Page 9: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Filters

Semantical

threshold valuedirection

For example:Absolute: HigherThan, LowerThanRelative: TopValues, BottomValues

Statistical

direction

For example: UpperQuantile, BelowMedian

Nowak Faculty of Informatics

Detection Strategies

Page 10: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Strategy

Choosing an appropriate filter1 Absolute semantical filter2 Relative semantical filter3 Semantical filter with percentile values4 Statistical filter

Nowak Faculty of Informatics

Detection Strategies

Page 11: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Composition

Logical Operators

and, or, butnot

Metric1

Metric2

Metric3

Filtered

Set1

Filtered

Set2

Filtered

Set3

filter

filter

filter

Composition Rules Final

Results

Nowak Faculty of Informatics

Detection Strategies

Page 12: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Metrics

"God Class" syndrome.Weighted Method Count (WMC)Tight Class Cohesion (TCC)Access to Foreign Data (ATFD)

(WMC(C), TopValues(25%))∧ (1)

(ATFD(C), HigherThan(1))∧ (2)

(TCC(C), BottomValues(25%)) (3)

Nowak Faculty of Informatics

Detection Strategies

Page 13: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Process

Sources

(Java, C++)

Meta-Modelparsing

Metrics

Detection

Detection

Strategy Flaw List

Manual inspection

using

Nowak Faculty of Informatics

Detection Strategies

Page 14: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Filter tuning

1 Experience and Literature2 Reference Samples (Tuning Machine)3 Evolution Analysis

Nowak Faculty of Informatics

Detection Strategies

Page 15: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Case-study

Version 193 KLOC, 18 Packages, 152 Classes, 1284 MethodsVersion 2116 KLOC, 29 Packages, 387 Classes, 3446 Methods

Evaluation methods

Automatic Classification (differential between the versions)Manual Investigation (of the Version 1)

Nowak Faculty of Informatics

Detection Strategies

Page 16: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Summary

Results

Automatic Classification accuracy over 50% with averageover 67%.Manual Inspection method resulted in Accuracy of 87%.

Conclusion

Method is very promising !

Nowak Faculty of Informatics

Detection Strategies

Page 17: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Summary

Results

Automatic Classification accuracy over 50% with averageover 67%.Manual Inspection method resulted in Accuracy of 87%.

Conclusion

Method is very promising !

Nowak Faculty of Informatics

Detection Strategies

Page 18: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Related Work

Quantification of Design Principles and RulesUsing Correlations of Metrics for Design Inspections

Nowak Faculty of Informatics

Detection Strategies

Page 19: Detection Strategies Metrics-Based Rules for Detecting Design Flaws

Introduction Problem Demand Solution Implementation Evaluation Summary

Discussion

Questions and Discussion.

Nowak Faculty of Informatics

Detection Strategies