Title: | mining api mapping for language migration |
Author: | Zhong Hao
; Thummalapenta Suresh
; Xie Tao
; Zhang Lu
; Wang Qing
|
Source: | Proceedings - International Conference on Software Engineering
|
Conference Name: | 32nd ACM/IEEE International Conference on Software Engineering, ICSE 2010
|
Conference Date: | May 1, 201
|
Issued Date: | 2010
|
Conference Place: | Cape Town, South africa
|
Keyword: | Application programming interfaces (API)
; Computer software
; Defects
; Errors
; Linguistics
; Mapping
; Query languages
|
Publish Place: | United States
|
ISSN: | 2705257
|
ISBN: | 9781610000000
|
Department: | (1) Laboratory for Internet Software Technologies, Institute of Software, Chinese Academy of Sciences, Beijing, 100190, China; (2) Key Laboratory of High Confidence Software Technologies (Peking University), Ministry of Education, China; (3) Institute of Software, School of Electronics Engineering and Computer Science, Peking University, China; (4) Department of Computer Science, North Carolina State University, Raleigh, NC 27695-8206, United States
|
Sponsorship: | Association for Computing Machinery (ACM); IEEE Computer Society; Technical Council on Software Engineering (tcse); SIGSOFT; Computer Society - South Africa
|
English Abstract: | To address business requirements and to survive in competing markets, companies or open source organizations often have to release different versions of their projects in different languages. Manually migrating projects from one language to another (such as from Java to C#) is a tedious and error-prone task. To reduce manual effort or human errors, tools can be developed for automatic migration of projects from one language to another. However, these tools require the knowledge of how Application Programming Interfaces (APIs) of one language are mapped to APIs of the other language, referred to as API mapping relations. In this paper, we propose a novel approach, called MAM (Mining API Mapping), that mines API mapping relations from one language to another using API client code. MAM accepts a set of projects each with two versions in two languages and mines API mapping relations between those two languages based on how APIs are used by the two versions. These mined API mapping relations assist in migration of projects from one language to another. We implemented a tool and conducted two evaluations to show the effectiveness of MAM. The results show that our tool mines 25,805 unique mapping relations of APIs between Java and C# with more than 80% accuracy. The results also show that mined API mapping relations help reduce 54.4% compilation errors and 43.0% defects during migration of projects with an existing migration tool, called Java2CSharp. The reduction in compilation errors and defects is due to our new mined mapping relations that are not available with the existing migration tool. © 2010 ACM. |
Content Type: | 会议论文
|
URI: | http://ir.iscas.ac.cn/handle/311060/8826
|
Appears in Collections: | 互联网软件技术实验室 _会议论文
|
File Name/ File Size |
Content Type |
Version |
Access |
License |
|
p195-zhong.pdf(277KB) | -- | -- | 限制开放 | -- | 联系获取全文 |
|
Recommended Citation: |
Zhong Hao,Thummalapenta Suresh,Xie Tao,et al. mining api mapping for language migration[C]. 见:32nd ACM/IEEE International Conference on Software Engineering, ICSE 2010. Cape Town, South africa. May 1, 201.
|
|
|