{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,8,1]],"date-time":"2025-08-01T04:09:14Z","timestamp":1754021354041,"version":"3.40.3"},"publisher-location":"Cham","reference-count":41,"publisher":"Springer Nature Switzerland","isbn-type":[{"type":"print","value":"9783031783371"},{"type":"electronic","value":"9783031783388"}],"license":[{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2025,1,1]],"date-time":"2025-01-01T00:00:00Z","timestamp":1735689600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2025]]},"DOI":"10.1007\/978-3-031-78338-8_9","type":"book-chapter","created":{"date-parts":[[2025,2,5]],"date-time":"2025-02-05T13:45:52Z","timestamp":1738763152000},"page":"163-181","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["MVVM Revisited: Exploring Design Variants of\u00a0the\u00a0Model-View-ViewModel Pattern"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0002-8210-094X","authenticated-orcid":false,"given":"Mario","family":"Fuksa","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9790-3702","authenticated-orcid":false,"given":"Sandro","family":"Speth","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-4532-1460","authenticated-orcid":false,"given":"Steffen","family":"Becker","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2025,2,6]]},"reference":[{"key":"9_CR1","doi-asserted-by":"publisher","unstructured":"Anderson, C.: The model-view-viewmodel (MVVM) design Pattern, pp. 461\u2013499. Apress, Berkeley, CA (2012). https:\/\/doi.org\/10.1007\/978-1-4302-3501-9_13","DOI":"10.1007\/978-1-4302-3501-9_13"},{"key":"9_CR2","unstructured":"Brumfield, B., Cox, G., Hill, D., Noyes, B., Puleio, M., Shifflett, K.: Developer\u2019s Guide to Microsoft Prism 4: Building Modular MVVM Applications with Windows Presentation Foundation and Microsoft Silverlight. Microsoft Press (2011). ISBN: 978-0-73565-610-9"},{"key":"9_CR3","doi-asserted-by":"publisher","unstructured":"Burns, K.: Introducing MVVM, pp. 127\u2013140. Apress, Berkeley, CA (2012). https:\/\/doi.org\/10.1007\/978-1-4302-4567-4_9","DOI":"10.1007\/978-1-4302-4567-4_9"},{"key":"9_CR4","doi-asserted-by":"publisher","unstructured":"Chekhaba, C., Rebatchi, H., ElBoussaidi, G., Moha, N., Kpodjedo, S.: Coach: classification-based architectural patterns detection in Android apps. In: Proceedings of the 36th Annual ACM Symposium on Applied Computing, pp. 1429\u20131438. SAC 2021, Association for Computing Machinery, New York (2021). https:\/\/doi.org\/10.1145\/3412841.3442018","DOI":"10.1145\/3412841.3442018"},{"key":"9_CR5","doi-asserted-by":"publisher","unstructured":"Daoudi, A., ElBoussaidi, G., Moha, N., Kpodjedo, S.: An exploratory study of MVC-based architectural patterns in Android apps. In: Proceedings of the 34th ACM\/SIGAPP Symposium on Applied Computing, pp. 1711\u20131720. SAC 2019, Association for Computing Machinery, New York (2019). https:\/\/doi.org\/10.1145\/3297280.3297447","DOI":"10.1145\/3297280.3297447"},{"key":"9_CR6","unstructured":"Engelschall, R.S.: Hierarchical user interface component architecture. BoD\u2013Books on Demand (2018)"},{"key":"9_CR7","unstructured":"Fowler, M.: Presentation Model (2004). https:\/\/martinfowler.com\/eaaDev\/PresentationModel.html. Accessed 18 June 2024"},{"key":"9_CR8","unstructured":"Fowler, M.: HumbleObject (2020). https:\/\/martinfowler.com\/bliki\/HumbleObject.html. Accessed 18 June 2024"},{"key":"9_CR9","doi-asserted-by":"publisher","unstructured":"Fuksa, M.: ViMoTest: a low code approach to specify viewmodel-based tests with a projectional DSL using jetbrains MPS. In: Proceedings of the 25th International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, pp. 189\u2013194. MODELS 2022, Association for Computing Machinery, New York (2022). https:\/\/doi.org\/10.1145\/3550356.3558513","DOI":"10.1145\/3550356.3558513"},{"key":"9_CR10","doi-asserted-by":"publisher","unstructured":"Fuksa, M., Speth, S., Becker, S.: Applicability of the ViMoTest approach for automated GUI testing: a field study. In: 2023 ACM\/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C), pp. 821\u2013830 (2023). https:\/\/doi.org\/10.1109\/MODELS-C59198.2023.00131","DOI":"10.1109\/MODELS-C59198.2023.00131"},{"key":"9_CR11","doi-asserted-by":"publisher","unstructured":"Garc\u00eda, R.F.: MVVM: model\u2013view\u2013viewmodel, pp. 145\u2013224. Apress, Berkeley, CA (2023). https:\/\/doi.org\/10.1007\/978-1-4842-9069-9_4","DOI":"10.1007\/978-1-4842-9069-9_4"},{"key":"9_CR12","unstructured":"Garofalo, R.: Building Enterprise Applications with Windows Presentation Foundation and the Model View ViewModel Pattern. Microsoft Press (2011). ISBN: 978-0-73565-092-3"},{"key":"9_CR13","doi-asserted-by":"publisher","first-page":"101","DOI":"10.1016\/j.infsof.2018.09.006","volume":"106","author":"V Garousi","year":"2019","unstructured":"Garousi, V., Felderer, M., M\u00e4ntyl\u00e4, M.V.: Guidelines for including grey literature and conducting multivocal literature reviews in software engineering. Inf. Softw. Technol. 106, 101\u2013121 (2019). https:\/\/doi.org\/10.1016\/j.infsof.2018.09.006","journal-title":"Inf. Softw. Technol."},{"key":"9_CR14","unstructured":"Google, n.d., O.H.A.: Guide to app architecture (2021). https:\/\/developer.android.com\/jetpack\/guide. Accessed 18 June 2024"},{"key":"9_CR15","unstructured":"Google, n.d., O.H.A.: LiveData overview (2024). https:\/\/developer.android.com\/topic\/libraries\/architecture\/livedata. Accessed 18 June 2024"},{"key":"9_CR16","unstructured":"Gossman, J.: Introduction to model\/view\/viewmodel pattern for building WPF apps (2005). https:\/\/docs.microsoft.com\/de-de\/archive\/blogs\/johngossman\/introduction-to-modelviewviewmodel-pattern-for-building-wpf-apps. Accessed 18 June 2024"},{"key":"9_CR17","unstructured":"Gossman, J.: Advantages and disadvantages of M-V-VM (2006). https:\/\/docs.microsoft.com\/en-us\/archive\/blogs\/johngossman\/advantages-and-disadvantages-of-m-v-vm. Accessed 18 June 2024"},{"key":"9_CR18","doi-asserted-by":"publisher","unstructured":"Hall, G.M.: The ViewModel, pp. 81\u2013110. Apress, Berkeley, CA (2010). https:\/\/doi.org\/10.1007\/978-1-4302-3163-9_4","DOI":"10.1007\/978-1-4302-3163-9_4"},{"key":"9_CR19","unstructured":"Kay, R.M.: How to use model-view-ViewModel on Android like a pro (2020). https:\/\/www.freecodecamp.org\/news\/model-view-viewmodel-android-tutorial. Accessed 18 June 2024"},{"key":"9_CR20","doi-asserted-by":"publisher","unstructured":"Kouraklis, J.: MVVM as Design Pattern, pp. 1\u201312. Apress, Berkeley, CA (2016). https:\/\/doi.org\/10.1007\/978-1-4842-2214-0_1","DOI":"10.1007\/978-1-4842-2214-0_1"},{"key":"9_CR21","unstructured":"Lappalainen, S., Kobayashi, T.: A pattern language for MVC derivatives. In: Proceedings of 6th Asian Conference on Pattern Languages of Programs (2017). http:\/\/www.washi.cs.waseda.ac.jp\/wp-content\/uploads\/2017\/03\/Sami-Lappalainen.pdf. Accessed 18 June 2024"},{"key":"9_CR22","unstructured":"Lou, T.: A comparison of android native app architecture - MVC, MVP and MVVM. Master\u2019s thesis, Aalto University. School of Science (2016). http:\/\/urn.fi\/URN:NBN:fi:aalto-201610124940"},{"key":"9_CR23","doi-asserted-by":"publisher","unstructured":"Magics-Verkman, H., Zmaranda, D.R., Gy\u0151r\u00f6di, C.A., Gy\u0151r\u00f6di, R.C.: 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), pp.\u00a01\u20134 (2023). https:\/\/doi.org\/10.1109\/EMES58375.2023.10171619","DOI":"10.1109\/EMES58375.2023.10171619"},{"key":"9_CR24","unstructured":"Manferdini, M.: MVVM in SwiftUI for a Better Architecture (2023). https:\/\/matteomanferdini.com\/mvvm-swiftui. Accessed 18 June 2024"},{"key":"9_CR25","unstructured":"Microsoft: The MVVM Pattern (2012). https:\/\/learn.microsoft.com\/en-us\/previous-versions\/msp-n-p\/hh848246(v=pandp.10). Accessed 18 June 2024"},{"key":"9_CR26","unstructured":"Microsoft: Model-View-ViewModel (MVVM) (2022). https:\/\/learn.microsoft.com\/en-us\/dotnet\/architecture\/maui\/mvvm. Accessed 18 June 2024"},{"key":"9_CR27","doi-asserted-by":"publisher","unstructured":"Mishra, A.: The MVVM Architectural Pattern, pp. 43\u201360. Apress, Berkeley, CA (2017). https:\/\/doi.org\/10.1007\/978-1-4842-2689-6_3","DOI":"10.1007\/978-1-4842-2689-6_3"},{"key":"9_CR28","unstructured":"Moli\u0144ski, D.: Flutter architecture: implementing the MVVM pattern (2022). https:\/\/fivedottwelve.com\/blog\/flutter-architecture-implementing-the-mvvm-pattern. Accessed 18 June 2024"},{"key":"9_CR29","unstructured":"MvvmCross: Introduction to Model\/View\/ViewModel pattern for building WPF apps (2023). https:\/\/www.mvvmcross.com\/documentation\/fundamentals\/viewmodel-lifecycle. Accessed 18 June 2024"},{"key":"9_CR30","unstructured":"Rock, V.: Using MVVM for enhanced cross platform development of mobile and desktop application. Master\u2019s thesis, Master\u2019s Thesis (2015). https:\/\/diglib.tugraz.at\/using-mvvm-for-enhanced-cross-platform-development-of-mobile-and%2Ddesktop-applications-2015. Accessed 18 June 2024"},{"key":"9_CR31","unstructured":"Sholichin, F., Isa, M.A.B., Halim, S.A., Harun, M.F.B.: Review of IOs architectural pattern for testability, modifiability, and performance quality. J. Theor. Appl. Inf. Technol. 97(15) (2019). https:\/\/www.jatit.org\/volumes\/Vol97No15\/3Vol97No15.pdf. Accessed 18 June 2024"},{"key":"9_CR32","doi-asserted-by":"publisher","unstructured":"Singh, L.: RMVRVM - a paradigm for creating energy efficient user applications connected to cloud through REST API. In: 15th Innovations in Software Engineering Conference. ISEC 2022, Association for Computing Machinery, New York, NY, USA (2022). https:\/\/doi.org\/10.1145\/3511430.3511434","DOI":"10.1145\/3511430.3511434"},{"key":"9_CR33","unstructured":"Smith, J.: Patterns - WPF apps with the model-view-ViewModel design pattern (2009). https:\/\/learn.microsoft.com\/en-us\/archive\/msdn-magazine\/2009\/february\/patterns-wpf-apps-with-the-model-view-viewmodel-design-pattern. Accessed 18 June 2024"},{"key":"9_CR34","unstructured":"Stein, G.: Introduction to Model\/View\/ViewModel pattern for building WPF apps (2021). https:\/\/www.linkedin.com\/pulse\/mvvm-fashion-trend-gregory-stein. Accessed 18 June 2024"},{"key":"9_CR35","doi-asserted-by":"publisher","unstructured":"Syromiatnikov, A., Weyns, D.: A journey through the land of model-view-design patterns. In: 2014 IEEE\/IFIP Conference on Software Architecture, pp. 21\u201330 (2014). https:\/\/doi.org\/10.1109\/WICSA.2014.13","DOI":"10.1109\/WICSA.2014.13"},{"key":"9_CR36","doi-asserted-by":"publisher","unstructured":"Verdecchia, R., Malavolta, I., Lago, P.: Guidelines for architecting android apps: a mixed-method empirical study. In: 2019 IEEE International Conference on Software Architecture (ICSA), pp. 141\u2013150 (2019). https:\/\/doi.org\/10.1109\/ICSA.2019.00023","DOI":"10.1109\/ICSA.2019.00023"},{"key":"9_CR37","unstructured":"Vice, R., Siddiqi, M.S.: MVVM Survival Guide for Enterprise Architectures in Silverlight and WPF. Packt Publishing Ltd (2012). ISBN: 978-1-84968-342-5"},{"key":"9_CR38","unstructured":"Weissenberg, C.: Model-View Design Patterns. Tagungsband, p.\u00a0102 (2019). ISBN: 978-3-00-064236-4"},{"key":"9_CR39","doi-asserted-by":"publisher","unstructured":"Wisnuadhi, B., Munawar, G., Wahyu, U.: Performance comparison of native android application on MVP and MVVM. In: Proceedings of the International Seminar of Science and Applied Technology (ISSAT 2020), pp. 276\u2013282. Atlantis Press (2020). https:\/\/doi.org\/10.2991\/aer.k.201221.047","DOI":"10.2991\/aer.k.201221.047"},{"key":"9_CR40","doi-asserted-by":"publisher","unstructured":"Wongtanuwat, W., Senivongse, T.: Detection of violation of MVVM design pattern in objective-C programs. In: Proceedings of the 8th International Conference on Computer and Communications Management, pp. 54\u201358. ICCCM 2020, Association for Computing Machinery, New York (2020). https:\/\/doi.org\/10.1145\/3411174.3411193","DOI":"10.1145\/3411174.3411193"},{"key":"9_CR41","unstructured":"Zarifis, K., Papakonstantinou, Y.: In-depth Survey of MVVM Web Application Frameworks. Technical reporrt. Technical report of UCSDSE, University of California (2016). https:\/\/dbucsd.github.io\/paperpdfs\/2016_4.pdf. Accessed 18 June 2024"}],"container-title":["Lecture Notes in Computer Science","Enterprise Design, Operations, and Computing"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-78338-8_9","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,2,5]],"date-time":"2025-02-05T13:46:17Z","timestamp":1738763177000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-78338-8_9"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025]]},"ISBN":["9783031783371","9783031783388"],"references-count":41,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-78338-8_9","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2025]]},"assertion":[{"value":"6 February 2025","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"EDOC","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Enterprise Design, Operations, and Computing","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Vienna","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Austria","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2024","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"11 September 2024","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"14 September 2024","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"28","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"edoc2024","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/conferences.big.tuwien.ac.at\/biweek2024\/edoc.php","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}}]}}