Model-Driven Development (MDD) exploits abstract models and code generation to reduce development times, enable agile approaches, and ease the adoption of automated processes such as Continuous Integration and Delivery. However, deploying applications on private and public clouds remains a challenge, as traditional tools tend to be code-centric, resulting in manual or semi-automated time-consuming and error-prone procedures. Some MDD industrial solutions exist, but they use proprietary deployment pipelines and are frequently bound to a specific cloud provider. Moreover, these solutions are typically not flexible enough to support seamless migration to different cloud platforms and often impose high costs. In this thesis, i investigate the use of a modelling and generation approach to automate cloud deployment while providing the flexibility to choose a cloud provider. I outline the design of a prototype tool that can generate the required deployment artefacts and scripts targeted to a cloud architecture. As an evaluation exercise i report the integration of the approach within an existing MDD environment.

Il Model-Driven Development (MDD) sfrutta i modelli astratti e la generazione automatica di codice per ridurre i tempi di sviluppo, abilitare approcci Agile e facilitare l’adozione di processi automatizzati come la continua integrazione e distribuzione. Tuttavia l’implementazione di applicazioni su cloud privati e pubblici rimane una sfida, siccome gli strumenti tradizionali tendono ad essere incentrati sul codice, con conseguenti procedure manuali o semi automatiche che causano perdite di tempo e sono soggette a errori. Esistono alcune soluzioni industriali MDD, ma utilizzano pipeline di sviluppo di proprietà e sono spesso vincolate a uno specifico fornitore di servizi cloud. Inoltre, queste soluzioni in genere non sono sufficientemente flessibili per supportare la migrazione in diverse piattaforme cloud e spesso impongono costi elevati. In questo lavoro di tesi, esaminerò l’uso di un approccio di modellazione e generazione per automatizzare la distribuzione su cloud offrendo la flessibilità di scegliere un fornitore di servizi cloud. Descriverò il design di un tool-prototipo in grado di generare gli artefatti e gli script richiesti per un’architettura cloud. Come esercizio di valutazione utilizzerò l’integrazione dell’ approccio all’interno di un ambiente MDD esistente.

DeployPilot : enabling cloud deployment on a model-driven development platform

Zanaboni, Riccardo
2021/2022

Abstract

Model-Driven Development (MDD) exploits abstract models and code generation to reduce development times, enable agile approaches, and ease the adoption of automated processes such as Continuous Integration and Delivery. However, deploying applications on private and public clouds remains a challenge, as traditional tools tend to be code-centric, resulting in manual or semi-automated time-consuming and error-prone procedures. Some MDD industrial solutions exist, but they use proprietary deployment pipelines and are frequently bound to a specific cloud provider. Moreover, these solutions are typically not flexible enough to support seamless migration to different cloud platforms and often impose high costs. In this thesis, i investigate the use of a modelling and generation approach to automate cloud deployment while providing the flexibility to choose a cloud provider. I outline the design of a prototype tool that can generate the required deployment artefacts and scripts targeted to a cloud architecture. As an evaluation exercise i report the integration of the approach within an existing MDD environment.
HERRERA, SERGIO LUIS
ING - Scuola di Ingegneria Industriale e dell'Informazione
4-mag-2023
2021/2022
Il Model-Driven Development (MDD) sfrutta i modelli astratti e la generazione automatica di codice per ridurre i tempi di sviluppo, abilitare approcci Agile e facilitare l’adozione di processi automatizzati come la continua integrazione e distribuzione. Tuttavia l’implementazione di applicazioni su cloud privati e pubblici rimane una sfida, siccome gli strumenti tradizionali tendono ad essere incentrati sul codice, con conseguenti procedure manuali o semi automatiche che causano perdite di tempo e sono soggette a errori. Esistono alcune soluzioni industriali MDD, ma utilizzano pipeline di sviluppo di proprietà e sono spesso vincolate a uno specifico fornitore di servizi cloud. Inoltre, queste soluzioni in genere non sono sufficientemente flessibili per supportare la migrazione in diverse piattaforme cloud e spesso impongono costi elevati. In questo lavoro di tesi, esaminerò l’uso di un approccio di modellazione e generazione per automatizzare la distribuzione su cloud offrendo la flessibilità di scegliere un fornitore di servizi cloud. Descriverò il design di un tool-prototipo in grado di generare gli artefatti e gli script richiesti per un’architettura cloud. Come esercizio di valutazione utilizzerò l’integrazione dell’ approccio all’interno di un ambiente MDD esistente.
File allegati
File Dimensione Formato  
2023_05_Zanaboni_01.pdf

Open Access dal 18/04/2024

Descrizione: Thesis
Dimensione 2.02 MB
Formato Adobe PDF
2.02 MB Adobe PDF Visualizza/Apri
2023_05_Zanaboni_Executive_Summary_02.pdf

Open Access dal 18/04/2024

Descrizione: Executive summary
Dimensione 616.04 kB
Formato Adobe PDF
616.04 kB Adobe PDF Visualizza/Apri

I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/10589/203862