Improving the Developer Experience with a Low-Code Process Modelling Language
By: Henrique Henriques , Hugo Lourenço , Vasco Amaral and more
Potential Business Impact:
Makes building apps easier and faster for programmers.
Context: The OutSystems Platform is a development environment composed of several DSLs, used to specify, quickly build, and validate web and mobile applications. The DSLs allow users to model different perspectives such as interfaces and data models, define custom business logic and construct process models. Problem: The DSL for process modelling (Business Process Technology (BPT)), has a low adoption rate and is perceived as having usability problems hampering its adoption. This is problematic given the language maintenance costs. Method: We used a combination of interviews, a critical review of BPT using the "Physics of Notation" and empirical evaluations of BPT using the System Usability Scale (SUS) and the NASA Task Load indeX (TLX), to develop a new version of BPT, taking these inputs and Outsystems' engineers' culture into account. Results: Evaluations conducted with 25 professional software engineers showed an increase of the semantic transparency on the new version, from 31% to 69%, an increase in the correctness of responses, from 51% to 89%, an increase in the SUS score, from 42.25 to 64.78, and a decrease of the TLX score, from 36.50 to 20.78. These differences were statistically significant. Conclusions: These results suggest that the new version of BPT significantly improved the developer experience of the previous version. The end users' background with OutSystems had a relevant impact on the final concrete syntax choices and achieved usability indicators.
Similar Papers
On the Marriage of Theory and Practice in Data-Aware Business Processes via Low-Code
Software Engineering
Tests business plans with data automatically.
Ontology-Driven Model-to-Model Transformation of Workflow Specifications
Software Engineering
Moves old computer instructions to new, open systems.
Model management to support systems engineering workflows using ontology-based knowledge graphs
Software Engineering
Organizes engineering designs for faster building.