Unanticipated Software Evolution (USE) techniques enable developers to easily change any element of the software without being obligated to anticipate and isolate extension points. However, we have not found empirical validations of the impact of USE on development cost and quality. In this work, we design and execute an experiment for USE, in order to compare its resulting metrics — time, lines of code, test coverage and complexity — using OO systems as baseline. 30 undergraduate students were subjects in this experiment. The results suggest that USE has significant impact on the lines of code and complexity metrics, reducing the amount of lines changed and the McCabe cyclomatic complexity on software evolution.
Abstract-Most techniques to aid maintenance and evolution of software require to define extension points. Generally, developers try to anticipate the parts that are more likely to evolve, but they can make mistakes and spend money in vain. With Unanticipated Software Evolution, developers can easily change any element of the software, even those that are not related with an extension point. However, we have not found empirical validations of Unanticipated Software Evolution impact on development cost and quality. In this work, we design and execute an experiment for Unanticipated Software Evolution (specifically, using the COMPOR platform), in order to compare its results metrics --time, lines of code, test coverage and complexity --using OO systems as baseline. 30 undergraduate students were subjects in this experiment. We concluded that COMPOR have significant impact on the Lines of code and Complexity metrics, reducing the amount of lines changed and the McCabe cyclomatic complexity on evolution of a small system.
Scaffolding is an approach used by some modern web frameworks in order to generate an initial version of applications code based on domain model meta data. Since this temporary code should be customized by programmers to implement real systems, its quality metrics are important aspects. In this paper, a methodology is proposed and applied in order to relate domain model size and a quality metric -amount of duplicated code -focusing on Graphical user interface implementation. Results show that code duplication grows at least linearly with the growth of the number of entities in domain model. There are also some scenarios where quadratic proportions were found. These observations suggest that, for large domain models, code quality and its evolution would be affected when scaffolding frameworks are used.
Abstract-Most techniques to aid maintenance and evolution of software require to define extension points. Generally, developers try to anticipate the parts that are more likely to evolve, but they can make mistakes and spend money in vain. With Unanticipated Software Evolution, developers can easily change any element of the software, even those that are not related with an extension point. However, we have not found empirical validations of Unanticipated Software Evolution impact on development cost and quality. In this work, we design and execute an experiment for Unanticipated Software Evolution (specifically, using the COMPOR platform), in order to compare its results metrics --time, lines of code, test coverage and complexity --using OO systems as baseline. 30 undergraduate students were subjects in this experiment. We concluded that COMPOR have significant impact on the Lines of code and Complexity metrics, reducing the amount of lines changed and the McCabe cyclomatic complexity on evolution of a small system.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.