Towards Automatically Estimating Porting Effort between Web Service APIs
Hiranya Jayathilaka, Chandra Krintz, Rich Wolski · 2014
In this paper, we describe a new methodology for automatically quantifying the relative work required for a programmer to port an application from one web API to another, i.e. "porting effort". Our approach defines a simple language (based on Python) with which API developers specify the semantics of API operations, a tool set that consumes and extracts semantic similarity of API operations from annotations expressed in this language, and a metric that facilitates ranking of porting effort for API operation pairs. We evaluate our approach using both randomly generated and real-world web APIs and show that our metric can correctly categorize the relative difficulty that developers associate with porting an application from one API to another.