Loading...
Data Science

Self-service no-code development platforms, a good idea?

https://kissflow.com/wp-content/uploads/2018/03/IT-process-automation.png

Introduction

As for any company, development strategies focus on introducing innovative technical solutions (e.g. artificial intelligence, blockchain…) as well as smart data processes. And that is why, at Algorhythm, we built smart data platforms. We usually design such platforms to convert the raw data into value-added information, whether we need to collect, process, analyse, interpret, store and distribute the data.

However, most companies also deal with a lot of business processes, such as: project tracking, order deliveries, expenses approvals, and the list goes on. These tasks can be repetitive and quite time consuming if done manually.

One logical step is to automate such business processes. This is often done in many companies using robotic process automation (RPA) tools, and in essence their goal is to virtually mimic many human computer manipulations. RPA is a technology based on the concept of software robots. By using those tools, it becomes easier to build bots that move files and/or folders, copy and paste data to fill out forms, extract (semi-)structured data from documents, just to give a few simple examples.

However, RPA is a part of the solution as it serves to automate tasks. Another part of the solution is to redesign business processes to make them more efficient. Fortunately, in an era where digital transformation is key, there are new emerging ways to rapidly transform or build business applications.

One way to transform and enhance business processes is to add intelligence. For example, recommending a list of optimal actions to take, notifying the right person at the right time or extracting critical information from documents. Nowadays, it is possible to combine automation and machine learning effectively. Although these terms are commonly well received, businesses may lack the confidence to get their feet wet with these techniques. Fortunately, it is incredibly straightforward nowadays to build automated solutions!

Alternative to traditional software development 

“Low code”, “No code”, “drag-and-drop” platforms. These may all ring a bell as more and more of these platforms are making their (loud) entrances in the space of software development. The focus of this blog will be towards no code development platforms (NCDPs). But rather than to debate the differences between low-code and no-code development (as they are clearly highlighted in the figure 1), we try to provide actionable arguments to start implementing what seems to be a new and alternative way to develop software.

Fig. 1: No Code vs Low Code (via Processmaker’s website)

NCDPs allow anyone to create a flexible system to get specific tasks done and, without coding experience, build fairly simple applications. Can it get better? Wait, it gets better. Some of these platforms also provide machine learning capabilities out of the box. How awesome? Now, it seems that our business user (our primary user according to Fig. 1) can create apps and implement machine learning in a few clicks.

Too good to be true?

Let’s be honest, these platforms are cleverly designed. You can get a grip of them very quickly thanks to the very intuitive user interface (UI). Most NCDPs have pre-built drag and drop elements that can be reused and scaled for many business processes. Connections to external services (e.g. external data sources) are done in just a few steps. The UI lets the user instantly see how the app will look and behave, whether it is deployed on a mobile, a tablet, or a desktop.

On top of this, NCDPs give helpful instructions on what the user should do. But let’s not be misled, it is not only about an app nowadays, and such platforms need to resolved specific problems that businesses have. In the following paragraph, we will review some of the advantages of NCDPs.

Why would anyone consider using NDCPs?

First, many employees simply do not have the required skills to develop an application from scratch and apply machine learning algorithms to solve business problems. However, many of them would be happy to do so to improve their daily business processes. This is where NCDPs come handy as they provide a self-service solution to employees. Below is a (non-exhaustive) list of why it may be well worth to consider using NDCPs in your business:

  • Automate repetitive tasks, so the person can concentrate on the more important ones.
  • Build shiny applications and share it with others within your organisation.
  • Use (pre-trained) machine learning models out-of-the-box to do optical character recognition (OCR), content classification, trend prediction, and/or smart search assistant.
  • Get results in a matter of hours instead of days/weeks.
  • Remove some costs associated with any projects, such as data storage, monitoring, visualisations, servers, security or logging. Some product licenses already cover those costs.
  • Puts subject matter experts in control of development.

To resume, one of the goals of NDCPs is to remove a lot of work in developing an app (IT) and in implementing machine learning within an organisation.

What sort of business processes are we talking about here?

Below is a non-exhaustive list of business processes that can easily be automated by using pre-designed application (i.e. templates) given by the NDCP vendors:

  1. Update inventory and monitor levels.
  2. Track projects and related tasks.
  3. Follow tasks through Dynamic Emails.
  4. Track order delivery status and send updates to customers.
  5. Assist retail companies in managing customer inquiries and curbside pick ups.
  6. Track business expenses and organize them by client.
  7. Employees to review and acknowledge the company policies and protocols for safety in the organization.
  8. Shared announcements & resources with a mobile team.
  9. Review employee requests directly from a mail.
  10. Report work site incidents and notify team members with reports.
  11. Produce quotes and proposals.
  12. Employee onboarding filter for specific roles.
  13. Log employee COVID and other health documents.
  14. Employee timesheet log with historical calendar.

What is important to take away from this list is not the specific examples. Each company has different requirements and different business processes to be automated. However, the purpose is to demonstrate the variety of cases and to think how such NCDPs can help redesign a business process. This list also makes no mention of how machine learning can further help, and how combining automation and machine learning can further increase the possibilities.

Self-service a good idea?

From the read above, it is clear that the above-mentioned tools can be used by anyone. However, is it a good idea to allow for self-service platforms? Because anyone can say: “Yes, I can do it myself, and I do not need to wait, I do not need anyone else to teach me how to proceed. This is the end of the long lasting battle with the IT department”. In theory, this is true, because this is the essence of such tools. However the reality can often be different.

Fig. 2: Self-Service (link)

What are the steps if someone decides to build solutions using the self-service platform? There are some questions and considerations that developers should take into account before development.

Firstly:

  • How complex is the process I am trying to resolve?

Let’s not forget no-code platform requires no coding experience, meaning the extent of flexibility in development is defined by the platform vendor itself. Taking this into account, it is important to have a clear understanding of the scope and requirements, in other words, do they fit within the boundaries of the particular tool that will be chosen. The citizen developer should know his/her options if a particular “building block” is not offered within the platform. Because at the end you go from ‘what do I want to build’ to ‘what can I build’.

  • How many people rely on the app?

Often, a business process does not only involve a single person, and NCDPs make it easy to share an app across multiple users. One should always consider how this would also affect other people’s way of working? If an app has to be shared, it is necessary to take time during development to align on the expectations and usability. Make sure there are owners with the correct administrative rights.

  • Once deployed, how are my app(s) managed?

If anyone starts using such tools, there is a good chance that it is for a long term commitment. However, how is the lifecycle of an app being maintained? What if the app developer retires or leaves the company, how does this affect the future of the business process? There is no more an IT department that is here to maintain and help if anything fails. The app developer becomes its own IT department.

What if everybody starts creating many apps? Should everything become more centralised? App management becomes further important if many are being created and numerous people rely on them as mentioned in the point above.

  • What are the limitations of out of the box machine learning models?

Out of the box machine learning (ML) capabilities are great because it allows anyone to easily start using such techniques. However, they can have their limits.

Let’s take the example of OCR. A person needs the app to extract some information from a document. What do you do if the available out of the box OCR technology is not able to detect what you want? How do you proceed further? Should you start using a different one? Can it be integrated in the app being developed?

  • How trustworthy is the machine learning model that is being developed?

For some of the machine learning tasks, model validation is required by an expert. As training a machine learning model becomes more and more accessible to citizen developers, less verification is done on their validity. For example, if a model starts making a lot of wrong predictions, what could be the consequences on a business?

Conclusion

The purpose of this article was really to give a light introduction to NDCPs and to highlight the feasibility of using such platforms as self-service. You can consider using NCDPs if you keep in mind that there are many parameters to be taken into account before business processes can be effectively automated. In other words:
1) NCDPs might not be the one-size-fits all, ultimate answer to your business needs.
2) NCDPs are not necessarily always easy to implement/apply.
3) There is no guarantee that you will get similar results as you would with a team of technical experts.

If you have made it this far then congratulations. As an attentive reader, you saw that we did not mention any names of NCDPs, but if you’re interested, below are a few examples to get you going.

Featured image via kissflow.