Statistical learning approach for mining API usage mappings for code migration

作者: Anh Tuan Nguyen , Hoan Anh Nguyen , Tung Thanh Nguyen , Tien N. Nguyen

DOI: 10.1145/2642937.2643010

关键词:

摘要: The same software product nowadays could appear in multiple platforms and devices. To address business needs, companies develop a programming language then migrate it to another one. support that process, semi-automatic migration tools have been proposed. However, they require users manually define the mappings between respective APIs of libraries used two languages. reduce such manual effort, we introduce StaMiner, novel data-driven approach statistically learns from corpus corresponding client code languages Java C#. Instead using heuristics on textual or structural similarity map API methods classes as existing mining approaches, StaMiner is based statistical model provides for with all possible arities. Our empirical evaluation several projects shows can detect usage higher accuracy than state-of-the-art approach. With resulting mined by Java2CSharp, an tool, achieve level accuracy.

参考文章(31)
Hao Zhong, Tao Xie, Lu Zhang, Jian Pei, Hong Mei, MAPO: Mining and Recommending API Usage Patterns european conference on object oriented programming. pp. 318- 343 ,(2009) , 10.1007/978-3-642-03013-0_15
Philipp Koehn, Kevin Knight, Statistical Machine Translation ,(2010)
Wesley Tansey, Eli Tilevich, Annotation refactoring Proceedings of the 23rd ACM SIGPLAN conference on Object oriented programming systems languages and applications - OOPSLA '08. ,vol. 43, pp. 295- 312 ,(2008) , 10.1145/1449764.1449788
Anh Tuan Nguyen, Tung Thanh Nguyen, Tien N. Nguyen, Lexical statistical machine translation for language migration foundations of software engineering. pp. 651- 654 ,(2013) , 10.1145/2491411.2494584
Vincent J. Della Pietra, Stephen A. Della Pietra, Robert L. Mercer, Peter F. Brown, The mathematics of statistical machine translation: parameter estimation Computational Linguistics. ,vol. 19, pp. 263- 311 ,(1993)
Harry M. Sneed, Migrating from COBOL to Java international conference on software maintenance. pp. 1- 7 ,(2010) , 10.1109/ICSM.2010.5609583
Anh Tuan Nguyen, Hoan Anh Nguyen, Tung Thanh Nguyen, Tien N. Nguyen, Statistical learning of API mappings for language migration international conference on software engineering. pp. 618- 619 ,(2014) , 10.1145/2591062.2591144
R.C. Waters, Program translation via abstraction and reimplementation IEEE Transactions on Software Engineering. ,vol. 14, pp. 1207- 1228 ,(1988) , 10.1109/32.7629
K. Yasumatsu, N. Doi, SPiCE: a system for translating Smalltalk programs into a C environment IEEE Transactions on Software Engineering. ,vol. 21, pp. 902- 912 ,(1995) , 10.1109/32.473219
Tung Thanh Nguyen, Hoan Anh Nguyen, Nam H. Pham, Jafar M. Al-Kofahi, Tien N. Nguyen, Graph-based mining of multiple object usage patterns foundations of software engineering. pp. 383- 392 ,(2009) , 10.1145/1595696.1595767