{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,11]],"date-time":"2026-04-11T09:30:59Z","timestamp":1775899859987,"version":"3.50.1"},"reference-count":23,"publisher":"Wiley","issue":"6","license":[{"start":{"date-parts":[[2006,10,30]],"date-time":"2006-10-30T00:00:00Z","timestamp":1162166400000},"content-version":"vor","delay-in-days":8186,"URL":"http:\/\/onlinelibrary.wiley.com\/termsAndConditions#vor"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Softw Pract Exp"],"published-print":{"date-parts":[[1984,6]]},"abstract":"<jats:title>Abstract<\/jats:title><jats:p>The design and analysis of the structure of software systems has typically been based on purely qualitative grounds. In this paper we report on our positive experience with a set of quantitative measures of software structure. These metrics, based on the number of possible paths of information flow through a given component, were used to evaluate the design and implementation of a software system (the UNIX operating system kernel) which exhibits the interconnectivity of components typical of large\u2010scale software systems. Several examples are presented which show the power of this technique in locating a variety of both design and implementation defects. Suggested repairs, which agree with the commonly accepted principles of structured design and programming, are presented. The effect of these alterations on the structure of the system and the quantitative measurements of that structure lead to a convincing validation of the utility of information flow metrics.<\/jats:p>","DOI":"10.1002\/spe.4380140606","type":"journal-article","created":{"date-parts":[[2006,11,18]],"date-time":"2006-11-18T04:01:30Z","timestamp":1163822490000},"page":"561-573","source":"Crossref","is-referenced-by-count":56,"title":["The evaluation of software systems' structure using quantitative software metrics"],"prefix":"10.1002","volume":"14","author":[{"given":"Sallie","family":"Henry","sequence":"first","affiliation":[]},{"given":"Dennis","family":"Kafura","sequence":"additional","affiliation":[]}],"member":"311","published-online":{"date-parts":[[2006,10,30]]},"reference":[{"key":"e_1_2_1_2_2","volume-title":"Software Reliability: Principles and Practices","author":"Myers G. J.","year":"1976"},{"key":"e_1_2_1_3_2","doi-asserted-by":"publisher","DOI":"10.1145\/363095.363143"},{"key":"e_1_2_1_4_2","doi-asserted-by":"publisher","DOI":"10.1145\/361268.361272"},{"key":"e_1_2_1_5_2","doi-asserted-by":"publisher","DOI":"10.1145\/360051.360076"},{"key":"e_1_2_1_6_2","unstructured":"D. L.Parnas \u2018Some hypothesis about the \u2018USES\u2019 hierarchy for operating systems\u2019 Research Report BS I 76\/1 Technische Hochschule Darmstadt Fachbereich Informattik Darmstadt W. Germany 1976."},{"key":"e_1_2_1_7_2","unstructured":"D. L.Parnas \u2018On a \u2018\u2018Buzzword\u2019\u2019: hierarchical structure\u2019 Proceedings of the 1974 IFIP Congress 1974 pp.336\u2013339."},{"key":"e_1_2_1_8_2","unstructured":"P. A.Janson \u2018Using type\u2010extension to organize virtual memory mechanisms\u2019 IBM Research Report RZ858 1977."},{"key":"e_1_2_1_9_2","unstructured":"R. N.Channon \u2018On a measure of program structure\u2019 Ph.D. Thesis Carnegie\u2010Mellon University. November1974."},{"key":"e_1_2_1_10_2","unstructured":"S. M.Henry \u2018Information flow metrics for the evaluation of operating systems' structure\u2019 Ph.D. Dissertation Iowa State University Ames Iowa 1979."},{"key":"e_1_2_1_11_2","volume-title":"Elements of Software Science","author":"Halstead M. H.","year":"1977"},{"key":"e_1_2_1_12_2","doi-asserted-by":"publisher","DOI":"10.1145\/1010627.807911"},{"key":"e_1_2_1_13_2","unstructured":"J.Lions \u2018A commentary on the UNIX operating system\u2019 Department of Computer Science University of New South Wales 1977."},{"key":"e_1_2_1_14_2","doi-asserted-by":"publisher","DOI":"10.1145\/361011.361061"},{"key":"e_1_2_1_15_2","article-title":"A viewpoint on software quality metrics: criteria, use and integration","volume":"4","author":"Kafura D. G.","year":"1982","journal-title":"Journal of Systems and Software"},{"key":"e_1_2_1_16_2","volume-title":"Flow Analysis of Computer Programs","author":"Hecht H.","year":"1978"},{"key":"e_1_2_1_17_2","first-page":"291","volume-title":"Interprocedural Analysis and the Information Derived by it. Lecture Notes in Computer Science","author":"Allen F. E.","year":"1974"},{"key":"e_1_2_1_18_2","doi-asserted-by":"publisher","DOI":"10.1145\/800283.811115"},{"key":"e_1_2_1_19_2","doi-asserted-by":"publisher","DOI":"10.1145\/1010627.807913"},{"key":"e_1_2_1_20_2","doi-asserted-by":"publisher","DOI":"10.1145\/800027.808439"},{"key":"e_1_2_1_21_2","doi-asserted-by":"crossref","unstructured":"L. A.BeladyandC. J.Evangelisti System partitioning and its measure IBM Research Report RC7560 1979.","DOI":"10.1016\/0306-4379(80)90041-1"},{"issue":"7","key":"e_1_2_1_22_2","article-title":"Why does software die?","volume":"8","author":"Brown P. J.","year":"1980","journal-title":"Life\u2010Cycle Management. Infotech State of the Art Report"},{"issue":"4","key":"e_1_2_1_23_2","doi-asserted-by":"crossref","DOI":"10.1109\/TSE.1976.233837","article-title":"A complexity measure","volume":"2","author":"McCabe T. J.","year":"1976","journal-title":"IEEE Transactions Software Engineering"},{"key":"e_1_2_1_24_2","doi-asserted-by":"crossref","unstructured":"D. L.Parnas \u2018Use of abstract interfaces in the development of software for embedded computer systems\u2019 NRL Report 8047 Naval Research Laboratory Washington D.C. 1977.","DOI":"10.21236\/ADA043369"}],"container-title":["Software: Practice and Experience"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.wiley.com\/onlinelibrary\/tdm\/v1\/articles\/10.1002%2Fspe.4380140606","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/pdf\/10.1002\/spe.4380140606","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,10,19]],"date-time":"2023-10-19T20:38:50Z","timestamp":1697747930000},"score":1,"resource":{"primary":{"URL":"https:\/\/onlinelibrary.wiley.com\/doi\/10.1002\/spe.4380140606"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1984,6]]},"references-count":23,"journal-issue":{"issue":"6","published-print":{"date-parts":[[1984,6]]}},"alternative-id":["10.1002\/spe.4380140606"],"URL":"https:\/\/doi.org\/10.1002\/spe.4380140606","archive":["Portico"],"relation":{},"ISSN":["0038-0644","1097-024X"],"issn-type":[{"value":"0038-0644","type":"print"},{"value":"1097-024X","type":"electronic"}],"subject":[],"published":{"date-parts":[[1984,6]]}}}