{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,17]],"date-time":"2026-07-17T03:51:26Z","timestamp":1784260286179,"version":"3.55.0"},"reference-count":77,"publisher":"Association for Computing Machinery (ACM)","issue":"3","license":[{"start":{"date-parts":[[2012,6,1]],"date-time":"2012-06-01T00:00:00Z","timestamp":1338508800000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/501100004837","name":"Ministerio de Ciencia e Innovaci\u00f3n","doi-asserted-by":"publisher","award":["TIN2008-066220C03-02"],"award-info":[{"award-number":["TIN2008-066220C03-02"]}],"id":[{"id":"10.13039\/501100004837","id-type":"DOI","asserted-by":"publisher"}]},{"DOI":"10.13039\/501100003359","name":"Generalitat Valenciana","doi-asserted-by":"publisher","award":["ACOMP\/2010\/042"],"award-info":[{"award-number":["ACOMP\/2010\/042"]}],"id":[{"id":"10.13039\/501100003359","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Comput. Surv."],"published-print":{"date-parts":[[2012,6]]},"abstract":"<jats:p>This article surveys previous work on program slicing-based techniques. For each technique, we describe its features, its main applications, and a common example of slicing using such a technique. After discussing each technique separately, all of them are compared in order to clarify and establish the relations between them. This comparison gives rise to a classification of techniques which can help to guide future research directions in this field.<\/jats:p>","DOI":"10.1145\/2187671.2187674","type":"journal-article","created":{"date-parts":[[2012,6,15]],"date-time":"2012-06-15T15:31:37Z","timestamp":1339774297000},"page":"1-41","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":107,"title":["A vocabulary of program slicing-based techniques"],"prefix":"10.1145","volume":"44","author":[{"given":"Josep","family":"Silva","sequence":"first","affiliation":[{"name":"Universitat Polit\u00e8cnica de Val\u00e8ncia, Valencia, Spain"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"320","published-online":{"date-parts":[[2012,6,14]]},"reference":[{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/93542.93576"},{"key":"e_1_2_1_3_1","volume-title":"Proceedings of the Conference on Software Maintenance. IEEE Computer Society, 348--357","author":"Agrawal H.","unstructured":"Agrawal , H. , Horgan , J. R. , Krauser , E. W. , and London , S . 1993. Incremental regression testing . In Proceedings of the Conference on Software Maintenance. IEEE Computer Society, 348--357 . Agrawal, H., Horgan, J. R., Krauser, E. W., and London, S. 1993. Incremental regression testing. In Proceedings of the Conference on Software Maintenance. IEEE Computer Society, 348--357."},{"key":"e_1_2_1_5_1","volume-title":"Proceedings of the 15th International Conference on Software Engineering. IEEE Computer Society Press, 509--519","author":"Beck J.","unstructured":"Beck , J. and Eichmann , D . 1993. Program and interface slicing for reverse engineering . In Proceedings of the 15th International Conference on Software Engineering. IEEE Computer Society Press, 509--519 . Beck, J. and Eichmann, D. 1993. Program and interface slicing for reverse engineering. In Proceedings of the 15th International Conference on Software Engineering. IEEE Computer Society Press, 509--519."},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/2363.2366"},{"key":"e_1_2_1_7_1","volume-title":"Proceedings of the International Conference on Software Maintenance. IEEE Computer Society, 12--21","author":"Besz\u00e9des","unstructured":"Besz\u00e9des , \u00c1., Farag\u00f3 , C. , Szab\u00f3 , Z. M. , Csirik , J. , and Gyim\u00f3thy , T . 2002. Union slices for program maintenance . In Proceedings of the International Conference on Software Maintenance. IEEE Computer Society, 12--21 . Besz\u00e9des, \u00c1., Farag\u00f3, C., Szab\u00f3, Z. M., Csirik, J., and Gyim\u00f3thy, T. 2002. Union slices for program maintenance. In Proceedings of the International Conference on Software Maintenance. IEEE Computer Society, 12--21."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2006.04.007"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.tcs.2006.01.012"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2004.12"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0065-2458(08)60641-5"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0065-2458(03)62003-6"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0950-5849(98)00086-X"},{"key":"e_1_2_1_14_1","volume-title":"Proceedings of the International Conference on Software Maintenance. 424--433","author":"Canfora G.","unstructured":"Canfora , G. , Cimitile , A. , De Lucia , A. , and Lucca , G. A. D. 1994. Software salvaging based on conditions . In Proceedings of the International Conference on Software Maintenance. 424--433 . Canfora, G., Cimitile, A., De Lucia, A., and Lucca, G. A. D. 1994. Software salvaging based on conditions. In Proceedings of the International Conference on Software Maintenance. 424--433."},{"key":"e_1_2_1_15_1","volume-title":"Proceedings of the International Conference on Software Maintenance. 378--385","author":"Chen T. Y.","unstructured":"Chen , T. Y. and Cheung , Y. Y . 1993. Dynamic program dicing . In Proceedings of the International Conference on Software Maintenance. 378--385 . Chen, T. Y. and Cheung, Y. Y. 1993. Dynamic program dicing. In Proceedings of the International Conference on Software Maintenance. 378--385."},{"key":"e_1_2_1_16_1","first-page":"22","article-title":"Program slicing and data provenance","volume":"30","author":"Cheney J.","year":"2007","unstructured":"Cheney , J. 2007 . Program slicing and data provenance . IEEE Data Engineer. Bullet. 30 , 4, 22 -- 28 . Cheney, J. 2007. Program slicing and data provenance. IEEE Data Engineer. Bullet. 30, 4, 22--28.","journal-title":"IEEE Data Engineer. Bullet."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.5555\/646902.710201"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1093\/comjnl\/bxh121"},{"key":"e_1_2_1_19_1","volume-title":"Proceedings of the 2nd U.K. Workshop on Program Comprehension. 54--65","author":"Danicic S.","unstructured":"Danicic , S. and Harman , M . 1996. Program slicing using functional networks . In Proceedings of the 2nd U.K. Workshop on Program Comprehension. 54--65 . Danicic, S. and Harman, M. 1996. Program slicing using functional networks. In Proceedings of the 2nd U.K. Workshop on Program Comprehension. 54--65."},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2001.972675"},{"key":"e_1_2_1_21_1","volume-title":"Proceedings of the 4th Workshop on Program Comprehension, A. Cimitile and H. A. M\u00fcller, Eds. IEEE Computer Society Press, 9--18","author":"De Lucia A.","unstructured":"De Lucia , A. , Fasolino , A. R. , and Munro , M . 1996. Understanding function behaviors through program slicing . In Proceedings of the 4th Workshop on Program Comprehension, A. Cimitile and H. A. M\u00fcller, Eds. IEEE Computer Society Press, 9--18 . De Lucia, A., Fasolino, A. R., and Munro, M. 1996. Understanding function behaviors through program slicing. In Proceedings of the 4th Workshop on Program Comprehension, A. Cimitile and H. A. M\u00fcller, Eds. IEEE Computer Society Press, 9--18."},{"key":"e_1_2_1_22_1","volume-title":"Proceedings of the 7th European Conference on Software Maintenance and Reengineering. IEEE Computer Society, 363--367","author":"De Lucia A.","unstructured":"De Lucia , A. , Harman , M. , Hierons , R. M. , and Krinke , J . 2003. Unions of slices are not slices . In Proceedings of the 7th European Conference on Software Maintenance and Reengineering. IEEE Computer Society, 363--367 . De Lucia, A., Harman, M., Hierons, R. M., and Krinke, J. 2003. Unions of slices are not slices. In Proceedings of the 7th European Conference on Software Maintenance and Reengineering. IEEE Computer Society, 363--367."},{"key":"e_1_2_1_23_1","volume-title":"Proceedings of the Symposium on Partial Evaluation and Semantic-Based Program Manipulation. 105--118","author":"Dwyer M.","unstructured":"Dwyer , M. and Hatcliff , J . 1999. Slicing software for model construction . In Proceedings of the Symposium on Partial Evaluation and Semantic-Based Program Manipulation. 105--118 . Dwyer, M. and Hatcliff, J. 1999. Slicing software for model construction. In Proceedings of the Symposium on Partial Evaluation and Semantic-Based Program Manipulation. 105--118."},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1145\/24039.24041"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/199448.199534"},{"key":"e_1_2_1_26_1","volume-title":"Proceedings of the 9th IEEE International Workshop on Program Comprehension. 89--97","author":"Fox C.","unstructured":"Fox , C. , Harman , M. , Hierons , R. , and Danicic , S . 2001. Backward conditioning: A new program specialization technique and its application to program comprehension . In Proceedings of the 9th IEEE International Workshop on Program Comprehension. 89--97 . Fox, C., Harman, M., Hierons, R., and Danicic, S. 2001. Backward conditioning: A new program specialization technique and its application to program comprehension. In Proceedings of the 9th IEEE International Workshop on Program Comprehension. 89--97."},{"key":"e_1_2_1_27_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2006.30"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.83912"},{"key":"e_1_2_1_29_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2004.20"},{"key":"e_1_2_1_30_1","unstructured":"Gaucher F. 2003. Slicing Lustre programs. Tech. rep. VERIMAG Grenoble.  Gaucher F. 2003. Slicing Lustre programs. Tech. rep. VERIMAG Grenoble."},{"key":"e_1_2_1_31_1","doi-asserted-by":"publisher","DOI":"10.1023\/A:1025872819613"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2007.3"},{"key":"e_1_2_1_33_1","volume-title":"Semantics, Verification","author":"Greibach S.","unstructured":"Greibach , S. 1985. Theory of Program Structures: Schemes , Semantics, Verification . Springer-Verlag New York, Inc. , Secaucus, NJ . Greibach, S. 1985. Theory of Program Structures: Schemes, Semantics, Verification. Springer-Verlag New York, Inc., Secaucus, NJ."},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/222124.222137"},{"key":"e_1_2_1_35_1","volume-title":"Proceedings of the 7th European Software Engineering Conference. Springer-Verlag, 303--321","author":"Gyim\u00f3thy T.","unstructured":"Gyim\u00f3thy , T. , Besz\u00e9des , \u00c1., and Forg\u00e1cs , I . 1999. An efficient relevant slicing method for debugging . In Proceedings of the 7th European Software Engineering Conference. Springer-Verlag, 303--321 . Gyim\u00f3thy, T., Besz\u00e9des, \u00c1., and Forg\u00e1cs, I. 1999. An efficient relevant slicing method for debugging. In Proceedings of the 7th European Software Engineering Conference. Springer-Verlag, 303--321."},{"key":"e_1_2_1_36_1","first-page":"33","article-title":"Automatic extraction of executable program subsets by simultaneous dynamic program slicing. Auto","volume":"2","author":"Hall R.","year":"1995","unstructured":"Hall , R. 1995 . Automatic extraction of executable program subsets by simultaneous dynamic program slicing. Auto . Softw. Engin. 2 , 1, 33 -- 53 . Hall, R. 1995. Automatic extraction of executable program subsets by simultaneous dynamic program slicing. Auto. Softw. Engin. 2, 1, 33--53.","journal-title":"Softw. Engin."},{"key":"e_1_2_1_37_1","volume-title":"Proceedings of the 5th International Workshop on Program Comprehension. IEEE Computer Society Press, 70--79","author":"Harman M.","unstructured":"Harman , M. and Danicic , S . 1997. Amorphous program slicing . In Proceedings of the 5th International Workshop on Program Comprehension. IEEE Computer Society Press, 70--79 . Harman, M. and Danicic, S. 1997. Amorphous program slicing. In Proceedings of the 5th International Workshop on Program Comprehension. IEEE Computer Society Press, 70--79."},{"key":"e_1_2_1_38_1","volume-title":"Proceedings of the 2nd U.K. Workshop on Program Comprehension.","author":"Harman M.","unstructured":"Harman , M. , Danicic , S. , Sivagurunathan , Y. , and Simpson , D . 1996. The next 700 slicing criteria . In Proceedings of the 2nd U.K. Workshop on Program Comprehension. Harman, M., Danicic, S., Sivagurunathan, Y., and Simpson, D. 1996. The next 700 slicing criteria. In Proceedings of the 2nd U.K. Workshop on Program Comprehension."},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0950-5849(98)00084-6"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1002\/swf.41"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2001.972724"},{"key":"e_1_2_1_42_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2005.2"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.1145\/53990.53994"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.5555\/865125"},{"key":"e_1_2_1_45_1","doi-asserted-by":"publisher","DOI":"10.1145\/1065010.1065016"},{"key":"e_1_2_1_46_1","doi-asserted-by":"publisher","DOI":"10.1145\/243439.243447"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1016\/0020-0190(88)90054-3"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1145\/277633.277638"},{"key":"e_1_2_1_49_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2003.1238034"},{"key":"e_1_2_1_50_1","doi-asserted-by":"publisher","DOI":"10.1145\/940071.940096"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.1023\/B:SQJO.0000039792.93414.a5"},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.1145\/567532.567555"},{"key":"e_1_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.5555\/257572.257586"},{"key":"e_1_2_1_54_1","volume-title":"Proceedings of the 18th International Conference on Software Engineering. IEEE Computer Society, 495--505","author":"Larsen L.","unstructured":"Larsen , L. and Harrold , M . 1996. Slicing object-oriented software . In Proceedings of the 18th International Conference on Software Engineering. IEEE Computer Society, 495--505 . Larsen, L. and Harrold, M. 1996. Slicing object-oriented software. In Proceedings of the 18th International Conference on Software Engineering. IEEE Computer Society, 495--505."},{"key":"e_1_2_1_55_1","doi-asserted-by":"publisher","DOI":"10.1145\/380752.380864"},{"key":"e_1_2_1_56_1","doi-asserted-by":"publisher","DOI":"10.1145\/347324.349121"},{"key":"e_1_2_1_57_1","volume-title":"Proceedings of the 2nd International Conference on Computers and Applications. 877--882","author":"Lyle J.","unstructured":"Lyle , J. and Weiser , M . 1987. Automatic program bug location by program slicing . In Proceedings of the 2nd International Conference on Computers and Applications. 877--882 . Lyle, J. and Weiser, M. 1987. Automatic program bug location by program slicing. In Proceedings of the 2nd International Conference on Computers and Applications. 877--882."},{"key":"e_1_2_1_58_1","doi-asserted-by":"publisher","DOI":"10.1145\/175290.175295"},{"key":"e_1_2_1_59_1","doi-asserted-by":"publisher","DOI":"10.1145\/302405.302674"},{"key":"e_1_2_1_60_1","volume-title":"Proceedings of the 9th International Workshop on Program Comprehension (IWPC'01)","author":"Orso A.","unstructured":"Orso , A. , Sinha , S. , and Harrold , M . 2001a. Effects of pointers on data dependences . In Proceedings of the 9th International Workshop on Program Comprehension (IWPC'01) . 39--49. Orso, A., Sinha, S., and Harrold, M. 2001a. Effects of pointers on data dependences. In Proceedings of the 9th International Workshop on Program Comprehension (IWPC'01). 39--49."},{"key":"e_1_2_1_61_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICSM.2001.972726"},{"key":"e_1_2_1_62_1","doi-asserted-by":"publisher","DOI":"10.1145\/800020.808263"},{"key":"e_1_2_1_63_1","doi-asserted-by":"publisher","DOI":"10.1145\/73337.73347"},{"key":"e_1_2_1_64_1","doi-asserted-by":"publisher","DOI":"10.1145\/222132.222138"},{"key":"e_1_2_1_65_1","volume-title":"Proceedings of the International Workshop on Automated and Algorithmic Debugging. 59--68","author":"Sivagurunathan Y.","unstructured":"Sivagurunathan , Y. , Harman , M. , and Danicic , S . 1997. Slicing, I\/O, and the implicit state . In Proceedings of the International Workshop on Automated and Algorithmic Debugging. 59--68 . Sivagurunathan, Y., Harman, M., and Danicic, S. 1997. Slicing, I\/O, and the implicit state. In Proceedings of the International Workshop on Automated and Algorithmic Debugging. 59--68."},{"key":"e_1_2_1_66_1","doi-asserted-by":"crossref","unstructured":"Sparud J.\n     and \n      Runciman C\n  . \n  1997\n  . Tracing lazy functional computations using redex trails. In Proceedings of the 9th International Symposium on Programming Languages Implementations Logics and Programs. \n  Springer Berlin Lecture Notes in Computer Science vol. \n  1292 291--308.   Sparud J. and Runciman C. 1997. Tracing lazy functional computations using redex trails. In Proceedings of the 9th International Symposium on Programming Languages Implementations Logics and Programs. Springer Berlin Lecture Notes in Computer Science vol. 1292 291--308.","DOI":"10.1007\/BFb0033851"},{"key":"e_1_2_1_67_1","doi-asserted-by":"publisher","DOI":"10.1145\/1250734.1250748"},{"key":"e_1_2_1_68_1","volume-title":"Proceedings of the 10th International Workshop on Program Comprehension. IEEE Computer Society, 169--177","author":"Takada T.","unstructured":"Takada , T. , Ohata , F. , and Inoue , K . 2002. Dependence-cache slicing: A program slicing method using lightweight dynamic information . In Proceedings of the 10th International Workshop on Program Comprehension. IEEE Computer Society, 169--177 . Takada, T., Ohata, F., and Inoue, K. 2002. Dependence-cache slicing: A program slicing method using lightweight dynamic information. In Proceedings of the 10th International Workshop on Program Comprehension. IEEE Computer Society, 169--177."},{"key":"e_1_2_1_69_1","doi-asserted-by":"publisher","DOI":"10.1109\/52.663794"},{"key":"e_1_2_1_70_1","first-page":"121","article-title":"A survey of program slicing techniques","volume":"3","author":"Tip F.","year":"1995","unstructured":"Tip , F. 1995 . A survey of program slicing techniques . J. Program. Lang. 3 , 121 -- 189 . Tip, F. 1995. A survey of program slicing techniques. J. Program. Lang. 3, 121--189.","journal-title":"J. Program. Lang."},{"key":"e_1_2_1_71_1","doi-asserted-by":"publisher","DOI":"10.1145\/113445.113455"},{"key":"e_1_2_1_72_1","doi-asserted-by":"publisher","DOI":"10.5555\/645984.675418"},{"key":"e_1_2_1_73_1","doi-asserted-by":"publisher","DOI":"10.1109\/SCAM.2003.1238035"},{"key":"e_1_2_1_74_1","doi-asserted-by":"publisher","DOI":"10.1145\/1216374.1216375"},{"key":"e_1_2_1_76_1","doi-asserted-by":"publisher","DOI":"10.5555\/800078.802557"},{"key":"e_1_2_1_77_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1984.5010248"},{"key":"e_1_2_1_78_1","volume-title":"Proceedings of the 20th IEEE International Conference on Software Maintenance. IEEE Computer Society, 448--452","author":"Willmor D.","unstructured":"Willmor , D. , Embury , S. , and Shao , J . 2004. Program slicing in the presence of a database state . In Proceedings of the 20th IEEE International Conference on Software Maintenance. IEEE Computer Society, 448--452 . Willmor, D., Embury, S., and Shao, J. 2004. Program slicing in the presence of a database state. In Proceedings of the 20th IEEE International Conference on Software Maintenance. IEEE Computer Society, 448--452."},{"key":"e_1_2_1_79_1","doi-asserted-by":"publisher","DOI":"10.1145\/1050849.1050865"},{"key":"e_1_2_1_80_1","doi-asserted-by":"publisher","DOI":"10.5555\/580131.857013"}],"container-title":["ACM Computing Surveys"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2187671.2187674","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2187671.2187674","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T10:06:33Z","timestamp":1750241193000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2187671.2187674"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012,6]]},"references-count":77,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2012,6]]}},"alternative-id":["10.1145\/2187671.2187674"],"URL":"https:\/\/doi.org\/10.1145\/2187671.2187674","relation":{},"ISSN":["0360-0300","1557-7341"],"issn-type":[{"value":"0360-0300","type":"print"},{"value":"1557-7341","type":"electronic"}],"subject":[],"published":{"date-parts":[[2012,6]]},"assertion":[{"value":"2006-10-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2010-10-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2012-06-14","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}