Concepedia

Publication | Closed Access

Detection strategies: metrics-based rules for detecting design flaws

533

Citations

17

References

2004

Year

Radu Marinescu

Unknown Venue

TLDR

Design quality in object‑oriented systems must be quantified, yet isolated metrics are often too fine‑grained to capture comprehensive design aspects such as the distribution of intelligence among classes. The study proposes a detection strategy that formulates metrics‑based rules to help developers detect and localize design problems. The authors define detection strategies for about ten key object‑oriented design flaws and validate them experimentally on multiple large‑scale case studies. Detection strategies enable engineers to directly localize classes or methods with specific design flaws, such as God Class, and the approach was experimentally validated on multiple large‑scale case studies.

Abstract

In order to support the maintenance of an object-oriented software system, the quality of its design must be evaluated using adequate quantification means. In spite of the current extensive use of metrics, if used in isolation metrics are oftentimes too fine grained to quantify comprehensively an investigated design aspect (e.g., distribution of system's intelligence among classes). To help developers and maintainers detect and localize design problems in a system, we propose a novel mechanism - called detection strategy - for formulating metrics-based rules that capture deviations from good design principles and heuristics. Using detection strategies an engineer can directly localize classes or methods affected by a particular design flaw (e.g., God Class), rather than having to infer the real design problem from a large set of abnormal metric values. We have defined such detection strategies for capturing around ten important flaws of object-oriented design found in the literature and validated the approach experimentally on multiple large-scale case-studies.

References

YearCitations

1976

5.7K

1994

5.6K

1984

2.3K

2017

2.1K

1989

2K

1984

2K

1974

760

1995

395

2003

377

1990

179

Page 1