Mejores prácticas para las pruebas de aceptación del usuario

Las pruebas de aceptación del usuario garantizan que el software cumpla con las necesidades del negocio y las expectativas de los usuarios.

Dat Giang
CTO de HDWEBSOFT
Mejores prácticas para las pruebas de aceptación del usuario

Consultas de medios

HDWEBSOFT atiende solicitudes de medios

Si cubre TI e innovación digital, nuestros expertos pueden compartir experiencia práctica y conocimiento para apoyar su contenido.

Contactar →

En el competitivo panorama actual del software, garantizar que las aplicaciones satisfagan las expectativas del usuario final es primordial. Las pruebas de aceptación del usuario (UAT), una fase crítica en el ciclo de vida del desarrollo de software, validan que el software funcione según lo previsto en escenarios reales. Según datos recientes, las UAT pueden representar solo del 5% al 10% del proceso general de desarrollo. Sin embargo, puede ahorrar más del 30% del tiempo que de otro modo se dedicaría a solucionar problemas o implementar cambios adicionales.

En este artículo, profundizamos en la importancia de las UAT en las pruebas de software. Además, exploraremos las mejores prácticas para garantizar que su software no solo cumpla, sino que supere las expectativas de los usuarios.

Mejores prácticas clave para las pruebas de aceptación del usuario

La UAT más efectiva sigue un enfoque estructurado: recopilar requisitos comerciales claros, desarrollar un plan de pruebas completo, diseñar escenarios de pruebas realistas, preparar datos de prueba que reflejen la producción, ejecutar pruebas sistemáticamente, documentar hallazgos a fondo y resolver problemas con una comunicación clara entre probadores y desarrolladores. Este proceso de seis pasos garantiza que el software cumpla tanto con las especificaciones técnicas como con las necesidades de los usuarios reales antes de su lanzamiento.

¿Qué significa UAT?

¿Qué significa la prueba de aceptación del usuario?

Las pruebas de aceptación del usuario, también conocidas como pruebas de aplicación o pruebas de usuario final, desempeñan un papel crucial en el desarrollo de software. Como fase final del proceso de pruebas, las UAT permiten a usuarios reales evaluar el software en condiciones reales antes de su lanzamiento oficial. De esta manera, se garantiza que el software cumpla con las especificaciones de desarrollo y pueda realizar tareas prácticas de forma eficaz.

Durante las UAT, los usuarios tienen la oportunidad de interactuar con el software antes de su lanzamiento comercial. Este proceso ayuda a identificar funcionalidades o errores inesperados que se hayan pasado por alto. Además, las UAT se pueden realizar de diversas maneras: pruebas internas con las partes interesadas, pruebas de pago con participantes seleccionados o pruebas beta públicas, donde se ofrece una versión de prueba para su descarga. Una vez recopilados los comentarios, los desarrolladores analizan los resultados e implementan los ajustes necesarios antes de finalizar el lanzamiento.

Más allá del aseguramiento de la calidad, las pruebas de aceptación del usuario contribuyen a la eficiencia de costos y mejoran la transparencia con los usuarios. Asimismo, permiten a los desarrolladores trabajar con casos y datos reales, asegurando que el software se ajuste a los requisitos del negocio. Si se ejecutan correctamente, las UAT sirven como un paso de validación que confirma que el software está listo para su implementación.

¿Cuál es el propósito de las pruebas de aceptación del usuario?

Las UAT sirven como la fase de validación final en el ciclo de desarrollo de software, garantizando que todos los esfuerzos de prueba anteriores hayan sido exitosos. Generalmente se realizan después de las pruebas unitarias, el aseguramiento de calidad, las pruebas del sistema y las pruebas de integración. Por lo tanto, las UAT actúan como el último punto de control antes de que se lance un producto de software.

Incluso si el software ha pasado por múltiples fases de prueba y parece completamente funcional, puede no cumplir con las expectativas de los usuarios. Esto puede suceder cuando los requisitos no se comunican a los desarrolladores o cuando las modificaciones realizadas durante el desarrollo alteran el alcance del proyecto. Además, pueden surgir problemas si el software no está adecuadamente preparado para condiciones del mundo real. En última instancia, las pruebas de aceptación del usuario ayudan a evitar el lanzamiento de software defectuoso, incompleto o ineficaz.

Para que las UAT sean verdaderamente efectivas, deben ser exhaustivas, reflejar con precisión los requisitos de los usuarios e identificar cualquier problema que las pruebas anteriores puedan haber pasado por alto. Sin este paso crucial, el software podría lanzarse con errores críticos o una experiencia de usuario poco clara. Como resultado, las correcciones costosas y el posible daño a la reputación del proveedor presentarán un desafío que las empresas deben enfrentar.

¿Quién realizará las UAT?

La fase de pruebas de aceptación del usuario depende de la participación de dos grupos esenciales:

  • Usuarios finales: Como usuarios principales del software, los usuarios finales desempeñan un papel crucial en las UAT. Debido a que tienen experiencia de primera mano con las operaciones diarias, sus comentarios garantizan que el software cumpla con las necesidades prácticas de usabilidad. A través de sus ideas, pueden identificar los ajustes necesarios para mejorar la funcionalidad general.
  • Expertos funcionales internos: Estos profesionales supervisan las pruebas de aceptación del usuario diseñando ciclos de prueba, gestionando la ejecución y analizando los resultados. Garantizan una cobertura de pruebas completa y facilitan la resolución de cualquier problema identificado antes de que el software se lance oficialmente.

¿Quién realizará las UAT?

Tipos de pruebas de aceptación del usuario

Tipos de pruebas de aceptación del usuario

Para empezar, las UAT se dividen en varias categorías, cada una diseñada para cumplir un propósito específico y proporcionar beneficios distintos.

  • Las pruebas alfa se realizan dentro de la organización, involucrando al equipo de desarrollo y un pequeño grupo de usuarios finales. Realizar pruebas temprano en el proceso de desarrollo ayuda a identificar errores y proporciona a los desarrolladores comentarios inmediatos. En consecuencia, los desarrolladores pueden realizar los ajustes necesarios antes de un lanzamiento más amplio.
  • Las pruebas beta amplían las pruebas a una audiencia más grande fuera de la organización, típicamente usuarios reales en un entorno en vivo. Esta fase es esencial para evaluar cómo funciona el software en condiciones del mundo real. A través de los comentarios de los usuarios, los desarrolladores pueden descubrir problemas imprevistos y realizar refinamientos finales.
  • Las pruebas de aceptación del usuario contractuales se realizan según acuerdos predefinidos entre el cliente y el proveedor. Para garantizar el cumplimiento, estas pruebas verifican si el software cumple con los requisitos y condiciones acordados en el contrato. Si surgen discrepancias, deben abordarse antes de la aprobación final.
  • Las pruebas de aceptación regulatoria se centran en garantizar el cumplimiento con regulaciones específicas de la industria, estándares y requisitos legales. Este tipo de prueba es particularmente crucial en sectores altamente regulados como la atención médica, las finanzas y la aviación, donde el cumplimiento con las pautas de regulación es obligatorio.

Descubra los servicios de pruebas automatizadas de HDWEBSOFT.

Mejores prácticas para las pruebas de aceptación del usuario

Lograr una UAT exitosa requiere seguir las mejores prácticas de la industria. Aquí hemos incluido un proceso estructurado de seis pasos que lo guía desde el inicio hasta la finalización.

Recopilar requisitos comerciales

La base de las pruebas de aceptación del usuario radica en comprender a fondo los requisitos comerciales y las especificaciones funcionales del software. Esto implica identificar roles de usuarios, definir resultados esperados y describir escenarios únicos que necesitan validación. Por lo tanto, sin una comprensión clara de estos requisitos, crear escenarios de prueba relevantes se vuelve desafiante.

Los requisitos claramente definidos son esenciales, ya que sirven como la base para estructurar el proceso de prueba. Por ejemplo, algunos requisitos comerciales comunes pueden incluir:

  • Funcionalidad de autenticación y registro de usuarios
  • Procesamiento de pagos seguro para plataformas de comercio electrónico
  • Implementación de cifrado de datos para mayor seguridad

Desarrollar un plan de pruebas UAT

Una vez establecidos los requisitos, el siguiente paso es formular un plan de pruebas UAT. Este documento describe los objetivos, el alcance y el enfoque de prueba, garantizando que se evalúe cada aspecto crítico del software. Un plan de pruebas UAT bien estructurado debe incluir:

  • Una lista de requisitos comerciales
  • Escenarios de prueba definidos
  • Resultados esperados

Desarrollar un plan de pruebas UAT

Tener una lista de verificación en el proceso de desarrollo de un proceso de pruebas de aceptación del usuario puede ayudar a mantener las cosas organizadas.

El plan de pruebas actúa como una hoja de ruta durante todo el proceso de pruebas de aceptación del usuario, ayudando a los equipos a mantenerse alineados. En particular, los escenarios de prueba pueden categorizarse según roles de usuarios o funcionalidades específicas de la aplicación para garantizar pruebas sistemáticas.

Diseñar escenarios de prueba

Los escenarios de prueba representan el conjunto de acciones que los usuarios realizarán para validar diferentes funcionalidades del software. Estos escenarios deben estar directamente vinculados a los requisitos comerciales y redactados de manera clara y fácil de ejecutar. Además, incluir una variedad de casos de prueba garantiza que se tengan en cuenta todas las interacciones potenciales de los usuarios.

Por ejemplo, un escenario de prueba para una plataforma de comercio electrónico puede incluir:

  • Un usuario agrega artículos exitosamente a su carrito de compras.
  • El usuario procede al pago e ingresa detalles de envío.
  • El usuario completa el pago a través de varios métodos (por ejemplo, tarjeta de crédito, PayPal).
  • Se envía un correo electrónico de confirmación de pedido al usuario.

Es crucial incorporar un conjunto diverso de escenarios de prueba que cubran varios roles de usuarios, casos extremos y flujos de trabajo. Al hacerlo, el proceso de pruebas de aceptación del usuario garantiza pruebas completas, lo que conduce a un producto de software más confiable y fácil de usar.

Preparar datos de prueba y configurar el entorno de prueba

Un entorno de prueba bien preparado desempeña un papel crucial para garantizar resultados precisos de UAT. Para crear una configuración de prueba efectiva, es importante utilizar datos de prueba realistas y relevantes que simulen de cerca escenarios del mundo real. Esto puede incluir:

  • Perfiles de usuarios y credenciales de inicio de sesión
  • Pedidos de muestra que reflejen transacciones reales
  • Cuentas ficticias para diferentes roles de usuarios
  • Cualquier dato adicional necesario para probar funcionalidades específicas

Además, el entorno de prueba debe replicar el entorno de producción lo más cerca posible. Esto ayuda a identificar problemas potenciales temprano y garantiza que el software se comporte como se espera cuando se implemente.

Ejecutar pruebas y documentar hallazgos

Ejecutar planes de pruebas de aceptación del usuario y documentar hallazgos

Cuando el entorno de prueba está listo, el siguiente paso es ejecutar los escenarios de prueba predefinidos. Los probadores luego pasan por cada escenario y documentan cualquier problema, inconsistencia o comentario. Para rastrear y gestionar de manera eficiente los resultados de las pruebas de aceptación del usuario, los equipos pueden utilizar:

  • Hojas de cálculo compartidas para informes colaborativos
  • Herramientas de seguimiento de errores o gestión de tickets para registrar defectos
  • Otros métodos de informes adaptados a las necesidades del proyecto

Además, los analistas comerciales revisan los resultados de las pruebas para verificar que se hayan cumplido todos los requisitos. Si es necesario, proporcionan recomendaciones para ajustes antes del lanzamiento final. El proceso de informes también debe categorizar los defectos según su gravedad. Después de todo, ayuda al equipo de desarrollo a abordar primero los problemas críticos mientras gestiona los menores en consecuencia.

Resolver problemas y garantizar el cumplimiento

Después de identificar y documentar los defectos, el equipo de desarrollo trabaja en resolverlos. Una vez implementadas las correcciones, los usuarios deben volver a probar las áreas afectadas para confirmar que los problemas se hayan abordado exitosamente.

Durante esta fase, mantener una comunicación abierta y clara entre el equipo de prueba y los desarrolladores es esencial. La colaboración continua ayuda a agilizar el proceso de resolución y garantiza que el producto final cumpla tanto con los requisitos funcionales como con los estándares de cumplimiento.

UAT vs otros tipos de pruebas

Comprender cómo la UAT difiere de otras fases de prueba ayuda a las organizaciones a asignar recursos de manera efectiva y garantizar una cobertura de prueba completa. Como se describe en el Syllabus ISTQB Foundation Level, estos niveles incluyen pruebas de componente (unit), integración, sistema y aceptación, con UAT representando una de las etapas finales de validación antes del lanzamiento:

  • Pruebas unitarias: Los desarrolladores prueban componentes o funciones individuales en aislamiento para asegurar que funcionen correctamente. Esta es la primera línea de defensa y ocurre durante el desarrollo.
  • Pruebas de integración: Verifican que diferentes módulos o servicios funcionen juntos cuando se combinan. Esto se centra en interfaces e interacciones entre componentes.
  • Pruebas del sistema: Evalúan la aplicación completa e integrada para asegurar que cumpla con todos los requisitos especificados. Esto generalmente lo realizan equipos de QA en un entorno controlado.
  • Pruebas de aceptación del usuario: La fase de validación final donde usuarios reales prueban el software en condiciones similares a la producción para asegurar que cumpla con las necesidades comerciales y las expectativas de los usuarios.

Mientras que las fases de prueba anteriores se centran en la corrección técnica, la UAT enfatiza el valor comercial y la experiencia del usuario. Esta distinción hace que la UAT sea insustituible en el proceso de prueba, ya que detecta problemas que las pruebas técnicas podrían pasar por alto, como ineficiencias en el flujo de trabajo, interfaces de usuario confusas o lógica comercial mal alineada.

Herramientas y software UAT

Una UAT efectiva requiere las herramientas adecuadas para agilizar la gestión de pruebas, la colaboración y los informes. Las herramientas UAT modernas ofrecen características como gestión de casos de prueba, colaboración en tiempo real, seguimiento de defectos e informes completos. Algunas herramientas UAT populares incluyen:

  • Jira + Zephyr: Combina el seguimiento de problemas con la gestión de pruebas, permitiendo a los equipos gestionar la UAT dentro de su flujo de trabajo de gestión de proyectos existente.
  • TestRail: Proporciona gestión estructurada de casos de prueba con informes detallados y capacidades de integración con varias herramientas de desarrollo.
  • UserTesting: Ofrece pruebas de usabilidad remota con usuarios reales proporcionando comentarios en video e ideas.
  • Xray: Una aplicación de gestión de pruebas completa para Jira que admite la planificación, ejecución e informes de pruebas.
  • PractiTest: Proporciona gestión de pruebas de extremo a extremo con opciones de informes flexibles e integración.

Al seleccionar herramientas UAT, considere factores como la facilidad de uso para probadores no técnicos, capacidades de integración con su pila de desarrollo existente, características de informes y escalabilidad para el tamaño de su equipo y complejidad del proyecto.

Métricas de éxito UAT

Medir la efectividad de la UAT ayuda a las organizaciones a mejorar continuamente sus procesos de prueba y garantizar la calidad del software. Los indicadores clave de rendimiento (KPI) para el éxito de la UAT incluyen:

  • Tasa de detección de defectos: El porcentaje de defectos encontrados durante la UAT versus después del lanzamiento. Una tasa de detección más alta durante la UAT indica pruebas efectivas.
  • Cobertura de pruebas: El porcentaje de requisitos comerciales y escenarios de usuarios cubiertos por casos de prueba. Una cobertura completa reduce el riesgo de pasar por alto funcionalidades críticas.
  • Puntuación de satisfacción del usuario: Comentarios de los participantes UAT sobre la usabilidad y funcionalidad del software. Puntuaciones de satisfacción altas se correlacionan con una adopción de usuario exitosa.
  • Tiempo de resolución: El tiempo promedio tomado para resolver problemas identificados durante la UAT. Tiempos de resolución más rápidos indican procesos de desarrollo eficientes.
  • Tasa de finalización UAT: El porcentaje de escenarios de prueba planificados completados dentro del tiempo asignado. Tasas de finalización altas sugieren una planificación y ejecución efectivas.

Seguir estas métricas a lo largo del tiempo ayuda a las organizaciones a identificar tendencias, optimizar sus procesos UAT y tomar decisiones basadas en datos para mejorar la calidad del software y la satisfacción del usuario.

UAT en entornos Agile y DevOps

Las metodologías de desarrollo de software modernas como Agile y DevOps han transformado cómo se integra la UAT en el ciclo de desarrollo. A diferencia de los enfoques tradicionales en cascada donde la UAT ocurre como una fase final distinta, Agile y DevOps enfatizan las pruebas continuas y los comentarios de los usuarios durante todo el proceso de desarrollo.

En entornos Agile, la UAT a menudo se realiza en iteraciones cortas o sprints, con comentarios de usuarios informando ciclos de desarrollo posteriores. Este enfoque permite una identificación y resolución más rápidas de problemas, reduciendo el riesgo de que problemas importantes surjan tarde en el proceso de desarrollo. En Scrum, la Sprint Review está diseñada para inspeccionar el incremento del producto con las partes interesadas y adaptar el Product Backlog según los comentarios, ayudando a los equipos a alinear continuamente el desarrollo con las necesidades comerciales evolutivas.

Las prácticas DevOps mejoran aún más la UAT automatizando los procesos de prueba e integrando la UAT en pipelines de integración continua/despliegue continuo (CI/CD). Los scripts UAT automatizados pueden ejecutarse junto con otras pruebas automatizadas, proporcionando comentarios inmediatos sobre problemas potenciales. Esta integración admite ciclos de lanzamiento más rápidos mientras mantiene estándares de calidad.

Sin embargo, incluso en entornos Agile y DevOps, la UAT manual sigue siendo esencial para evaluar la experiencia del usuario, la usabilidad y la lógica comercial que las pruebas automatizadas podrían pasar por alto. El enfoque más efectivo combina pruebas de regresión automatizadas con UAT manual dirigida para garantizar tanto la calidad técnica como la satisfacción del usuario.

La importancia de la documentación de UAT

La importancia de la documentación de pruebas de aceptación del usuario

La documentación adecuada de su estrategia y plan general de pruebas de aceptación del usuario es esencial para garantizar tanto el éxito de la fase de prueba actual como la eficiencia de pruebas futuras. Esta documentación debe describir claramente detalles clave, incluyendo cualquier escenario fuera del alcance que aún sea valioso de probar, resultados esperados y estándares acordados para determinar el éxito. Además, debe especificar los procedimientos, roles y responsabilidades de los participantes, alcances de trabajo y el entorno o plataforma de prueba utilizada.

Además, registrar casos de uso exitosos e ideas sobre estructuras de prueba, estrategias de gestión y resultados puede servir como referencias valiosas. En esencia, un plan UAT bien documentado proporciona un marco estructurado y transparente. En última instancia, los equipos pueden usarlo para navegar el proceso de prueba sin problemas y mantener consistencia y precisión.

Vea cómo las pruebas de IA son el futuro del aseguramiento de calidad.

Desafíos de las pruebas de aceptación del usuario

Aunque las UAT son esenciales para garantizar que el software cumpla con las expectativas comerciales y de los usuarios, varios desafíos pueden obstaculizar su efectividad. Abordar estos desafíos de manera proactiva puede llevar a pruebas más fluidas y un producto final más exitoso.

Planificación de pruebas inadecuada

Dado que las pruebas de aceptación del usuario son la etapa final del ciclo de vida del desarrollo de software, cualquier retraso en fases anteriores a menudo resulta en tiempo reducido para las pruebas. Esto crea presión para apresurar las UAT, aumentando el riesgo de pasar por alto problemas. Para prevenir esto, tanto el proceso de desarrollo como las UAT deben planificarse cuidadosamente, con tiempo suficiente asignado a cada fase.

Selección de los probadores UAT incorrectos

Elegir probadores no capacitados o inexpertos puede llevar a informes de errores incompletos o incapacidad para replicar problemas. Si los probadores no comprenden completamente el proceso de informes, defectos críticos pueden pasar desapercibidos, impactando la calidad general del software. La capacitación adecuada garantiza que los probadores sepan cómo documentar y comunicar errores de manera efectiva.

Selección de los probadores UAT incorrectos

Es importante encontrar un equipo de probadores no técnicos calificados para realizar las pruebas de aceptación del usuario.

Entornos de prueba inconsistentes

Usar el mismo entorno para la UAT que se usó para pruebas funcionales y del sistema puede crear dependencias. En consecuencia, es más difícil identificar problemas del mundo real. Para garantizar resultados precisos, las organizaciones deberían configurar un entorno de pruebas de aceptación del usuario dedicado que replique de cerca el entorno de producción en vivo.

Brechas de comunicación

La mala coordinación entre los probadores UAT y los equipos de desarrollo puede causar retrasos en el informe de defectos y resolución de problemas. Sin un proceso de comunicación estructurado, comentarios críticos pueden pasarse por alto.

Nuestro consejo es establecer mecanismos de informes claros y verificaciones regulares. De esa manera, todas las partes interesadas se mantienen alineadas y los problemas se abordan de manera eficiente.

Preguntas frecuentes

¿Qué son las pruebas de aceptación del usuario (UAT)?

Las pruebas de aceptación del usuario (UAT) son la fase final del proceso de pruebas de software donde usuarios reales validan que el software cumple con los requisitos del negocio y funciona según lo previsto en escenarios reales antes de su lanzamiento oficial. Sirven como el último punto de control antes del lanzamiento del software, garantizando que el producto no solo funcione técnicamente sino que también cumpla con las necesidades de los usuarios y los objetivos comerciales.

¿Cuáles son las mejores prácticas clave para las UAT?

Las mejores prácticas clave para las UAT incluyen recopilar requisitos comerciales claros, desarrollar un plan de pruebas completo, diseñar escenarios de pruebas realistas, preparar datos de prueba que reflejen la producción, ejecutar pruebas sistemáticamente, documentar hallazgos a fondo y mantener una comunicación clara entre probadores y desarrolladores. Seguir este enfoque estructurado garantiza que el software cumpla tanto con las especificaciones técnicas como con las necesidades de los usuarios reales.

¿Quién debe realizar las pruebas de aceptación del usuario?

Las UAT deben ser realizadas por usuarios finales que tienen experiencia directa con las operaciones diarias, junto con expertos funcionales internos que supervisan los ciclos de prueba, gestionan la ejecución y analizan los resultados para garantizar una cobertura de pruebas completa. Esta combinación garantiza que las pruebas reflejen las necesidades de los usuarios reales mientras mantienen supervisión profesional y estándares de calidad.

¿Cuáles son los diferentes tipos de UAT?

Los principales tipos de UAT incluyen pruebas alfa (pruebas internas con el equipo de desarrollo), pruebas beta (pruebas externas con usuarios reales), pruebas de aceptación contractual (basadas en acuerdos predefinidos) y pruebas de aceptación regulatoria (garantizando el cumplimiento con los estándares de la industria). Cada tipo sirve propósitos específicos y se elige según los requisitos del proyecto y las regulaciones de la industria.

¿Cuánto tiempo duran generalmente las pruebas de aceptación del usuario?

Las UAT generalmente representan del 5% al 10% del proceso general de desarrollo, pero este plazo puede variar según la complejidad del proyecto, el número de escenarios de prueba y la disponibilidad de probadores calificados y entornos de prueba. Una planificación adecuada y asignación de tiempo suficiente son cruciales para una UAT efectiva sin apresurar el proceso.

Conclusión

Las pruebas de aceptación del usuario desempeñan un papel crucial para cerrar la brecha entre la visión del desarrollador y las expectativas reales de los usuarios finales. Cuando se ejecutan correctamente, las UAT validan tanto la calidad como la funcionalidad de un producto de software, garantizando que cumpla con los requisitos comerciales y proporcione una experiencia de usuario fluida. Más importante aún, proporcionan comentarios esenciales que ayudan a refinar el producto, haciéndolo más alineado con las necesidades y preferencias de los usuarios.

En el panorama digital actual de ritmo rápido, la importancia de las UAT sigue siendo más fuerte que nunca. Ya sea que las empresas estén lanzando plataformas digitales o implementando nuevas funcionalidades, una UAT exhaustiva es clave para aumentar sus posibilidades de éxito. Reconociendo esto, HDWEBSOFT ofrece servicios integrales de pruebas de software diseñados para agilizar el proceso de UAT. Con un enfoque en una comunicación clara, estrategias de prueba bien definidas y un compromiso con la calidad, HDWEBSOFT garantiza que cada solución de software se pruebe rigurosamente para cumplir tanto con las expectativas técnicas como de los usuarios.

Dat Giang

Dat Giang

CTO de HDWEBSOFT

Desarrollador experimentado, enfocado en entregar soluciones prácticas e innovadoras de desarrollo de software outsourcing con integridad.

contact@hdwebsoft.com +84 (0)28 66809403 15 Thep Moi, Bay Hien Ward, Ho Chi Minh City, Vietnam