QA, QC y UAT – Asegurando la Calidad Final

Dentro del mundo de desarrollo de aplicaciones hay varias fases importantes, da igual la metodología que apliquemos, sea Waterfall, Agile, SAP Activate o cualquiera. Siempre hay que Analizar el requerimiento, proponer soluciones, implementarlas y finalmente probarlas para validarlas y ponerlas en producción.

Vamos a ver el trabajo que se tiene que hacer por parte de los testers, probadores o validadores de la calidad del producto entregado. Veremos que hay varias capas de equipos de pruebas para asegurar la calidad final y cual es la labor de cada uno de ellos.

Eeeeeh, no, no me refiero a estos «probadores»

Por un lado tenemos los equipos de Calidad, QA y QC, por otro lado tenemos las pruebas de aceptación de usuario, las UATs. Y he dicho QA/QC pero eso no es un grupo de rock australiano. Se trata de dos siglas de dos equipos de trabajo en proyectos, ya sean de consultoría o de fabricación de batamantas.

  • QA – Quality Assurance
  • QC – Quality Control
Hard as a rock

Si bien se confunden entre sí, son dos equipos con tareas y objetivos distintos. Vamos a verlos.


¿Qué es Quality Assurance (QA)?

El Quality Assurance (QA) es básicamente un conjunto de acciones planificadas que se implementan durante el desarrollo de un producto, especialmente en software, para asegurar que todo funcione como debería antes de que llegue a las manos del cliente. ¿Cómo lo hace? Revisando y mejorando los procesos en cada fase: desde que se planea y diseña el producto, hasta su desarrollo, pruebas y despliegue. De esta manera, se minimizan los errores y se garantiza que el producto cumpla con los estándares de calidad esperados. Por lo general, en proyectos de tipo Waterfall, donde las fases son secuenciales y están muy delimitadas, se hace más énfasis es en la fase de pruebas.

De hecho en la mayoría de proyectos donde existe un equipo de QA, este se circunscribe únicamente a probar el software, eso sí, con la visión de control de errores, experiencia de usuario (UX) y pruebas de ciclo completo de integración entre sistemas. Lo cual hace que hay un equipo denominado de QA que realmente esté haciendo labores de Quality Control (QC).


¿Qué es Quality Control (QC)?

Quality Control (QC) es el proceso mediante el cual se revisa y evalúa el producto final para asegurar que cumpla con los requisitos de calidad establecidos.

El objetivo principal del QC es identificar cualquier fallo o discrepancia en el producto antes de que llegue al cliente, lo cual se logra mediante diversas pruebas, inspecciones y evaluaciones. Estas revisiones pueden incluir desde pruebas funcionales hasta revisiones visuales y de rendimiento. Si se encuentran problemas, estos se corrigen antes de lanzar el producto al mercado.

En resumen, QC se asegura de que el producto que se entrega al cliente final sea de alta calidad, revisando el resultado después de que todas las fases de desarrollo han sido completadas.


Diferencia entre Quality Assurance (QA) y Quality Control (QC)

Aunque suenan parecidos, Quality Assurance (QA) y Quality Control (QC) no son lo mismo. QA se encarga de que todo vaya bien desde el principio: se preocupa de que el proceso de desarrollo sea sólido para evitar que haya errores. QC, por otro lado, entra en acción cuando el producto ya está listo y se centra en revisar si hay problemas o defectos que se escaparon. Piensa en QA como el entrenador que te prepara para evitar errores, mientras que QC es el árbitro que señala los fallos cuando ya está todo en juego. QA trata sobre el proceso, y QC, sobre el resultado final.

No obstante, dentro de uno hay un poco del otro y viceversa, como el yin y el yang de la gestión de calidad. Pero cada uno tiene un objetivo marcado. Aunque en ocasiones no sepamos llamar a las cosas por su nombre.


¿Qué son las UAT – User Acceptance Testing?

Las UAT (User Acceptance Testing), o pruebas de aceptación de usuario, son un tipo específico de pruebas realizadas al final del ciclo de desarrollo de software que se realizan para validar que el producto cumple con los requisitos y expectativas del usuario final o del cliente. Es el último paso antes de que el producto se implemente o se lance oficialmente.

Para mi es imprescindible que el cliente tenga perfiles especializados que hagan de enlace entre el negocio, sus peticiones de desarrollo de software y el equipo implementador. Es necesario que estos usuarios expertos sepan cómo funciona el negocio, las expectativas y cómo funciona la tecnología a aplicar. Sin estas pruebas no debe pasarse nada a producción.


En conclusión

Como hemos dicho con la metáfora del yin yang, QA y QC comparten algunas tareas, lo mismo pasa en las pruebas (de integración, UATs, etc.). Las tareas de pruebas de calidad de QC también pueden realizar se en QA y las pruebas de validación de usuario UAT son parte del control de calidad del resultado final.

Esto no se ha hecho con IA, se ha hecho con WordArt.
A veces menos es mejor.

En un mundo ideal todo esto tendría que ser tal y cómo lo hemos explicado, tendría que haber un equipo de QA que controlase que cada parte del proyecto se realice con la calidad adecuada. Si lo piensas bien, en la mayor parte de las ocasiones esto recae en el jefe de proyecto o, incluso, en los propios consultores. Mantener documentada la toma de análisis (actas de reunión, etc), el diseño (documentos de diseño bien definidos), la implementación (plan de desarrollo, buenas prácticas, limpieza, encapsulamiento y reutilización de código) y la entrega (plan de pruebas, plan de cutover y plan de Go-Live). Pero si hubiese una figura velando porque esto se realice correctamente, estaría todo más ordenado. La parte del QC y UAT suele ser más común verlo de una forma u otra.

Por último un chiste sobre el tema que me ha parecido muy gracioso.

El castigo de Sísifo

Volvemos a hablar de mitología griega, en la línea en la que abordamos otros mitos como son el del vuelo de Ícaro y el del Ave Fénix.

El mito de Sísifo

Sísifo, hijo de Éolo, era el rey de Corinto, y su astucia era legendaria. Su vida estaba llena de engaños y tratos oscuros, siempre con el objetivo de obtener poder y beneficios personales. Fue un hombre que desafió a los dioses una y otra vez, engañando incluso a Zeus.

Según el mito, uno de sus actos más osados fue engañar a Hades, el dios del inframundo. Cuando llegó su momento de morir, Sísifo no se conformó con el destino común de los mortales. Logró engañar a Tánatos, el dios de la muerte, encadenándolo y evitando así que pudiera llevarlo al inframundo. Este acto significó que, mientras Tánatos estuvo atrapado, nadie en la Tierra podía morir, lo que trajo grandes problemas a los dioses, quienes dependían del ciclo de la vida y la muerte para mantener el orden del universo.

Sísifo encadenando a Tánatos

Zeus, indignado por el caos que Sísifo había desatado, intervino para liberar a Tánatos y, finalmente, llevar a Sísifo al inframundo. Sin embargo, Sísifo continuó usando su ingenio y, una vez en el inframundo, engañó a Perséfone (esposa de Hades, hija de Zeus y Deméter, diosa del inframundo) para que lo dejara regresar temporalmente a la Tierra, alegando que debía arreglar asuntos pendientes. Perséfone, confiando en su palabra, permitió su salida. Pero una vez de vuelta en la Tierra, Sísifo se negó a regresar al inframundo.

Sísifo convenciendo a Perséfone

Cuando finalmente los dioses lograron capturarlo, decidieron imponerle un castigo eterno que estuviera a la altura de su constante desafío a las normas divinas. Así, Sísifo fue condenado a empujar una roca gigantesca cuesta arriba por una montaña. Al llegar a la cima, la roca siempre caía de vuelta, obligándolo a comenzar de nuevo. Esta tarea se repetiría eternamente, sin descanso, convirtiéndose en el símbolo de un esfuerzo incesante y sin recompensa.

El castigo de Sísifo

Interpretación del Mito de Sísifo

El mito de Sísifo ha sido interpretado de diferentes maneras a lo largo del tiempo. Su historia representa temas como la resistencia humana ante lo imposible, el castigo por desafiar el orden establecido y la lucha constante de las personas en la vida.

Sobre lo que a mi me interesa incidir es sobre la sensación de estar atrapado en ciclos interminables, de trabajos que nunca terminan o tareas sin un fin aparente.

Las rutinas diarias y las obligaciones familiares y sociales pueden, en ocasiones, hacernos sentir como Sísifo, empujando una piedra que nunca deja de caer.

Naces, creces, estudias, trabajas y mueres

El mito de Sísifo en el trabajo

A nivel laboral podemos ver el mito de Sísifo en dos puntos de vista distintos del empleado. Por un lado la desmotivación (Boreout) y por otro el estrés (Burnout)

La desmotivación de Sísifo

Estar en un trabajo monótono, sin metas, sin cambios, sin reconocimientos ni retos, hace que te conviertas en Sísifo llevando todos los días la roca a lo alto de la montaña, para que está vuelva a caer y el siguiente día sea igual, volver a empujar la roca.

Esto genera lo que ya hemos hablado en este blog, el Síndrome del Boreout o desmotivación por aburrimiento.

El agotamiento de Sísifo

En ocasiones, las largas jornadas, los proyectos interminables y la presión por cumplir objetivos hacen que el trabajo se asemeje a ese ciclo eterno del mito. Para muchos, el trabajo puede sentirse como una carrera en la que, a pesar de los esfuerzos, el avance es mínimo.

Esta situación lleva a lo que se conoce como «burnout» o agotamiento laboral, un estado en el que la persona pierde la motivación y se siente atrapada en un proceso sin sentido.

Como Sísifo, la jornada laboral se convierte en una cuesta empinada que parece no tener fin, mientras que la «piedra» puede tomar diferentes formas: correos electrónicos, reuniones interminables, proyectos que no progresan.

La Carrera de la Rata

Esta sensación de repetición y esfuerzo sin recompensa es lo que se conoce como la «carrera de la rata». El término se refiere a la búsqueda constante de éxito, estabilidad económica y prestigio, que se convierte en una trampa. Las personas terminan corriendo en círculos, sin alcanzar un objetivo claro y sin poder salir del ciclo. En esta carrera de la rata, la sociedad impone metas siempre inalcanzables o variables, como un salario más alto, una mejor posición o una vida más cómoda.

La carrera de la rata

Al igual que Sísifo, en la carrera de la rata, las personas avanzan, pero solo para volver a empezar. Cada vez que se logra una meta, otra aparece en su lugar, y así se repite el ciclo. La carrera de la rata genera en muchas personas una profunda insatisfacción y una constante sensación de que, a pesar del esfuerzo, la meta siempre está más lejos de lo que parece.

De esto también hablamos en la la entrada sobre la jaula de oro.


Albert Camus y la Felicidad de Sísifo

Albert Camus, filósofo existencialista, reinterpretó este mito en su ensayo «El mito de Sísifo», argumentando que Sísifo representa el absurdo de la vida humana. Según Camus, la existencia en sí puede parecer absurda cuando no encontramos un propósito claro y nos enfrentamos a tareas que parecen inútiles. Sin embargo, Camus propone una visión distinta: aceptar el absurdo y encontrar libertad en él.

Albert Camus

Camus sugiere que hay que imaginar a Sísifo feliz cuando llega a la cima, pues en su aceptación de la tarea encuentra su sentido. La verdadera libertad, plantea el filósofo, surge cuando dejamos de buscar un propósito externo y elegimos nuestra actitud frente a la vida. Al asumir la monotonía con consciencia y sin resignación, Sísifo supera su castigo y encuentra satisfacción en su propio esfuerzo.

Por traducir, lo que sugiere Camus es un Sísifo que se siente feliz y orgulloso con el trabajo realizado al subir la roca a lo alto de la montaña. Se centra en que la realización de Sísifo sea dada por el esfuerzo realizado no por el sentido global en el que este esfuerzo participa. Esta forma de pensar te saca de la carrera de la rata y de la desmotivación por aburrimiento.


Mi reflexión

Yo, personalmente, he pasado en poco tiempo por las dos consecuencias de convertirme en un Sísifo (Burnout y Boreout). Y creo que la única solución posible es dejar de empujar la roca un rato y pensar si esto es lo que quieres o hay otros caminos con o sin roca que empujar.

Disfrutemos, como el Sísifo de Camus, cuando has terminado tu tarea, para poder romper la rueda de esfuerzo sin sentido. Valora tus esfuerzos pequeños y no necesariamente a nivel global.

SAP Certified Associate – Solution Architect – Customer Experience

Pues resulta que me he hecho arquitecto. ¿De esos que construyen casas?

No, de esos no. ¿De los que ven ceros y unos y entran en Matrix?

Bueno, no exactamente.

Me he hecho arquitecto de SAP Customer Experience.

¿Qué es ser arquitecto SAP Customer Experience?

Un arquitecto SAP Customer Experience es un experto en las funcionalidades clave que aportan las soluciones SAP CX que, como vimos en el artículo SAP Customer Experience (CX) son las siguientes:

Entonces ¿es un consultor experto en todas esas soluciones?

No, eso sería imposible. Ser experto en todo sería como ser un monje sabio en lo alto de una montaña… pero con acceso a SAP Launchpad y al Business Accelerator Hub. Improbable.

Tienes a tú disposición 3 dudas sobre CX.
A partir de la cuarta tienes que abrir un caso en SAP for Me

Ser arquitecto SAP Customer Experience no significa saber hacer campañas automatizadas en Emarsys, modelar perfiles y audiencias en Customer Data Platform, configurar flujos de registro y consentimientos en Customer Data Cloud, construir catálogos y promociones en Commerce Cloud ni dominar los workflows y procesos guiados de Sales & Service Cloud v2.

Significa entender cómo todas estas soluciones encajan entre sí —y con el resto del ecosistema SAP (y no SAP)— para diseñar experiencias de cliente conectadas, consistentes y escalables. Y, cada vez más, saber cómo aplicar inteligencia artificial a los procesos CX con herramientas como el CX AI Toolkit, SAP Joule o Machine Learning para optimizar decisiones, recomendar productos o predecir el comportamiento del cliente.

¿Y qué implica certificarte?

En mi caso, he obtenido la certificación oficial:

SAP Certified Associate – Solution Architect – Customer Experience
(Código: C_C4HCX_2405)

Esta certificación valida que entiendes:

  • La arquitectura general de SAP CX y sus componentes clave
  • Como estos componentes se interrelacionan entre si para dar solución a flujos completos
  • Las integraciones con SAP S/4HANA y otras soluciones
  • Las capacidades de extensibilidad con SAP BTP
  • Los aspectos clave de seguridad, gobernanza y diseño
  • Las buenas prácticas para definir una estrategia CX moderna

En otras palabras, no certifica que sepas implementarlo todo… pero sí que sabes cómo se debería hacer.

¿Es difícil?

Bueno, no es una certificación para empezar desde cero, eso seguro. Necesitas amplia experiencia previa en al menos una o dos soluciones SAP CX, entender el lenguaje técnico y funcional de SAP, y sobre todo, pensar en términos de arquitectura: ¿qué solución usar? ¿cómo encaja con lo que ya tiene el cliente? ¿qué impacto tiene a largo plazo?

Mi consejo: no la prepares como un examen más. Estúdiala como si fueras a construir una propuesta real para un cliente exigente.

¿Y ahora qué?

Ahora toca seguir aprendiendo. Ser arquitecto no es una meta, es un camino. Un camino en el que SAP actualiza versiones cada tres meses, lanza nuevas capacidades en BTP, y redefine constantemente cómo deberíamos diseñar experiencias de cliente.

¿Mi próximo paso? Aplicar todo esto en proyectos reales y seguir ayudando a empresas a dar ese salto hacia un Customer Experience conectado, inteligente… y humano.

Webinar – SAP Sales Cloud v2: La Evolución del CRM Inteligente 

Voy a participar como ponente en un webinar sobre SAP Sales & Service Cloud v2.

Con la siguiente agenda:

¿Cuál es el objetivo de este Webinar?

Este webinar está pensado para responsables de TI, líderes de transformación digital y decisores que:

  • Ya tienen un CRM (Salesforce, Dynamics, SAP CRM OnPremise, SAP C4C…) y se plantean dar el salto a una solución moderna, robusta y preparada para el futuro.
  • Quieren entender por qué SAP Sales & Service Cloud v2 es la apuesta estratégica de SAP, con un roadmap claro y actualizaciones trimestrales.
  • Buscan una solución cloud-native, extensible mediante SAP BTP, y diseñada desde el inicio para integrarse de forma nativa con SAP S/4HANA y otras soluciones SAP.
  • Necesitan potenciar la experiencia de cliente (CX) en ventas y servicio, con herramientas como Pipeline Manager, Forecast Tracker, Deal Intelligence y Customer Insights.
  • Quieren incorporar inteligencia artificial (IA generativa, recomendaciones, automatización) sin depender de desarrollos complejos.
  • Están evaluando cómo afrontar una migración ordenada desde su CRM actual, minimizando el riesgo y maximizando el retorno de la inversión.

¿Y si eres consultor o desarrollador SAP CX?

Si estás aprendiendo SAP Sales & Service Cloud v2 en profundidad, te recomiendo seguir mejor mi blog. Este webinar está más centrado en visión estratégica, casos de uso y beneficios empresariales que en detalle funcional o técnico.

¿Por qué deberías conectarte?

Verás cómo SAP plantea la evolución natural del CRM con una solución centrada en la experiencia del usuario y la automatización inteligente.

Hablaremos de migraciones desde otros CRMs, con aceleradores y ayudas y cómo abordar el cambio con éxito.

Y, por supuesto, podrás hacer tus preguntas en directo.

¿Qué es un Data Lake?

Has escuchado el término, incluso alguna vez has puesto cara de póker asintiendo para que no se note que no sabes lo que es un Data Lake, ni para qué sirve. Puede que lo uses y sepas qué es, pero incluso si ya lo usas, siempre viene bien entenderlo desde la base.

Cuidado que en los Data Lake también hay monstruos del lago y suelen ser creados

¿Qué es un Data Lake?

Un Data Lake es un repositorio centralizado que permite almacenar datos en su formato original, sin necesidad de estructurarlos previamente. A diferencia de un Data Warehouse, que requiere transformar los datos antes de almacenarlos (ETL), el Data Lake sigue un enfoque de ‘esquema en lectura’ (Schema-on-Read), lo que significa que los datos se estructuran únicamente al momento de ser consultados, permitiendo analizarlos en el momento que se necesiten y de la forma que requiera cada caso de uso.

Es como guardar todos los ingredientes en una despensa tal cual vienen del mercado, para cocinarlos solo cuando sabes qué receta vas a preparar, en lugar de pre-cocinarlos todos de antemano. Esto da muchísima flexibilidad para adaptarse a cualquier «receta analítica» que se requiera en el futuro.


Diferencias entre Data Lake y Data Warehouse

Mientras que un Data Warehouse almacena datos procesados y estructurados (Schema-on-Write) para responder a preguntas específicas del negocio, un Data Lake conserva los datos en su forma original, permitiendo una exploración más amplia y flexible. Esta diferencia se traduce en una mayor capacidad para descubrir patrones y obtener insights no previstos inicialmente.

Pesadilla en la cocina

Características principales de un Data Lake

Bueno, vayamos por partes, ya sabemos, nivel teórico, lo que es un Data Lake, ahora toca ver qué características principales tiene.

  • Flexibilidad en el almacenamiento: Capacidad para almacenar datos de diversas fuentes y formatos, como registros de aplicaciones, datos de sensores IoT, imágenes, videos, etc.
  • Escalabilidad: Diseñados para manejar petabytes de información, adaptándose al crecimiento exponencial de los datos en las organizaciones.
  • Esquema en lectura: Los datos se estructuran al momento de ser consultados, lo que permite una mayor agilidad en la incorporación de nuevas fuentes de información.
  • Soporte para análisis avanzados: Facilitan la aplicación de técnicas de análisis de datos, aprendizaje automático y generación de informes en tiempo real.

Beneficios y Desafíos al implementar un Data Lake

Como toda solución tiene una serie de beneficios pero también una serie de desafíos o problemas potenciales. Muchos son evidentes, vamos a verlos.

Beneficios y riesgos asociados

  • Centralización de datos: Elimina los silos de información al consolidar datos de múltiples fuentes en un solo lugar.
    • Riesgo asociado: Pero cuidado que el objetivo no es tirar tu basura en el Data Lake y esperar a que «se haga la magia’. Si tus datos son basura, habrás creado un cubo de basura.
  • Reducción de costos: Al aprovechar tecnologías de almacenamiento de bajo costo, como las soluciones en la nube, se optimiza la inversión en infraestructura con modelos de pago como el pay-as-you-go (pago por uso)
    • Riesgo asociado: si basas todo tu análisis de datos en un Data Lake alojado en «La Nube™» y no controlas ese crecimiento, tendrás dependencia excesiva con el proveedor de soluciones en la Nube y tus costos pueden ampliar. Además existe un riesgo alto de Data Egress Cost (costo que cobran los proveedores de la nube por sacar datos desde su plataforma hacia otro sistema, servicio externo o Red).
  • Agilidad en el análisis: Permite a los científicos de datos y analistas acceder rápidamente a grandes volúmenes de información para realizar estudios y modelos predictivos.
  • Soporte para innovación: Facilita la experimentación con nuevos enfoques analíticos y el desarrollo de soluciones basadas en inteligencia artificial.

Desafíos y consideraciones

A nivel de desafíos a enfrentar tenemos:

  • Gobernanza de datos: Es esencial establecer políticas claras para la gestión, calidad y seguridad de los datos almacenados. Quién puede acceder a qué datos. La falta de control sobre accesos y calidad puede convertir el valor del dato en un riesgo operativo o legal.
  • Riesgo de «Data Swamp«: Sin una adecuada organización y catalogación, un Data Lake puede convertirse en un pantano (Swamp), en un repositorio desordenado y difícil de utilizar.
Voy a tirar mierda al lago a ver si se convierte en informes analíticos buenos
  • Integración con sistemas existentes: Es importante asegurar la compatibilidad y comunicación efectiva entre el Data Lake y otras plataformas de la organización.

Data Lakes en el ecosistema SAP

Obviamente, en este tema SAP no es ajeno y también ofrece soluciones que integran la funcionalidad de Data Lakes.

SAP HANA Cloud Data Lake

Permite almacenar y procesar grandes volúmenes de datos de diversas fuentes, tanto de SAP como de terceros. Esta integración facilita la realización de análisis avanzados y el desarrollo de aplicaciones inteligentes dentro del entorno SAP.

SAP Business Data Cloud

Además, en el último «SAP Unleashed» SAP anunció una revolución, SAP Business Data Cloud, donde recibir, adoptando funcionalidades propias de un Data Lake, pero con enfoque de productos de datos empresariales, datos estructurados o no estructurados de sistemas SAP o externos y desde ahí generar los «Data Products» correspondientes a conceptos de negocio. De esto ya hablaremos porque es una solución estratégica de SAP que vamos a ver en todo lo que hagamos de aquí a un tiempo.


Conclusión

Los Data Lakes representan una evolución en la gestión de datos empresariales, ofreciendo una plataforma flexible y escalable para almacenar y analizar información diversa. Pero no está exenta de desafíos y problemas, no vale tirar basura a un Data Lake.

Al adoptar correctamente esta tecnología, las organizaciones pueden mejorar su capacidad de análisis, fomentar la innovación y tomar decisiones más informadas basadas en datos. Y en el futuro presente de la Inteligencia Artificial podemos hacer beber a la IA de los datos del Data Lake para sacar conclusiones, tomar decisiones o analizar datos.

La Inteligencia Artificial se va a empachar de datos

Y recuerda: