N. Wilde, R. Justice, Kristin Blackwell, W. E. Wong
{"title":"2000年问题的动态分析方法","authors":"N. Wilde, R. Justice, Kristin Blackwell, W. E. Wong","doi":"10.1002/(SICI)1096-908X(199905/06)11:3%3C167::AID-SMR190%3E3.0.CO;2-N","DOIUrl":null,"url":null,"abstract":"Programmers working on the year 2000 problem need to locate and understand date sensitive code, that is, code whose execution depends on date inputs. This paper presents several dynamic analysis methods for addressing this problem. Date sensitive code can be located by running many test cases that are identical except for a change in one date value. An advanced test coverage tool can recover each test's execution count vector giving the number of times that each basic block was executed. Comparison of the vectors reveals the blocks whose execution is affected by the input date values. We present several methods of analysing the execution count data to locate date algorithms. One method identifies subdomains, that is, ranges of dates that are processed similarly. Another method involves graphical or Fourier analysis to identify common programming patterns such as leap-year computations. The last method exploits the 28-year regularity in dates to look for anomalies in processing. The methods are illustrated using Bellcore's ATAC testing tool on five C programs that use some of the date encodings that year 2000 maintainers may need to locate and understand. Copyright © 1999 John Wiley & Sons, Ltd.","PeriodicalId":383619,"journal":{"name":"J. Softw. Maintenance Res. Pract.","volume":"431 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1999-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":"{\"title\":\"Dynamic analysis methods for the year 2000 problem\",\"authors\":\"N. Wilde, R. Justice, Kristin Blackwell, W. E. Wong\",\"doi\":\"10.1002/(SICI)1096-908X(199905/06)11:3%3C167::AID-SMR190%3E3.0.CO;2-N\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Programmers working on the year 2000 problem need to locate and understand date sensitive code, that is, code whose execution depends on date inputs. This paper presents several dynamic analysis methods for addressing this problem. Date sensitive code can be located by running many test cases that are identical except for a change in one date value. An advanced test coverage tool can recover each test's execution count vector giving the number of times that each basic block was executed. Comparison of the vectors reveals the blocks whose execution is affected by the input date values. We present several methods of analysing the execution count data to locate date algorithms. One method identifies subdomains, that is, ranges of dates that are processed similarly. Another method involves graphical or Fourier analysis to identify common programming patterns such as leap-year computations. The last method exploits the 28-year regularity in dates to look for anomalies in processing. The methods are illustrated using Bellcore's ATAC testing tool on five C programs that use some of the date encodings that year 2000 maintainers may need to locate and understand. Copyright © 1999 John Wiley & Sons, Ltd.\",\"PeriodicalId\":383619,\"journal\":{\"name\":\"J. Softw. Maintenance Res. Pract.\",\"volume\":\"431 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1999-05-01\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"1\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"J. Softw. Maintenance Res. Pract.\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1002/(SICI)1096-908X(199905/06)11:3%3C167::AID-SMR190%3E3.0.CO;2-N\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"J. Softw. Maintenance Res. Pract.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1002/(SICI)1096-908X(199905/06)11:3%3C167::AID-SMR190%3E3.0.CO;2-N","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1