Abstract:Context: Software visualization has the potential to support specialized stakeholders to understand the software architecture (SA) evolution. To the best of our knowledge, there is no guideline based on which visual solutions should be applied to support the SA evolution comprehension and how to use them. Goal: Analyze the use of visual solutions for the purpose of comprehension with respect to software architecture evolution from the point of view of software architects and developers in the context of both a… Show more
“…However, software architectures go hand in hand with the software products they document, they evolve together and constantly. While a lot of works have been directed towards the problem of reusing the evolution of software architectures [5][6][7][8], it is very tedious to evolve the architecture of complex systems (distributed systems, some embedded systems, etc.). The best would be to plan and predict the future evolution paths of an evolving software architecture based on data from previous changes.…”
The purpose of this study is to find the right model to plan and predict future evolution paths of an evolving software architecture based on past evolution data. Thus, in this paper, a model to represent the software architecture evolution process is defined. In order to collect evolution data, a simple formalism allowing to easily express software architecture evolution data is introduced. The sequential pattern extraction technique is applied to the collected evolution styles of an evolving software architecture in order to predict and plan the future evolution paths. A learning and prediction model is defined to generate the software architecture possible future evolution paths. A method for evaluating the generated paths is presented. In addition, we explain and validate our approach through a study on two examples of evolution of component-oriented software architecture.
“…However, software architectures go hand in hand with the software products they document, they evolve together and constantly. While a lot of works have been directed towards the problem of reusing the evolution of software architectures [5][6][7][8], it is very tedious to evolve the architecture of complex systems (distributed systems, some embedded systems, etc.). The best would be to plan and predict the future evolution paths of an evolving software architecture based on data from previous changes.…”
The purpose of this study is to find the right model to plan and predict future evolution paths of an evolving software architecture based on past evolution data. Thus, in this paper, a model to represent the software architecture evolution process is defined. In order to collect evolution data, a simple formalism allowing to easily express software architecture evolution data is introduced. The sequential pattern extraction technique is applied to the collected evolution styles of an evolving software architecture in order to predict and plan the future evolution paths. A learning and prediction model is defined to generate the software architecture possible future evolution paths. A method for evaluating the generated paths is presented. In addition, we explain and validate our approach through a study on two examples of evolution of component-oriented software architecture.
“…This paper is an extension of an earlier conference paper [13]. Our original work related a systematic mapping conducted for analyze the use of visual solutions for the purpose of comprehension with respect to software architecture evolution from the point of view of software architects and developers in the context of both academia and industry.…”
Software visualization has the potential to support specialized stakeholders to understand the software architecture (SA) evolution. To the best of our knowledge, there is no guideline to support the use of visual solutions towards SA evolution comprehension. Goal: Analyze the use of visual solutions for the purpose of comprehension with respect to software architecture evolution from the point of view of software architects and developers in the context of both academia and industry. Method: We conducted a Systematic Mapping Study to achieve the stated goal. Results: The study identified 211 papers published from January 2000 to May 2019 as a result of the search strings execution. We selected 21 primary studies and identified a gap in terms of a taxonomy to assist specialists in the development or classification of solutions to support the comprehension of software architecture evolution using visual resources. Conclusion: We observed that despite the relevance of the use of visual solutions to support the comprehension of software architecture evolution, only 21 studies have reported these initiatives, suggesting that there is still room for the use of different visual metaphors to represent its components, relationships and evolution throughout the releases.
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.