From a Domain Analysis to the Specification and Detection of Code and Design Smells

Naouel Moha 1 Yann-Gaël Guéhéneuc 2 Anne-Françoise Le Meur 3 Laurence Duchien 3 Alban Tiberghien 4
1 TRISKELL - Reliable and efficient component based software engineering
IRISA - Institut de Recherche en Informatique et Systèmes Aléatoires, Inria Rennes – Bretagne Atlantique
4 ADAM - Adaptive Distributed Applications and Middleware
LIFL - Laboratoire d'Informatique Fondamentale de Lille, Inria Lille - Nord Europe
Abstract : Code and design smells are recurring design problems in software systems that must be identified to avoid their possible negative consequences on development and maintenance. Consequently, several smell detection approaches and tools have been proposed in the literature. However, so far, they allow the detection of predefined smells but the detection of new smells or smells adapted to the context of the analysed systems is possible only by implementing new detection algorithms manually. Moreover, previous approaches do not explain the transition from specifications of smells to their detection. Finally, the validation of the existing approaches and tools has been limited on few proprietary systems and on a reduced number of smells. In this paper, we introduce an approach to automate the generation of detection algorithms from specifications written using a domain-specific language. This language is defined from a thorough domain analysis. It allows the specification of smells using high-level domain-related abstractions. It allows the adaptation of the specifications of smells to the context of the analysed systems.We specify 10 smells, generate automatically their detection algorithms using templates, and validate the algorithms in terms of precision and recall on Xerces v2.7.0 and GanttProject v1.10.2, two open-source object-oriented systems.We also compare the detection results with those of a previous approach, iPlasma.
Document type :
Journal articles
Complete list of metadatas

Cited literature [16 references]  Display  Hide  Download

https://hal.inria.fr/inria-00512135
Contributor : Didier Vojtisek <>
Submitted on : Friday, August 27, 2010 - 2:56:16 PM
Last modification on : Thursday, February 21, 2019 - 10:52:48 AM
Long-term archiving on : Monday, November 29, 2010 - 12:11:49 PM

File

Moha09a.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : inria-00512135, version 1

Citation

Naouel Moha, Yann-Gaël Guéhéneuc, Anne-Françoise Le Meur, Laurence Duchien, Alban Tiberghien. From a Domain Analysis to the Specification and Detection of Code and Design Smells. Formal Aspects of Computing, Springer Verlag, 2010, 22 (3-4), pp.345-361. ⟨inria-00512135⟩

Share

Metrics

Record views

612

Files downloads

511