Design Patterns Impact on Software Quality: Where are the Theories?. Khomh, F. & Gu�h�neuc, Y. In Penta, M. D. & Shepherd, D. C., editors, Proceedings of the 25<sup>th</sup> International Conference on Software Analysis, Evolution, and Reengineering (SANER), pages 15–25, March, 2018. IEEE CS Press. 11 pages.
Paper abstract bibtex Software engineers are creators of habits. During software development, they follow again and again the same patterns when architecting, designing and implementing programs. Alexander introduced such patterns in architecture in 1974 and, 20 years later, they made their way in software development thanks to the work of Gamma et al. Software design patterns were promoted to make the design of programs more ``flexible, modular, reusable, and understandable''. However, ten years later, these patterns, their roles, and their impact on software quality were not fully understood. We then set out to study the impact of design patterns on different quality attributes and published a paper entitled ``Do Design Patterns Impact Software Quality Positively?'' in the proceedings of the 12th European Conference on Software Maintenance and Reengineering (CSMR) in 2008. Ten years later, this paper received the Most Influential Paper award at the 25th International Conference on Software Analysis, Evolution, and Reengineering (SANER) in 2018. In this retrospective paper for the award, we report and reflect on our and others' studies on the impact of design patterns, discussing some key findings reported about design patterns. We also take a step back from these studies and re-examine the role that design patterns should play in software development. Finally, we outline some avenues for future research work on design patterns, e.g., the identification of the patterns really used by developers, the theories explaining the impact of patterns, or their use to raise the abstraction level of programming languages.
@INPROCEEDINGS{Khomh18-SANER-MissingTheories,
AUTHOR = {Foutse Khomh and Yann-Ga�l Gu�h�neuc},
BOOKTITLE = {Proceedings of the 25<sup>th</sup> International Conference on Software Analysis, Evolution, and Reengineering (SANER)},
TITLE = {Design Patterns Impact on Software Quality: Where are
the Theories?},
YEAR = {2018},
OPTADDRESS = {},
OPTCROSSREF = {},
EDITOR = {Massimiliano Di Penta and David C. Shepherd},
MONTH = {March},
NOTE = {11 pages.},
OPTNUMBER = {},
OPTORGANIZATION = {},
PAGES = {15--25},
PUBLISHER = {IEEE CS Press},
OPTSERIES = {},
OPTVOLUME = {},
KEYWORDS = {Topic: <b>Design patterns</b>,
Topic: <b>Quality models</b>, Venue: <c>SANER</c>},
URL = {http://www.ptidej.net/publications/documents/SANER18.doc.pdf},
PDF = {http://www.ptidej.net/publications/documents/SANER18.ppt.pdf},
ABSTRACT = {Software engineers are creators of habits. During
software development, they follow again and again the same patterns
when architecting, designing and implementing programs. Alexander
introduced such patterns in architecture in 1974 and, 20 years later,
they made their way in software development thanks to the work of
Gamma et al. Software design patterns were promoted to make the
design of programs more ``flexible, modular, reusable, and
understandable''. However, ten years later, these patterns, their
roles, and their impact on software quality were not fully
understood. We then set out to study the impact of design patterns on
different quality attributes and published a paper entitled ``Do
Design Patterns Impact Software Quality Positively?'' in the
proceedings of the 12<sup>{th}</sup> European Conference on Software
Maintenance and Reengineering (CSMR) in 2008. Ten years later, this
paper received the Most Influential Paper award at the
25<sup>{th}</sup> International Conference on Software Analysis,
Evolution, and Reengineering (SANER) in 2018. In this retrospective
paper for the award, we report and reflect on our and others' studies
on the impact of design patterns, discussing some key findings
reported about design patterns. We also take a step back from these
studies and re-examine the role that design patterns should play in
software development. Finally, we outline some avenues for future
research work on design patterns, e.g., the identification of the
patterns really used by developers, the theories explaining the
impact of patterns, or their use to raise the abstraction level of
programming languages.}
}
Downloads: 0
{"_id":"x9vLEF5tBcn7ys8P5","bibbaseid":"khomh-guhneuc-designpatternsimpactonsoftwarequalitywherearethetheories-2018","author_short":["Khomh, F.","Gu�h�neuc, Y."],"bibdata":{"bibtype":"inproceedings","type":"inproceedings","author":[{"firstnames":["Foutse"],"propositions":[],"lastnames":["Khomh"],"suffixes":[]},{"firstnames":["Yann-Ga�l"],"propositions":[],"lastnames":["Gu�h�neuc"],"suffixes":[]}],"booktitle":"Proceedings of the 25<sup>th</sup> International Conference on Software Analysis, Evolution, and Reengineering (SANER)","title":"Design Patterns Impact on Software Quality: Where are the Theories?","year":"2018","optaddress":"","optcrossref":"","editor":[{"firstnames":["Massimiliano","Di"],"propositions":[],"lastnames":["Penta"],"suffixes":[]},{"firstnames":["David","C."],"propositions":[],"lastnames":["Shepherd"],"suffixes":[]}],"month":"March","note":"11 pages.","optnumber":"","optorganization":"","pages":"15–25","publisher":"IEEE CS Press","optseries":"","optvolume":"","keywords":"Topic: <b>Design patterns</b>, Topic: <b>Quality models</b>, Venue: <c>SANER</c>","url":"http://www.ptidej.net/publications/documents/SANER18.doc.pdf","pdf":"http://www.ptidej.net/publications/documents/SANER18.ppt.pdf","abstract":"Software engineers are creators of habits. During software development, they follow again and again the same patterns when architecting, designing and implementing programs. Alexander introduced such patterns in architecture in 1974 and, 20 years later, they made their way in software development thanks to the work of Gamma et al. Software design patterns were promoted to make the design of programs more ``flexible, modular, reusable, and understandable''. However, ten years later, these patterns, their roles, and their impact on software quality were not fully understood. We then set out to study the impact of design patterns on different quality attributes and published a paper entitled ``Do Design Patterns Impact Software Quality Positively?'' in the proceedings of the 12<sup>th</sup> European Conference on Software Maintenance and Reengineering (CSMR) in 2008. Ten years later, this paper received the Most Influential Paper award at the 25<sup>th</sup> International Conference on Software Analysis, Evolution, and Reengineering (SANER) in 2018. In this retrospective paper for the award, we report and reflect on our and others' studies on the impact of design patterns, discussing some key findings reported about design patterns. We also take a step back from these studies and re-examine the role that design patterns should play in software development. Finally, we outline some avenues for future research work on design patterns, e.g., the identification of the patterns really used by developers, the theories explaining the impact of patterns, or their use to raise the abstraction level of programming languages.","bibtex":"@INPROCEEDINGS{Khomh18-SANER-MissingTheories,\r\n AUTHOR = {Foutse Khomh and Yann-Ga�l Gu�h�neuc},\r\n BOOKTITLE = {Proceedings of the 25<sup>th</sup> International Conference on Software Analysis, Evolution, and Reengineering (SANER)},\r\n TITLE = {Design Patterns Impact on Software Quality: Where are \r\n the Theories?},\r\n YEAR = {2018},\r\n OPTADDRESS = {},\r\n OPTCROSSREF = {},\r\n EDITOR = {Massimiliano Di Penta and David C. Shepherd},\r\n MONTH = {March},\r\n NOTE = {11 pages.},\r\n OPTNUMBER = {},\r\n OPTORGANIZATION = {},\r\n PAGES = {15--25},\r\n PUBLISHER = {IEEE CS Press},\r\n OPTSERIES = {},\r\n OPTVOLUME = {},\r\n KEYWORDS = {Topic: <b>Design patterns</b>, \r\n Topic: <b>Quality models</b>, Venue: <c>SANER</c>},\r\n URL = {http://www.ptidej.net/publications/documents/SANER18.doc.pdf},\r\n PDF = {http://www.ptidej.net/publications/documents/SANER18.ppt.pdf},\r\n ABSTRACT = {Software engineers are creators of habits. During \r\n software development, they follow again and again the same patterns \r\n when architecting, designing and implementing programs. Alexander \r\n introduced such patterns in architecture in 1974 and, 20 years later, \r\n they made their way in software development thanks to the work of \r\n Gamma et al. Software design patterns were promoted to make the \r\n design of programs more ``flexible, modular, reusable, and \r\n understandable''. However, ten years later, these patterns, their \r\n roles, and their impact on software quality were not fully \r\n understood. We then set out to study the impact of design patterns on \r\n different quality attributes and published a paper entitled ``Do \r\n Design Patterns Impact Software Quality Positively?'' in the \r\n proceedings of the 12<sup>{th}</sup> European Conference on Software \r\n Maintenance and Reengineering (CSMR) in 2008. Ten years later, this \r\n paper received the Most Influential Paper award at the \r\n 25<sup>{th}</sup> International Conference on Software Analysis, \r\n Evolution, and Reengineering (SANER) in 2018. In this retrospective \r\n paper for the award, we report and reflect on our and others' studies \r\n on the impact of design patterns, discussing some key findings \r\n reported about design patterns. We also take a step back from these \r\n studies and re-examine the role that design patterns should play in \r\n software development. Finally, we outline some avenues for future \r\n research work on design patterns, e.g., the identification of the \r\n patterns really used by developers, the theories explaining the \r\n impact of patterns, or their use to raise the abstraction level of \r\n programming languages.}\r\n}\r\n\r\n","author_short":["Khomh, F.","Gu�h�neuc, Y."],"editor_short":["Penta, M. D.","Shepherd, D. C."],"key":"Khomh18-SANER-MissingTheories","id":"Khomh18-SANER-MissingTheories","bibbaseid":"khomh-guhneuc-designpatternsimpactonsoftwarequalitywherearethetheories-2018","role":"author","urls":{"Paper":"http://www.ptidej.net/publications/documents/SANER18.doc.pdf"},"keyword":["Topic: <b>Design patterns</b>","Topic: <b>Quality models</b>","Venue: <c>SANER</c>"],"metadata":{"authorlinks":{}}},"bibtype":"inproceedings","biburl":"http://www.yann-gael.gueheneuc.net/Work/Publications/Biblio/complete-bibliography.bib","dataSources":["8vn5MSGYWB4fAx9Z4"],"keywords":["topic: <b>design patterns</b>","topic: <b>quality models</b>","venue: <c>saner</c>"],"search_terms":["design","patterns","impact","software","quality","theories","khomh","gu�h�neuc"],"title":"Design Patterns Impact on Software Quality: Where are the Theories?","year":2018}