Llegamos a ustedes gracias a:



Reportajes y análisis

¿Su plataforma de código bajo promete demasiado?

¿Y no cumple lo suficiente?

[21/10/2022] Puede crear muchas capacidades tecnológicas utilizando plataformas de código bajo y sin código, incluyendo aplicaciones, bases de datos, flujos de trabajo, integraciones, flujos de datos de Internet de las cosas, visualizaciones de datos y más. Son plataformas versátiles para ayudar a reemplazar las hojas de cálculo, reducir la deuda técnica o experimentar con el aprendizaje automático.

Al proporcionar capas de abstracción en comparación con la codificación tradicional, las plataformas de código bajo prometen productividad para los desarrolladores, experiencias de mayor calidad y aplicaciones más fáciles de mantener. Por ejemplo, en lugar de interfaces de usuario desarrolladas en HTML, CSS o JavaScript, las plataformas de desarrollo móvil y de aplicaciones de código bajo proporcionan ambientes de desarrollo visual que apuntan a acelerar y simplificar el desarrollo. Del mismo modo, las plataformas de integración y flujo de trabajo de código bajo proporcionan herramientas que ayudan a visualizar flujos, reglas de negocio y excepciones, y son más fáciles de mantener en comparación con examinar cientos o miles de líneas de código.

El sin código ofrece la promesa al permitir que los que no son desarrolladores construyan y soporten la totalidad, o partes de una aplicación sin necesidad de prácticas de desarrollo o la capacidad de configurar la infraestructura de la nube.

Estas abstracciones pueden proporcionar beneficios significativos. He implementado muchas aplicaciones de código bajo y sin código, y he visto que otras empresas se benefician de su uso. La codificación sigue siendo muy importante para muchas aplicaciones estratégicas, pero las organizaciones pueden lanzar y soportar muchas más capacidades cuando las opciones de desarrollo de código bajo y sin código están disponibles.

Sin embargo, existen cosas que se tienen que dar a cambio que pueden no ser evidentes hasta que haya utilizado estas plataformas varias veces. La pandemia también creó un auge para el código bajo y sin código porque muchos departamentos de TI tuvieron que modernizar rápidamente las aplicaciones y crear herramientas específicas para el trabajo. El aumento de la demanda trajo consigo una nueva ola de herramientas de código bajo y sin código, lo que abrió la puerta a algunas que prometieron demasiado y no ofrecieron las capacidades necesarias.

¿Cuáles son los signos de problemas? Pedí a varios expertos que me dieran algunos consejos. También compartiré algunas de mis experiencias.

1. Los proyectos de código bajo no cumplen con las expectativas de los usuarios

Cuando las partes interesadas imaginan una casa de tres habitaciones y un garaje, pero todo lo que puede ofrecer con una herramienta de código bajo es una choza con un baño, es probable que no esté cumpliendo con las expectativas de todos. Las plataformas de código bajo requieren capacitación para usarlas de manera efectiva y discusiones con las partes interesadas sobre lo que se tiene que dar a cambio para lograr un resultado de negocio. Cuando los desarrolladores no pueden lograr el objetivo o la visión comercial, es posible que sea necesario repensar la elección de la plataforma y el enfoque técnico.

Tam Ayers, CTO de campo en Digibee, afirma: "Un indicador clave es cuando una organización comienza a ajustar los requisitos o reduce sus expectativas de los resultados de negocio deseados debido a las limitaciones de sus plataformas de código bajo. Cualquier plataforma de código bajo debería acelerar la entrega de valor a la empresa, y no al revés.

2. El código bajo es inadecuado para los requerimientos del negocio

Muchas plataformas de código bajo, y sin código, permiten a los desarrolladores personalizar la implementación con código personalizado. Pero si está agregando demasiado código profesional, estar confinado a una plataforma de código bajo puede ser restrictivo. Alternativamente, si las partes interesadas del negocio están escribiendo requerimientos y no están abiertas a las soluciones aceleradas a través de plataformas de código bajo, también podría desarrollar una solución personalizada.

David Brault, gerente de marketing de productos en Mendix, está de acuerdo: "una solución de código bajo, que requiere que los desarrolladores abandonen la plataforma y vuelvan a los ambientes de desarrollo de código completo para realizar mejoras en una aplicación, es una solución que no funcionará bien.

Guljeet Nagpaul, director de productos de ACCELQ, agrega: "Una señal de que su plataforma de código bajo no funciona tiene que ver con las personalizaciones. Si encuentra que su plataforma necesita personalizaciones constantes, eso sugiere que el código se está escribiendo sin la disciplina de la arquitectura y un diseño en buen estado. El mantenimiento de esta personalización se volverá rápidamente insostenible y, en última instancia, reducirá el retorno sobre la inversión.

3. Las plataformas se anuncian como 'sin código', pero aun así requieren de desarrolladores

Una plataforma debe estar a la altura de su categoría y promesa. Las plataformas sin código deberían ser solo eso: plataformas que los que no son tecnólogos pueden usar para desarrollar y soportar una capacidad sin necesidad de que TI desarrolle, pruebe e implemente. Las plataformas sin código son las herramientas para desarrolladores ciudadanos, empresarios que tienen el tiempo, el interés y la perspicacia técnica suficiente para desarrollar capacidades con herramientas simplificadas.

Pero eso no impide que las personas afirmen que una plataforma o capacidad sea sin código.

Dinesh Varadharajan, director de productos de Kissflow, afirma: "si los usuarios de negocio luchan por crear procesos o aplicaciones simples por su cuenta y continúan dependiendo de TI, significa que la plataforma sin código no ofrece un enfoque inclusivo, como se prometió.

4. Las plataformas de código bajo afirman que no necesitan de TI ni de los desarrolladores

El código bajo es diferente al 'sin código'; la expectativa es que se necesitará algo de experiencia en codificación para desarrollar una aplicación, base de datos o integración. Las plataformas de código bajo tienen como objetivo ayudar a los desarrolladores a crear soluciones de forma más rápida, sencilla y con menos soporte que una solución de código profesional. Aunque a menudo tienen capacidades de desarrollo visual, con frecuencia se requiere cierta experiencia en codificación o conocimientos de TI en el ciclo de vida del desarrollo de un ambiente de código bajo.

Es posible escuchar una plataforma de código bajo afirmar que no se necesita de TI para soportar la plataforma. Francis Carden, vicepresidente de robótica y automatización inteligente de Pega, advierte que esto es una señal de alerta.

"Cuando una solución de código bajo promete que no necesita la participación de su departamento de TI, hay una desconexión, señala Carden. "Sí, es posible que pueda construir rápidamente, pero ¿qué sucede cuando las cosas se ponen en marcha? ¿Quién determina la viabilidad y el riesgo en ese punto, y quién soporta lo que construye cuando las cosas necesitan actualizarse, arreglarse o cuando el cumplimiento impone cambios críticos? Esta promesa excesiva de poder trabajar sin TI dará lugar a complicaciones en el futuro.

Vale la pena resaltar: algunas plataformas soportan paradigmas sin código y de código bajo con un conjunto de herramientas para desarrolladores ciudadanos y capacidades de código bajo más avanzadas para desarrolladores de software. Pero incluso cuando implementa una solución sin código para desarrolladores ciudadanos, afirmar que no necesita de TI en lo absoluto es una promesa exagerada que puede generar una deuda técnica, problemas de seguridad y otras complicaciones.

5. El código bajo conduce a una variedad de integraciones de sistemas

Creé aplicaciones y flujos de trabajo que conectan varias plataformas de código bajo en la arquitectura de una solución general. Pero Kevin Marcus, CTO y cofundador de Versium, pregunta si la compra, la configuración y la integración de múltiples soluciones SaaS y código bajo superan los beneficios.

"La rigidez de los sistemas de código bajo, y sin código, a menudo conduce a que los equipos requieran aún más sistemas para manejar casos que se encuentran fuera de la capacidad del sistema original, comenta Marcus. "Trágicamente, esto conduce a una mezcla heterogénea de sistemas que deben conectarse e integrarse entre sí, lo que a menudo requiere incluso más tiempo y recursos para resolver problemas básicos que, en primer lugar, habrían sido más fáciles de resolverse directamente a través de TI o ingeniería utilizando las herramientas adecuadas.

Esto ilustra una de las razones por las que el desarrollo de código bajo y sin código requiere soporte de arquitectura de TI. Quizás se logre un producto mínimo viable integrando código bajo con un software como servicio. Pero, si después de varias iteraciones la solución se convierte en muchas herramientas integradas, entonces TI podría sugerir refactorizar a una solución más robusta.

6. El código bajo necesita acceso a múltiples integraciones y aumenta los riesgos de seguridad

Alon Jackson, CEO y cofundador de Astrix Security, afirma que hay que alertar cuando cualquier plataforma requiere abrir demasiados puertos e integraciones de acceso completo. Le preocupan las "integraciones que requieren un alto nivel de acceso a un gran conjunto de sistemas empresariales críticos, lo que socava los procesos de revisión de seguridad tradicionales y expone a las empresas a una posible fuga de datos.

Estas preocupaciones importantes se aplican a cualquier integración, ya sea que se realice en SaaS, código bajo o código personalizado. Jackson sugiere que las implementaciones e integraciones seguras requieren estas capacidades clave: visibilidad, detección de amenazas, mitigaciones contextuales, políticas de seguridad y medidas de seguridad.

7. "Una plataforma sirve para todos puede ser una barrera

Brault agrega una segunda preocupación acerca de si las tecnologías de código bajo y sin código soportan plataformas flexibles de entrega y alojamiento en la nube. "Los signos de una solución de código bajo deficiente incluyen no soportar el desarrollo de aplicaciones móviles nativas, además de la compatibilidad con aplicaciones web y progresivas, o no ser compatible con la nube nativa o nubes múltiples.

Creo que no soportar el desarrollo móvil, o hacerlo de manera deficiente, es una preocupación importante al crear aplicaciones en cualquier plataforma. La pregunta es si puede configurar fácilmente experiencias web versus móviles en función de las personalidades de usuario y los casos de uso esperados.

8. El desarrollo de código bajo es difícil de probar

Por lo tanto, las plataformas de código bajo, y sin código, facilitan la creación e implementación de aplicaciones, bases de datos e integraciones, pero ¿qué tan fácil es probarlas? Esa es una preocupación planteada por Cyril Otalora, director de ingeniería de soluciones en Provar.

"Una estrategia de prueba es a menudo una idea de último momento con las plataformas de código bajo, afirma Otalora. Él destaca el riesgo: "la promesa de una implementación rápida, menores costos y mayor seguridad se esfuma si las empresas no pueden mantenerse al día con el riesgo de regresión y recurren a pruebas manuales costosas y tediosas.

Mi experiencia con código bajo y sin código

Anteriormente, compartí ocho claves para seleccionar plataformas de código bajo. Yo mismo uso muchas soluciones diferentes de código bajo y sin código. Aquí están mis manías favoritas en las plataformas que prometen demasiado:

* Plataformas de código bajo que lanzan nuevas versiones que requieren que reescriba o reelabore significativamente sus aplicaciones

* Plataformas que no comunican cortes de energía, defectos u otros problemas que afectan el rendimiento de la aplicación

* Plataformas avanzadas con soporte técnico deficiente (no debería saber más sobre la plataforma que los representantes de soporte).

El mensaje clave es que los líderes de TI tienen que hacer su tarea. Las plataformas de código bajo y sin código ofrecen beneficios significativos, pero requieren investigación y pruebas de concepto para validar sus capacidades.