Intro:
While low-code platforms offer convenience and speed in application development, it's important not to overlook essential aspects like security, operational logging and alerting, and ongoing support.
Rapid development should never come at the cost of neglecting these critical considerations.
Key Themes to consider:
Security: Regardless of the development approach, application security should always be a top priority. Cyber threats and vulnerabilities are a constant concern, and any application, whether built with low-code or traditional methods, should undergo rigorous security testing and adhere to best practices. Neglecting security could lead to data breaches, unauthorized access, and other serious risks.
Operational Logging and Alerting: Proper operational logging helps monitor the health and performance of applications. It enables quick identification of issues, troubleshooting, and optimizing performance. Neglecting operational logging and alerting could lead to challenges in identifying problems, diagnosing issues, and ensuring that the application is running smoothly.
Support and Maintenance: The ease of building applications using low-code platforms doesn't exempt them from the need for ongoing support and maintenance. Applications are used in dynamic environments and may require updates, bug fixes, and enhancements over time. Proper support ensures that the application remains functional, secure, and aligned with evolving business needs.
Sample Decision framework
While application design the 3 core consideration are understanding the user ecosystem, the systemic process you are trying to enforce and the data handling that the system has to process. The consideration with user ecosystem are the size and concurrency of the application and will the application be leveraged by user base external to the organisation. The second factor would be to understand what business logic are we trying to implement? Is it a simple workflow / process automation ? Does the application have to orchestrate business logic and also integrate with other systems? The final factor would be the handling of data. Is it application performing a simple read / display of data ? Is the expectation that the application build should manage larger dataset and ensure that while processing the data the integrity / quality of the data is not compromised ?
Factors | Set Value | Question |
---|---|---|
User | User Base value as 1 | Is the user base very small (Less than < 10 Users) |
User | User Base value as 3 | Do we have external facing user Base |
Process | Process value as 1 | Is it a only process orchestration / workflow implementation |
Process | Process value as 3 | Does the Systemic process need to interact / integrate with other systems and have multiple features to be implemented |
Data | Data value as 1 | Is the data just a read or an API operation to display data |
Data | Data value as 3 | Do you think you need to persist transactional information |
Extensive list of recommendation based on the above factors would be as below.
Scenarios | User Base | Systemic Process | Data Operations | Application Design Recommendation |
---|---|---|---|---|
Case 1 | 1 | 1 | 1 | Low / No Code |
Case 2 | 1 | 1 | 2 | Hybrid |
Case 3 | 1 | 1 | 3 | Hybrid |
Case 4 | 1 | 2 | 1 | Low / No Code |
Case 5 | 1 | 2 | 2 | Hybrid |
Case 6 | 1 | 2 | 3 | Pro Code |
Case 7 | 1 | 3 | 1 | Low / No Code |
Case 8 | 1 | 3 | 2 | Hybrid |
Case 9 | 1 | 3 | 3 | Pro Code |
Case 10 | 2 | 1 | 1 | Hybrid |
Case 11 | 2 | 1 | 2 | Pro Code |
Case 12 | 2 | 1 | 3 | Pro Code |
Case 13 | 2 | 2 | 1 | Hybrid |
Case 14 | 2 | 2 | 2 | Hybrid |
Case 15 | 2 | 2 | 3 | Pro Code |
Case 16 | 2 | 3 | 1 | Hybrid |
Case 17 | 2 | 3 | 2 | Pro Code |
Case 18 | 2 | 3 | 3 | Pro Code |
Case 19 | 3 | 1 | 1 | Hybrid |
Case 20 | 3 | 1 | 2 | Pro Code |
Case 21 | 3 | 1 | 3 | Pro Code |
Case 22 | 3 | 2 | 1 | Hybrid |
Case 23 | 3 | 2 | 2 | Pro Code |
Case 24 | 3 | 2 | 3 | Pro Code |
Case 25 | 3 | 3 | 1 | Hybrid |
Case 26 | 3 | 3 | 2 | Pro Code |
Case 27 | 3 | 3 | 3 | Pro Code |
PVA agent to quickly help with decision making
Wrapping Up:
Taking shortcuts in these areas can lead to vulnerabilities, unreliable performance, and operational challenges that might not surface immediately but can have significant repercussions down the line. It's essential to strike a balance between the efficiency of low-code development and the critical responsibilities of security, operational robustness, and long-term support