Using architectural patterns is of paramount importance for guaranteeing the correct functionality, maintainability and modularity, especially for complex software systems. The model-view-controller (MVC) pattern is typically used in user interfaces (UIs), since it allows the separation between the internal representation of the information and the way it is shown to users. The main problem of using this approach in a formal setting, where formal models are used to specify the requirements and prove safety properties, is that those models are not directly used within the MVC pattern and, thus, all the activities performed at model-level are somehow lost when implementing the UI. For this reason, in this paper, we present the formal MVC pattern (fMVC), an extension of the classical MVC where the model is a formal specification, written using Abstract State Machines. This pattern is supported by the AsmetaFMVCLib, which allows the user to link the formal model with the view and the controller by using simple Java annotations. We present the application of fMVC on a simple example of a calculator for explanatory purposes, then we apply it to the AMAN case study, which has inspired the definition of fMVC. We discuss the advantages of fMVC and its shortcomings, trying to identify the scenarios where it should be applied and possible alternatives.

(2023). formal MVC: A Pattern for the Integration of ASM Specifications in UI Development . Retrieved from https://hdl.handle.net/10446/255989

formal MVC: A Pattern for the Integration of ASM Specifications in UI Development

Bombarda, Andrea;Bonfanti, Silvia;Gargantini, Angelo
2023-01-01

Abstract

Using architectural patterns is of paramount importance for guaranteeing the correct functionality, maintainability and modularity, especially for complex software systems. The model-view-controller (MVC) pattern is typically used in user interfaces (UIs), since it allows the separation between the internal representation of the information and the way it is shown to users. The main problem of using this approach in a formal setting, where formal models are used to specify the requirements and prove safety properties, is that those models are not directly used within the MVC pattern and, thus, all the activities performed at model-level are somehow lost when implementing the UI. For this reason, in this paper, we present the formal MVC pattern (fMVC), an extension of the classical MVC where the model is a formal specification, written using Abstract State Machines. This pattern is supported by the AsmetaFMVCLib, which allows the user to link the formal model with the view and the controller by using simple Java annotations. We present the application of fMVC on a simple example of a calculator for explanatory purposes, then we apply it to the AMAN case study, which has inspired the definition of fMVC. We discuss the advantages of fMVC and its shortcomings, trying to identify the scenarios where it should be applied and possible alternatives.
2023
Inglese
Rigorous State-Based Methods. 9th International Conference, ABZ 2023, Nancy, France, May 30–June 2, 2023, Proceedings
Glässer, Uwe; Creissac Campos, Jose; Méry, Dominique; Palanque, Philippe
978-3-031-33162-6
14010
340
357
cartaceo
online
Switzerland
Cham
Springer Nature Switzerland AG
ABZ 2023: 9th International Conference on Rigorous State-Based Methods, Nancy, France, May 30–June 2, 2023
Nancy (France)
May 30–June 2, 2023
internazionale
contributo
Settore ING-INF/05 - Sistemi di Elaborazione delle Informazioni
info:eu-repo/semantics/conferenceObject
3
Bombarda, Andrea; Bonfanti, Silvia; Gargantini, Angelo Michele
1.4 Contributi in atti di convegno - Contributions in conference proceedings::1.4.01 Contributi in atti di convegno - Conference presentations
reserved
Non definito
273
(2023). formal MVC: A Pattern for the Integration of ASM Specifications in UI Development . Retrieved from https://hdl.handle.net/10446/255989
File allegato/i alla scheda:
File Dimensione del file Formato  
abz_2023_fMVC Camera ready.pdf

Solo gestori di archivio

Versione: publisher's version - versione editoriale
Licenza: Licenza default Aisberg
Dimensione del file 412.83 kB
Formato Adobe PDF
412.83 kB Adobe PDF   Visualizza/Apri
Pubblicazioni consigliate

Aisberg ©2008 Servizi bibliotecari, Università degli studi di Bergamo | Terms of use/Condizioni di utilizzo

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10446/255989
Citazioni
  • Scopus 4
  • ???jsp.display-item.citation.isi??? 4
social impact