Desarrollo de software progresivo: una alternativa para la digitalización de empresas.

Daniel González
Fundador
Llevar a cabo un proyecto de Transformación Digital en una empresa suele ser una apuesta arriesgada, pero necesaria. La inversión suele ser alta, igual que la incertidumbre sobre el éxito del proyecto. El desarrollo progresivo, ofrece una alterna...
9 minutos de lectura
Transformación Digital

La digitalización de empresas es una tendencia que se acentúa más cada día. No es un secreto que para mantenerse competitivas, las compañías deben actualizarse e innovar, lo que regularmente implica utilizar tecnología (software o hardware) correctamente.


Sin embargo, es más fácil decirlo que hacerlo. Los proyectos de digitalización de empresas implican mucho trabajo y recursos por parte de la compañía tratando de transformarse; los cambios siempre son difíciles. 


Las principales inversiones de un proyecto de transformación digital suelen ser:


  1. Recursos para desarrollo del proyecto
  2. Tiempo de planeación, desarrollo e implementación
  3. Resistencia al cambio (en caso de ser un proyecto de Operación Digital)


Entre más grande es el alcance del proyecto, mayor será la inversión en este proyecto. Por ejemplo, si estamos creando un sitio web para nuestra empresa (nivel 1 de transformación digital), el costo del proyecto y su tiempo de desarrollo serán muy bajos, y por supuesto, la resistencia al cambio será prácticamente nula. 


Por otro lado, si estamos creando un sistema de control para la operación de la compañía, seguramente el costo y tiempo de desarrollo e implementación serán altos, al igual que la resistencia al cambio por parte del personal.


Adicional a esto, existe un costo oculto que pocas empresas toman en cuenta: las probabilidades de fracaso del proyecto. Es riesgoso llevar a cabo un proyecto de digitalización, sobre todo si implica la transformación del  modelo de negocios de la empresa. Es por esto que al desarrollar e implementar un proyecto de digitalización debe hacerse de forma incremental, es decir, por partes.



El desarrollo en cascada, un riesgo para la transformación digital


El desarrollo en cascada es un método utilizado principalmente en el desarrollo de software a la medida. Éste consiste en diseñar y desarrollar todo el proyecto de forma continua, para implementarlo de forma completa desde la primera entrega.



El problema con este tipo de desarrollo, que se hace dentro de una “caja negra” a los ojos de sus usuarios. En otras palabras, los usuarios no interactúan con él hasta que está totalmente terminado. Esto significa que para comprobar que el proyecto funciona en la práctica, primero hay que desarrollarlo (y por lo tanto gastar) por completo.


Existen diferentes alternativas para evitar este error, pero voy a describirte la que en lo personal, considero la mejor para los proyectos de digitalización de empresas.



El Desarrollo Progresivo


El desarrollo de software progresivo consiste crear etapas de desarrollo comenzado de lo más valioso y terminando con los detalles finos.


‍Cada una de las etapas del proyecto contiene uno o más objetivos SMART relacionados con negocios (no con software ni diseño) que al ser alcanzado “desbloquea” la siguiente etapa del desarrollo.

El desarrollo de software progresivo está basado en la metodología Lean Startup, de creación de empresas.







¿Cómo funciona?


Supongamos que somos una empresa de fontanería y vamos a crear un modelo de negocios digital alternativo: Crearemos una aplicación móvil para conectar profesionales en fontanería y personas que necesitan arreglar su baño (el Uber de fontanería, prácticamente).


Mediante una investigación realizada en el Canvas de Transformación Digital, extraemos las funcionalidades más importantes del software. 

Supongamos que para nuestro ejemplo estas serían:


  1. Registro básico de fontaneros
  2. Sitio de encuentro entre clientes y fontaneros
  3. Rating de calidad de clientes a fontaneros
  4. Ranking inteligente de fontaneros en sitio web
  5. Cotización express de servicios de fontanería
  6. Perfil de fontaneros para ver su progreso

Total: $50,000 USD


Si hiciéramos el software a la medida, en este punto desarrollaremos la app con todas sus funcionalidades, lo cual sería costoso para un proyecto que no estamos seguros si funcionará o no.


Al usar el desarrollo de software progresivo, asignaremos a diferentes bloques de funcionalidades (ordenados por importancia) objetivos a alcanzar:



Bloque 1: Validación de oferta (MVP)


Con el primer bloque, tomaremos nuestra suposición más riesgosa y validaremos si realmente los fontaneros están dispuestos a ofertar sus servicios por medio de una app (y pagar por ello). Si esto fuera falso, y no encontramos la manera en que decidan ofertarse, no tiene sentido continuar desarrollando el proyecto.


  1. Objetivo:  Validar si a los fontaneros les interesa ofrecer sus servicios por medio de una app web. 
  2. Duración: 1 mes.
  3. Métricas:
  1. Registrar 30 fontaneros en nuestro sitio web.
  2. Entrevistar 10 fontaneros para conocer su perspectiva.
  1. Funcionalidades a desarrollar:
  1. Registro básico de fontaneros
  1. Costo: $5,000 USD



Bloque 2:  Validación de la demanda


Ahora es momento de validar la demanda. Antes de crear funcionalidades como rankings, búsquedas complejas u otras cosas, debemos encontrar la forma en la que los clientes finales encuentran atractivo el encontrar fontaneros por medio de una app.



  1. Objetivo: Validar si los clientes finales quieren comprar servicios de fontanería a través de una solución tecnológica.
  2. Duración: 3 meses.
  3. Métricas: 
  1. Vender 100 servicios de fontanería.
  1. Funcionalidades a desarrollar:
  1. Sitio de encuentro entre clientes y fontaneros.
  1. Costo: $20,000 USD



Bloque 3: Rentabilidad del producto


Una vez que tenemos tracción tanto en oferta, como demanda, podemos continuar con otras funcionalidades que ayudarán al proyecto a ser más escalable y rentable.


  1. Objetivo: Crear un modelo de ventas rentable para el negocio.
  2. Duración: 6 meses.
  3. Métricas: 
  1. Alcanzar retorno de inversión actual con ventas.
  2. Alcanzar 200 fontaneros que hayan vendido por lo menos 2 servicios.
  1. Funcionalidades a desarrollar:
  1. Rating de calidad de clientes a fontaneros
  2. Ranking inteligente de fontaneros en sitio web
  1. Costo: $8,000 USD


Quiénes somos

Somos un equipo de ingenieros, diseñadores UX/UI, mercadólogos y analistas en negocios con una única misión: La transformación digital de las empresas.

Desarrollamos software enfocado en negocios.

Conocer Más

Desarrolla software enfocado en negocios

Somos Digita Studio, y podemos desarrollar una solución de digitalización a la medida para ti.

Saber más

Bloque 4: Crecimiento del proyecto

Finalmente terminamos con las funcionalidades menos esenciales, pero que para este punto ya tendrán un impacto positivo en el proyecto.


  1. Objetivo:  Llegar al punto de equilibrio financiero.
  2. Duración: 6 meses
  3. Métricas:
  1. Punto de equilibrio financiero.
  1. Funcionalidades a desarrollar: 
  1. Cotización express de servicios de fontanería
  2. Perfil de fontaneros para ver su progreso
  1. Costo: $17,000 USD



Es importante mencionar que el ejemplo está sobre simplificado, y que existen muchísimos factores más que deben medirse para validar el proyecto, pero las ventajas son bien ilustradas:


  1. La inversión inicial es menor
  2. El riesgo es mucho menor



La importancia de la adaptación


Otra ventaja del desarrollo progresivo sobre el desarrollo en cascada es la adaptación. Mientras en el método de cascada el proyecto completo es entregado (y todo se realiza a partir de un plan mayormente teórico), en el desarrollo progresivo el espacio entre cada bloque es de aprendizaje y adaptación


Dependiendo del resultado de un bloque, es la continuación del siguiente. En la mayoría de las ocasiones, se planea un roadmap (el conjunto de bloques) que cambia en cada implementación nueva, debido al nuevo conocimiento que genera el experimento del bloque anterior.


Algo importante a resaltar, es la combinación entre tecnologías prefabricadas y desarrollo a la medida. En este método, un buen desarrollo combina ambas para reducir costos, y conforme va creciendo el proyecto, se va mudando poco a poco a desarrollo a la medida.


Tal vez te estarás preguntando: “Bueno, esto sirve para quienes buscan un modelo de negocios digital, pero mi objetivo es optimizar la operación interna de mi empresa”. El desarrollo de software progresivo funciona para cualquier tipo de digitalización, aunque sea para optimizar procesos de la empresa. La diferencia radica en los objetivos. 


Cuando el desarrollo es hacia la operación de la empresa, se buscan objetivos como:


  1. Organizar mi inventario
  2. Evitar robos
  3. Aumentar la productividad


Estos se desarrollan de mayor a menor impacto dentro de la empresa, y se van desarrollando poco a poco, igual que los del ejemplo.



¿Qué desventajas tiene?


Realmente la única desventaja significante que tiene este tipo de desarrollo es que, al final de la historia, podría ser más caro que el desarrollo a la medida, y que tardarías más tiempo en tener el producto final. 


Sin embargo, eso sucede suponiendo que la idea inicial que tienes es exactamente lo que todos necesitan, idea que la mayoría del tiempo es errada (aunque muchos empresarios crean que no es así).



¿Cómo puedo hacer el desarrollo de software progresivo?


Al igual que con las otras opciones, debes escoger entre contratar un equipo interno o una empresa dedicada a desarrollar software. Sin embargo, son muy pocas empresas las que tienen la espacialidad de hacer desarrollos de este tipo, ya que requiere de un equipo no sólo de ingenieros, sino de diseñadores de experiencia de usuario, expertos en marketing y analistas en negocios.


Es recomendable encontrar una empresa que sea experta en este método de desarrollo.



Conclusión


El desarrollo progresivo es una grandiosa alternativa para las empresas que buscan la transformación digital en su empresa. Mediante la creación de bloques ligados a objetivos de negocios, este método de desarrollo reduce el riesgo y costo de inversión inicial del proyecto en cuestión. Sin embargo, no es perfecto, requiere de un equipo especializado para lograrlo, y en ciertas ocasiones puede ser más costoso y tardado para llegar al producto final.


Al final, sea cual sea el camino, lo importante es que tenga claro el objetivo, y sobre todo, ¡que comiences a caminar!