{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,7,1]],"date-time":"2026-07-01T22:07:08Z","timestamp":1782943628913,"version":"3.54.5"},"reference-count":25,"publisher":"World Scientific Pub Co Pte Ltd","issue":"02","funder":[{"DOI":"10.13039\/501100001809","name":"National Natural Science Foundation of China","doi-asserted-by":"publisher","award":["61872078"],"award-info":[{"award-number":["61872078"]}],"id":[{"id":"10.13039\/501100001809","id-type":"DOI","asserted-by":"publisher"}]},{"name":"Natural Science Foundation of Anhui Province of China","award":["2108085QF263"],"award-info":[{"award-number":["2108085QF263"]}]},{"name":"Natural Science Foundation of Anhui Province of China","award":["1808085MF196"],"award-info":[{"award-number":["1808085MF196"]}]},{"name":"National Key Research and Development Program of China","award":["2018YFB1003902"],"award-info":[{"award-number":["2018YFB1003902"]}]},{"name":"Youth Foundation of AHUT","award":["QZ202013"],"award-info":[{"award-number":["QZ202013"]}]}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Int. J. Soft. Eng. Knowl. Eng."],"published-print":{"date-parts":[[2023,2]]},"abstract":"<jats:p>The quality attributes of software architecture (SA) determine whether SA can be easily understood, tested, modified and so on, so quality-driven architecture evolution is important for keeping the viability and competitiveness. SA evolution is a process, and it contains multiple steps, such as SA quality measurement, SA modification, code co-evolution and so on. In order to guarantee that the software can be continuously improved and iteratively evolved in the future, we need to focus on all steps. However, most existing approaches only focus on one aspect, so they did not pay attention to how to finish the evolution process. In this paper, we propose a quality-driven iterative evolution approach for SA. This approach focuses on the whole process. In the first step, we use a quantitative approach to measure the architecture quality. Then, we construct the conflict graph to detect conflicts between evolution requirements to generate the final evolution scheme. In the third step, we modify architecture based on the evolution scheme. Finally, we co-evolve file dependency graph (FDG) based on the modified architecture. By focusing on the above steps, our approach can support a complete quality-driven architecture evolution process and obtain the maximum benefit in terms of the combined SA quality. We conduct our experiments with four open source projects, the experimental results indicate that our approach can improve SA quality, and our approach can effectively co-evolve the FDG to lay the foundation for the next evolution.<\/jats:p>","DOI":"10.1142\/s0218194022500747","type":"journal-article","created":{"date-parts":[[2022,11,14]],"date-time":"2022-11-14T07:54:00Z","timestamp":1668412440000},"page":"231-255","source":"Crossref","is-referenced-by-count":4,"title":["A Quality-Driven Iterative Evolution Approach for Software Architecture"],"prefix":"10.1142","volume":"33","author":[{"given":"Tong","family":"Wang","sequence":"first","affiliation":[{"name":"School of Computer Science and Technology, Anhui University of Technology, Maanshan, P.\u00a0R.\u00a0China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Bixin","family":"Li","sequence":"additional","affiliation":[{"name":"School of Computer Science and Engineering, Southeast University, Nanjing, P.\u00a0R.\u00a0China"}],"role":[{"vocabulary":"crossref","role":"author"}]},{"given":"Lingyuan","family":"Zhu","sequence":"additional","affiliation":[{"name":"School of Computer Science and Engineering, Southeast University, Nanjing, P.\u00a0R.\u00a0China"}],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"219","published-online":{"date-parts":[[2022,12,5]]},"reference":[{"key":"S0218194022500747BIB001","first-page":"157","volume-title":"2022 IEEE 19th Int. Conf. Software Architecture","author":"Konersmann M.","year":"2022"},{"key":"S0218194022500747BIB002","doi-asserted-by":"crossref","first-page":"88","DOI":"10.1109\/TechDebt.2019.00027","volume-title":"2019 IEEE\/ACM Int. Conf. Technical Debt","author":"Azadi U.","year":"2019"},{"issue":"2","key":"S0218194022500747BIB003","doi-asserted-by":"crossref","first-page":"89","DOI":"10.1109\/MS.2021.3070418","volume":"39","author":"da Silva M. A. P.","year":"2021","journal-title":"IEEE Softw."},{"key":"S0218194022500747BIB004","doi-asserted-by":"crossref","first-page":"110400","DOI":"10.1016\/j.jss.2019.110400","volume":"158","author":"Sievi-Korte O.","year":"2019","journal-title":"J. Syst. Softw."},{"issue":"3","key":"S0218194022500747BIB005","doi-asserted-by":"crossref","first-page":"1252","DOI":"10.3390\/s22031252","volume":"22","author":"Sahlabadi M.","year":"2022","journal-title":"Sensors"},{"key":"S0218194022500747BIB006","doi-asserted-by":"crossref","first-page":"2354","DOI":"10.1145\/3297280.3297511","volume-title":"Proc. 34th ACM\/SIGAPP Symp. Applied Computing","author":"Allian A. P.","year":"2019"},{"issue":"99","key":"S0218194022500747BIB007","doi-asserted-by":"crossref","first-page":"159","DOI":"10.1109\/TSE.2017.2671865","volume":"44","author":"Lutellier T.","year":"2018","journal-title":"IEEE Trans. Softw. Eng."},{"key":"S0218194022500747BIB008","first-page":"1","volume-title":"Proc. 12th Innovations on Software Engineering Conf.","author":"Link D.","year":"2019"},{"issue":"2","key":"S0218194022500747BIB009","first-page":"82","volume":"14","author":"Andrews S.","year":"2020","journal-title":"Int. J. Comput. Sci. Secur."},{"issue":"3","key":"S0218194022500747BIB010","doi-asserted-by":"crossref","first-page":"e2423","DOI":"10.1002\/smr.2423","volume":"34","author":"Li R.","year":"2022","journal-title":"J. Softw., Evol. Process"},{"issue":"1","key":"S0218194022500747BIB011","doi-asserted-by":"crossref","first-page":"53","DOI":"10.3390\/modelling1010004","volume":"1","author":"Djibo K.","year":"2020","journal-title":"Modelling"},{"issue":"4","key":"S0218194022500747BIB012","doi-asserted-by":"crossref","first-page":"2609","DOI":"10.1007\/s10270-018-0684-3","volume":"18","author":"Sedaghatbaf A.","year":"2019","journal-title":"Softw. Syst. Model."},{"issue":"4","key":"S0218194022500747BIB013","doi-asserted-by":"crossref","first-page":"309","DOI":"10.1016\/j.infsof.2006.05.003","volume":"49","author":"Olumofin F. G.","year":"2007","journal-title":"Inf. Softw. Technol."},{"key":"S0218194022500747BIB014","first-page":"469","volume-title":"31st Int. Conf. Software Engineering and Knowledge Engineering","author":"Wang T.","year":"2019"},{"issue":"8","key":"S0218194022500747BIB015","doi-asserted-by":"crossref","first-page":"539","DOI":"10.1016\/S0950-5849(03)00033-8","volume":"45","author":"Chhabra J. K.","year":"2003","journal-title":"Inf. Softw. Technol."},{"issue":"6","key":"S0218194022500747BIB016","doi-asserted-by":"crossref","first-page":"491","DOI":"10.1109\/32.689404","volume":"24","author":"Harrison R.","year":"1998","journal-title":"IEEE Trans. Softw. Eng."},{"issue":"1","key":"S0218194022500747BIB017","doi-asserted-by":"crossref","first-page":"1","DOI":"10.1162\/106365600568086","volume":"8","author":"Potter M. A.","year":"2014","journal-title":"Evol. Comput."},{"issue":"9","key":"S0218194022500747BIB018","doi-asserted-by":"crossref","first-page":"1124","DOI":"10.1109\/TPAMI.2004.60","volume":"26","author":"Boykov Y.","year":"2004","journal-title":"IEEE Trans. Pattern Anal. Mach. Intell."},{"key":"S0218194022500747BIB019","first-page":"121","volume-title":"Computing Professionals Conf. Workshop on Industrial Software Evolution and Maintenance Processes","author":"Breivold H. P.","year":"2010"},{"key":"S0218194022500747BIB020","first-page":"204","volume-title":"19th Int. Conf. Software Quality, Reliability and Security","author":"Wang T.","year":"2019"},{"key":"S0218194022500747BIB021","first-page":"244","volume-title":"Proc. 27th Int. Conf. Software Engineering","author":"Al-Naeem T.","year":"2005"},{"issue":"10","key":"S0218194022500747BIB022","doi-asserted-by":"crossref","first-page":"1117","DOI":"10.1002\/smr.1558","volume":"25","author":"Mordal K.","year":"2013","journal-title":"J. Softw., Evol. Process"},{"key":"S0218194022500747BIB023","first-page":"141","volume-title":"15th European Conf. Software Maintenance and Reengineering","author":"Mordal-Manet K.","year":"2011"},{"issue":"10","key":"S0218194022500747BIB024","doi-asserted-by":"crossref","first-page":"2467","DOI":"10.1016\/j.jss.2013.04.001","volume":"86","author":"Walker M.","year":"2013","journal-title":"J. Syst. Softw."},{"issue":"10","key":"S0218194022500747BIB025","doi-asserted-by":"crossref","first-page":"2542","DOI":"10.1016\/j.jss.2013.03.081","volume":"86","author":"Koziolek A.","year":"2013","journal-title":"J. Syst. Softw."}],"container-title":["International Journal of Software Engineering and Knowledge Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.worldscientific.com\/doi\/pdf\/10.1142\/S0218194022500747","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,11,30]],"date-time":"2023-11-30T19:16:49Z","timestamp":1701371809000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.worldscientific.com\/doi\/10.1142\/S0218194022500747"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022,12,5]]},"references-count":25,"journal-issue":{"issue":"02","published-print":{"date-parts":[[2023,2]]}},"alternative-id":["10.1142\/S0218194022500747"],"URL":"https:\/\/doi.org\/10.1142\/s0218194022500747","relation":{},"ISSN":["0218-1940","1793-6403"],"issn-type":[{"value":"0218-1940","type":"print"},{"value":"1793-6403","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022,12,5]]}}}