{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,11,20]],"date-time":"2025-11-20T18:28:19Z","timestamp":1763663299258,"version":"3.41.0"},"reference-count":86,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2015,5,13]],"date-time":"2015-05-13T00:00:00Z","timestamp":1431475200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Softw. Eng. Methodol."],"published-print":{"date-parts":[[2015,5,13]]},"abstract":"<jats:p>Design patterns are recognized as a means to improve software maintenance by furnishing an explicit specification of class and object interactions and their underlying intent [Gamma et al. 1995]. Only a few empirical investigations have been conducted to assess whether the kind of documentation for design patterns implemented in source code affects its comprehensibility. To investigate this aspect, we conducted a family of four controlled experiments with 88 participants having different experience (i.e., professionals and Bachelor, Master, and PhD students). In each experiment, the participants were divided into three groups and asked to comprehend a nontrivial chunk of an open-source software system. Depending on the group, each participant was, or was not, provided with graphical or textual representations of the design patterns implemented within the source code. We graphically documented design-pattern instances with UML class diagrams. Textually documented instances are directly reported source code as comments. Our results indicate that documenting design-pattern instances yields an improvement in correctness of understanding source code for those participants with an adequate level of experience.<\/jats:p>","DOI":"10.1145\/2699696","type":"journal-article","created":{"date-parts":[[2015,5,15]],"date-time":"2015-05-15T16:05:34Z","timestamp":1431705934000},"page":"1-35","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":27,"title":["Documenting Design-Pattern Instances"],"prefix":"10.1145","volume":"24","author":[{"given":"Giuseppe","family":"Scanniello","sequence":"first","affiliation":[{"name":"University of Basilicata, Potenza, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Carmine","family":"Gravino","sequence":"additional","affiliation":[{"name":"University of Salerno, Fisciano (SA), Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michele","family":"Risi","sequence":"additional","affiliation":[{"name":"University of Salerno, Fisciano (SA), Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Genoveffa","family":"Tortora","sequence":"additional","affiliation":[{"name":"University of Salerno, Fisciano (SA), Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gabriella","family":"Dodero","sequence":"additional","affiliation":[{"name":"Free University of Bozen-bolzano, Bozen-Bolzano, Italy"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2015,5,13]]},"reference":[{"key":"e_1_2_2_1_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2012.27"},{"key":"e_1_2_2_2_1","unstructured":"C. Alexander S. Ishikawa M. Silverstein M. Jacobson I. Fiksdahl-King and S. Angel. 1977. A Pattern Language - Towns Buildings Construction. Oxford University Press.  C. Alexander S. Ishikawa M. Silverstein M. Jacobson I. Fiksdahl-King and S. Angel. 1977. A Pattern Language - Towns Buildings Construction. Oxford University Press."},{"key":"e_1_2_2_3_1","doi-asserted-by":"publisher","DOI":"10.1109\/MISE.2007.2"},{"key":"e_1_2_2_4_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2006.59"},{"key":"e_1_2_2_5_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2007.17"},{"key":"e_1_2_2_6_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2004.43"},{"key":"e_1_2_2_7_1","doi-asserted-by":"publisher","DOI":"10.1145\/1287624.1287642"},{"volume-title":"Randomization Tests","author":"Baker R.","key":"e_1_2_2_8_1","unstructured":"R. Baker . 1995. Modern permutation test software . In Randomization Tests , Marcel Dekker , 391--402. R. Baker. 1995. Modern permutation test software. In Randomization Tests, Marcel Dekker, 391--402."},{"key":"e_1_2_2_9_1","doi-asserted-by":"publisher","DOI":"10.1145\/2601248.2601299"},{"key":"e_1_2_2_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.799939"},{"key":"e_1_2_2_11_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF00368702"},{"key":"e_1_2_2_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.6156"},{"key":"e_1_2_2_13_1","doi-asserted-by":"publisher","DOI":"10.1111\/j.1467-9280.1993.tb00584.x"},{"key":"e_1_2_2_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/336512.336534"},{"key":"e_1_2_2_15_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2014.2348997"},{"key":"e_1_2_2_16_1","doi-asserted-by":"publisher","DOI":"10.1109\/ESEM.2011.39"},{"volume-title":"Proceedings of the 9th International Software Metrics Symposium (METRIC'03)","author":"Bieman J.","key":"e_1_2_2_17_1","unstructured":"J. Bieman , G. Straw , H. Wang , P. Munger , and R. Alexander . 2003. Design patterns and change proneness: An examination of five evolving systems . In Proceedings of the 9th International Software Metrics Symposium (METRIC'03) . IEEE Computer Society, 40--49. J. Bieman, G. Straw, H. Wang, P. Munger, and R. Alexander. 2003. Design patterns and change proneness: An examination of five evolving systems. In Proceedings of the 9th International Software Metrics Symposium (METRIC'03). IEEE Computer Society, 40--49."},{"key":"e_1_2_2_18_1","unstructured":"B. Bruegge and A. H. Dutoit. 2003. Object-Oriented Software Engineering: Using UML Patterns and Java. 2nd Ed. Prentice-Hall.   B. Bruegge and A. H. Dutoit. 2003. Object-Oriented Software Engineering: Using UML Patterns and Java. 2 nd Ed. Prentice-Hall."},{"key":"e_1_2_2_19_1","doi-asserted-by":"publisher","DOI":"10.1002\/spe.1009"},{"volume-title":"Proceedings of the 9th International Symposium on Software Metrics (METRIC'03)","author":"Carver J.","key":"e_1_2_2_20_1","unstructured":"J. Carver , L. Jaccheri , S. Morasca , and F. Shull . 2003. Issues in using students in empirical studies in software engineering education . In Proceedings of the 9th International Symposium on Software Metrics (METRIC'03) . IEEE Computer Society, 239--250. J. Carver, L. Jaccheri, S. Morasca, and F. Shull. 2003. Issues in using students in empirical studies in software engineering education. In Proceedings of the 9th International Symposium on Software Metrics (METRIC'03). IEEE Computer Society, 239--250."},{"key":"e_1_2_2_21_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-013-9248-x"},{"key":"e_1_2_2_22_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-009-9125-9"},{"key":"e_1_2_2_23_1","doi-asserted-by":"publisher","DOI":"10.5555\/1018420.1019699"},{"volume-title":"Statistical Power Analysis for the Behavioral Sciences","author":"Cohen J.","key":"e_1_2_2_24_1","unstructured":"J. Cohen . 1988. Statistical Power Analysis for the Behavioral Sciences . L. Erlbaum Associates . J. Cohen. 1988. Statistical Power Analysis for the Behavioral Sciences. L. Erlbaum Associates."},{"key":"e_1_2_2_25_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2008.05.012"},{"key":"e_1_2_2_26_1","volume-title":"Practical Nonparametric Statistics","author":"Conover W. J.","unstructured":"W. J. Conover . 1998. Practical Nonparametric Statistics . 3 rd Ed. Wiley . W. J. Conover. 1998. Practical Nonparametric Statistics. 3rd Ed. Wiley.","edition":"3"},{"key":"e_1_2_2_27_1","doi-asserted-by":"publisher","DOI":"10.1007\/BF02310555"},{"key":"e_1_2_2_28_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-012-9227-7"},{"volume-title":"Proceedings of the International Conference on Software Maintenance (ICSM'08)","author":"Di Penta M.","key":"e_1_2_2_29_1","unstructured":"M. Di Penta , L. Cerulo , Y.-G. Gueheneuc , and G. Antoniol . 2008. An empirical study of the relationships between design pattern roles and class change proneness . In Proceedings of the International Conference on Software Maintenance (ICSM'08) . IEEE Computer Society, 217--226. M. Di Penta, L. Cerulo, Y.-G. Gueheneuc, and G. Antoniol. 2008. An empirical study of the relationships between design pattern roles and class change proneness. In Proceedings of the International Conference on Software Maintenance (ICSM'08). IEEE Computer Society, 217--226."},{"key":"e_1_2_2_30_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2005.08.009"},{"volume-title":"Meta-Analysis, and the Interpretation of Research Results","author":"P.","key":"e_1_2_2_31_1","unstructured":"P. Ellis 2010. The Essential Guide to Effect Sizes: Statistical Power , Meta-Analysis, and the Interpretation of Research Results . Cambridge University Press . P. Ellis 2010. The Essential Guide to Effect Sizes: Statistical Power, Meta-Analysis, and the Interpretation of Research Results. Cambridge University Press."},{"key":"e_1_2_2_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/6294.846201"},{"key":"e_1_2_2_33_1","doi-asserted-by":"publisher","DOI":"10.1049\/iet-sen.2009.0052"},{"key":"e_1_2_2_34_1","volume-title":"Design Patterns: Elements of Reusable Object Oriented Software","author":"Gamma E.","year":"1995","unstructured":"E. Gamma , R. Helm , R. Johnson , and J. Vlissides . 1995 . Design Patterns: Elements of Reusable Object Oriented Software . Addison-Wesley . E. Gamma, R. Helm, R. Johnson, and J. Vlissides. 1995. Design Patterns: Elements of Reusable Object Oriented Software. Addison-Wesley."},{"key":"e_1_2_2_35_1","doi-asserted-by":"publisher","DOI":"10.1145\/1852786.1852790"},{"key":"e_1_2_2_36_1","doi-asserted-by":"publisher","DOI":"10.1109\/WCRE.2011.18"},{"key":"e_1_2_2_37_1","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-642-33666-9_13"},{"key":"e_1_2_2_38_1","volume-title":"Proceedings of the EuroPLoP Focus Group on Pattern Repositories (EuroPLoP'07)","author":"Gueheneuc Y.-G.","year":"2007","unstructured":"Y.-G. Gueheneuc . 2007 . P-mart: Pattern-like micro architecture repository . In Proceedings of the EuroPLoP Focus Group on Pattern Repositories (EuroPLoP'07) . Y.-G. Gueheneuc. 2007. P-mart: Pattern-like micro architecture repository. In Proceedings of the EuroPLoP Focus Group on Pattern Repositories (EuroPLoP'07)."},{"key":"e_1_2_2_39_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2008.48"},{"key":"e_1_2_2_40_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2008.13"},{"key":"e_1_2_2_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/TVCG.2006.178"},{"key":"e_1_2_2_42_1","doi-asserted-by":"publisher","DOI":"10.1145\/1095430.1081762"},{"key":"e_1_2_2_43_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1026586415054"},{"key":"e_1_2_2_44_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2008.03.007"},{"volume-title":"Information technology--Software product evaluation: Quality characteristics and guidelines for their use. ISO\/IEC IS 9126","author":"SO.","key":"e_1_2_2_45_1","unstructured":"I SO. 1991. Information technology--Software product evaluation: Quality characteristics and guidelines for their use. ISO\/IEC IS 9126 . ISO , Geneva . ISO. 1991. Information technology--Software product evaluation: Quality characteristics and guidelines for their use. ISO\/IEC IS 9126. ISO, Geneva."},{"key":"e_1_2_2_46_1","doi-asserted-by":"publisher","DOI":"10.1109\/ESEM.2009.5316015"},{"key":"e_1_2_2_47_1","doi-asserted-by":"crossref","unstructured":"A. Jedlitschka M. Ciolkowski and D. Pfahl. 2008. Reporting experiments in software engineering. In Guide to Advanced Empirical Software Engineering F. Shull J. Singer and D. Sjoberg Eds. Springer 201--228.  A. Jedlitschka M. Ciolkowski and D. Pfahl. 2008. Reporting experiments in software engineering. In Guide to Advanced Empirical Software Engineering F. Shull J. Singer and D. Sjoberg Eds. Springer 201--228.","DOI":"10.1007\/978-1-84800-044-5_8"},{"volume-title":"Basics of Software Engineering Experimentation","author":"Juristo N.","key":"e_1_2_2_48_1","unstructured":"N. Juristo and A. Moreno 2001. Basics of Software Engineering Experimentation . Kluwer Academic . N. Juristo and A. Moreno 2001. Basics of Software Engineering Experimentation. Kluwer Academic."},{"key":"e_1_2_2_49_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2007.02.015"},{"key":"e_1_2_2_50_1","doi-asserted-by":"publisher","DOI":"10.1109\/CSMR.2008.4493325"},{"key":"e_1_2_2_51_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-008-9061-0"},{"key":"e_1_2_2_52_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-007-9053-5"},{"key":"e_1_2_2_53_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2002.1027796"},{"key":"e_1_2_2_54_1","doi-asserted-by":"publisher","DOI":"10.1109\/RESER.2011.10"},{"key":"e_1_2_2_55_1","doi-asserted-by":"publisher","DOI":"10.1007\/s11334-005-0007-z"},{"key":"e_1_2_2_56_1","doi-asserted-by":"publisher","DOI":"10.1002\/(SICI)1097-024X(199610)26:10%3C1161::AID-SPE58%3E3.3.CO;2-O"},{"volume-title":"Applied Statistics for Software Managers","author":"Maxwell K.","key":"e_1_2_2_57_1","unstructured":"K. Maxwell . 2002. Applied Statistics for Software Managers . Software Quality Institute Series, Prentice Hall. K. Maxwell. 2002. Applied Statistics for Software Managers. Software Quality Institute Series, Prentice Hall."},{"key":"e_1_2_2_58_1","doi-asserted-by":"publisher","DOI":"10.1109\/2.402076"},{"volume-title":"Software Engineer's Reference Book. Butterworth-Heinemann","author":"Mcdermid J.","key":"e_1_2_2_59_1","unstructured":"J. Mcdermid . 1991. Software Engineer's Reference Book. Butterworth-Heinemann , Linacre House , Jordan Hill , Oxford, UK. J. Mcdermid. 1991. Software Engineer's Reference Book. Butterworth-Heinemann, Linacre House, Jordan Hill, Oxford, UK."},{"key":"e_1_2_2_60_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICECCS.2008.38"},{"volume-title":"Unified modeling language (UML) specification, version 2.0. Tech. rep","author":"MG.","key":"e_1_2_2_61_1","unstructured":"O MG. 2005. Unified modeling language (UML) specification, version 2.0. Tech. rep ., Object Management Group . http:\/\/www.omg.org\/spec\/UML\/2.0\/. OMG. 2005. Unified modeling language (UML) specification, version 2.0. Tech. rep., Object Management Group. http:\/\/www.omg.org\/spec\/UML\/2.0\/."},{"volume-title":"Questionnaire Design, Interviewing and Attitude Measurement","author":"Oppenheim A. N.","key":"e_1_2_2_62_1","unstructured":"A. N. Oppenheim . 1992. Questionnaire Design, Interviewing and Attitude Measurement . Pinter , London . A. N. Oppenheim. 1992. Questionnaire Design, Interviewing and Attitude Measurement. Pinter, London."},{"key":"e_1_2_2_63_1","volume-title":"Software Engineering - Theory and Practice","author":"Pfleeger S.","unstructured":"S. Pfleeger and J. Atlee 2006. Software Engineering - Theory and Practice . 3 rd Ed. Ellis Horwood . S. Pfleeger and J. Atlee 2006. Software Engineering - Theory and Practice. 3rd Ed. Ellis Horwood.","edition":"3"},{"key":"e_1_2_2_64_1","doi-asserted-by":"publisher","DOI":"10.1109\/52.819965"},{"key":"e_1_2_2_65_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.988711"},{"key":"e_1_2_2_66_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2002.1010061"},{"key":"e_1_2_2_67_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2009.69"},{"key":"e_1_2_2_68_1","doi-asserted-by":"publisher","DOI":"10.1145\/2629457"},{"key":"e_1_2_2_69_1","unstructured":"G. Salton and M. J. Mcgill. 1983. Introduction to Modern Information Retrieval. McGraw Hill New York.   G. Salton and M. J. Mcgill. 1983. Introduction to Modern Information Retrieval. McGraw Hill New York."},{"key":"e_1_2_2_70_1","doi-asserted-by":"publisher","DOI":"10.1006\/ijhc.1996.0048"},{"key":"e_1_2_2_71_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jvlc.2014.03.002"},{"key":"e_1_2_2_72_1","doi-asserted-by":"publisher","DOI":"10.1145\/2491912"},{"key":"e_1_2_2_73_1","unstructured":"G. Scanniello C. Gravino M. Risi G. Tortora and G. Dodero. 2014b. Design pattern instances comprehension. http:\/\/www2.unibas.it\/gscanniello\/DP\/.  G. Scanniello C. Gravino M. Risi G. Tortora and G. Dodero. 2014b. Design pattern instances comprehension. http:\/\/www2.unibas.it\/gscanniello\/DP\/."},{"key":"e_1_2_2_74_1","doi-asserted-by":"publisher","DOI":"10.1109\/CSMR.2013.51"},{"key":"e_1_2_2_75_1","first-page":"144","volume-title":"Proceedings of the Working Conference on Reverse Engineering (WCRE'93)","author":"Selfridge P.","unstructured":"P. Selfridge , R. Waters , and E. Chikofsky . 1993. Challenges to the field of reverse engineering . In Proceedings of the Working Conference on Reverse Engineering (WCRE'93) . IEEE Computer Society , 144 - 150 . P. Selfridge, R. Waters, and E. Chikofsky. 1993. Challenges to the field of reverse engineering. In Proceedings of the Working Conference on Reverse Engineering (WCRE'93). IEEE Computer Society, 144-150."},{"key":"e_1_2_2_76_1","doi-asserted-by":"publisher","DOI":"10.1093\/biomet\/52.3-4.591"},{"key":"e_1_2_2_77_1","doi-asserted-by":"publisher","DOI":"10.1007\/s10664-008-9060-1"},{"key":"e_1_2_2_78_1","doi-asserted-by":"publisher","DOI":"10.1023\/B:EMSE.0000013516.80487.33"},{"key":"e_1_2_2_79_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2008.26"},{"key":"e_1_2_2_80_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2005.97"},{"key":"e_1_2_2_81_1","doi-asserted-by":"publisher","DOI":"10.1145\/1159733.1159741"},{"key":"e_1_2_2_82_1","doi-asserted-by":"publisher","DOI":"10.5555\/1018434.1021561"},{"key":"e_1_2_2_83_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2004.99"},{"key":"e_1_2_2_84_1","doi-asserted-by":"publisher","DOI":"10.1023\/B:EMSE.0000027778.69251.1f"},{"volume-title":"Experimentation in Software Engineering","author":"Wohlin C.","key":"e_1_2_2_85_1","unstructured":"C. Wohlin , P. Runeson , M. Host , M. Ohlsson , B. Regnell , and A Wesslen . 2012. Experimentation in Software Engineering . Springer . C. Wohlin, P. Runeson, M. Host, M. Ohlsson, B. Regnell, and A Wesslen. 2012. Experimentation in Software Engineering. Springer."},{"key":"e_1_2_2_86_1","unstructured":"M. V. Zelkowitz A. C. Shaw and J. D. Gannon. 1979. Principles of Software Engineering and Design. Prentice-Hall.   M. V. Zelkowitz A. C. Shaw and J. D. Gannon. 1979. Principles of Software Engineering and Design. Prentice-Hall."}],"container-title":["ACM Transactions on Software Engineering and Methodology"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2699696","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2699696","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T06:16:59Z","timestamp":1750227419000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2699696"}},"subtitle":["A Family of Experiments on Source-Code Comprehensibility"],"short-title":[],"issued":{"date-parts":[[2015,5,13]]},"references-count":86,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2015,5,13]]}},"alternative-id":["10.1145\/2699696"],"URL":"https:\/\/doi.org\/10.1145\/2699696","relation":{},"ISSN":["1049-331X","1557-7392"],"issn-type":[{"type":"print","value":"1049-331X"},{"type":"electronic","value":"1557-7392"}],"subject":[],"published":{"date-parts":[[2015,5,13]]},"assertion":[{"value":"2014-03-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2014-12-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2015-05-13","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}