When should internal interfaces be promoted to public?
MetadataShow full item record
Commonly, software systems have public (and stable) interfaces, and internal (and possibly unstable) interfaces. Despite being discouraged, client developers often use internal interfaces, which may cause their systems to fail when they evolve. To overcome this problem, API producers may promote internal interfaces to public. In practice, however, API producers have no assistance to identify public interface candidates. In this paper, we study the transition from internal to public interfaces. We aim to help API producers to deliver a better product and API clients to benefit sooner from public interfaces. Our empirical investigation on five widely adopted Java systems present the following observations. First, we identified 195 promotions from 2,722 internal interfaces. Second, we found that promoted internal interfaces have more clients. Third, we predicted internal interface promotion with precision between 50%-80%, recall 26%-82%, and AUC 74%-85%. Finally, by applying our predictor on the last version of the analyzed systems, we automatically detected 382 public interface candidates.
Showing items related by title, author, creator and subject.
Kühne M; Eschelbach M; Aghaeifar A; von Pflug L; Thielscher A; Himmelbach M; Scheffler K; van der Smagt P; Peer A (2018)Functional magnetic resonance imaging (fMRI) is a powerful tool for neuroscience. It allows the visualization of active areas in the human brain. Combining this method with haptic interfaces allows one to conduct human ...
Pahl C; Collins C (IGI Global, 2018)The aim of the Cloud “as-a-service” concept is provisioning of software services to facilitate access to resources to a range of different users in different locations. Service adaptation through localization in this context ...
Kühne M; Potzy J; Garcia-Rochin R; van der Smagt P; Peer A (2017)The study of human motor control using functional magnetic resonance imaging gives rise to many challenges. One of them is the design of haptic interfaces that are compatible with the magnetic field. To achieve this, the ...