Standard

A Validated Set of Smells in Model-View-Controller Architectures. / Aniche, Mauricio; Bavota, Gabriele; Treude, Christoph; van Deursen, Arie; Gerosa, Marco Aurélio.

Proceedings 2016 IEEE International Conference on Software Maintenance and Evolution, ICSME 2016. Los Alamitos, CA : IEEE, 2016. p. 233-243.

Research output: Scientific - peer-reviewConference contribution

Harvard

Aniche, M, Bavota, G, Treude, C, van Deursen, A & Gerosa, MA 2016, A Validated Set of Smells in Model-View-Controller Architectures. in Proceedings 2016 IEEE International Conference on Software Maintenance and Evolution, ICSME 2016. IEEE, Los Alamitos, CA, pp. 233-243, 32nd IEEE International Conference on Software Maintenance and Evolution (ICSME), Raleigh, United States, 2-10 October. DOI: 10.1109/ICSME.2016.12

APA

Aniche, M., Bavota, G., Treude, C., van Deursen, A., & Gerosa, M. A. (2016). A Validated Set of Smells in Model-View-Controller Architectures. In Proceedings 2016 IEEE International Conference on Software Maintenance and Evolution, ICSME 2016. (pp. 233-243). Los Alamitos, CA: IEEE. DOI: 10.1109/ICSME.2016.12

Vancouver

Aniche M, Bavota G, Treude C, van Deursen A, Gerosa MA. A Validated Set of Smells in Model-View-Controller Architectures. In Proceedings 2016 IEEE International Conference on Software Maintenance and Evolution, ICSME 2016. Los Alamitos, CA: IEEE. 2016. p. 233-243. Available from, DOI: 10.1109/ICSME.2016.12

Author

Aniche, Mauricio; Bavota, Gabriele; Treude, Christoph; van Deursen, Arie; Gerosa, Marco Aurélio / A Validated Set of Smells in Model-View-Controller Architectures.

Proceedings 2016 IEEE International Conference on Software Maintenance and Evolution, ICSME 2016. Los Alamitos, CA : IEEE, 2016. p. 233-243.

Research output: Scientific - peer-reviewConference contribution

BibTeX

@inbook{d6845bf386b4456d8e6503d1771f67d6,
title = "A Validated Set of Smells in Model-View-Controller Architectures",
keywords = "MVC, software maintenance, code smells, model-view-controller",
author = "Mauricio Aniche and Gabriele Bavota and Christoph Treude and {van Deursen}, Arie and Gerosa, {Marco Aurélio}",
year = "2016",
doi = "10.1109/ICSME.2016.12",
pages = "233--243",
booktitle = "Proceedings 2016 IEEE International Conference on Software Maintenance and Evolution, ICSME 2016",
publisher = "IEEE",
address = "United States",

}

RIS

TY - CHAP

T1 - A Validated Set of Smells in Model-View-Controller Architectures

AU - Aniche,Mauricio

AU - Bavota,Gabriele

AU - Treude,Christoph

AU - van Deursen,Arie

AU - Gerosa,Marco Aurélio

PY - 2016

Y1 - 2016

N2 - Code smells are symptoms of poor design and implementation choices that may hinder code comprehension, and possibly increase change-and defect-proneness. A vast catalogue of smells has been defined in the literature, and it includes smells that can be found in any kind of system (e.g., God Classes), regardless of their architecture. On the other hand, software systems adopting specific architectures (e.g., the Model-View-Controller pattern) can be also affected by other types of poor practices. We surveyed and interviewed 53 MVC developers to collect bad practices to avoid while working on Web MVC applications. Then, we followed an open coding procedure on the collected answers to define a catalogue of six Web MVC smells, namely Brain Repository, Fat Repository, Promiscuous Controller, Brain Controller, Laborious Repository Method, and Meddling Service. Then, we ran a study on 100 MVC projects to assess the impact of these smells on code change-and defect-proneness. In addition, we surveyed 21 developers to verify their perception of the defined smells. The achieved results show that the Web MVC smells (i) more often than not, increase change-and defect-proneness of classes, and (ii) are perceived by developers as severe problems.

AB - Code smells are symptoms of poor design and implementation choices that may hinder code comprehension, and possibly increase change-and defect-proneness. A vast catalogue of smells has been defined in the literature, and it includes smells that can be found in any kind of system (e.g., God Classes), regardless of their architecture. On the other hand, software systems adopting specific architectures (e.g., the Model-View-Controller pattern) can be also affected by other types of poor practices. We surveyed and interviewed 53 MVC developers to collect bad practices to avoid while working on Web MVC applications. Then, we followed an open coding procedure on the collected answers to define a catalogue of six Web MVC smells, namely Brain Repository, Fat Repository, Promiscuous Controller, Brain Controller, Laborious Repository Method, and Meddling Service. Then, we ran a study on 100 MVC projects to assess the impact of these smells on code change-and defect-proneness. In addition, we surveyed 21 developers to verify their perception of the defined smells. The achieved results show that the Web MVC smells (i) more often than not, increase change-and defect-proneness of classes, and (ii) are perceived by developers as severe problems.

KW - MVC

KW - software maintenance

KW - code smells

KW - model-view-controller

UR - http://resolver.tudelft.nl/uuid://d6845bf3-86b4-456d-8e65-03d1771f67d6

U2 - 10.1109/ICSME.2016.12

DO - 10.1109/ICSME.2016.12

M3 - Conference contribution

SP - 233

EP - 243

BT - Proceedings 2016 IEEE International Conference on Software Maintenance and Evolution, ICSME 2016

PB - IEEE

ER -

ID: 12555802