An Empirical Study of Developer Discussions on Low-Code Software Development Challenges

Low-code software development (LCSD) is an emerging paradigm that combines minimal source code with interactive graphical interfaces to promote rapid application development. LCSD aims to democratize application development to software practitioners with diverse backgrounds. Given that LCSD is relatively a new paradigm, it is vital to learn about the challenges developers face during their adoption of LCSD platforms. The online developer forum, Stack Overflow (SO), is popular among software developers to ask for solutions to their technical problems. We observe a growing body of posts in SO with discussions of LCSD platforms. In this paper, we present an empirical study of around 5K SO posts (questions + accepted answers) that contain discussions of nine popular LCSD platforms. We apply topic modeling on the posts to determine the types of topics discussed. We find 13 topics related to LCSD in SO. The 13 topics are grouped into four categories: Customization, Platform Adoption, Database Management, and Third-Party Integration. More than 40% of the questions are about customization, i.e., developers frequently face challenges with customizing user interfaces or services offered by LCSD platforms. The topic "Dynamic Event Handling" under the "Customization" category is the most popular (in terms of average view counts per question of the topic) as well as the most difficult. It means that developers frequently search for customization solutions such as how to attach dynamic events to a form in low-code UI, yet most (75.9%) of their questions remain without an accepted answer. We manually label 900 questions from the posts to determine the prevalence of the topics’ challenges across LCSD phases. We find that most of the questions are related to the development phase, and low-code developers also face challenges with automated testing. Our study findings offer implications for low-code practitioners, platform providers, educators, and researchers.

[1]  Raffi Khatchadourian,et al.  Going big: a large-scale study on what big data developers ask , 2019, ESEC/SIGSOFT FSE.

[2]  Mira Mezini,et al.  Ieee Transactions on Software Engineering 1 Automated Api Property Inference Techniques , 2022 .

[3]  Rabe Abdalkareem,et al.  Challenges in Chatbot Development: A Study of Stack Overflow Posts , 2020, 2020 IEEE/ACM 17th International Conference on Mining Software Repositories (MSR).

[4]  Matheus Paixão,et al.  We Need to Talk About Microservices: an Analysis from the Discussions on StackOverflow , 2019, 2019 IEEE/ACM 16th International Conference on Mining Software Repositories (MSR).

[5]  Gabriele Bavota,et al.  Methodbook: Recommending Move Method Refactorings via Relational Topic Models , 2014, IEEE Transactions on Software Engineering.

[6]  Nicholas Matragkas,et al.  Towards a low-code solution for monitoring machine learning model performance , 2020, MoDELS.

[7]  Michael Röder,et al.  Exploring the Space of Topic Coherence Measures , 2015, WSDM.

[8]  Xinli Yang,et al.  What Security Questions Do Developers Ask? A Large-Scale Study of Stack Overflow Posts , 2016, Journal of Computer Science and Technology.

[9]  Davide Di Ruscio,et al.  Low-code engineering for internet of things: a state of research , 2020, MODELS Companion.

[10]  Sheng Wen,et al.  Software Vulnerability Detection Using Deep Neural Networks: A Survey , 2020, Proceedings of the IEEE.

[11]  Davide Di Ruscio,et al.  Democratizing the development of recommender systems by means of low-code platforms , 2020, MoDELS.

[12]  Bogdan Dit,et al.  An exploratory analysis of mobile development issues using stack overflow , 2013, 2013 10th Working Conference on Mining Software Repositories (MSR).

[13]  Hareton K. N. Leung,et al.  MSR4SM: Using topic models to effectively mining software repositories for software maintenance tasks , 2015, Inf. Softw. Technol..

[14]  Bin Li,et al.  Modeling the evolution of development topics using Dynamic Topic Models , 2015, 2015 IEEE 22nd International Conference on Software Analysis, Evolution, and Reengineering (SANER).

[15]  Heng Li,et al.  Studying software logging using topic models , 2018, Empirical Software Engineering.

[16]  Michael English,et al.  An empirical analysis of information retrieval based concept location techniques in software comprehension , 2008, Empirical Software Engineering.

[17]  Bin Li,et al.  Exploring topic models in software engineering data analysis: A survey , 2016, 2016 17th IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD).

[18]  Michael I. Jordan,et al.  Latent Dirichlet Allocation , 2001, J. Mach. Learn. Res..

[19]  Denys Poshyvanyk,et al.  Using Latent Dirichlet Allocation for automatic categorization of software , 2009, 2009 6th IEEE International Working Conference on Mining Software Repositories.

[20]  Ahmed E. Hassan,et al.  What Do Programmers Discuss About Blockchain? A Case Study on the Use of Balanced LDA and the Reference Architecture of a Domain to Capture Online Discussions About Blockchain Platforms Across Stack Exchange Communities , 2019, IEEE Transactions on Software Engineering.

[21]  FrylingMeg Low code app development , 2019 .

[22]  M. Narasimha Murty,et al.  On Finding the Natural Number of Topics with Latent Dirichlet Allocation: Some Observations , 2010, PAKDD.

[23]  Yann-Gaël Guéhéneuc,et al.  Feature Location Using Probabilistic Ranking of Methods Based on Execution Scenarios and Information Retrieval , 2007, IEEE Transactions on Software Engineering.

[24]  Foutse Khomh,et al.  Automatic summarization of API reviews , 2017, 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE).

[25]  Steven Bird,et al.  NLTK: The Natural Language Toolkit , 2002, ACL.

[26]  Ahmed E. Hassan,et al.  Studying software evolution using topic models , 2014, Sci. Comput. Program..

[27]  Sally Fincher,et al.  Making sense of card sorting data , 2005, Expert Syst. J. Knowl. Eng..

[28]  Gerson Sunyé,et al.  Challenges & opportunities in low-code testing , 2020, MoDELS.

[29]  Emad Shihab,et al.  What are mobile developers asking about? A large scale study using stack overflow , 2016, Empirical Software Engineering.

[30]  Davide Di Ruscio,et al.  Supporting the understanding and comparison of low-code development platforms , 2020, 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA).

[31]  Avinash C. Kak,et al.  Retrieval from software libraries for bug localization: a comparative study of generic and composite text models , 2011, MSR '11.

[32]  R. Ramya,et al.  Effective Pre-Processing Activities in Text Mining using Improved Porter's Stemming Algorithm , 2013 .

[33]  Brad A. Myers,et al.  More Natural Programming Languages and Environments , 2006, End User Development.

[34]  Petr Sojka,et al.  Software Framework for Topic Modelling with Large Corpora , 2010 .

[35]  Richard N. Taylor,et al.  Software traceability with topic modeling , 2010, 2010 ACM/IEEE 32nd International Conference on Software Engineering.

[36]  Ahmed E. Hassan,et al.  Explaining software defects using topic models , 2012, 2012 9th IEEE Working Conference on Mining Software Repositories (MSR).

[37]  Ahmed E. Hassan,et al.  Modeling the evolution of topics in source code histories , 2011, MSR '11.

[38]  M. Kendall A NEW MEASURE OF RANK CORRELATION , 1938 .

[39]  Bin Li,et al.  What Information in Software Historical Repositories Do We Need to Support Software Maintenance Tasks? An Approach Based on Topic Model , 2015, Computer and Information Science.

[40]  Agile Manifesto,et al.  Manifesto for Agile Software Development , 2001 .

[41]  Ali Mesbah,et al.  Mining questions asked by web developers , 2014, MSR 2014.

[42]  Yefim V. Natis,et al.  Magic Quadrant for Enterprise Low-Code Application Platforms , 2019 .

[43]  Robert Waszkowski,et al.  Low-code platform for automating business processes in manufacturing , 2019, IFAC-PapersOnLine.

[44]  José Carlos Pereira,et al.  Towards a Polyglot Data Access Layer for a Low-Code Application Development Platform , 2020 .

[45]  Ahmed E. Hassan,et al.  A survey on the use of topic models when mining software repositories , 2015, Empirical Software Engineering.

[46]  Mehdi Bagherzadeh,et al.  What do concurrency developers ask about?: a large-scale study using stack overflow , 2018, ESEM.

[47]  Ahmed E. Hassan,et al.  What are developers talking about? An analysis of topics and trends in Stack Overflow , 2014, Empirical Software Engineering.