Impact of MVC and MVVM Architectures on Test Quality: An Analysis of GitHub Open-Source Repositories

  • Frederico Andrade PUC Minas
  • Hugo de Paula PUC Minas
  • Aline Brito UFOP
  • Leonardo Cardoso PUC Minas
  • Cleiton Tavares PUC Minas

Resumo


This study compared the quality of test code in projects based on the Model-View-Controller (MVC) and Model-View-ViewModel (MVVM) architectures in GitHub repositories. The effectiveness of test suites was evaluated through mutation testing.The research problem lies in the lack of empirical evidence on whether architectural differences, which affect modularity, separation of concerns, and ease of test creation, also translate into higher effectiveness of test suites. To address this, the objective was to evaluate and compare the fault detection capability of tests in both architectures using mutation testing. The methodology involved computing mutation scores, examining the relationship between code coverage and test effectiveness, and analyzing the incidence of mutants that fail due to compile-time errors. The experiments were conducted with Stryker.NET for the automated execution of mutation tests and subsequently applied statistical analyses to interpret the collected data. The study showed no evidence of the impact of architectural choices on test effectiveness. Results also showed a mild correlation between code coverage of tests and mutation score. This finding is relevant, as it indicates that although more modular architectures facilitate the creation of tests, this characteristic does not necessarily translate into higher quality of the test suites.

Palavras-chave: MVC Architecture, MVVM Architecture, Test Quality

Referências

Berik Assylbekov, Erick Gaspar, Nasir Uddin, and Paul Egan. 2013. Investigating the Correlation between Mutation Score and Coverage Score. In 2013 UKSim 15th International Conference on Computer Modelling and Simulation. 347–352. DOI: 10.1109/UKSim.2013.28

Matthijs Besten, Jean-Michel Dalle, and Fabrice Galia. 2006. Collaborative Maintenance in Large Open-Source Projects, In IFIP International Federation for Information Processing. International Federation for Information Processing Digital Library; Open Source Systems 203. DOI: 10.1007/0-387-34226-5_23

Hudson Borges and Marco Tulio Valente. 2018. What’s in a GitHub Star? Understanding Repository Starring Practices in a Social Coding Platform. Journal of Systems and Software 146 (2018), 112–129. DOI: 10.1016/j.jss.2018.09.016

Hassan Gomaa. 2011. Software Quality Attributes. Cambridge University Press, 357–368.

Hen Kian Jun and Muhammad Ehsan Rana. 2021. Evaluating the Impact of Design Patterns on Software Maintainability: An Empirical Evaluation. In 2021 Third International Sustainability and Resilience Conference: Climate Change. 539–548. DOI: 10.1109/IEEECONF53624.2021.9668025

Ali Khatami and Andy Zaidman. 2023. Quality Assurance Awareness in Open Source Software Projects on GitHub. In 2023 IEEE 23rd International Working Conference on Source Code Analysis and Manipulation (SCAM). 174–185. DOI: 10.1109/SCAM59687.2023.00027

A. Leff and J.T. Rayfield. 2001. Web-application development using the Model/View/Controller design pattern. In Proceedings Fifth IEEE International Enterprise Distributed Object Computing Conference. 118–127. DOI: 10.1109/EDOC.2001.950428

Hannelore Magics-Verkman, Doina Rodica Zmaranda, Cornelia Aurora Győrödi, and Robert-Stefan Győrödi. 2023. A Comparison of Architectural Patterns for Testability and Performance Quality for iOS Mobile Applications Development. In 2023 17th International Conference on Engineering of Modern Electric Systems (EMES). 1–4. DOI: 10.1109/EMES58375.2023.10171619

Microsoft. 2025. .NET and .NET Core Support Policy. [link]. [Online; accessed 29-March-2025].

SciPy Documentation. 2023. scipy.stats.linregress — SciPy v1.11.3 Manual. [link]

Fauzi Sholichin, Mohd Isa, Shahliza Abd Halim, and M Firdaus Harun. 2019. Review of iOS Architectural Pattern for Testability, Modifiability, and Performance Quality. Journal of Theoretical and Applied Information Technology 97 (08 2019).

Zanfina Svirca. 2020. Everything you need to know about MVC architecture. [link]. [Online; accessed 12-October-2024].

Artem Syromiatnikov and Danny Weyns. 2014. A Journey through the Land of Model-View-Design Patterns. In 2014 IEEE/IFIP Conference on Software Architecture. 21–30. DOI: 10.1109/WICSA.2014.13

Ana B. Sánchez, José A. Parejo, Sergio Segura, Amador Durán, and Mike Papadakis. 2024. Mutation Testing in Practice: Insights From Open-Source Software Developers. IEEE Transactions on Software Engineering 50, 5 (2024), 1130–1143. DOI: 10.1109/TSE.2024.3377378

Victor Veloso and Andre Hora. 2022. Characterizing high-quality test methods: a first empirical study. In Proceedings of the 19th International Conference on Mining Software Repositories (Pittsburgh, Pennsylvania) (MSR ’22). Association for Computing Machinery, New York, NY, USA, 265–269. DOI: 10.1145/3524842.3529092

Wikipedia. 2024. Model–view–viewmodel — Wikipedia, The Free Encyclopedia. [link]. [Online; accessed 13-October-2024].

Amy Wilson, Fadi Wedyan, and Safwan Omari. 2022. An Empirical Evaluation and Comparison of the Impact of MVVM and MVC GUI Driven Application Architectures on Maintainability and Testability. In 2022 International Conference on Intelligent Data Science Technologies and Applications (IDSTA). 101–108. DOI: 10.1109/IDSTA55301.2022.9923083

Bambang Wisnuadhi, Ghifari Munawar, and Ujang Wahyu. 2020. Performance Comparison of Native Android Application on MVP and MVVM. In International Seminar of Science and Applied Technology (ISSAT 2020). DOI: 10.2991/aer.k.201221.047

ClaesWohlin, Per Runeson, Martin Hst, Magnus C. Ohlsson, Bjrn Regnell, and Anders Wessln. 2012. Experimentation in Software Engineering. Springer Publishing Company, Incorporated.

Haitao Wu, Ruidi Yin, Jianhua Gao, Zijie Huang, and Huajun Huang. 2022. To What Extent Can Code Quality be Improved by Eliminating Test Smells?. In 2022 International Conference on Code Quality (ICCQ). 19–26. DOI: 10.1109/ICCQ53703.2022.9763153
Publicado
04/11/2025
ANDRADE, Frederico; PAULA, Hugo de; BRITO, Aline; CARDOSO, Leonardo; TAVARES, Cleiton. Impact of MVC and MVVM Architectures on Test Quality: An Analysis of GitHub Open-Source Repositories. In: SIMPÓSIO BRASILEIRO DE QUALIDADE DE SOFTWARE (SBQS), 24. , 2025, São José dos Campos/SP. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2025 . p. 270-277. DOI: https://doi.org/10.5753/sbqs.2025.15072.