TY - GEN
T1 - Monitoring software quality evolution by analyzing deviation trends of modularity views
AU - Zhu, Tianmei
AU - Wu, Yijian
AU - Peng, Xin
AU - Xing, Zhenchang
AU - Zhao, Wenyun
PY - 2011
Y1 - 2011
N2 - In the long-term evolution of software systems, various maintenance activities such as functionality extension, bug fixing, refactoring may positively or negatively affect the quality of design and implementation. The trend of quality degradation caused by negative affections may accumulate and cause serious difficulties for future maintenance of the software if they were not addressed properly in time. In this paper, we propose an approach for monitoring the degradation trends of software design in evolution and providing useful feedbacks for evolution decisions. The approach is based on the assumption that the deviations between different modularity views and their trends in evolution can be used to monitor the degradation trends of design. Currently, our approach considers three modularity views, namely package view, structural cluster view and semantic cluster view. Package view denotes the package structure reflecting the desired modularity view, Structural cluster view and semantic cluster view are the modularity views extracted from implementation by software clustering based on formal information and non-formal information, respectively. Then based on the three modularity views extracted from each version, our approach calculates the similarity between different views as the measurement of modularity deviations, and analyzes the deviation trends over a series of versions. We conduct an empirical study on three open-source systems, which confirms that continuous monitoring of deviation trends of modularity views can provide useful feedbacks for future evolution decisions.
AB - In the long-term evolution of software systems, various maintenance activities such as functionality extension, bug fixing, refactoring may positively or negatively affect the quality of design and implementation. The trend of quality degradation caused by negative affections may accumulate and cause serious difficulties for future maintenance of the software if they were not addressed properly in time. In this paper, we propose an approach for monitoring the degradation trends of software design in evolution and providing useful feedbacks for evolution decisions. The approach is based on the assumption that the deviations between different modularity views and their trends in evolution can be used to monitor the degradation trends of design. Currently, our approach considers three modularity views, namely package view, structural cluster view and semantic cluster view. Package view denotes the package structure reflecting the desired modularity view, Structural cluster view and semantic cluster view are the modularity views extracted from implementation by software clustering based on formal information and non-formal information, respectively. Then based on the three modularity views extracted from each version, our approach calculates the similarity between different views as the measurement of modularity deviations, and analyzes the deviation trends over a series of versions. We conduct an empirical study on three open-source systems, which confirms that continuous monitoring of deviation trends of modularity views can provide useful feedbacks for future evolution decisions.
KW - evolution analysis
KW - maintenance history
KW - software clustering
KW - software modulairty
KW - software quality evolution
UR - http://www.scopus.com/inward/record.url?scp=83455168878&partnerID=8YFLogxK
U2 - 10.1109/WCRE.2011.35
DO - 10.1109/WCRE.2011.35
M3 - Conference contribution
SN - 9780769545820
T3 - Proceedings - Working Conference on Reverse Engineering, WCRE
SP - 229
EP - 238
BT - Proceedings - 18th Working Conference on Reverse Engineering, WCRE 2011
T2 - 18th Working Conference on Reverse Engineering, WCRE 2011
Y2 - 17 October 2011 through 20 October 2011
ER -