Do Design Patterns Impact Software Quality Positively?. Khomh, F. & Gu�h�neuc, Y. In Tjortjis, C. & Winter, A., editors, Proceedings of the 12<sup>th</sup> Conference on Software Maintenance and Reengineering (CSMR), pages 274–278, April, 2008. IEEE CS Press. 5 pages. Short Paper. \awardMost influential paper at SANER'18.
Paper abstract bibtex We present an empirical study of the impact of design patterns on quality attributes in the context of software maintenance and evolution. Our first hypothesis verifies software engineering lore: design patterns impact software quality positively. We show that, contrary to popular beliefs, design patterns \emphin practice impact negatively several quality attributes, thus providing concrete evidence against common lore. We then study design patterns and object-oriented best practices by formulating a second hypothesis on the impact of these principles on quality. We show that results for some design patterns cannot be explained and conclude on the need for further studies on the relation between design patterns and object-oriented best practices. Thus, we bring further evidence that design patterns should be used with caution during development because they may actually impede maintenance and evolution.
@INPROCEEDINGS{Khomh08-CSMR-DPQuality,
AUTHOR = {Foutse Khomh and Yann-Ga�l Gu�h�neuc},
BOOKTITLE = {Proceedings of the 12<sup>th</sup> Conference on Software Maintenance and Reengineering (CSMR)},
TITLE = {Do Design Patterns Impact Software Quality Positively?},
YEAR = {2008},
OPTADDRESS = {},
OPTCROSSREF = {},
EDITOR = {Christos Tjortjis and Andreas Winter},
MONTH = {April},
NOTE = {5 pages. Short Paper. \awardMost influential paper at SANER'18.},
OPTNUMBER = {},
OPTORGANIZATION = {},
PAGES = {274--278},
PUBLISHER = {IEEE CS Press},
OPTSERIES = {},
OPTVOLUME = {},
KEYWORDS = {Topic: <b>Quality models</b>, Venue: <c>CSMR</c>},
URL = {http://www.ptidej.net/publications/documents/CSMR08.doc.pdf},
PDF = {http://www.ptidej.net/publications/documents/CSMR08.ppt.pdf},
ABSTRACT = {We present an empirical study of the impact of design
patterns on quality attributes in the context of software maintenance
and evolution. Our first hypothesis verifies software engineering
lore: design patterns impact software quality positively. We show
that, contrary to popular beliefs, design patterns \emph{in practice}
impact negatively several quality attributes, thus providing concrete
evidence against common lore. We then study design patterns and
object-oriented best practices by formulating a second hypothesis on
the impact of these principles on quality. We show that results for
some design patterns cannot be explained and conclude on the need for
further studies on the relation between design patterns and
object-oriented best practices. Thus, we bring further evidence that
design patterns should be used with caution during development
because they may actually impede maintenance and evolution.}
}