13/07/2012

¿Qué es un plan de QA?

¿Qué es un plan de QA?

En el ámbito del desarrollo de software, la sigla QA significa Quality Assurance, o aseguramiento de la calidad. Se trata de un conjunto de actividades de evaluación de las distintas etapas del proceso de desarrollo para garantizar que el producto final sea de calidad. El concepto de calidad se presta a múltiples interpretaciones, pero siempre implica que el software satisfaga las necesidades del cliente.

Más allá de las diferencias, un buen plan de QA no puede desconocer la importancia de los estándares. Con esto nos referimos a reglas escritas y no ambiguas sobre los objetivos del producto, las metodologías de diseño y a seguir y convenciones necesarias para guiar la tarea de los programadores (estilos de codificación, estructuras de datos, etc.).

El plan de QA atraviesa el proceso de desarrollo desde el nacimiento de la idea hasta la implementación del software.  En las primeras etapas, verifica que los objetivos estén bien planteados y los requerimientos sean precisos. En las fases de diseño y codificación, vigila el cumplimiento de los estándares fijados. Finalmente, revisa que el software en funcionamiento respete los requerimientos pedidos y que la entrega al cliente se haga en las condiciones adecuadas.

El QA se basa en conjunto de pruebas de calidad entre las que se incluyen:

  • Testeo unitario: se prueba que cada módulo funcione bien por separado.
  • Prueba de stress: se prueba la resistencia de la aplicación enviándole una cantidad de peticiones excesiva, buscando que colapse.
  • Test de integración: los módulos probados independientemente durante el testeo unitario se acoplan y se prueban en conjunto.
  • Test funcional: se prueba que el software ofrezca las funciones solicitadas.
  • Test de aceptación: el usuario verifica que el producto satisfaga sus expectativas.

Las pruebas de QA no sólo son beneficiosas para el usuario final, que recibirá un producto de calidad, sino también para el equipo de desarrollo, que al establecer un control permanente sobre el proceso evitará en buena medida los costos de tener que corregir errores en etapas avanzadas del proyecto.

0

angularjs Aplicaciones en Facebook aplicaciones mobile behavioral targeting Botones Call-to-action breadcrumbs breadcrumbs web búsqueda de personal búsqueda facetada Call-to-action buttons Client-side cliente-destacado cms a medida coding comercio electrónico content marketing CSS3 PIE cuanto debe pesar un sitio data-driven web design Datos estructurados Defacement Denegación de servicio Desarrollar una aplicación web desventajas de PhoneGap diseñar newsletters diseño web diseño web argentina diseño web esqueuomórfico Diseño web responsive Diseño web responsivo diseño web santa fe diseño web Smart TV diseño web televisores DOM desde PHP enlaces rotos filtros de búsqueda flash flat web design formularios sitio web fragmentos enriquecidos función de autocompletar futuro de la realidad aumentada html HTML5 html5shiv inbound marketing Initializr interfaces Web para televisores javascript jobs jQuery Mobile Mapbox maquetado html/css maquetador web masonry layout menú de navegación menú desplegable Metodologías ágiles Modernizr MVC Navegación por teclado oferta laboral OpenStreetMap paginas de Facebook Paper js Paper js framework personas Phishing plan de QA Polyfills polymer portfolio-destacados portfolio-inicio programacion de CMS Programadores WordPress página de contacto página de error 404 que es Backbone.js Realidad aumentada Resultados instantáneos server-side skeuomorphic design sliders y usabilidad soporte Internet Explorer Storytelling Underscores usabilidad usabilidad buscadores user-centered design ux velocidad de carga web Vendor prefixes ventajas jQuery Mobile Ventanas integradas versiones antiguas de Internet Explorer WAI-ARIA web components web imprimible Web Semántica WordPress para ecommerce