Building BESSER: an open-source low-code platform

Iván Alfonso,Aaron Conrardy,Armen Sulejmani,Atefeh Nirumand,Fitash Ul Haq,Marcos Gomez-Vazquez,Jean-Sébastien Sottet,Jordi Cabot
2024-05-24
Abstract:Low-code platforms (latest reincarnation of the long tradition of model-driven engineering approaches) have the potential of saving us countless hours of repetitive boilerplate coding tasks. However, as software systems grow in complexity, low-code platforms need to adapt as well. Notably, nowadays this implies adapting to the modeling and generation of smart software. At the same time, if we want to broaden the userbase of this type of tools, we should also be able to provide more open source alternatives that help potential users avoid vendor lock-ins and give them the freedom to explore low-code development approaches (even adapting the tool to better fit their needs). To fulfil these needs, we are building BESSER, an open source low-code platform for developing (smart) software. BESSER offers various forms (i.e., notations) for system and domain specification (e.g. UML for technical users and chatbots for business users) together with a number of generators. Both types of components can be extended and are open to contributions from the community.
Software Engineering
What problem does this paper attempt to address?
The paper aims to address the following major issues: 1. **Meeting the demands of complex software development**: As the complexity of software systems continues to increase, traditional low-code platforms struggle to meet the needs of modern software development, especially in developing intelligent software (such as applications with AI components). 2. **Expanding the user base**: To enable more users to utilize low-code tools, it is necessary to provide open-source alternatives to avoid vendor lock-in and allow users to freely explore low-code development methods, even customizing tools according to their own needs. 3. **Support for intelligent software**: Existing low-code platforms have limitations in supporting intelligent software (e.g., applications with augmented reality/virtual reality interfaces, chatbots, etc.), typically treating third-party applications as add-ons rather than integrated parts. 4. **Openness and scalability**: Current commercial low-code platforms are mostly proprietary ecosystems, preventing users from accessing the generated code, leading to significant vendor lock-in issues. Therefore, a robust open-source low-code platform is needed to promote the adoption of low-code methods and provide a scalable environment that companies can adjust and customize according to specific needs. To address the above issues, the author team is developing BESSER (Better Smart Software FastER), an open-source low-code platform for developing intelligent software systems. This platform not only provides various forms of system and domain specifications but also comes equipped with a range of generators, all of which are extensible and open to community contributions.