{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,19]],"date-time":"2025-03-19T14:44:38Z","timestamp":1742395478420},"reference-count":45,"publisher":"Elsevier BV","issue":"3","license":[{"start":{"date-parts":[[1999,1,1]],"date-time":"1999-01-01T00:00:00Z","timestamp":915148800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.elsevier.com\/tdm\/userlicense\/1.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Journal of Systems and Software"],"published-print":{"date-parts":[[1999,1]]},"DOI":"10.1016\/s0164-1212(98)10058-4","type":"journal-article","created":{"date-parts":[[2003,4,4]],"date-time":"2003-04-04T21:09:52Z","timestamp":1049490592000},"page":"213-227","source":"Crossref","is-referenced-by-count":6,"title":["Points-to analysis for program understanding"],"prefix":"10.1016","volume":"44","author":[{"given":"R","family":"Fiutem","sequence":"first","affiliation":[]},{"given":"P","family":"Tonella","sequence":"additional","affiliation":[]},{"given":"G","family":"Antoniol","sequence":"additional","affiliation":[]},{"given":"E","family":"Merlo","sequence":"additional","affiliation":[]}],"member":"78","reference":[{"key":"10.1016\/S0164-1212(98)10058-4_BIB1","doi-asserted-by":"crossref","unstructured":"H. Agrawal, R.A. DeMillo, E.H. Spafford, Dynamic slicing in the presence of unconstrained pointers, Proceedings of the ACM Fourth Symposium on Testing, Analysis and Verification (TAV4), 1991, pp. 60\u201373","DOI":"10.1145\/120807.120813"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB2","unstructured":"H. Agrawal, Towards Automatic Debugging of Computer Programs, Ph.D Thesis, Purdue University, 1991"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB3","unstructured":"L.O. Andersen, Program Analysis and Specialization for the C Programming Language, Ph.D Thesis, DIKU, University of Copenhagen, 1994"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB4","doi-asserted-by":"crossref","unstructured":"G. Antoniol, R. Fiutem, G. Lutteri, P. Tonella, S. Zanfei, E. Merlo, Program understanding and maintenance with the CANTO environment, Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press, Silver Spring, MD, 1997, pp. 72\u201381","DOI":"10.1109\/ICSM.1997.624233"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB5","doi-asserted-by":"crossref","unstructured":"D.C. Atkinson, W.G. Griswold, The design of whole-program analysis tools, Proceedings of the International Conference on Software Engineering, 1996, pp. 16\u201327","DOI":"10.1109\/ICSE.1996.493398"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB6","doi-asserted-by":"crossref","unstructured":"G. Canfora, A. Cimitile, M. Munro, C.J. Taylor, Extracting abstract data type from C programs: A case study, Proceedings of the International Conference on Software Maintenance, 1993, pp. 200\u2013209","DOI":"10.1109\/ICSM.1993.366942"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB7","doi-asserted-by":"crossref","unstructured":"G. Canfora, A. Cimitile, M. Tortorella, M. Munro, A precise method for identifying reusable abstract data type in C code, Proceedings of the International Conference on Software Maintenance, 1994, pp. 404\u2013413","DOI":"10.1109\/ICSM.1994.336754"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB8","doi-asserted-by":"crossref","unstructured":"D.R. Chase, M. Wegman, F.K. Zadeck, Analysis of pointers and structures, Proceedings of the SIGPLAN'90 Conference on Programming Language Design and Implementation, 1990, pp. 296\u2013310","DOI":"10.1145\/93542.93585"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB9","doi-asserted-by":"crossref","unstructured":"M.P. Chase, D.R. Harris, S.N. Roberts, A.S. Yeh, Analysis and presentation of recovered software architectures, Proceedings of the Working Conference on Reverse Engineering, IEEE Computer Society Press, Silver Spring, MD, 1996, pp. 153\u2013162","DOI":"10.1109\/WCRE.1996.558899"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB10","doi-asserted-by":"crossref","unstructured":"Y.R. Chen, G.S. Flowler, E. Koutsofios, R.S. Wallach, Ciao: A graphical navigator for software document repositories, Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press, Silver Spring, MD, 1995, pp. 66\u201375","DOI":"10.1109\/ICSM.1995.526528"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB11","doi-asserted-by":"crossref","unstructured":"A. Cimitile, A. De Lucia, M. Munro, Identifying reusable functions using specification driven program slicing: A case study, Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press, Silver Spring, MD, 1995, pp. 124\u2013133","DOI":"10.1109\/ICSM.1995.526534"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB12","doi-asserted-by":"crossref","unstructured":"A. Cimitile, A. De Lucia, M. Munro, Qualifying reusable functions using symbolic execution, Proceedings of the Working Conference on Reverse Engineering, IEEE Computer Society Press, Silver Spring, MD, 1995, pp. 178\u2013187","DOI":"10.1109\/WCRE.1995.514706"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB13","doi-asserted-by":"crossref","first-page":"117","DOI":"10.1016\/0164-1212(94)00049-S","article-title":"Software salvaging and the call dominance tree","volume":"28","author":"Cimitile","year":"1995","journal-title":"Journal of Systems and Software"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB14","doi-asserted-by":"crossref","unstructured":"M. Emami, R. Ghiya, L.J. Hendren, Context-sensitive interprocedural points-to analysis in the presence of function pointers, Proceedings of the ACM SIGPLAN'94 Conference on Programming Language Design and Implementation, June 20\u201324, Orlando, FL, 1994, pp. 242\u2013256","DOI":"10.1145\/178243.178264"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB15","unstructured":"M. Ernst, Practical fine-grained static slicing of optimized code, Technical report MSR-TR-94-14, Microsoft Research, Redmond, WA, 1994"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB16","doi-asserted-by":"crossref","unstructured":"R. Fiutem, E. Merlo, G. Antoniol, P. Tonella, Understanding the architecture of software systems, Proceedings of the Fourth Workshop on Program Comprehension, IEEE Computer Society Press, Silver Spring, MD, 1996, pp. 187\u2013196","DOI":"10.1109\/WPC.1996.501133"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB17","doi-asserted-by":"crossref","unstructured":"R. Fiutem, P. Tonella, G. Antoniol, E. Merlo, A cliche' based environment to support architectural reverse engineering, Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press, Silver Spring, MD, 1996, pp. 319\u2013328","DOI":"10.1109\/ICSM.1996.565035"},{"issue":"8","key":"10.1016\/S0164-1212(98)10058-4_BIB18","doi-asserted-by":"crossref","first-page":"751","DOI":"10.1109\/32.83912","article-title":"Using program slicing in software maintenance","volume":"17","author":"Gallagher","year":"1991","journal-title":"IEEE Transactions on Software Engineering"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB19","doi-asserted-by":"crossref","unstructured":"K.B. Gallagher, Visual impact analysis, Proceedings of the International Conference on Software Maintenance, IEEE Computer Society Press, Silver Spring, MD, 1996, pp. 52\u201358","DOI":"10.1109\/ICSM.1996.564988"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB20","doi-asserted-by":"crossref","unstructured":"D. Grove, G. DeFouw, J. Dean, C. Chambers, Call graph construction in object-oriented languages, Proceedings of OOPSLA'97, 1997, pp. 108\u2013124","DOI":"10.1145\/263698.264352"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB21","doi-asserted-by":"crossref","unstructured":"D.R. Harris, H.B. Reubenstein, A.S. Yeh, Recognizers for extracting architectural features from source code, in: Proceedings of the Second Working Conference on Reverse Engineering, Toronto, 1995, pp. 252\u2013261","DOI":"10.1109\/WCRE.1995.514713"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB22","doi-asserted-by":"crossref","unstructured":"M.J. Harrold, L. Larsen, J. Lloyd, D. Nedved, M. Page, G. Rothermel, M. Singh, M. Smith, Aristotle: A system for development of program analysis based tools, Proceedings of the 33rd Annual ACM Southeast Conference, 1995, pp. 110\u2013119","DOI":"10.1145\/1122018.1122038"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB23","doi-asserted-by":"crossref","unstructured":"R. Holt, J.Y. Pak, GASE: Visualizing software evolution-in-the-large, Proceedings of the Working Conference on Reverse Engineering, IEEE Computer Society Press, Silver Spring, MD, 1996, pp. 163\u2013166","DOI":"10.1109\/WCRE.1996.558900"},{"issue":"7","key":"10.1016\/S0164-1212(98)10058-4_BIB24","doi-asserted-by":"crossref","first-page":"28","DOI":"10.1145\/74818.74821","article-title":"Dependence analysis for pointer variables","volume":"24","author":"Horwitz","year":"1989","journal-title":"SIGPLAN Notices"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB25","doi-asserted-by":"crossref","unstructured":"W. Landi, B.G. Ryder, A safe approximate algorithm for interprocedural pointer aliasing, Proceedings of the ACM SIGPLAN'92 Conference on Programming Language Design and Implementation, 1992, pp. 235\u2013248","DOI":"10.1145\/143103.143137"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB26","doi-asserted-by":"crossref","unstructured":"L. Larsen, M.J. Harrold, Slicing object-oriented software, Proceedings of the International Conference on Software Engineering, 1996, pp. 495\u2013505","DOI":"10.1109\/ICSE.1996.493444"},{"issue":"3","key":"10.1016\/S0164-1212(98)10058-4_BIB27","doi-asserted-by":"crossref","first-page":"41","DOI":"10.1109\/MS.1986.233414","article-title":"Delocalized plans and program comprehension","volume":"3","author":"Letowsky","year":"1986","journal-title":"IEEE Software"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB28","doi-asserted-by":"crossref","unstructured":"S.S. Liu, N. Wilde, Identifying objects in a conventional procedural language: An example of data design recovery, Proceedings of the Conference on Software Maintenance, 1990, pp. 266\u2013271","DOI":"10.1109\/ICSM.1990.131371"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB29","unstructured":"J.R. Lyle, D. Binkley, Program slicing in the presence of pointers, Proceedings of the Third Software Engineering Research Forum, Orlando, FL, 1993, pp. 255\u2013260"},{"issue":"12","key":"10.1016\/S0164-1212(98)10058-4_BIB30","doi-asserted-by":"crossref","first-page":"1065","DOI":"10.1109\/32.184761","article-title":"Program concept recognition and transformation","volume":"18","author":"Kozaczynski","year":"1992","journal-title":"IEEE Transactions in Software Enginnering"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB31","doi-asserted-by":"crossref","unstructured":"G.C. Murphy, D. Notkin, E.S.-C. Lan, An empirical study of static call graph extractors, Proceedings of the International Conference on Software Engineering, 1996, pp. 90\u201399","DOI":"10.1109\/ICSE.1996.493405"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB32","unstructured":"H.D. Pande, Compile Time Analysis of C and C++ Systems, Ph.D Thesis, Rutgers University, New Brunswick, NJ, 1996"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB33","doi-asserted-by":"crossref","unstructured":"H.D. Pande, W.A. Landi, B.G. Ryder, Interprocedural def-use associations for C systems with single level pointers, IEEE Transactions on Software Engineering 20 (5) (1994) 385\u2013403","DOI":"10.1109\/32.286418"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB34","doi-asserted-by":"crossref","unstructured":"C. Rich, L. Wills, Recognizing a program's design: A graph parsing approach, IEEE Software 7(1) (1990) 82\u201389","DOI":"10.1109\/52.43053"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB35","doi-asserted-by":"crossref","unstructured":"M. Shapiro, S. Horwitz, Fast and accurate flow-insensitive points-to analysis, Proceedings of ACM POPL'97, Symposium on Principles of Programming Languages, 1997, pp. 1\u201314","DOI":"10.1145\/263699.263703"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB36","doi-asserted-by":"crossref","unstructured":"M. Shapiro, S. Horwitz, The effects of the precision of pointer analysis, Fourth International Symposium on Static Analysis (SAS'97) 1997","DOI":"10.1007\/BFb0032731"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB37","doi-asserted-by":"crossref","unstructured":"B. Steensgaard, Points-to analysis in almost linear time, Proceedings of the 23rd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, St. Petersburg Beach, FL, 1996","DOI":"10.1145\/237721.237727"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB38","doi-asserted-by":"crossref","unstructured":"B. Steensgaard, Points-to analysis by type inference of programs with structures and unions, Proceedings of the International Conference on Compiler Construction, Link\u00f6ping, Sweden, 1996","DOI":"10.1007\/3-540-61053-7_58"},{"issue":"3","key":"10.1016\/S0164-1212(98)10058-4_BIB39","first-page":"121","article-title":"A survey of program slicing techniques","volume":"3","author":"Tip","year":"1995","journal-title":"Journal of Programming Languages"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB40","doi-asserted-by":"crossref","unstructured":"P. Tonella, G. Antoniol, R. Fiutem, E. Merlo, Flow insensitive C++ pointers and polymorphism analysis and its application to slicing, Proceedings of the International Conference on Software Engineering, 1997, pp. 433\u2013443","DOI":"10.1145\/253228.253371"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB41","doi-asserted-by":"crossref","unstructured":"P. Tonella, R. Fiutem, G. Antoniol, E. Merlo, Augmenting pattern-based architectural recovery with flow analysis: Mosaic \u2013 A case study, Proceedings of the Third Working Conference on Reverse Engineering, 1996, pp. 198\u2013207","DOI":"10.1109\/WCRE.1996.558904"},{"issue":"4","key":"10.1016\/S0164-1212(98)10058-4_BIB42","doi-asserted-by":"crossref","first-page":"352","DOI":"10.1109\/TSE.1984.5010248","article-title":"Program slicing","volume":"10","author":"Weiser","year":"1984","journal-title":"IEEE Transactions on Software Engineering"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB43","doi-asserted-by":"crossref","unstructured":"L. Wills, Automated Program Recognition by Graph Parsing, Ph.D Dissertation, MIT, 1992","DOI":"10.21236\/ADA259609"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB44","doi-asserted-by":"crossref","unstructured":"R.P. Wilson, M.S. Lam, Efficient context-sensitive pointer analysis for C programs, Proceedings of the ACM SIGPLAN'95 Conference on Programming Language Design and Implementation, La Jolla, CA, 1995, pp. 1\u201312","DOI":"10.1145\/207110.207111"},{"key":"10.1016\/S0164-1212(98)10058-4_BIB45","doi-asserted-by":"crossref","unstructured":"K. Wong, S.R. Tilley, H.A. Muller, M.D. Storey, Structural redocumentation: A case study, IEEE Software 12 (1995) 46\u201354","DOI":"10.1109\/52.363166"}],"container-title":["Journal of Systems and Software"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0164121298100584?httpAccept=text\/xml","content-type":"text\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/api.elsevier.com\/content\/article\/PII:S0164121298100584?httpAccept=text\/plain","content-type":"text\/plain","content-version":"vor","intended-application":"text-mining"}],"deposited":{"date-parts":[[2020,1,28]],"date-time":"2020-01-28T16:39:37Z","timestamp":1580229577000},"score":1,"resource":{"primary":{"URL":"https:\/\/linkinghub.elsevier.com\/retrieve\/pii\/S0164121298100584"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[1999,1]]},"references-count":45,"journal-issue":{"issue":"3","published-print":{"date-parts":[[1999,1]]}},"alternative-id":["S0164121298100584"],"URL":"https:\/\/doi.org\/10.1016\/s0164-1212(98)10058-4","relation":{},"ISSN":["0164-1212"],"issn-type":[{"value":"0164-1212","type":"print"}],"subject":[],"published":{"date-parts":[[1999,1]]}}}