Combining Rigorous Requirements Specifications with Low-Code Platforms to Rapid Development Software Business Applications
Source abstract
Abstract
Low-code development platforms have gained popularity as an effective solution to address urgent market demands for software applications. These platforms have often overcome challenges faced by traditional software development processes, including requirements engineering processes, as they tend to incorporate the requirements in their prototyping phase. However, low-code platforms have followed different approaches with proprietary languages, which is a problem when customers need to move to other technologies or intend to define the specification of their applications in a readable and platform-independent way. To mitigate these challenges, this article discusses a model-driven approach that semi-automatically produces software business applications by combining rigorous requirement specifications (defined with the ITLingo ASL language) with a concrete low-code platform (Quidgest Genio). First, we analyse the common concepts in both ITLingo ASL and Genio languages. Then, we discuss model-to-model transformations that allow converting ASL specifications into Genio low-code projects. Finally, the code generation capabilities of the Genio low-code platform are employed to generate the source code of the target software applications. To evaluate the consistency of the proposed approach, we use and discuss a simple and representative case study based on a fictitious system, the Invoice Management System (IMS), whose requirements are similar to those found in many business applications.
Source: crossref · Quality: baseline
Research context
OpenAlex topics: Advanced Software Engineering Methodologies · Model-Driven Software Engineering Techniques · Service-Oriented Architecture and Web Services
SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.
Affiliations
Instituto Superior Técnico, Universidade de Lisboa, 1000-029 Lisbon, Portugal
INESC-ID, Instituto Superior Técnico, Universidade de Lisboa, 1000-029 Lisbon, Portugal
References (67)
Show source-provided references
1. A Review of Requirement Engineering Issues and Challenges in Various Software Development Methods
2. Developing Web Applications
3. Gamito, I., and Silva, A.R. (2020, January 8–11). From Rigorous Requirements and User Interfaces Specifications into Software Business Applications. Proceedings of the 13th International Conference on the Quality of Information and Communications Technology (QUATIC’2020), Braga, Portugal.10.1007/978-3-030-58793-2_37 ↗
4. Low-code platform10.1007/s12599-021-00726-8 ↗
5. Frank, U., Maier, P., and Bock, A. (2021). Low Code Platforms: Promises, Concepts and Prospects: A Comparative Study of Ten Systems, Universität Duisburg-Essen, Institut für Informatik und Wirtschaftsinformatik (ICB). ICB-Research Report No. 70.
6. Overeem, M. (2022). Evolution of Low-Code Platforms. [Ph.D. Thesis, Utrecht University].
7. Low-code development and model-driven engineering: Two sides of the same coin?10.1007/s10270-021-00970-2 ↗
8. (2021, October 13). PLATFORM—Genio by Quidgest. Available online: https://genio.quidgest.com/platform.
9. (2021, October 13). OutSystems Evaluation Guide. Available online: https://www.outsystems.com/evaluation-guide.
10. (2021, October 13). Mendix Evaluation Guide. Available online: https://www.mendix.com/evaluation-guide.
11. (2022, August 22). Business Apps|Microsoft Power Apps. Available online: https://powerapps.microsoft.com.
12. (2022, August 22). Google AppSheet|Build Apps with No Code. Available online: https://www.appsheet.com.
13. (2022, August 22). Build a Better Way to Work|Amazon Honeycode. Available online: https://www.honeycode.aws.
14. Model-driven engineering: A survey supported by the unified conceptual model
15. Cabot, J. (2020, January 16–23). Positioning of the low-code movement within the field of model-driven engineering. Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings (MODELS’ 20), New York, NY, USA.10.1145/3417990.3420210 ↗
16. (2022, July 08). PROJECTS—Genio by Quidgest. Available online: https://genio.quidgest.com/projects-2.
17. Silva, A.R. (2022). ITLingo Research Initiative in 2022. arXiv.
18. Domain-specific languages10.1145/352029.352035 ↗
19. Comparing General-Purpose and Domain-Specific Languages: An Empirical Study10.2298/CSIS1002247K ↗
20. (2022, June 20). HTML: HyperText Markup Language. Available online: https://developer.mozilla.org/en-US/docs/Web/HTML.
21. (2022, June 20). CSS: Cascading Style Sheets. Available online: https://developer.mozilla.org/en-US/docs/Web/CSS.
22. (2022, June 20). LaTeX—A Document Preparation System. Available online: https://www.latex-project.org.
23. Kurtev, I., Bézivin, J., Jouault, F., and Valduriez, P. (2006, January 22–26). Model-based DSL frameworks. Proceedings of the Companion to the 21st ACM SIGPLAN Conference on Object-oriented Programming Systems, Languages and Applications—OOPSLA’06, Portland, OR, USA.10.1145/1176617.1176632 ↗
24. Sanchis, R., García-Perales, Ó., Fraile, F., and Poler, R. (2020). Low-Code as Enabler of Digital Transformation in Manufacturing Industry. Appl. Sci., 10.10.3390/app10010012 ↗
25. (2021, October 20). How Enterprise-Grade Low-Code Speeds up Time to Market. Available online: https://www.nearpartner.com/2021/02/how-enterprise-grade-low-code-speeds-up-time-to-market.
26. (2021, October 20). Gartner Says the Majority of Technology Products and Services Will Be Built by Professionals Outside of IT by 2024. Available online: https://www.gartner.com/en/newsroom/press-releases/2021-06-10-gartner-says-the-majority-of-technology-products-and-services-will-be-built-by-professionals-outside-of-it-by-2024.
27. Danilchenko, Y.B. (2012). Automatic Code Generation Using Artificial Intelligence, ProQuest/UMI.
28. (2022, August 23). Event Sourcing. Available online: https://martinfowler.com/eaaDev/EventSourcing.html.
29. (2022, August 23). What Is API Management?. Available online: https://www.redhat.com/en/topics/api/what-is-api-management.
30. (2022, August 23). Evolutionary Architecture: Supporting Constant Change. Available online: https://www.sqli.nl/en/blog/evolutionary-architecture.
31. Silva, A.R. (2019, January 28–30). Rigorous Specification of Use Cases with the RSL Language. Proceedings of the 28th International Conference on Information Systems Development (ISD’2019), Toulon, France.
32. Silva, A.R., and Savić, D. (2021). Linguistic Patterns and Linguistic Styles for Requirements Specification: Focus on Data Entities. Appl. Sci., 11.10.3390/app11094119 ↗
33. Silva, A.R. (2017, January 12–16). Linguistic Patterns and Linguistic Styles for Requirements Specification (I): An Application Case with the Rigorous RSL/Business-level Language. Proceedings of the 22nd European Conference on Pattern Languages of Programs (EuroPLOP’2017), Irsee, Germany.
34. Linguistic Patterns, Styles, and Guidelines for Writing Requirements Specifications: Focus on Use Cases and Scenarios10.1109/ACCESS.2021.3120004 ↗
35. (2021, October 21). Flow Modeling Language Specification Version 1.0. Available online: https://www.omg.org/spec/IFML/1.0.
36. (2021, October 20). GENIO: Xtreme Low-Code Platform. Available online: https://quidgest.com/en/about-quidgest/genio-platform.
37. Data Modeling and Data Analytics: A Survey from a Big Data Perspective10.4236/jsea.2015.812058 ↗
38. Nielsen, J. (1994). Usability Engineering, Morgan Kaufmann Publishers Inc.
39. O’Hara, J.M., and Fleger, S. (2020). Human-System Interface Design Review Guidelines, Brookhaven National Lab (BNL). Technical Report.10.2172/1644018 ↗
40. (2022, July 05). Overview of Formulas. Available online: https://support.microsoft.com/en-us/office/overview-of-formulas-34519a4e-1e8d-4f4b-84d4-d642c4f63263.
41. (2022, June 25). Eclipse Foundation. Available online: https://www.eclipse.org.
42. (2022, January 04). Xtend. Available online: https://www.eclipse.org/xtend.
43. (2022, June 25). Invoice Management System (IMS) Specified in the ITLingo ASL Language. Available online: https://github.com/pgalhardo/ims.
44. ASP (2022, June 25). NET MVC Pattern. Available online: https://dotnet.microsoft.com/en-us/apps/aspnet/mvc.
45. A classification and comparison framework for software architecture description languages10.1109/32.825767 ↗
46. Gruhn, V., and Striemer, R. (2018). Software Architecture: Past, Present, Future. The Essence of Software Engineering, Springer International Publishing. [1st ed.].10.1007/978-3-319-73897-0 ↗
47. (2011). Systems and Software Engineering—Architecture Description. Standard No. ISO/IEC/IEEE 42010:2011.
48. The 4 + 1 View Model of Software Architecture10.1109/52.469759 ↗
49. Górski, T. (2021). The 1 + 5 Architectural Views Model in Designing Blockchain and IT System Integration Solutions. Symmetry, 13.10.3390/sym13112000 ↗
50. Large-scale Model-Driven Engineering of web user interaction: The WebML and WebRatio experience10.1016/j.scico.2013.03.010 ↗
51. Evaluation of XIS-Mobile, a domain specific language for mobile application development10.4236/jsea.2014.711081 ↗
52. Seixas, J., Ribeiro, A., and da Silva, A.R. (2019, January 4–5). A Model-Driven Approach for Developing Responsive Web Apps. Proceedings of the ENASE, Heraklion, Greece.10.5220/0007678302570264 ↗
53. Enterprise WAE: A Lightweight UML Extension for the Characterisation of the Presentation Tier of Enterprise Applications with MDD-Based Mockup Generation10.1142/S0218194017500486 ↗
54. Filipović, M., Vuković, Ž., Dejanović, I., and Milosavljević, G. (2021). Rapid Requirements Elicitation of Enterprise Applications Based on Executable Mockups. Appl. Sci., 11.10.3390/app11167684 ↗
55. A new research agenda for tool integration10.1016/j.jss.2007.03.089 ↗
56. Bézivin, J., Bruneliere, H., Jouault, F., and Kurtev, I. (2005, January 2–7). Model Engineering Support for Tool Interoperability. Proceedings of the Workshop in Software Model Engineering (WiSME’2005)—A MODELS 2005 Satellite Event, Montego Bay, Jamaica.
57. Voelter, M., and Visser, E. (2011, January 21–26). Product Line Engineering Using Domain-Specific Languages. Proceedings of the 15th International Software Product Line Conference, Munich, Germany.10.1109/SPLC.2011.25 ↗
58. Brunelière, H., Cabot, J., Clasen, C., Jouault, F., and Bézivin, J. (2010). Towards Model Driven Tool Interoperability: Bridging Eclipse and Microsoft Modeling Tools. Modelling Foundations and Applications, ECMFA; Springer.10.1007/978-3-642-13595-8_5 ↗
59. Bragança, A., Azevedo, I., Bettencourt, N., Morais, C., Teixeira, D., and Caetano, D. (2021, January 17–18). Towards supporting SPL engineering in low-code platforms using a DSL approach. Proceedings of the 20th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences, Chicago, IL, USA.10.1145/3486609.3487196 ↗
60. Ferreira, A., Silva, A.R., and Paiva, A.C. (2022, January 25–26). Towards the Art of Writing Agile Requirements with User Stories, Acceptance Criteria, and Related Constructs. Proceedings of the International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE’2022), Online.10.5220/0011082000003176 ↗
61. Paiva, A.C., Maciel, D., and Silva, A.R. (2020). From Requirements to Automated Acceptance Tests with the RSL Language. Communications in Computer and Information Science, Springer.10.1007/978-3-030-40223-5_3 ↗
62. Correia, C.M., and Silva, A.R. (2022, January 6–8). Platform-Independent Specifications for Robotic Process Automation. Proceedings of the International Conference on Model-Driven Engineering and Software Development (MODELSWARD’2022), Online.10.5220/0010991200003119 ↗
63. Verelst, J., Silva, A.R., Mannaert, H., Ferreira, D.A., and Huysmans, P. (2013, January 13–14). Identifying Combinatorial Effects in Requirements Engineering. Proceedings of the Third Enterprise Engineering Working Conference (EEWC 2013), Luxembourg.10.1007/978-3-642-38117-1_7 ↗
64. Applying model-driven engineering to distributed ledger deployment10.1109/ACCESS.2020.3005519 ↗
65. Ivančić, L., Suša Vugec, D., and Bosilj Vukšić, V. (2019, January 1–6). Robotic Process Automation: Systematic Literature Review. Proceedings of the 17th International Conference on Business Process Management (BPM 2019), Vienna, Austria.10.1007/978-3-030-30429-4_19 ↗
66. Robotic process automation: A scientific and industrial systematic mapping study10.1109/ACCESS.2020.2974934 ↗
67. Hyperautomation for the enhancement of automation in industries10.1016/j.sintl.2021.100124 ↗