Analysis and Exploitation of Natural Software Diversity: The Case of API Usages - Archive ouverte HAL Access content directly
Reports (Research Report) Year : 2014

Analysis and Exploitation of Natural Software Diversity: The Case of API Usages

Abstract

In this paper, we study how object-oriented classes are used across thousands of software packages. We concentrate on "usage diversity", defined as the different statically observable combinations of methods called on the same object. We present empirical evidence that there is a significant usage diversity for many classes. For instance, we observe in our dataset that Java's String is used in 2460 manners. Beyond those empirical observations, we show that we can use this API usage diversity to reason on the core design of object-oriented classes. We think that our pieces of evidence on API usage diversity shake up some established ideas on the nature of software and how to engineer it. Hence, we discuss those empirical results in the general context of software engineering: what are the reasons behind this diversity? what are the implications of this diversity?
Fichier principal
Vignette du fichier
analysis-exploitation-api-diversity.pdf (612.66 Ko) Télécharger le fichier
Origin : Files produced by the author(s)
Loading...

Dates and versions

hal-01095501 , version 1 (15-12-2014)

Identifiers

  • HAL Id : hal-01095501 , version 1

Cite

Diego Mendez, Benoit Baudry, Martin Monperrus. Analysis and Exploitation of Natural Software Diversity: The Case of API Usages. [Research Report] hal-01095501, Inria. 2014. ⟨hal-01095501⟩
601 View
201 Download

Share

Gmail Facebook X LinkedIn More