Skip to main navigation Skip to search Skip to main content

Analyse et détection des patrons architecturaux dans les applications mobiles à l’aide des techniques d’apprentissage automatique

Translated title of the thesis: Architectural pattern detection and analysis in mobile apps using machine learning techniques
  • Chaima Chekhaba

Student thesis: Master's thesisMaster in Engineering: Engineering

Abstract

Recently, mobile applications (apps) have known widespread emergence in multiple fields. In order to meet the required quality for these apps, mobile developers apply good practices (e.g., patterns) and guidelines recommended by the development community. Among the most commonly used architectural patterns to implement Android apps are the popular Model-View- Controller (MVC) architectural pattern and its variants : Model-View-Presenter (MVP) and Model-View-ViewModel (MVVM). However, developers tend to apply differently these patterns according to their experience and proper understanding of the patterns guidelines. This may lead to faulty implementations that impact negatively the design of the app. Sometimes, it also leads to the mixing of different MVC variants within the same app, which could hinder the understandability, maintainability, and testability of the app. In this thesis, we are interested in analyzing Android apps in order to detect the applied patterns and potentially the mixing of multiple MVC variants implemented in the same app. For that end, we introduce our tool-based approaches : Coach and MlCoach. Coach allow the detection of the dominant MVC pattern variant in Android apps using the traditional classification techniques. As for MlCoach, it detect the mixing of multiple MVC pattern variants using the multi-label classification technique based on deep learning. In the absence of benchmarks, we perform our analyses on a manually annotated dataset of 69 open-source Java projects for Android apps. Based on our experiments, our approaches yield promising results and outperform the state-of-the-art approaches. We also present a qualitative analysis on a subset of mobile apps to provide some insights about the factors that may lead to the mixing of different MVC variants in these apps.
Date1 May 2023
Original languageFrench
Awarding Institution
  • École de technologie supérieure
SupervisorNaouel Moha (Supervisor) & Ghizlane El Boussaidi (Co-supervisor)

Cite this

'