Anatomy of functionality deletion: an exploratory study on mobile apps

M Nayebi, K Kuznetsov, P Chen, A Zeller… - Proceedings of the 15th …, 2018 - dl.acm.org
M Nayebi, K Kuznetsov, P Chen, A Zeller, G Ruhe
Proceedings of the 15th International Conference on Mining Software Repositories, 2018dl.acm.org
One of Lehman's laws of software evolution is that the functionality of programs has to
increase over time to maintain user satisfaction. In the domain of mobile apps, though, too
much functionality can easily impact usability, resource consumption, and maintenance
effort. Hence, does the law of continuous growth apply there? This paper shows that in
mobile apps, deletion of functionality is actually common, challenging Lehman's law. We
analyzed user driven requests for deletions which were found in 213,866 commits from …
One of Lehman's laws of software evolution is that the functionality of programs has to increase over time to maintain user satisfaction. In the domain of mobile apps, though, too much functionality can easily impact usability, resource consumption, and maintenance effort. Hence, does the law of continuous growth apply there? This paper shows that in mobile apps, deletion of functionality is actually common, challenging Lehman's law. We analyzed user driven requests for deletions which were found in 213,866 commits from 1,519 open source Android mobile apps from a total of 14,238 releases. We applied hybrid (open and closed) card sorting and created taxonomies for nature and causes of deletions. We found that functionality deletions are mostly motivated by unneeded functionality, poor user experience, and compatibility issues. We also performed a survey with 106 mobile app developers. We found that 78.3% of developers consider deletion of functionality to be equally or more important than the addition of new functionality. Developers confirmed that they plan for deletions. This implies the need to re-think the process of planning for the next release, overcoming the simplistic assumptions to exclusively look at adding functionality to maximize the value of upcoming releases. Our work is the first to study the phenomenon of functionality deletion and opens the door to a wider perspective on software evolution.
ACM Digital Library
Showing the best result for this search. See all results