Acelera la digitalización de tu compañía con tecnología low code
El cuello de botella: los recursos TI
Los beneficios de la digitalización son incuestionables, durante las últimas décadas, la competitividad y el éxito ha estado estrechamente ligado al grado de digitalización de las empresas.
Siendo esta característica sinónimo de éxito…¿Por qué es tan complicado conseguir un alto nivel de digitalización?
Responder a esta pregunta no es trivial, en ocasiones depende de múltiples factores, aunque un factor común, en la mayoría de los casos, es la cantidad de recursos TI necesarios.
Tanto los departamentos TI, como la red de proveedores TI con los que colaboran las empresas, son cuellos de botella a la hora de abordar las diferentes iniciativas de digitalización. Principalmente, a la hora de implementar soluciones no existentes en el mercado que deben ser analizadas, diseñadas y desarrolladas específicamente.
Esta situación, fuerza a priorizar y descartar iniciativas, dejando de lado la digitalización de multitud de procesos no considerados críticos, pero igualmente necesarios para la eficiencia de la compañía.
El vacío generado provoca la aparición de multitud de soluciones imperfectas, basadas en ficheros Excel, documentos colaborativos, procesos gestionados a través de emails o servicios en nube externos a la compañía. La mayoría de estas soluciones, son ajenas y sin control por parte de la compañía. A esta situación se le conoce como “infraestructura TI en la sombra” (McKinsey) y tiene grandes riesgos, no solo por la pérdida de eficiencia y productividad, sino por la exposición de información sensible y cuestiones relacionadas con la seguridad.
Nuestra visión de la solución: low code
A pesar de que se hace alusión a ella como una tecnología, low code es un paradigma de desarrollo de aplicaciones, al cual pertenecen multitud de herramientas, tecnologías o servicios de terceros. Las principales ventajas de este enfoque son: la agilidad, la productividad y la autonomía.
Gracias al diseño de interfaces de forma visual e implementación de lógica basada en componentes conectados a través de un flujo, se simplifica y automatiza gran parte del proceso de desarrollo. Como consecuencia, se reduce la cantidad de recursos necesarios (horas e infraestructura) comparado con los métodos tradicionales de desarrollo.
A pesar de sus bondades, se ha de tener en cuenta que low code no es la solución para todo, tiene sus limitaciones como cualquier otra tecnología. Desde CONVOTIS Iberia, consideramos que esta tecnología debe ser parte del abanico de tecnologías de desarrollo de una compañía, y que en el propio estudio de cada solución, sea considerada su idoneidad. En ocasiones, su encaje será perfecto y en otros escenarios, será descartada o formará parte de una solución híbrida (low code + desarrollo tradicional)
Ahora bien, si low code es una forma de desarrollar aplicaciones de forma ágil y permite acelerar la digitalización, ¿Cuál es el motivo por el cual su adopción no está lo suficientemente extendida?
Dificultades en la adopción de tecnologías low code
Nuestra experiencia con esta tecnología, nos ha permitido entender las barreras de entrada que tiene esta tecnología a la hora de ser utilizada. Nuestro rol es asesorar a las compañías respecto a sus bondades y limitaciones, y sobre todo, demostrarles el potencial de esta tecnología con casos de uso reales, propios de su día a día. Las principales barreras detectadas son:
Desconocimiento de la tecnología
Aunque esta tendencia está cambiando, principalmente en grandes corporaciones, todavía hay un desconocimiento profundo de los casos de uso que pueden ser resueltos con low code. En base a nuestra experiencia, las compañías que entienden su potencial, la acaban adoptando dentro de su portfolio tecnológico.
Gobierno
Otra preocupación recurrente es el mantenimiento y gobierno de las aplicaciones realizadas con low code. En este aspecto, es clave la elección del ecosistema elegido. En CONVOTIS Iberia, apostamos por dos grandes líderes: Microsoft y Appian (Magic Quadrant Gartner). Ambos proveedores de servicios, ofrecen herramientas para facilitar a departamentos TI el gobierno de aplicaciones low code. Además, ha de considerarse que gran parte del gobierno de la infraestructura de ejecución de aplicaciones, está delegado completamente al proveedor.
Coste
El coste de las soluciones low code depende del licenciamiento y proveedor elegido, no hay una única respuesta a esta preocupación. Por nuestra experiencia, y debido a que el coste de licenciamiento normalmente está asociado a los usuarios que utilizan las aplicaciones, los escenarios más favorables son aquellos en los que el volumen de usuarios no es masivo. Por tanto, el enfoque de low code estaría principalmente indicado para digitalizar procesos internos de las compañías.
Curva de aprendizaje
Es cierto que low code requiere una curva de aprendizaje, pero comparado con tecnologías de desarrollo tradicionales, es muy reducida. En base a nuestra experiencia, podríamos decir que en 2 meses un perfil con experiencia en programación, puede desarrollar aplicaciones totalmente funcionales. Además, este mismo perfil podría cubrir las diferentes fases del desarrollo de forma autónoma (diseño, implementación, validación, despliegue).
Hoja de ruta en la adopción low code
Como en cualquier adopción de una nueva tecnología, nuestra propuesta es diseñar una hoja de ruta que permita incorporar la tecnología de forma gradual, minimizando los riesgos y analizando el impacto y beneficios en la compañía. Nuestra recomendación es la ejecución de la siguiente hoja de ruta.
Descubrimiento
El objetivo es realizar una prueba piloto de un caso de uso real. Es importante conocer qué casos serían los óptimos para iniciar este descubrimiento. Lo ideal, es centrar el foco en procesos no muy complejos, que actualmente se están abordando de forma manual, con ficheros Excel, a través de email o utilizando servicios externos de complejidad baja (trello, airtable, sharepoint o similar). Estos procesos tienen pocas integraciones con otros sistemas y son principalmente utilizados por un único departamento. Cuando hablamos de proyectos no muy complejos, pensemos en formalizar este proceso en un flujo BPMN donde utilizaremos menos de 10 actividades.
El proyecto de implementación en tecnología low code tendrá una duración aproximada de 1 o 2 meses. En ocasiones, se puede realizar un test A/B, donde compararemos el tiempo y esfuerzo necesario para implementarlo en tecnología low code y lo que tardaríamos en tecnologías convencionales (este escenario se podría estimar únicamente, sin llegar a desarrollarlo).
Testeo
Evaluados los resultados de la prueba piloto, el siguiente objetivo sería implementar otros casos de uso, aplicables a otros departamentos o extender el ya desarrollado. Hemos de verificar que el éxito conseguido no es algo puntual a una prueba piloto. Para la selección del caso de uso, aplicaremos un criterio similar al de la fase de descubrimiento, aunque asumimos un incremento en la complejidad del proceso sin llegar a ser algo demasiado complejo. En este caso, la complejidad vendrá determinada principalmente por la lógica personalizada que hubiese que implementar en el backend de la solución. Hay que aclarar que aunque hablamos de tecnología low code, en determinadas actividades de los procesos, es inevitable programar la lógica específica necesaria.
Consolidación
El objetivo de esta fase es la integración de esta tecnología en la compañía. Se establece un estándar de uso y se profundizan aspectos como el gobierno, la gestión del dato, la modularidad, la seguridad y la automatización del proceso de desarrollo. Imprescindible en esta fase conocer los límites de la tecnología y establecer un checklist que nos ayude a seleccionarla o descartarla. Un posible checklist sería el siguiente (deseable todas las respuestas afirmativas para seleccionar low code):
- Se requiere un desarrollo rápido.
- Se requiere un prototipado rápido.
- La solución no es compleja en términos de lógica de negocio, no se requiere una alta personalización.
- Necesita integrarse con otros sistemas y estos sistemas poseen conectores estándar o API’s.
- Se requiere implementar muchas interfaces, con diferentes acciones, aunque la lógica que realiza cada acción no es compleja o ya está implementada en un servicio de la compañía con el que podríamos integrarnos.
- La complejidad de la interfaz, encaja con los componentes ofrecidos por el proveedor low code. No se requieren componentes personalizados.
- La normativa de seguridad aplicable debe estar cubierta por el proveedor low code.
- El número de usuarios no es alto (menos de 50-100). Este punto dependerá del proveedor y el modelo de licenciamiento elegido. Analizaremos la tecnología low code en el caso de disponer de muchos usuarios y pagar un licenciamiento por usuario.
Extensión
En esta fase, la compañía es capaz de identificar el encaje de low code en las demandas internas y se trabaja en la autonomía de su uso y acercar la tecnología a usuarios sin formación en TI. Se busca el escenario ideal, en el cual usuarios de negocio puedan utilizar esta tecnología como herramienta de trabajo. (Gartner: citizen developer). Es muy importante en esta fase la estandarización, la capacitación de los empleados y el gobierno de las soluciones. Para promover la estandarización de su uso, recomendamos la implementación de componentes y aplicaciones guía que pueden ser consultadas por los empleados para implementar las soluciones de forma homogénea.
Superadas estas fases, se habrá logrado acelerar la digitalización y optimizar la eficiencia de los procesos internos, minimizando la cantidad de tareas manuales susceptibles a riesgos y vulnerabilidades.