{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2022,5,6]],"date-time":"2022-05-06T00:12:17Z","timestamp":1651795937125},"reference-count":26,"publisher":"IGI Global","issue":"2","content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2020,4]]},"abstract":"<jats:p>Software exists in various control systems, such as security-critical systems and so on. Existing program clustering methods are limited in identifying functional equivalent programs with different syntactic representations. To solve this problem, firstly, a clustering method based on structured metric vectors was proposed to quickly identify structurally similar programs from a large number of existing programs. Next, a clustering method based on similar execution value sequences was proposed, to accurately identify the functional equivalent programs with code variations. This approach has been applied in automatic program repair, to identify sample programs from a large pool of template programs. The average purity value is 0.95576 and the average entropy is 0.15497. This means that the clustering partition is consistent with the expected partition.<\/jats:p>","DOI":"10.4018\/ijdwm.2020040104","type":"journal-article","created":{"date-parts":[[2020,1,31]],"date-time":"2020-01-31T18:34:07Z","timestamp":1580495647000},"page":"48-63","source":"Crossref","is-referenced-by-count":1,"title":["Data Mining in Programs"],"prefix":"10.4018","volume":"16","author":[{"given":"TianTian","family":"Wang","sequence":"first","affiliation":[{"name":"School of Computer Science and Technology, Harbin Institute of Technology, Harbin, China"}]},{"given":"KeChao","family":"Wang","sequence":"additional","affiliation":[{"name":"School of Information Engineering, Harbin University, Harbin, China"}]},{"given":"XiaoHong","family":"Su","sequence":"additional","affiliation":[{"name":"School of Computer Science and Technology, Harbin Institute of Technology, Harbin, China"}]},{"given":"Lin","family":"Liu","sequence":"additional","affiliation":[{"name":"School of Information Engineering, Harbin University, Harbin, China"}]}],"member":"2432","reference":[{"key":"IJDWM.2020040104-0","doi-asserted-by":"publisher","DOI":"10.1145\/2086696.2086700"},{"key":"IJDWM.2020040104-1","doi-asserted-by":"crossref","unstructured":"Gazzola, L., Micucci, D., & Mariani, L. (2017). Automatic software repair: a survey. IEEE Transactions on Software Engineering.","DOI":"10.1145\/3180155.3182526"},{"key":"IJDWM.2020040104-2","doi-asserted-by":"publisher","DOI":"10.1109\/ICSE.2012.6227211"},{"key":"IJDWM.2020040104-3","unstructured":"Jean-R\u00e9my, F., Flor\u00e9al, M., Xavier, B., Matias, M., & Martin, M. (2014). Fine-grained and accurate source code differencing. Proceedings of the 29th ACM\/IEEE international conference on Automated software engineering. ACM"},{"key":"IJDWM.2020040104-4","article-title":"Apex: automatic programming assignment error explanation.","author":"D.Kim","year":"2016","journal-title":"ACM Sigplan International Conference on Object-oriented Programming"},{"key":"IJDWM.2020040104-5","author":"X. B. D.Le","year":"2017","journal-title":"S3: Syntax-and Semantic-Guided Repair Synthesis via Programming by Examples. Proceedings of the Joint Meeting on Foundations of Software Engineering"},{"key":"IJDWM.2020040104-6","doi-asserted-by":"publisher","DOI":"10.1145\/2837614.2837617"},{"key":"IJDWM.2020040104-7","doi-asserted-by":"publisher","DOI":"10.1016\/j.jss.2006.02.037"},{"key":"IJDWM.2020040104-8","doi-asserted-by":"publisher","DOI":"10.1109\/ICPC.2013.6613844"},{"key":"IJDWM.2020040104-9","doi-asserted-by":"crossref","unstructured":"Mechtaev, S., Nguyen, M. D., Noller, Y., Grunske, L., & Roychoudhury, A. (2018). Semantic program repair using a reference implementation. Proceedings of the 40th International Conference on Software Engineering. IEEE Computer Society.","DOI":"10.1145\/3180155.3180247"},{"key":"IJDWM.2020040104-10","doi-asserted-by":"crossref","unstructured":"Mechtaev, S., Yi, J., & Roychoudhury, A. (2017). Angelix: Scalable Multiline Program Patch Synthesis via Symbolic Analysis. Proceedings of the 2016 IEEE\/ACM 38th International Conference on Software Engineering (ICSE). IEEE.","DOI":"10.1145\/2884781.2884807"},{"key":"IJDWM.2020040104-11","unstructured":"Ming, W., Junjie, C., Rongxin, W., Dan, H., & Shing-Chi, C. (2018). Context-aware patch generation for better automated program repair. Proceedings of the 40th International Conference on Software Engineering. IEEE Computer Society."},{"key":"IJDWM.2020040104-12","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.2014.2312918"},{"key":"IJDWM.2020040104-13","doi-asserted-by":"crossref","unstructured":"Pu, Y., Narasimhan, K., Solar-Lezama, A., & Barzilay, R. (2016). SK_P: a neural program corrector for MOOCs. Proceedings of the 2016 ACM SIGPLAN: Software for Humanity. ACM.","DOI":"10.1145\/2984043.2989222"},{"key":"IJDWM.2020040104-14","doi-asserted-by":"publisher","DOI":"10.1145\/2568225.2568254"},{"key":"IJDWM.2020040104-15","article-title":"DeepFix: fixing common C programming errors by deep learning.","author":"G.Rahul","year":"2017","journal-title":"31st AAAI Conference on Artificial Intelligence"},{"key":"IJDWM.2020040104-16","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2009.02.007"},{"key":"IJDWM.2020040104-17","doi-asserted-by":"crossref","unstructured":"Scanniello, G., & Marcus, A. (2011). Clustering Support for Static Concept Location in Source Code. Proceedings of the 2011 19th IEEE International Conference on Program Comprehension. IEEE Computer Society.","DOI":"10.1109\/ICPC.2011.13"},{"key":"IJDWM.2020040104-18","doi-asserted-by":"publisher","DOI":"10.1109\/TSMCA.2006.889473"},{"key":"IJDWM.2020040104-19","doi-asserted-by":"publisher","DOI":"10.1145\/2491956.2462195"},{"key":"IJDWM.2020040104-20","author":"C. L.Timothy","year":"2002","journal-title":"Approaches to clustering for program comprehension and remodularization. Advances in software engineering"},{"key":"IJDWM.2020040104-21","author":"T.Wang","year":"2013","journal-title":"Searching for better configurations: A rigorous approach to clone evaluation. Proceedings of the Joint Meeting on Foundations of Software Engineering"},{"key":"IJDWM.2020040104-22","doi-asserted-by":"publisher","DOI":"10.1016\/j.infsof.2006.03.001"},{"key":"IJDWM.2020040104-23","doi-asserted-by":"crossref","unstructured":"Weimer, W., Fry, Z. P., & Forrest, S. (2013). Leveraging program equivalence for adaptive program repair: Models and first results. Proceedings of the 2013 IEEE\/ACM 28th International Conference on Automated Software Engineering (ASE). ACM.","DOI":"10.1109\/ASE.2013.6693094"},{"key":"IJDWM.2020040104-24","doi-asserted-by":"crossref","unstructured":"Xiong, Y., Wang, J., Yan, R., Zhang, J., Han, S., & Huang, G. (2017). Precise Condition Synthesis for Program Repair. Proceedings of the 2017 IEEE\/ACM 39th International Conference on Software Engineering (ICSE). IEEE.","DOI":"10.1109\/ICSE.2017.45"},{"key":"IJDWM.2020040104-25","author":"J.Yi","year":"2017","journal-title":"A feasibility study of using automated program repair for introductory programming assignments. Proceedings of the Joint Meeting on Foundations of Software Engineering"}],"container-title":["International Journal of Data Warehousing and Mining"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.igi-global.com\/viewtitle.aspx?TitleId=247920","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2022,5,5]],"date-time":"2022-05-05T23:50:17Z","timestamp":1651794617000},"score":1,"resource":{"primary":{"URL":"http:\/\/services.igi-global.com\/resolvedoi\/resolve.aspx?doi=10.4018\/IJDWM.2020040104"}},"subtitle":["Clustering Programs Based on Structure Metrics and Execution Values"],"short-title":[],"issued":{"date-parts":[[2020,4]]},"references-count":26,"journal-issue":{"issue":"2"},"URL":"https:\/\/doi.org\/10.4018\/ijdwm.2020040104","relation":{},"ISSN":["1548-3924","1548-3932"],"issn-type":[{"value":"1548-3924","type":"print"},{"value":"1548-3932","type":"electronic"}],"subject":[],"published":{"date-parts":[[2020,4]]}}}