
En el mundo de la tecnología digital, en constante cambio, la tendencia conocida low-code / no-code y sus siglas (LC/NC) aparece con frecuencia creciente. No es para menos. En caso de consolidarse, detonará un aceleramiento de la transformación digital de las empresas. Esa consolidación implica además un cambio importante en la función de los departamentos de informática, hacia terrenos cada vez más y más especializados.
Para explicar lo anterior, comencemos por ilustrar con ejemplos concretos en qué consiste la tendencia.
Ejemplo 1. La subdirectora de una empresa actualiza personalmente la composición gráfica, los mensajes y las imágenes acerca de clima laboral en una de las secciones del sitio web de la empresa. Empleando plantillas “de caja”, también modifica el proceso de selección y reclutamiento interno, añadiendo cuestionarios de evaluación y automatizando los criterios para descalificar candidatos.
Ejemplo 2. Un proveedor de servicios de integración y analítica desarrolla una aplicación que direcciona las solicitudes del personal de la compañía. De esta forma se reduce 35% los tiempos de resolución de dichas peticiones. Además, disminuye de manera importante la ida y vuelta de correos electrónicos acerca de cada caso.
Ejemplo 3. Con una aplicación desarrollada por personal de recursos humanos, una empresa automatiza un proceso de exportación de archivos legados, extrayendo la información histórica y cargándola a un nuevo sistema de gestión de capital humano. De haberlo hecho manualmente, habría sido costa de un importante gasto de horas hombre destinadas a una tarea repetitiva, laboriosa y de poco valor.
¿Qué es low-code, no-code y LC/NC?
A la manera como se habla de low-carb o low-fat para alimentos bajos en carbohidratos o lípidos, low-code describe aplicaciones cuya puesta en funcionamiento exigió cantidades relativamente bajas de código de programación, consumiendo poco o ningún tiempo de un programador del área de TI. Por extensión, no-code (cero código) se refiere a aplicaciones desarrolladas sin la necesidad de escribir una sola línea de código. Sistemas LC/NC aplica para los dos conceptos.
En paralelo ha surgido otro concepto en inglés, cuya traducción literal es “ciudadano desarrollador”. Designa a los colaboradores de una empresa que sin pertenecer a las áreas de TI ni tener formación de programador, han desarrollado aplicaciones digitales que se usan en su entorno de trabajo, con alcance departamental o gerencial.
¿Cómo es posible?
Se desprenden dos preguntas obligadas. Una, cómo es posible hacer eso; otra, por qué es que no se había así desde antes. Contestar la segunda es fácil: no existían los recursos. Así como la aparición de Facebook o YouTube dieron lugar a la aparición del influencer y el videoblogger, la evolución de las tecnologías digitales ha dado lugar a plataformas que permiten ejecutar tareas de programación sin escribir código. Precursores de ese software son los servicios en línea para crear sitios web o montar tiendas en línea (por ejemplo, Wix y Shopify).
Aplicando el familiar principio de drag and drop, la interfaz de la plataforma presenta un repertorio de componentes que el usuario arrastra para componer las interfaces de una aplicación según las haya imaginado. De manera similar, el usuario puede diseñar los flujos que gobernarán el funcionamiento de la aplicación.
Adicionalmente, se puede “integrar” la aplicación diseñada a otros sistemas de la empresa. Ejemplo de esto, en el supuesto de que se estuviera desarrollando una aplicación para dar seguimiento a los representantes de ventas, sería la conexión al sistema CRM empresarial. Por este medio, la aplicación presentaría los datos del catálogo de clientes de la organización que el representante de ventas necesita para su trabajo —como su domicilio, el nombre del contacto de compras y la lista de productos adquiridos—, todo según lo decida el “ciudadano desarrollador”.
Llegado el caso, el desarrollador del sistema puede modificar el código de programación de los componentes y plantillas que el programa le ofrece predefinidos. Estas modificaciones permiten ampliar las posibilidades “de caja” y lograr funcionalidades más avanzadas. La condición obvia es que se necesitan nociones básicas de programación, para escribir código correctamente.
Ya hay en el mercado un considerable número de plataformas, que se pueden adquirir como paquete, para instalación on premise, o disponibles en la nube bajo el modelo SaaS, para su uso por suscripción. El monto de la suscripción comúnmente depende del número de asientos que se adquieran.
Con las plataformas más flexibles se pueden diseñar sistemas digitales de varios tipos: portales web, aplicaciones web que se emplean en equipos de escritorio mediante un navegador conectado a internet, chatbots, apps descargables en dispositivos móviles o RPAs (robots para automatizar procesos de negocio).
Implicaciones a nivel organizacional
La gran ventaja de las aplicaciones LC/NC es su costo, considerablemente menor que un desarrollo codificado desde cero, ya sea por un proveedor externo o por el departamento TI de la organización. Los principales ahorros ocurren en tiempo de terminación y en recursos humanos.
Pero a la larga, usar esta alternativa puede traer consecuencias desfavorables. Las aplicaciones LC/NC tienen la gran ventaja de que depositan en manos del personal de línea la iniciativa de diseñar y realizar los recursos con los que ese personal resuelve sus problemas y necesidades cotidianos, lo que fomenta la autoestima y mejora el clima laboral. Pero también es importante que la organización como tal ejerza un cierto grado de supervisión sobre el fenómeno.
Un obstáculo común se presenta al tratar de ampliar su uso. Un sistema LC/NC creado por un departamento puede satisfacer bien la necesidad inicial. Pero si se trata de escalar a nivel gerencia, compartiéndolo entre varios departamentos, probablemente falle. El área de TI tendrá entonces que intervenir.
Otra dificultad común se presenta por ausencia o insuficiencia de la documentación sobre cierto sistema. Si la persona que hizo el desarrollo dejó la organización, se tiene que aplicar una laboriosa tarea de “ingeniería en reversa”, como desarmar un reloj para descubrir cómo funciona.
Por supuesto, la gravedad de estas situaciones está en función del tamaño de la empresa que las padece. Cuatro pautas que una empresa puede poner en práctica para adelantarse a que sus aplicaciones LC/NC se conviertan en un dolor de cabeza son:
A mediano plazo, la aparición de sistemas LC/NC y “ciudadanos desarrolladores” implica, según Forrester Research, que las capacidades de desarrollo de sistemas serán cada vez más y más una destreza “de cajón”. Igual que se da por sentado que cualquier persona es capaz de mandar un correo electrónico o crear una hoja de cálculo, en pocos años se dará por hecho que cualquiera tiene puede hacer aplicaciones “bajas en código” o “cero código”.
¿Crees que tu organización podría diseñar y beneficiarse de sistemas LC/NC? ¿Te gustaría tener una perspectiva más clara sobre los alcances de esta tendencia? ¿Crees que tu personal tiene las destrezas necesarias para hacerlo? ¿Estimas que puede ser de utilidad para detonar o acelerar tu #transformaciondigital? Si te interesa saber más, envía un correo a contacto@lennken.com.