Charla: Understanding and Addressing Exhibitionism in Java: Empirical Research about Method Accessibility

Santiago A. Vidal, Investigador Conicet, Argentina
10 Marzo, 2017 - 11:00
Sala 307 Grace Hopper




Information hiding is a positive consequence of properly defining component interfaces. Unfortunately, determining what should constitute a public interface remains difficult. We have analyzed over 3.6 million lines of Java open- source code and found that on the average, at least 20% of defined methods are over-exposed, thus threatening public interfaces to unnecessary exposure.


Such over-exposed methods may have their accessibility reduced to exactly reflect the method usage. We have identified three patterns in the source code to identify over-exposed methods. We also propose an Eclipse plugin to guide practitioners in identifying over-exposed methods and refactoring their applications. Our plugin has been successfully used to refactor a non-trivial application.


• Vidal, Santiago, Bergel, Alexandre, Marcos, Claudia and Pace, J. Andrés Díaz. "Understanding and addressing exhibitionism in Java empirical research about method accessibility." Empirical Software Engineering 21, no. 2 (2016): 483-516. DOI url: (Impact factor: 2.161).