What is a low-code / no-code platform and CRM, CRM +, ERP
Below I present a look at low-code / no-code based on 20 years of experience in implementing CRM / ERP.
In an economy with increasing competition, low-code / no-code will soon begin to occupy a growing large place. And the point here is not that everyone wants to save on the labor cost of the vendor of the CRM / ERP system, low-code / no-code gives great advantages in terms of the cost of ownership of the system, the cost of changing the system and the cost of creating a system error.
The essence of low-code / no-code (hereinafter simply low-code) is to lower the threshold for creating / modifying an information system to the level of a business analyst or even an advanced user. This is when the vendor does not just create a platform with an embedded language and its employees declare that they will do “everything or almost everything” for the client - a low-code platform, this is when business analysts or dedicated client-side responsible (his employees) can do this "Almost everything" do it yourself.
What is included in the concept on the platform can "almost everything"?
The low-code capabilities significantly reduce the path to the result from the chain “User task - development budget - business analyst - TK - executor - coordinating the result - making changes - acceptance” to “User task –Business analyst - acceptance”.
Key employees are “carriers / owners of knowledge about the processes of the company”. It is the provision in their hands of a tool that allows! completely! create / modify an enterprise information system, leading to:
and more "down to earth":
Below is a look at how a low-code system can be built. One of the options. With an explanation of key points.
The platform must have data configuration tools. And without programming. And not only "user data" should be accessible to the configuration, but also directories and registries that represent the basis of the configuration + system - for example, contractors, physical. persons, etc. Or vice versa: there are vendors that make it possible to configure a limited number of types of data + create your own directories - this is wrong. Limitations are a compromise for the client’s money.
All data should, relatively speaking, have equal rights, be displayed in a tree (because there are child registries / directories) and the business analyst of the platform buyer should be able to manage this data without restrictions.
At the current moment of development of the IT market in the Russian Federation, many companies - suppliers of CRM have learned to add their directories. Just adding with a compromise is not enough to be called a full platform.
a) Data visualization to the end user. When working with filters, reports, templates, etc., the user should see the data in a convenient form, with names that are clear to him. Data should be visible not only in the query table, but also in related tables (direct and backward links). The user should be able to filter, select, build reports, queries conditionally saying "fall" deep into the associated data at any level. In this case, the system itself must take on the functions of converting the final query into SQL. The system should be built in such a way that the user can "reach" all the data, including system and "exotic", such as logs. This allows you to receive reports on all information of interest and in a visualized form it is easy and convenient.
A platform that allows an implementer (business analyst) to manage the load on the database server must divide the calculations into different types according to the load.
As an option:
a) Compilation of calculation algorithms
In a low-code platform, a business analyst should have a functional that allows him, using, as an example, the above attribute tree, to compile a calculation algorithm in an understandable accessible language and understandable and accessible names of attributes, registries, etc. b) At the same time, T-SQL code is allowed here.
T-SQL code removes restrictions on computational complexity, making the platform wider than "for business analytics." In essence, this is again the “lack of restrictions." Low-code platform should not be a tool only for business analysts - it should cover the development needs on the turnkey solution platform, including code in the built-in language and, for example, T-SQL. But a business analyst on a low-code platform should be able to close most of the typical tasks. c) “Accounting is the result”
The system should allow the business analyst to create a calculation of the results and key indicators necessary for the formation of dashboards, informing users about the number of tasks (example), etc. create corporate-wide, not tied to specific records calculations. It is also important (it will be considered below) to display these totals in the interface (in visualization) in the form of indicators, large numbers, etc.
d) Views
In essence, “views” are a kind of “table constructor”. Its availability to business analysts or advanced users allows you to collect tables from several tables, i.e. create views that are not stored in the database. Representations and their development are very important in the analysis and comparison of data, including marketers. In the low-code concept, this means that complex constructs, which are usually assembled by programmers for a long time, can now be created by business analysts with the “mouse” in a short time, and also can change quickly.
e) Aggregates (registers)
There is a large number of scheduled calculations (at night), as well as preparation of totals and calculations for complex reporting forms, which also require a large server load and which also makes sense to carry out at night. Reports of this type do not require on-line data updating. From the point of view of the user, aggregation is the preparation of ready-made reports with ready-made results so that the request for such a report does not lead to calculations, but produces an ready-made form with the results within 1 - 2 seconds.
Intermediate conclusion: low-code design of a ready-made configuration from a data point of view is the closure without programming by a business analyst of all database format issues for a business of any size and complexity + the mandatory development speed, which turns out to be very high.
a) Accessibility for design
One of the main points in interface design is the fundamental accessibility of this function to business intelligence, and, of course, without programming. This means that there is a component composition (about it below) and there is a “mouse” with which you can arrange everything as required on the form, and set properties, functions, etc., for example, in the object inspector or in object cards. The complexity of forms in a low-code platform should not be limited by anything.
In relation to modern CRM and ERP systems, the interface designer should be both for the desktop (if the system is delivered in the desktop version) and for the web.
b) Drawn and it works
The work of what has just been drawn is a very important aspect. Often, on platforms, in order for the rendered interface to work, code is needed. Let not big. This is not a low-code platform, even if the vendor is so trying to imagine it.
The system in its properties and messages to the user about critical events should imply setting up the form in such a way that when you set the necessary properties and relationships of objects on it, everything immediately starts showing data and working. No other way. Nothing, even a minimal code.
c) Component composition The component composition of the interface designer should cover all modern visualization tasks and working with data. In addition to the standard, there should be:
A business analyst should have every opportunity to create a dashboard or workplace of any complexity. Modern business dictates to the interface requirements not only of beauty, but also of providing on a single screen the entire large amount of information necessary for making a decision. Often, extremely complex interfaces are created in projects that completely suit users, while all theories of the simplicity, ease and beauty of interfaces are completely denied - the main thing is.
d) Record cards Each unit may have its own views and requirements for record cards. Sales managers need to see the customer card in their own way, accounting in their own way, management also in their own way.
In low-code platforms, to realize this feature, there should be settings with copying cards from one user group to another, while creating a unique look in each of them. This should be done WITHOUT using the embedded language.
e) Access to the embedded language
With all that said, the embedded language will not be redundant. But this is an addition to the capabilities of low-code: Where particularly complex scenarios are needed and where settings for some reason are not enough or you need to manage the properties of components, calculations, etc., depending on the actions of users and this cannot be put on a graphics card processes - please, it can be accessible well, when the embedded language is available, as a means of deep customization.
+
Actually, both in the report designer and in the preparation of document templates based on MS Word and MS Excel, an accessible one is needed for everyone and users, including data visualization described above. The user in the low-code platform does not need to know the names of tables in the database, fields, etc. He should have access to comprehensive visual tools for accessing all data, without knowledge of SQL. It should be noted here that the right thing is to provide the business analyst with the opportunity to operate both with direct links to tables and with reverse links. This allows you to insert specifications tables into MS Word templates, for example, into contracts.
There are many systems on the market that claim to have process control tools. Often this is understood, for example, as a sequential distribution of tasks, or branching of only one type (yes / no, which is essentially a conditional transition).
Low-code platforms should have powerful graphic process map editors accessible without programming, where a business analyst should be able to simulate:
1. Events in the database and from this:
2. Scheduler
An important point in the capabilities of the graphic process map is access from the map to the interface objects and their properties, as well as the reaction to user actions. However, this is a complex topic and will be discussed in another article.
Implementation by filling the system with standard interfaces and conditionally “new” ones can and should be available without programming. Including icon settings and loading their collections. Similarly, access and its limitations.
Separately for each user group
The audit log management (logging) is similar in view of the growth of user literacy. In view of the fact that those who programmed in Fortran will soon retire. I am sure that the future lies precisely in the management systems of corporate complex systems such as “low-code platform”. It is NOT about the failure of programming. As shown above - everywhere there can and should be a gateway / access / another level so that certain issues are implemented in embedded languages and SQL. The point is that low-code platforms are beneficial for companies for objective reasons and the trend in, in fact, in a simpler language: the automation of the work of marketers / business analysts - to simplify and speed up their work, is obvious.
Having the tools to control the data format, computing without programming, load balancing on the server through planning planning; having the ability to visualize data, both from the point of view of the workplace of a particular group of users + visualization and analyticity of data for decision makers; having the ability to customize processes in a graphics engine with workflow elements and task distribution - a business analyst can close a very large amount of information system implementation with a high level of complexity.
In an economy with increasing competition, low-code / no-code will soon begin to occupy a growing large place. And the point here is not that everyone wants to save on the labor cost of the vendor of the CRM / ERP system, low-code / no-code gives great advantages in terms of the cost of ownership of the system, the cost of changing the system and the cost of creating a system error.
About different types of costs, in relation to information systems, it was said in more detail here
The essence of low-code / no-code (hereinafter simply low-code) is to lower the threshold for creating / modifying an information system to the level of a business analyst or even an advanced user. This is when the vendor does not just create a platform with an embedded language and its employees declare that they will do “everything or almost everything” for the client - a low-code platform, this is when business analysts or dedicated client-side responsible (his employees) can do this "Almost everything" do it yourself.
What is included in the concept on the platform can "almost everything"?
- Data format, user data
- Calculations
- Desktop / web interfaces
- Reports, dashboards, analytics
- Templates for documents, newsletters, notifications
- Process management
- Access and Log Management
- Manage your personal account and data on the site
The low-code capabilities significantly reduce the path to the result from the chain “User task - development budget - business analyst - TK - executor - coordinating the result - making changes - acceptance” to “User task –Business analyst - acceptance”.
Key employees are “carriers / owners of knowledge about the processes of the company”. It is the provision in their hands of a tool that allows! completely! create / modify an enterprise information system, leading to:
- More flexibility and business transparency
- lower IT costs
- increase the speed of developing a corporate information system
- reducing risks and waiting times for the implementation of internal tasks in the corporate system
and more "down to earth":
- the ability for managers at different levels to quickly try new management models
- independent adaptation of the interface and visualization to the needs of users
- quick creation of new reports, forms, forms
- operational changes to process management
- + much more
Below is a look at how a low-code system can be built. One of the options. With an explanation of key points.
1. Data format, user data
The platform must have data configuration tools. And without programming. And not only "user data" should be accessible to the configuration, but also directories and registries that represent the basis of the configuration + system - for example, contractors, physical. persons, etc. Or vice versa: there are vendors that make it possible to configure a limited number of types of data + create your own directories - this is wrong. Limitations are a compromise for the client’s money.
All data should, relatively speaking, have equal rights, be displayed in a tree (because there are child registries / directories) and the business analyst of the platform buyer should be able to manage this data without restrictions.
At the current moment of development of the IT market in the Russian Federation, many companies - suppliers of CRM have learned to add their directories. Just adding with a compromise is not enough to be called a full platform.
Highlights
a) Data visualization to the end user. When working with filters, reports, templates, etc., the user should see the data in a convenient form, with names that are clear to him. Data should be visible not only in the query table, but also in related tables (direct and backward links). The user should be able to filter, select, build reports, queries conditionally saying "fall" deep into the associated data at any level. In this case, the system itself must take on the functions of converting the final query into SQL. The system should be built in such a way that the user can "reach" all the data, including system and "exotic", such as logs. This allows you to receive reports on all information of interest and in a visualized form it is easy and convenient.
2. Calculations
A platform that allows an implementer (business analyst) to manage the load on the database server must divide the calculations into different types according to the load.
As an option:
- Dynamic calculations (each query to the table is performed)
- Event calculations (performed only when an entry is created in the audit registry or when the audit attribute changes)
- Scheduled calculations (occur, for example, at night or generally once a week / month)
a) Compilation of calculation algorithms
In a low-code platform, a business analyst should have a functional that allows him, using, as an example, the above attribute tree, to compile a calculation algorithm in an understandable accessible language and understandable and accessible names of attributes, registries, etc. b) At the same time, T-SQL code is allowed here.
T-SQL code removes restrictions on computational complexity, making the platform wider than "for business analytics." In essence, this is again the “lack of restrictions." Low-code platform should not be a tool only for business analysts - it should cover the development needs on the turnkey solution platform, including code in the built-in language and, for example, T-SQL. But a business analyst on a low-code platform should be able to close most of the typical tasks. c) “Accounting is the result”
The system should allow the business analyst to create a calculation of the results and key indicators necessary for the formation of dashboards, informing users about the number of tasks (example), etc. create corporate-wide, not tied to specific records calculations. It is also important (it will be considered below) to display these totals in the interface (in visualization) in the form of indicators, large numbers, etc.
d) Views
In essence, “views” are a kind of “table constructor”. Its availability to business analysts or advanced users allows you to collect tables from several tables, i.e. create views that are not stored in the database. Representations and their development are very important in the analysis and comparison of data, including marketers. In the low-code concept, this means that complex constructs, which are usually assembled by programmers for a long time, can now be created by business analysts with the “mouse” in a short time, and also can change quickly.
e) Aggregates (registers)
There is a large number of scheduled calculations (at night), as well as preparation of totals and calculations for complex reporting forms, which also require a large server load and which also makes sense to carry out at night. Reports of this type do not require on-line data updating. From the point of view of the user, aggregation is the preparation of ready-made reports with ready-made results so that the request for such a report does not lead to calculations, but produces an ready-made form with the results within 1 - 2 seconds.
Intermediate conclusion: low-code design of a ready-made configuration from a data point of view is the closure without programming by a business analyst of all database format issues for a business of any size and complexity + the mandatory development speed, which turns out to be very high.
3. Desktop / web interfaces
a) Accessibility for design
One of the main points in interface design is the fundamental accessibility of this function to business intelligence, and, of course, without programming. This means that there is a component composition (about it below) and there is a “mouse” with which you can arrange everything as required on the form, and set properties, functions, etc., for example, in the object inspector or in object cards. The complexity of forms in a low-code platform should not be limited by anything.
In relation to modern CRM and ERP systems, the interface designer should be both for the desktop (if the system is delivered in the desktop version) and for the web.
b) Drawn and it works
The work of what has just been drawn is a very important aspect. Often, on platforms, in order for the rendered interface to work, code is needed. Let not big. This is not a low-code platform, even if the vendor is so trying to imagine it.
The system in its properties and messages to the user about critical events should imply setting up the form in such a way that when you set the necessary properties and relationships of objects on it, everything immediately starts showing data and working. No other way. Nothing, even a minimal code.
c) Component composition The component composition of the interface designer should cover all modern visualization tasks and working with data. In addition to the standard, there should be:
- Pivot
- Organizer
- Indicators
- Summary
- Geovisualization
- other
A business analyst should have every opportunity to create a dashboard or workplace of any complexity. Modern business dictates to the interface requirements not only of beauty, but also of providing on a single screen the entire large amount of information necessary for making a decision. Often, extremely complex interfaces are created in projects that completely suit users, while all theories of the simplicity, ease and beauty of interfaces are completely denied - the main thing is.
d) Record cards Each unit may have its own views and requirements for record cards. Sales managers need to see the customer card in their own way, accounting in their own way, management also in their own way.
In low-code platforms, to realize this feature, there should be settings with copying cards from one user group to another, while creating a unique look in each of them. This should be done WITHOUT using the embedded language.
e) Access to the embedded language
With all that said, the embedded language will not be redundant. But this is an addition to the capabilities of low-code: Where particularly complex scenarios are needed and where settings for some reason are not enough or you need to manage the properties of components, calculations, etc., depending on the actions of users and this cannot be put on a graphics card processes - please, it can be accessible well, when the embedded language is available, as a means of deep customization.
4. Reports, dashboards, analytics
+
5. Templates of documents, mailings, notifications
Actually, both in the report designer and in the preparation of document templates based on MS Word and MS Excel, an accessible one is needed for everyone and users, including data visualization described above. The user in the low-code platform does not need to know the names of tables in the database, fields, etc. He should have access to comprehensive visual tools for accessing all data, without knowledge of SQL. It should be noted here that the right thing is to provide the business analyst with the opportunity to operate both with direct links to tables and with reverse links. This allows you to insert specifications tables into MS Word templates, for example, into contracts.
6. Process management
There are many systems on the market that claim to have process control tools. Often this is understood, for example, as a sequential distribution of tasks, or branching of only one type (yes / no, which is essentially a conditional transition).
Low-code platforms should have powerful graphic process map editors accessible without programming, where a business analyst should be able to simulate:
1. Events in the database and from this:
- setting up intergroup user interaction
- creation and modification of records and their attributes
- notification in chat and news feed
- launch handlers
- mailing list including with dynamic attachments
2. Scheduler
- o processing the time "before" and "after" control and / or key values of the attributes of the records
- o creation of actions described above on a regular (schedule) basis
An important point in the capabilities of the graphic process map is access from the map to the interface objects and their properties, as well as the reaction to user actions. However, this is a complex topic and will be discussed in another article.
7. Access control and logging
Implementation by filling the system with standard interfaces and conditionally “new” ones can and should be available without programming. Including icon settings and loading their collections. Similarly, access and its limitations.
- To any, including user data and directories
- Before data attributes
- Access Based on Computing and Logic
Separately for each user group
8. Management of a personal account of clients and data on a site
The audit log management (logging) is similar in view of the growth of user literacy. In view of the fact that those who programmed in Fortran will soon retire. I am sure that the future lies precisely in the management systems of corporate complex systems such as “low-code platform”. It is NOT about the failure of programming. As shown above - everywhere there can and should be a gateway / access / another level so that certain issues are implemented in embedded languages and SQL. The point is that low-code platforms are beneficial for companies for objective reasons and the trend in, in fact, in a simpler language: the automation of the work of marketers / business analysts - to simplify and speed up their work, is obvious.
Having the tools to control the data format, computing without programming, load balancing on the server through planning planning; having the ability to visualize data, both from the point of view of the workplace of a particular group of users + visualization and analyticity of data for decision makers; having the ability to customize processes in a graphics engine with workflow elements and task distribution - a business analyst can close a very large amount of information system implementation with a high level of complexity.
And once again “On the different types of costs, as applied to information systems,” it was said in more detail here