Crecimiento de productos tecnológicos

Posts tagged ‘desarrollo de producto’

La implementación de productos de IA difiere de los productos tradicionales en que requiere una mayor variedad de perfiles involucrados, es más iterativa (debido a la necesidad de seleccionar, ajustar y evaluar modelos) y debe proporcionar al producto componentes de control, evolución y explicabilidad.

Seguimos analizando cómo difieren las actividades de desarrollo en productos basados en AI frente a los tradicionales.

El equipo de Implementación construye la solución a partir de los requisitos y las especificaciones generadas durante la Definición y Diseño de producto. Como paso fundamental de esta actividad el equipo crea una especificación técnica que describe la arquitectura y la construcción interna de la solución. El objetivo es llegar a una “unidad cero” del producto que garantice la replicabilidad/fabricabilidad, la calidad, la escalabilidad en las prestaciones, la posibilidad de evolución y la adaptabilidad (en su caso) del producto a diferentes segmentos de clientes.

Dado que la IA consiste esencialmente en software, la implementación de estos productos se suele instrumentar como uno -o varios- proyectos que se gestionan y ejecutan, dependiendo del escenario, usando técnicas y herramientas tales como:

  • Desarrollo ágil.
  • Desarrollo en cascada.
  • Herramientas Low-code o No-code.
  • Desarrollo asistido por AI.

Waterfal vs Agile

Sobre este último punto, mucho se ha venido hablando recientemente sobre el «vibe coding”: utilizar la IA para generar código a partir de instrucciones en lenguaje natural. Y es que el enfoque ofrece ventajas, pero requiere una aplicación cuidadosa.

Ventajas:

  • Rapidez: permite la creación rápida de prototipos y aplicaciones básicas.
  • Accesibilidad: reduce la barrera para que los no programadores desarrollen sus ideas.
  • Aumento de la creatividad: libera a los desarrolladores para que se centren más en la arquitectura que en la sintaxis.

Inconvenientes:

  • Calidad del código: el código generado por IA puede no estar optimizado o introducir alucinaciones y deuda técnica.
  • Retos de depuración: corregir el código opaco de la IA puede requerir muchos esfuerzo.
  • Riesgos de seguridad: el código no probado puede incluir vulnerabilidades.

Por eso de momento el “vibe coding” está indicado en los siguientes casos:

  • Creación de prototipos: Ideal para MVP o proyectos de prueba de concepto.
  • Funciones y características no críticas: componentes de interfaz de usuario sencillos o código repetitivo.

Las diferencias más importantes entre productos de IA y tradicionales en el área de Implementación de producto son:

  • Proceso de desarrollo y composición del equipo. En el desarrollo de la IA participan científicos de datos, ingenieros de aprendizaje automático y evaluadores de modelos junto con ingenieros de software tradicionales. El equipo debe colaborar en la construcción de modelos, la ingeniería de datos y la integración de software. Esto hace que el proceso sea más iterativo, ya que los modelos se ajustan y prueban, y suele requerir conocimientos especializados en marcos de aprendizaje automático, pipelines de datos y herramientas de despliegue.
  • Recopilación y preparación de datos. Una parte importante de la fase de implementación se dedica a recopilar, limpiar, etiquetar y transformar los datos. La calidad de los datos, el preprocesamiento y la ingeniería de características son pasos críticos, ya que el rendimiento del modelo de IA depende en gran medida de la precisión, relevancia e integridad de los datos. Esta fase suele ser la que más tiempo requiere y exige recursos específicos de ingeniería de datos.
  • Selección, entrenamiento y ajuste de modelos. La implementación de la IA implica seleccionar y experimentar con diferentes modelos, algoritmos de entrenamiento y ajuste de hiperparámetros para optimizar el rendimiento. El entrenamiento de un modelo de IA es un proceso iterativo, que requiere ensayo y error y evaluaciones periódicas del rendimiento utilizando métricas como la exactitud, la precisión, la cobertura y el valor F1. Este proceso puede llevar días, semanas o incluso más tiempo, dependiendo de la complejidad del modelo y de los datos.
  • Prototipado, experimentación y evaluación de modelos. La experimentación es fundamental, ya que el rendimiento del modelo puede variar significativamente en función de los hiperparámetros y las configuraciones de los datos. Durante la implementación, los desarrolladores evalúan continuamente el rendimiento del modelo frente a conjuntos de validación, ajustando el modelo o los datos según sea necesario. La evaluación del modelo también tiene en cuenta la imparcialidad, el sesgo y la interpretabilidad, lo que requiere métricas y pruebas adicionales para garantizar un uso ético.
  • Pruebas y validación. Además de las pruebas tradicionales, los productos de IA requieren una validación exhaustiva de la precisión predictiva y la generalizabilidad del modelo. Esto implica pruebas de rendimiento en conjuntos de entrenamiento, validación y pruebas no vistos previamente para evitar el sobreajuste. La validación incluye el tratamiento de casos extremos, el análisis del sesgo del modelo y la garantía de robustez en condiciones de datos variadas. Estas pruebas son continuas, ya que puede ser necesario volver a entrenar los modelos si cambia la distribución de los datos.
  • Implantación e integración continua. El despliegue implica la creación de entornos y canales que permitan la integración continua, el reentrenamiento de modelos y la supervisión periódica de los mismos. Puede que sea necesario volver a entrenar los modelos a medida que se disponga de nuevos datos, por lo que el despliegue incluye mecanismos para el reentrenamiento y el redespliegue automáticos, así como herramientas para supervisar la deriva (drift), la precisión y el rendimiento de los modelos. A menudo se utilizan marcos MLOps, que facilitan este flujo de trabajo.
  • Control y gestión de errores. La gestión de errores en la IA incluye la supervisión de problemas como la desviación del modelo, la disminución del rendimiento o las predicciones anómalas. Para ello, es necesario implantar herramientas de supervisión que monitoricen los cambios en la precisión o confianza del modelo a lo largo del tiempo y alerten a los desarrolladores si el rendimiento del modelo disminuye. Los sistemas de IA también pueden requerir mecanismos adicionales de realimentación del usuario para capturar resultados inesperados.
  • Interfaz de usuario para los resultados e interpretabilidad de la IA. A menudo, la interfaz de usuario debe acomodar los resultados probabilísticos mostrando puntuaciones de confianza, explicaciones o sugerencias alternativas. La aplicación requiere el diseño de interfaces intuitivas que ayuden a los usuarios a comprender e interpretar las predicciones de la IA, especialmente en aplicaciones críticas. También pueden integrarse técnicas de IA Explicable (XAI), lo que puede añadir complejidad al desarrollo tanto del front-end como del back-end.
  • Seguridad y privacidad. La implementación implica una mayor atención a la privacidad, especialmente en torno a la recopilación de datos, el almacenamiento y al entrenamiento de modelos. El acceso a los pipelines de datos, los modelos de entrenamiento y los resultados debe ser seguro para evitar fugas de datos o accesos no autorizados. Garantizar el cumplimiento de las leyes de privacidad (por ejemplo, GDPR) es a menudo más difícil porque los modelos de IA procesan con frecuencia datos personales sensibles.
  • Mantenimiento continuo y gestión de modelos. Los productos de IA requieren un seguimiento, una evaluación y un reentrenamiento continuos para mantener la exactitud y la relevancia del modelo. La recopilación continua de datos y los bucles de realimentación pueden ser necesarios para detectar la desviación del modelo o adaptarse a patrones cambiantes. A menudo se aplican prácticas de MLOps para agilizar este ciclo de vida, garantizando que los modelos sigan siendo exactos y útiles a lo largo del tiempo.

Muy importante: riesgo de Factibilidad

La IA es, por su propia naturaleza, no determinista. No tenemos ninguna garantía de que va a funcionar adecuadamente para resolver el problema de mercado que queremos resolver. Una tecnología que puede personalizar un feed de noticias con una tasa de error aceptable puede resultar totalmente inadecuada para dosificar un medicamento. La disponibilidad de datos de entrenamiento en cantidad y con calidad es un aspecto primordial a este respecto.

Por eso para evitar el riesgo de factibilidad están cobrando más importancia los prototipos y pruebas de concepto construidos mediante asistencia de IA.

En el próximo post analizaremos si a los clientes les importa realmente nuestra nueva funcionalidad de IA.

El post “Productos basados en IA vs. tradicionales: implementación de producto” se publicó primero en “Marketing & Innovación”.

[¿Quieres aprender a aplicar estas ideas en tu empresa? Nuestros talleres sobre Product Management de productos tecnológicos y Product Marketing de productos tecnológicos te pueden ayudar.]

Deja un comentario

La definición de productos de IA difiere de los productos tradicionales en la mayor dificultad para elegir problemas de mercado que la IA pueda resolver de manera útil, en la comprensión y el modelado de la respuesta de compradores y usuarios ante la IA y la articulación de requisitos en áreas específicas relacionadas con la IA.

Seguimos analizando cómo difieren las actividades de desarrollo en productos basados en AI frente a los tradicionales.

Una vez elegida/s nuestra/s oportunidad/es de mercado prioritaria/s, las actividades de Definición de producto consisten en acotar y articular nuestro espacio del problema.

Típicamente aplicaremos primero un pensamiento divergente para explorar ese espacio para finalmente converger en el problema específico que vamos a resolver con nuestro producto (y para quién lo vamos a resolver). Por lo tanto la Definición de producto se circunscribe específicamente al espacio del problema frente al Diseño o la Implementación, que se inscriben en el espacio de la solución.

Y una vez acotado dicho problema a resolver lo modelaremos y articularemos mediante artefactos accionables, entre ellos:

  • Personas o arquetipos, tanto de compradores como de usuarios.
  • Escenarios de compra y uso.
  • Requisitos, que son expresiones de problema agnósticas respecto a la solución y que pueden tomar diversas formas, incluyendo Jobs-To-Be-Done.

Las diferencias más importantes entre productos de IA y tradicionales en el área de Definición de producto son:

  • Selección de problemas de mercado. La selección de problemas de mercado para los productos basados en IA requiere identificar los problemas que se resuelven mejor mediante el reconocimiento de patrones, las predicciones o la clasificación en lugar de la lógica determinista. Los problemas adecuados para la IA suelen implicar conjuntos de datos grandes y complejos o requerir una toma de decisiones automatizada a gran escala. Además, es fundamental tener en cuenta si los datos están disponibles, son de alta calidad e insesgados, ya que son fundamentales para crear una solución de IA útil.
  • Definición del problema y análisis inicial de factibilidad. El descubrimiento suele comenzar con la evaluación de si la IA puede abordar realmente el problema. Esto incluye evaluar si hay suficientes datos de alta calidad disponibles, si los patrones de los datos coinciden con el problema y si el aprendizaje automático es adecuado. A menudo, los estudios de viabilidad de la ciencia de datos o los modelos rápidos de prueba de concepto (POC) se crean al principio para probar si una solución de IA es factible. Si la calidad o disponibilidad de los datos no es suficiente, es posible que la solución de IA no sea factible.
  • Necesidades y expectativas de los usuarios. Las necesidades y expectativas de los usuarios incluyen preocupaciones sobre la transparencia, explicabilidad y fiabilidad de la IA. Durante la definición se hace especial hincapié en saber hasta qué punto se sienten cómodos los usuarios con los resultados de la IA, sobre todo en ámbitos que requieren interpretabilidad (por ejemplo, las finanzas o la atención sanitaria). Los usuarios pueden necesitar garantías sobre cómo llega la IA a sus conclusiones, por lo que el descubrimiento debe identificar características que aumenten la confianza, como puntuaciones de confianza o explicaciones de las predicciones.
  • Modelado de personas de usuarios y compradores. Las personas de productos de IA a menudo deben incluir un conocimiento más profundo de la familiaridad de los usuarios con la IA, sus expectativas de transparencia en la toma de decisiones y su confianza en las predicciones de la IA. Estas personas deben ampliarse respecto a las de productos tradicionales para tener en cuenta hasta qué punto los usuarios necesitan comprender el razonamiento de la IA, el nivel de autonomía que desean tener sobre los resultados de la IA y si se sienten cómodos con la incertidumbre. Esto añade complejidad al desarrollo de las personas, especialmente en campos en los que los resultados de la IA influyen en decisiones críticas (por ejemplo, finanzas, sanidad).
  • Caracterización de escenarios de uso. Los escenarios de los productos basados en IA deben tener en cuenta una serie de resultados probables y las acciones del usuario asociadas. Esto significa definir escenarios no sólo para el comportamiento previsto de la IA, sino también para los casos en que las predicciones pueden ser inciertas, ambiguas o incorrectas. Los product managers suelen crear escenarios en los que los usuarios interpretan, verifican o ajustan las recomendaciones de la IA, lo que añade complejidad a los viajes del usuario.
  • Definición de los requisitos del producto. Aparte de los requisitos funcionales los requisitos de los productos basados en IA incluyen la definición de fuentes de datos, umbrales de precisión, métricas de rendimiento (por ejemplo, precisión, cobertura, F1) y consideraciones éticas como la imparcialidad y la transparencia. Los requisitos también pueden abarcar bucles de retroalimentación del usuario para el reentrenamiento del modelo e interfaces para mostrar puntuaciones de confianza o razonamientos. Esto exige una mezcla de requisitos técnicos, éticos y de usabilidad, lo que hace que el proceso sea más interdisciplinar.
  • Consideraciones sobre datos y privacidad. Definir un producto de IA implica evaluar la disponibilidad de datos, las implicaciones para la privacidad y las restricciones normativas, especialmente en el caso de datos sensibles para el usuario. Los requisitos pueden incluir la definición de cómo se obtienen, almacenan y utilizan los datos para entrenar modelos sin violar las normas de privacidad o introducir sesgos. Además, los requisitos pueden esbozar procesos para la curación continua de los datos y la supervisión de la desviación (drift) o sesgo del modelo.

Muy importante: riesgo de Utilidad

El valor es siempre un riesgo crítico.  Los productos basados en IA prometen un valor significativo, razón por la cual todos nos estamos apresurando a aplicar esta tecnología.  Pero también podemos ver hoy muchos ejemplos de productos de IA que sólo lo son de nombre.  Así pues, la primera responsabilidad del product manager de IA es garantizar que las funciones y los productos impulsados por la IA aporten un valor genuino y diferencial a los usuarios y clientes. Pero no sólo se trata de entregar valor, también tenemos que colaborar estrechamente con el departamento de marketing del producto para asegurarnos de que podemos comunicar este valor de forma eficaz.

En el próximo post cubriremos las actividades de diseño de productos de IA vs. tradicionales.

El post “Productos basados en IA vs. tradicionales: definición de producto” se publicó primero en “Marketing & Innovación”.

[¿Quieres aprender a aplicar estas ideas en tu empresa? Nuestros talleres sobre Product Management de productos tecnológicos y Product Marketing de productos tecnológicos te pueden ayudar.]

Deja un comentario