arXiv · 1309.7950
Software Interfaces: On The Impact of Interface Design Anomalies
Abstract
Interfaces are recognized as an important mechanism to define contracts governing interactions between semi-independent software modules. Well-designed interfaces significantly reduce software complexity and ease maintainability by fostering modularization, hiding implementation details and minimizing the impact caused by changes in the software implementation. However, designing good interfaces is not a trivial task. The presence of interface design defects often yield increased development cost, lower code quality and reduced development productivity. Despite their importance, currently there are only a few research efforts that investigate the quality of interface design. In this paper, we identify and characterize common interface design anomalies and illustrate them via examples taken from well-known open source applications. In order to quantify the presence of interface design anomalies and estimate their impact on the interface design quality, as well on the software quality attributes, such as maintainability, we conduct an empirical study covering 9 open source projects. Building on our empirical results, we develop a set of recommendations to improve interface design.
Explore related subjects
Keep this discovery
Hani Abdeen, Osama Shata, Abdelkarim Erradi. 2013-09-30. Software Interfaces: On The Impact of Interface Design Anomalies. https://doi.org/10.1109/csit.2013.6588778
Cite the original work for its findings. Save a collection to share your selection of sources.