Abstract

Over the years, we have seen an increase in the level of abstraction used in building software. Academic and practitioners' literature contains numerous but vague claims that software based on abstract conceptual models (such as analysis and design patterns, frameworks and software architectures) has evolvability advantages. Our study validates these claims. We investigate evolvability at the analysis level, i.e. at the level of the conceptual models that are built of information systems (e.g. UML-models). More specifically, we focus on the influence of the level of abstraction of the conceptual model on the evolvability of the model. Hypotheses were tested with regard to whether the level of abstraction influences the time needed to apply a change, the correctness of the change and the structure degradation incurred. Two controlled experiments were conducted with 136 subjects. Correctness and structure degradation were rated by human experts. Results indicate that, for some types of change, abstract models are better evolvable than concrete ones. Our results provide insight into how the rather vague claims in literature should be interpreted.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call