Model-Driven Software Engineering provides tools to help developers in the creation process of complex applications. A developer, due to the continuous updates of the model and the generation of the code, must resolve many conflicts when integrating the generated and man- ually modified code. Several times the conflicts to be resolved are very similar to previously resolved conflicts. Our approach extends the work done on Almost-Git and extends the Git Rerere tool, thus creat- ing Almost-Rerere. The developed tool clusters similar conflicts using a hierarchical agglomerative clustering algorithm based on a similarity measure and synthesizes a conflict resolution based on those previously seen similar conflicts. The approach has been evaluated using it dur- ing the development of an application with model-driven development tools and using the history of large Git project repositories.
Model-Driven Software Engineering fornisce strumenti per aiutare gli sviluppatori nel processo di creazione di applicazioni complesse. Uno sviluppatore, a causa dei continui aggiornamenti del modello e della generazione del codice, deve risolvere molti conflitti quando integra il codice generato e quello manualmente modificato. Spesso i conflitti da risolvere sono molto simili a quelli precedentemente risolti. Il nostro approccio estende il lavoro svolto su Almost-Git ed estende lo stru- mento Git Rerere, creando così Almost-Rerere. Lo strumento svilup- pato raggruppa i conflitti simili usando un algoritmo di raggruppa- mento agglomerativo gerarchico basato su una metrica di somiglianza e sintetizza una risoluzione del conflitto basata sui conflitti simili prece- dentemente visti. L’approccio è stato valutato utilizzandolo durante lo sviluppo di un’applicazione con gli strumenti di sviluppo basati su modelli e utilizzando la cronologia dei repository di grandi progetti Git.
Almost-Rerere : an approach for automating conflict resolution from similar resolved conflicts
TARIQ, MOHAMMAD MANAN
2018/2019
Abstract
Model-Driven Software Engineering provides tools to help developers in the creation process of complex applications. A developer, due to the continuous updates of the model and the generation of the code, must resolve many conflicts when integrating the generated and man- ually modified code. Several times the conflicts to be resolved are very similar to previously resolved conflicts. Our approach extends the work done on Almost-Git and extends the Git Rerere tool, thus creat- ing Almost-Rerere. The developed tool clusters similar conflicts using a hierarchical agglomerative clustering algorithm based on a similarity measure and synthesizes a conflict resolution based on those previously seen similar conflicts. The approach has been evaluated using it dur- ing the development of an application with model-driven development tools and using the history of large Git project repositories.File | Dimensione | Formato | |
---|---|---|---|
2019_12_Tariq.pdf
accessibile in internet per tutti
Descrizione: Testo della tesi
Dimensione
2.57 MB
Formato
Adobe PDF
|
2.57 MB | Adobe PDF | Visualizza/Apri |
I documenti in POLITesi sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.
https://hdl.handle.net/10589/150623