Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review

Recently many researches have explored the potential of visual programming in robotics, the Internet of Things (IoT), and education. However, there is a lack of studies that analyze the recent evidence-based visual programming approaches that are applied in several domains. This study presents a sys...

Full description

Bibliographic Details
Main Authors: Mohammad Amin Kuhail, Shahbano Farooq, Rawad Hammad, Mohammed Bahja
Format: Article
Language:English
Published: IEEE 2021-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/9320477/
_version_ 1828899126952067072
author Mohammad Amin Kuhail
Shahbano Farooq
Rawad Hammad
Mohammed Bahja
author_facet Mohammad Amin Kuhail
Shahbano Farooq
Rawad Hammad
Mohammed Bahja
author_sort Mohammad Amin Kuhail
collection DOAJ
description Recently many researches have explored the potential of visual programming in robotics, the Internet of Things (IoT), and education. However, there is a lack of studies that analyze the recent evidence-based visual programming approaches that are applied in several domains. This study presents a systematic review to understand, compare, and reflect on recent visual programming approaches using twelve dimensions: visual programming classification, interaction style, target users, domain, platform, empirical evaluation type, test participants' type, number of test participants, test participants' programming skills, evaluation methods, evaluation measures, and accessibility of visual programming tools. The results show that most of the selected articles discussed tools that target IoT and education, while other fields such as data science, robotics are emerging. Further, most tools use abstractions to hide implementation details and use similar interaction styles. The predominant platforms for the tools are web and mobile, while desktop-based tools are on the decline. Only a few tools were evaluated with a formal experiment, whilst the remaining ones were evaluated with evaluation studies or informal feedback. Most tools were evaluated with students with little to no programming skills. There is a lack of emphasis on usability principles in the design stage of the tools. Additionally, only one of the tools was evaluated for expressiveness. Other areas for exploration include supporting end users throughout the life cycle of applications created with the tools, studying the impact of tutorials on improving learnability, and exploring the potential of machine learning to improve debugging solutions developed with visual programming.
first_indexed 2024-12-13T15:26:02Z
format Article
id doaj.art-ace516468e8c425987fb68d3791be0cd
institution Directory Open Access Journal
issn 2169-3536
language English
last_indexed 2024-12-13T15:26:02Z
publishDate 2021-01-01
publisher IEEE
record_format Article
series IEEE Access
spelling doaj.art-ace516468e8c425987fb68d3791be0cd2022-12-21T23:40:21ZengIEEEIEEE Access2169-35362021-01-019141811420210.1109/ACCESS.2021.30510439320477Characterizing Visual Programming Approaches for End-User Developers: A Systematic ReviewMohammad Amin Kuhail0https://orcid.org/0000-0002-0000-0989Shahbano Farooq1https://orcid.org/0000-0002-4655-029XRawad Hammad2https://orcid.org/0000-0002-7900-8640Mohammed Bahja3https://orcid.org/0000-0002-2138-1784College of Technological Innovation, Zayed University, Abu Dhabi, United Arab EmiratesUniversity College, Zayed University, Abu Dhabi, United Arab EmiratesDepartment of Computer Science and Digital Technologies, University of East London, London, U.K.School of Computer Science, University of Birmingham, Birmingham, U.K.Recently many researches have explored the potential of visual programming in robotics, the Internet of Things (IoT), and education. However, there is a lack of studies that analyze the recent evidence-based visual programming approaches that are applied in several domains. This study presents a systematic review to understand, compare, and reflect on recent visual programming approaches using twelve dimensions: visual programming classification, interaction style, target users, domain, platform, empirical evaluation type, test participants' type, number of test participants, test participants' programming skills, evaluation methods, evaluation measures, and accessibility of visual programming tools. The results show that most of the selected articles discussed tools that target IoT and education, while other fields such as data science, robotics are emerging. Further, most tools use abstractions to hide implementation details and use similar interaction styles. The predominant platforms for the tools are web and mobile, while desktop-based tools are on the decline. Only a few tools were evaluated with a formal experiment, whilst the remaining ones were evaluated with evaluation studies or informal feedback. Most tools were evaluated with students with little to no programming skills. There is a lack of emphasis on usability principles in the design stage of the tools. Additionally, only one of the tools was evaluated for expressiveness. Other areas for exploration include supporting end users throughout the life cycle of applications created with the tools, studying the impact of tutorials on improving learnability, and exploring the potential of machine learning to improve debugging solutions developed with visual programming.https://ieeexplore.ieee.org/document/9320477/Visual programmingend-user developmenthuman-computer interactionsystematic literature review
spellingShingle Mohammad Amin Kuhail
Shahbano Farooq
Rawad Hammad
Mohammed Bahja
Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review
IEEE Access
Visual programming
end-user development
human-computer interaction
systematic literature review
title Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review
title_full Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review
title_fullStr Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review
title_full_unstemmed Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review
title_short Characterizing Visual Programming Approaches for End-User Developers: A Systematic Review
title_sort characterizing visual programming approaches for end user developers a systematic review
topic Visual programming
end-user development
human-computer interaction
systematic literature review
url https://ieeexplore.ieee.org/document/9320477/
work_keys_str_mv AT mohammadaminkuhail characterizingvisualprogrammingapproachesforenduserdevelopersasystematicreview
AT shahbanofarooq characterizingvisualprogrammingapproachesforenduserdevelopersasystematicreview
AT rawadhammad characterizingvisualprogrammingapproachesforenduserdevelopersasystematicreview
AT mohammedbahja characterizingvisualprogrammingapproachesforenduserdevelopersasystematicreview