AppCraft: Model-Driven Development Framework for Mobile Applications

Mobile app developers often encounter a significant challenge in developing well-structured mobile apps capable of supporting multiple platforms and diverse functional requirements. The main current practice involves coding versions for different platforms separately using traditional software devel...

Full description

Saved in:
Bibliographic Details
Main Authors: Lyan Alwakeel, Kevin Lano, Hessa Alfraihi
Format: Article
Language:English
Published: IEEE 2025-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/10857322/
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Mobile app developers often encounter a significant challenge in developing well-structured mobile apps capable of supporting multiple platforms and diverse functional requirements. The main current practice involves coding versions for different platforms separately using traditional software development methods. Implementing any changes across these variants requires manual effort, demanding a significant amount of time and resources. In response, software engineering has focused on improving the development process to create high-quality mobile applications. One promising approach is Model-Driven Development (MDD), which generates low-level code from high-level models, enabling developers to “write once, run anywhere”. This paper proposes AppCraft, an MDD-based framework designed for developing cross-platform mobile apps. AppCraft facilitates the generation of complex, intelligent, and well-structured apps by addresses three types of variations in mobile apps: platform-related variations, built-in capabilities, and app functionalities. Additionally, this paper describes the use of AppCraft for supporting the integration of machine learning models in mobile apps. The framework comprises a domain-specific language, a text-based modelling editor, and a set of model-to-code transformations. The framework’s applicability was assessed by automatically generating the implementation of eight different case studies in the healthcare domain. Additionally, the productivity was evaluated by comparing the time and effort required using AppCraft versus a manual coding process. As part of the evaluation, a usability study was conducted to assess the usability of AppCraft-generated apps. The results demonstrate that AppCraft is applicable and beneficial for the automated generation of usable mobile apps, highlighting significant reductions in development time and effort.
ISSN:2169-3536