{"title":"Cross references are features","authors":"R. Schwanke, M. Platoff","doi":"10.1145/72910.73351","DOIUrl":null,"url":null,"abstract":"When a software system is developed by a large team of programmers, and has matured’ for several years, changes to the code may introduce unexpected interactions between diverse parts of the system. This occurs because the system has become too large for one person to fully understand, and the original design documentation has become obsolete as the system has evolved. Symptoms of structural problems include too many unnecessary recompilations, unintended cyclic dependency chains, and some types of difficulties with understanding, modifying, and testing the system. Most structural problems cannot be solved by making a few “small” changes, and most require the programmer to understand the overall pattern of interactions in order to solve the problem.","PeriodicalId":198444,"journal":{"name":"Proceedings of the 2nd International Workshop on Software configuration management","volume":"37 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1989-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"63","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings of the 2nd International Workshop on Software configuration management","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/72910.73351","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 63
Abstract
When a software system is developed by a large team of programmers, and has matured’ for several years, changes to the code may introduce unexpected interactions between diverse parts of the system. This occurs because the system has become too large for one person to fully understand, and the original design documentation has become obsolete as the system has evolved. Symptoms of structural problems include too many unnecessary recompilations, unintended cyclic dependency chains, and some types of difficulties with understanding, modifying, and testing the system. Most structural problems cannot be solved by making a few “small” changes, and most require the programmer to understand the overall pattern of interactions in order to solve the problem.