{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,6,10]],"date-time":"2026-06-10T15:54:21Z","timestamp":1781106861238,"version":"3.54.1"},"reference-count":34,"publisher":"IGI Global Scientific Publishing","issue":"2","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012,4,1]]},"abstract":"<p>This paper documents a study of fault proneness in commercial, proprietary software and attempts to determine whether a relationship exists between class faults and the design context of a class, namely the coupling and cohesion of a class, and whether the class is a participant of common design patterns. The authors studied a commercial software system for a 24 month period and identified design pattern participants by inspecting the design documentation and source code; coupling and cohesion metrics were measured by inspecting the source code with a tool; we also extracted fault data for the same period to determine whether a relationship existed between the design context and the fault propensity of a class. Results showed that design pattern participant classes were marginally more fault-prone than non-participant classes, The Adaptor, Method and Singleton patterns were found to be the most fault-prone of thirteen patterns explored. Coupling was found to have a significant relationship with the fault proneness of classes in the system; efferent coupling was a stronger indicator of fault propensity than afferent coupling. Cohesion, when measured using the LCOM(HS) metric, was not found to have a strong relationship with fault proneness.<\/p>","DOI":"10.4018\/jismd.2012040103","type":"journal-article","created":{"date-parts":[[2012,3,29]],"date-time":"2012-03-29T09:34:42Z","timestamp":1333013682000},"page":"69-88","source":"Crossref","is-referenced-by-count":2,"title":["Faults and Their Relationship to Implemented Patterns, Coupling and Cohesion in Commercial C# Software"],"prefix":"10.4018","volume":"3","author":[{"given":"Matt","family":"Gatrell","sequence":"first","affiliation":[{"name":"Brunel University, UK"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Steve","family":"Counsell","sequence":"additional","affiliation":[{"name":"Brunel University, UK"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"2432","reference":[{"key":"jismd.2012040103-0","doi-asserted-by":"crossref","unstructured":"Antoniol, G., Fiutem, R., & Cristoforetti, L. (1998). Using metrics to identify design patterns in object-oriented software. In Proceedings of the IEEE Software Metrics Symposium.","DOI":"10.1109\/METRIC.1998.731224"},{"key":"jismd.2012040103-1","doi-asserted-by":"crossref","unstructured":"Arisholm, E., & Briand, L. (2006). Predicting fault prone components in a Java legacy system. In Proceedings of the ACM\/IEEE International Symposium on Empirical Software Engineering.","DOI":"10.1145\/1159733.1159738"},{"key":"jismd.2012040103-2","doi-asserted-by":"crossref","unstructured":"Aversano, L., Canfora, G., Cerulo, L., Del Grosso, C., & Di Penta, M. (2007). An empirical study on the evolution of design patterns. In Proceedings of the ACM SIGSOFT International Symposium on Foundations of Software Engineering (pp. 385-394).","DOI":"10.1145\/1287624.1287680"},{"key":"jismd.2012040103-3","doi-asserted-by":"crossref","unstructured":"Aversano, L., Cerulo, L., & Di Penta, M. (2009). The relationship between design patterns defects and crosscutting concern scattering degree: an empirical study. IET Software, 3(5).","DOI":"10.1049\/iet-sen.2008.0105"},{"key":"jismd.2012040103-4","doi-asserted-by":"publisher","DOI":"10.1109\/32.544352"},{"key":"jismd.2012040103-5","doi-asserted-by":"crossref","unstructured":"Bieman, J., Jain, D., & Yang, H. (2001). Design patterns, design structure, and program changes: an industrial case study. In Proceedings of the International Conference on Software Maintenance.","DOI":"10.1109\/ICSM.2001.972775"},{"key":"jismd.2012040103-6","doi-asserted-by":"crossref","unstructured":"Bieman, J., Straw, G., Wang, H., Willard Munger, P., & Alexander, R. (2003). Design patterns and change proneness: An examination of five evolving systems. In Proceedings of the International Software Metrics Symposium.","DOI":"10.1109\/METRIC.2003.1232454"},{"key":"jismd.2012040103-7","doi-asserted-by":"crossref","unstructured":"Bieman, J., & Zhao, J. (1995). Reuse through inheritance: A quantitative study of C++ software. In Proceedings of the ACM Symposium on Software Reuse, Seattle, WA (pp. 47-52).","DOI":"10.1145\/223427.211794"},{"key":"jismd.2012040103-8","author":"J.Bishop","year":"2008","journal-title":"C# 3.0 design patterns"},{"key":"jismd.2012040103-9","doi-asserted-by":"publisher","DOI":"10.1023\/A:1009783721306"},{"key":"jismd.2012040103-10","doi-asserted-by":"publisher","DOI":"10.1109\/32.748920"},{"key":"jismd.2012040103-11","author":"F.Buschmann","year":"1996","journal-title":"Pattern-oriented software architecture: A system of patterns"},{"key":"jismd.2012040103-12","doi-asserted-by":"publisher","DOI":"10.1109\/32.295895"},{"key":"jismd.2012040103-13","doi-asserted-by":"publisher","DOI":"10.1007\/BF00368701"},{"issue":"7","key":"jismd.2012040103-14","first-page":"1177","article-title":"Improving behavioral design pattern detection through model checking.","volume":"82","author":"A.De Lucia","year":"2009","journal-title":"Journal of Systems and Software"},{"key":"jismd.2012040103-15","doi-asserted-by":"crossref","unstructured":"Di Penta, M., Cerulo, L., Gu\u00e9h\u00e9neuc, Y.-G., & Antoniol, G. (2008). An empirical study of the relationships between design pattern roles and class change proneness. In Proceedings of the International Conference on Software Maintenance, Beijing, China (pp. 217-226).","DOI":"10.1109\/ICSM.2008.4658070"},{"key":"jismd.2012040103-16","author":"M.Fowler","year":"1997","journal-title":"Analysis patterns: Reusable object models"},{"key":"jismd.2012040103-17","author":"M.Fowler","year":"1999","journal-title":"Refactoring: Improving the design of existing code"},{"key":"jismd.2012040103-18","author":"E.Gamma","year":"1995","journal-title":"Design patterns: Elements of reusable object-oriented software"},{"key":"jismd.2012040103-19","doi-asserted-by":"crossref","unstructured":"Gatrell, M., & Counsell, S. (2011). Design patterns and fault proneness. A study of C# commerical software. In Proceedings of the IEEE Fifth International Conference on Research Challenges in Information Science, Guadaloupe, French West Indies, France.","DOI":"10.1109\/RCIS.2011.6006827"},{"key":"jismd.2012040103-20","doi-asserted-by":"crossref","unstructured":"Gatrell, M., Counsell, S., & Hall, T. (2009). Design patterns and change proneness: a replication using proprietary C# software. In Proceedings of the IEEE Working Conference on Reverse Engineering, Lille, France.","DOI":"10.1109\/WCRE.2009.31"},{"key":"jismd.2012040103-21","author":"M.Grand","year":"2002","journal-title":"Patterns in Java: A catalog of reusable design patterns illustrated with UML"},{"key":"jismd.2012040103-22","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2005.112"},{"key":"jismd.2012040103-23","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2009.3"},{"key":"jismd.2012040103-24","doi-asserted-by":"publisher","DOI":"10.1023\/A:1009741031615"},{"key":"jismd.2012040103-25","doi-asserted-by":"crossref","unstructured":"Kramer, C., & Prechelt, L. (1996). Design recovery by automated search for structural design patterns in object oriented software. In Proceedings of the Working Conference on Reverse Engineering (pp. 208-215).","DOI":"10.1109\/WCRE.1996.558905"},{"key":"jismd.2012040103-26","doi-asserted-by":"crossref","unstructured":"Nagappan, N., & Ball, T. (2005). Static analysis tools as early indicators or pre-release defect density. In Proceedings of the International Conference on Software Engineering, St Louis, MO.","DOI":"10.1145\/1062455.1062558"},{"key":"jismd.2012040103-27","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2005.49"},{"key":"jismd.2012040103-28","doi-asserted-by":"publisher","DOI":"10.1145\/361598.361623"},{"key":"jismd.2012040103-29","author":"D.Schmidt","year":"2000","journal-title":"Pattern-oriented software architecture: Patterns for concurrent and networked objects"},{"key":"jismd.2012040103-30","doi-asserted-by":"crossref","unstructured":"Sinha, V., Sinha, S., & Rao, S. (2010). Buginnings: Identifying the origins of a bug. In Proceedings of the 3rd India Software Engineering Conference, Mysore, India (pp. 3-12).","DOI":"10.1145\/1730874.1730879"},{"key":"jismd.2012040103-31","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2004.99"},{"key":"jismd.2012040103-32","doi-asserted-by":"crossref","unstructured":"Wheeldon, R., & Counsell, S. (2003). Power law distributions in class relationships. In Proceedings of the Third IEEE International Workshop on Source Code Analysis and Manipulation, Amsterdam, The Netherlands (pp. 45-54).","DOI":"10.1109\/SCAM.2003.1238030"},{"key":"jismd.2012040103-33","unstructured":"Zhao, L., & Hayes, J. (2006). Predicting classes in need of refactoring: an application of static metrics. In Proceedings of the 2nd International PROMISE Workshop, Philadelphia, PA, co-located with the IEEE Conference on Software Maintenance."}],"container-title":["International Journal of Information System Modeling and Design"],"original-title":[],"language":"ng","link":[{"URL":"https:\/\/www.igi-global.com\/viewtitle.aspx?TitleId=65562","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,6,1]],"date-time":"2022-06-01T14:52:25Z","timestamp":1654095145000},"score":1,"resource":{"primary":{"URL":"https:\/\/services.igi-global.com\/resolvedoi\/resolve.aspx?doi=10.4018\/jismd.2012040103"}},"subtitle":[""],"short-title":[],"issued":{"date-parts":[[2012,4,1]]},"references-count":34,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2012,4]]}},"URL":"https:\/\/doi.org\/10.4018\/jismd.2012040103","relation":{},"ISSN":["1947-8186","1947-8194"],"issn-type":[{"value":"1947-8186","type":"print"},{"value":"1947-8194","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012,4,1]]}}}