{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,16]],"date-time":"2025-10-16T03:54:17Z","timestamp":1760586857946,"version":"3.41.0"},"reference-count":52,"publisher":"Association for Computing Machinery (ACM)","issue":"2","license":[{"start":{"date-parts":[[2017,6,12]],"date-time":"2017-06-12T00:00:00Z","timestamp":1497225600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["SIGSOFT Softw. Eng. Notes"],"published-print":{"date-parts":[[2017,6,12]]},"abstract":"<jats:p>Feature-Oriented Programming (FOP) is a general paradigm for synthesizing programs in software product lines. A family of software systems constitutes a software product line (SPL). The unique characteristics of feature-oriented programs such as mixin layers, refinements of classes, refinements of constructors, constants, refinements, etc. pose special difficulties in the slicing of these programs. This paper proposes a dynamic slicing algorithm for feature-oriented programs. The algorithm is named Execution Trace File Based Feature-Oriented Dynamic Slicing (ETBFODS) algorithm. The ETBFODS algorithm uses a dependence based representation called Dynamic Feature Composition Dependence Graph (DFCDG) and an execution trace file to store execution history of the program for a given input. The dynamic slice is computed by traversing the DFCDG in breadth--first or depth-first wise and then mapping the resultant traversed vertices to the program statements.<\/jats:p>","DOI":"10.1145\/3089649.3089657","type":"journal-article","created":{"date-parts":[[2017,6,13]],"date-time":"2017-06-13T12:18:36Z","timestamp":1497356316000},"page":"1-16","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":4,"title":["Computing Dynamic Slices of Feature--Oriented Programs Using Execution Trace File"],"prefix":"10.1145","volume":"42","author":[{"given":"Madhusmita","family":"Sahu","sequence":"first","affiliation":[{"name":"Department of CSE National Institute of Technology, Odisha, India"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Durga Prasad","family":"Mohapatra","sequence":"additional","affiliation":[{"name":"Department of CSE National Institute of Technology, Odisha, India"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2017,6,12]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1145\/93548.93576"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.5381\/jot.2009.8.5.c5"},{"key":"e_1_2_1_3_1","first-page":"3","volume-title":"Proceedings of the 2nd ECOOP Workshop on Reflection, AOP, and Meta-Data for Software Evolution (RAM-SE)","author":"Apel Sven","year":"2005"},{"key":"e_1_2_1_4_1","doi-asserted-by":"crossref","unstructured":"Sven Apel Thomas Leich Marko Rosenmuller and Gunter Saake. FeatureC++: Feature-Oriented and Aspect-Oriented Programming in C++. Technical report 2005.  Sven Apel Thomas Leich Marko Rosenmuller and Gunter Saake. FeatureC++: Feature-Oriented and Aspect-Oriented Programming in C++. Technical report 2005.","DOI":"10.1007\/11561347_10"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1007\/11561347_10"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1007\/11877028_1"},{"volume-title":"5th TSConIT Program","year":"2006","author":"Braak Timon Ter","key":"e_1_2_1_7_1"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.5555\/645445.653143"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.5555\/645446.653201"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0020-0190(01)00202-2"},{"key":"e_1_2_1_11_1","doi-asserted-by":"crossref","unstructured":"Diganta Goswami and Rajib Mall. A parallel algorithm for static slicing of concurrent programs. Concurrency -- Practice and Experience 16(8):751--769 2004.   Diganta Goswami and Rajib Mall. A parallel algorithm for static slicing of concurrent programs. Concurrency -- Practice and Experience 16(8):751--769 2004.","DOI":"10.1002\/cpe.789"},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1109\/APSEC.2005.51"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1049\/iet-sen.2009.0080"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2010.112"},{"key":"e_1_2_1_15_1","first-page":"495","volume-title":"Larsen and Mary Jean Harrold. Slicing Object-Oriented Software. In Proceedings of 18th International Conference on Software Engineering","author":"Loren","year":"1996"},{"key":"e_1_2_1_16_1","unstructured":"Rajib Mall. Fundamentals of Software Engineering. PHI Learning Private Limited Delhi Fourth edition 2014.   Rajib Mall. Fundamentals of Software Engineering. PHI Learning Private Limited Delhi Fourth edition 2014."},{"volume-title":"Indian Institute of Technology","year":"2005","author":"Mohapatra Durga Prasad","key":"e_1_2_1_17_1"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2006.01.009"},{"key":"e_1_2_1_19_1","first-page":"60","volume-title":"Rajeev Kumar. An Edge Marking Technique for Dynamic Slicing of Object-Oriented Programs. In Proceedings of the 28th Annual International Computer Software and Applications Conference (COMPSAC'04)","author":"Mohapatra Durga Prasad","year":"2004"},{"key":"e_1_2_1_20_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2005.02.002"},{"key":"e_1_2_1_21_1","first-page":"261","article-title":"Dynamic slicing of aspect-oriented programs","volume":"32","author":"Mohapatra Durga Prasad","year":"2008","journal-title":"Informatica"},{"key":"e_1_2_1_22_1","unstructured":"G. B. Mund Diganta Goswami and Rajib Mall. The Compiler Design Handbook. CRC Press Second edition 2002.  G. B. Mund Diganta Goswami and Rajib Mall. The Compiler Design Handbook. CRC Press Second edition 2002."},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0950-5849(03)00029-6"},{"key":"e_1_2_1_24_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0950-5849(01)00224-5"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2005.07.024"},{"key":"e_1_2_1_26_1","doi-asserted-by":"publisher","DOI":"10.1109\/COMPSAC.2015.98"},{"volume-title":"Eduardo Figueiredo. A Systematic Literature Review of Software Product Line Management Tools. In Proceedings of 14th International Conference on Software Reuse (ICSR'11)","year":"2015","author":"Pereira Juliana Alves","key":"e_1_2_1_27_1"},{"key":"e_1_2_1_28_1","doi-asserted-by":"publisher","DOI":"10.1007\/BFb0053389"},{"issue":"3","key":"e_1_2_1_29_1","first-page":"6","article-title":"A Novel Approach for Computing Dynamic Slices of Aspect-Oriented Programs","volume":"5","author":"Ray Abhishek","year":"2012","journal-title":"International Journal of Computer Information Systems"},{"issue":"1","key":"e_1_2_1_30_1","first-page":"13","article-title":"An Approach for Computing Dynamic Slice of Concurrent Aspect-Oriented Programs","volume":"7","author":"Ray Abhishek","year":"2013","journal-title":"International Journal of Software Engineering and Its Applications"},{"volume-title":"Kalinga Institute of Industrial Technology","year":"2014","author":"Ray Abhishek","key":"e_1_2_1_31_1"},{"key":"e_1_2_1_32_1","doi-asserted-by":"publisher","DOI":"10.1109\/ICIT.2007.13"},{"key":"e_1_2_1_33_1","first-page":"381","volume-title":"Proceedings of 3rd International Conference on Advanced Computing, Networking and Informatics (ICACNI 2015","author":"Sahu Madhusmita","year":"2015"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1640162.1666579"},{"key":"e_1_2_1_35_1","first-page":"159","volume-title":"Singh and Durga Prasad Mohapatra. A Unique Aspect-Oriented Program Slicing Technique. In Proceedings of International Conference on Advances in Computing, Communications and Informatics (ICACCI'13)","author":"Jagannath","year":"2013"},{"key":"e_1_2_1_36_1","doi-asserted-by":"publisher","DOI":"10.1109\/APSEC.2014.35"},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2012.06.002"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.5555\/580131.857013"},{"volume-title":"USA","year":"2003","author":"Zhao Jianjun","key":"e_1_2_1_40_1"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/358557.358577"},{"volume-title":"Linkoping University","year":"1993","author":"Kamkar M.","key":"e_1_2_1_42_1"},{"key":"e_1_2_1_43_1","doi-asserted-by":"publisher","DOI":"10.5555\/645542.658152"},{"key":"e_1_2_1_44_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.83912"},{"key":"e_1_2_1_45_1","first-page":"43","volume-title":"Application of Dynamic Slicing in Program Debugging. In Proceedings of the 3rd International Workshop on Automatic Debugging","author":"Korel Bogdan","year":"1997"},{"key":"e_1_2_1_46_1","first-page":"303","volume-title":"Istvan Forgacs. An Efficient Relevant Slicing Method for Debugging. In Proceedings of European Software Engineering Conference","author":"Gyimothy Tibor","year":"1999"},{"key":"e_1_2_1_47_1","doi-asserted-by":"publisher","DOI":"10.1002\/stvr.4370050303"},{"key":"e_1_2_1_48_1","doi-asserted-by":"publisher","DOI":"10.1016\/S0950-5849(98)00085-8"},{"issue":"2","key":"e_1_2_1_49_1","first-page":"93","article-title":"Efficient Program Slicing Algorithms for Measuring Functional Cohesion and Parallelism","volume":"4","author":"Dallal J. Al","year":"2007","journal-title":"International Journal of Information Technology"},{"volume-title":"Proceedings of the IEEE\/ACM Fifteenth International Conference on Software Engineering (ICSE), 509--518","year":"1993","author":"Beck J.","key":"e_1_2_1_50_1"},{"key":"e_1_2_1_51_1","doi-asserted-by":"publisher","DOI":"10.5555\/1038267.1039057"},{"key":"e_1_2_1_52_1","doi-asserted-by":"publisher","DOI":"10.5555\/2747015.2747194"},{"key":"e_1_2_1_53_1","doi-asserted-by":"publisher","DOI":"10.1109\/COMPSACW.2010.67"}],"container-title":["ACM SIGSOFT Software Engineering Notes"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3089649.3089657","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3089649.3089657","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T03:03:21Z","timestamp":1750215801000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3089649.3089657"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2017,6,12]]},"references-count":52,"journal-issue":{"issue":"2","published-print":{"date-parts":[[2017,6,12]]}},"alternative-id":["10.1145\/3089649.3089657"],"URL":"https:\/\/doi.org\/10.1145\/3089649.3089657","relation":{},"ISSN":["0163-5948"],"issn-type":[{"type":"print","value":"0163-5948"}],"subject":[],"published":{"date-parts":[[2017,6,12]]},"assertion":[{"value":"2017-06-12","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}