Exploring the Impact of API Complexity on Failure-Proneness

Global Software Engineering(2014)

引用 3|浏览55
暂无评分
摘要
Interfaces, or APIs, are central to realizing the benefits of information hiding, but despite their widespread use, designing good interfaces is not a trivial activity. Particular design choices can have a significant detrimental effect on quality or development productivity, in particular, in large and geo-graphically distributed projects. In this paper, we take a two-step approach. We first examined the impact of API complexity on the failure proneness of source code files. By API complexity we mean how easy or difficult is to use a particular API based on the public functions and data of this API. Second, we examine the relationship of API complexity and geographical distribution of the development teams. In our study we used data from two large-scale systems from two different software companies and nine open source projects from the GNOME community. Our analyses showed that increases in the complexity of APIs are associated with increases in the failure proneness of source code files. API complexity is the second best predictor in our results. Furthermore, the organizational context and the patterns of geographical distribution of the development teams have a moderating effect on the role of API complexity. We discuss the research and practical implication of the results.
更多
查看译文
关键词
application program interfaces,public domain software,software reliability,source code (software),API complexity,GNOME community,development productivity,failure-proneness,geographically distributed projects,information hiding,large-scale systems,open source projects,organizational context,public functions,source code files,API complexity,corporate versus open source,glogbal software development,software failures
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要