Framework Code Samples: How Are They Maintained and Used by Developers?
This research addresses the gap in knowledge about how framework code samples are developed and utilized, offering practical insights for creators and users to enhance maintenance and usage, though it is incremental in nature.
The study analyzed 233 Android and SpringBoot framework code samples to understand their maintenance and usage, finding that they are typically small, simple, frequently updated for new versions, and often forked but rarely modified by developers.
Background: Modern software systems are commonly built on the top of frameworks. To accelerate the learning process of features provided by frameworks, code samples are made available to assist developers. However, we know little about how code samples are actually developed. Aims: In this paper, we aim to fill this gap by assessing the characteristics of framework code samples. We provide insights on how code samples are maintained and used by developers. Method: We analyze 233 code samples of Android and SpringBoot, and assess aspects related to their source code, evolution, popularity, and client usage. Results: We find that most code samples are small and simple, provide a working environment to the clients, and rely on automated build tools. They change frequently over time, for example, to adapt to new framework versions. We also detect that clients commonly fork the code samples, however, they rarely modify them. Conclusions: We provide a set of lessons learned and implications to creators and clients of code samples to improve maintenance and usage activities.