SlideShare una empresa de Scribd logo
1 de 10
Título: Aseguramiento de la Calidad
© 2016, Víctor Gómez Adán
© De los textos: Víctor Gómez Adán
© Ilustración de portada: Víctor Gómez Adán
1ª edición – ISBN 978-84-608-7078-4
Reservados todos los derechos. No se permite la reproducción total o parcial de esta
obra, ni su incorporación a un sistema informático, ni su transmisión en cualquier
forma o por cualquier medio (electrónico, mecánico, fotocopia, grabación u otros) sin
autorización previa y por escrito de los titulares del copyright. La infracción de dichos
derechos puede constituir un delito contra la propiedad intelectual.
A mi mujer, Isabel, que siempre me sigue y apoya en mis locas peripecias. Mi fuente
inagotable de inspiración para todo lo que me propongo.
A mi hermana, Sandra y a mi madre, Ángeles, por las correcciones hasta altas horas de
la noche y confiar siempre en mi criterio.
Sin vosotras tres, este libro no hubiera sido posible, gracias.
ÍNDICE
1. Introducción
1.1 Un poco de historia.
1.2 Situación actual.
1.3 Propósito de este libro
2. El procesodel Aseguramientode laCalidad
2.1 Subprocesos dentro del Aseguramiento de la Calidad
2.2 Tipos de procesos de Aseguramiento de la Calidad
2.3 Aplicaciones de los procesos de Aseguramiento de la Calidad
2.4 Simbiosis entre el equipo de Calidad y el cliente final del software
3. Metodologías de Desarrollo y Aseguramientode laCalidad
3.1 Historia de las metodologías de Desarrollo y Aseguramiento de la Calidad
3.1.1 MetodologíasclásicasdeDesarrollo y Aseguramiento dela Calidad
3.1.2 MetodologíasmodernasdeDesarrollo y Aseguramiento dela Calidad
3.2 Enfoques de metodologías de Desarrollo y del Aseguramiento de la Calidad
3.2.1 Enfoquemetodológico en Cascada
3.2.2 Enfoquemetodológico Prototipado
3.2.3 Enfoquemetodológico Incremental
3.2.4 Enfoquemetodológico en Espiral
3.2.5 Enfoquemetodológico RAD
3.3 Principales aportaciones de las metodologías
3.4 Ampliando las metodologías en base a las necesidades del proyecto
3.4.1 Revisando la metodología a lo largo del ciclo devida del proyecto
4. Estándares de Calidaddel Software
4.1 Como protegen los estándares al comprador del software
4.2 Como protegen los estándares al negocio del proyecto.
4.3 Objetivos organizacionales por los que adoptar un estándar de Calidad
4.3.1 Característicasquedeben de cumplir los objetivosorganizacionalesdentro deun
proyecto
4.3.2 Estableciendo los diferentesobjetivosdentro deun proyecto desoftware
4.3.3. Áreasde actividad dondedesempeñarobjetivosorganizacionales
4.4 Estándares IEEE SESC (Software Engineering Estandars Comitee)
4.4.1 IEEE Std.730 Standard forsoftwareQuality AssurancePlans
4.4.2 IEEE std1012 Standard forSoftwareValidationand Verification
4.5 Estándares de la Organización Internacional para la Estandarización (ISO)
4.5.1 ISO/IEC/IEEE29119 SoftwareTesting Standard
5. Pruebas de Calidad del Software
5.1 Características de las pruebas de Calidad del Software
5.1.1 Puntosimportantesa la hora de realizar PruebasdeCalidad del Software
5.2 Niveles de pruebas de Calidad del Software
5.2.1 PruebasUnitarias
5.2.2 Pruebasdeintegración
5.2.3 Pruebasdesistemas
5.2.4 Pruebasdeaceptación
5.3 Tipos de pruebas de Calidad del Software
5.3.1 Pruebasdecaja negra
5.3.2 Pruebasdecaja blanca
5.4 Pruebas funcionales de Calidad del Software
5.4.1 Fasespara la realización de pruebasfuncionalesdeCalidad delSoftware
5.4.2 Tipos de pruebasfuncionalesdeCalidad del Software
5.5 Pruebas no funcionales de Calidad del Software
5.5.1 Tipos de pruebasno funcionalesdeCalidad delSoftware
El beneficio íntegro de este libro, irá destinado a la Fundación Aladina, que ayuda a
niños y adolescentes con cáncer.
Muchas gracias por tu ayuda.
LaFundaciónAladina nació en 2005 pero comenzó agestarse cuatro años antes, cuando
nuestro presidente, PacoArango,pidió a un amigo que le buscaseun proyecto en el que
“mancharse las manos”. “Quería donar mi tiempo porque he tenido mucha suerte en la
vida”, asegura el fundador. Así fue: visitó por primera vez el Hospital Niño Jesús la tarde
de un miércoles de 2001 y ya no pudo dejarlo.
Aladina proporciona apoyo integral a niños, adolescentes y familiares. Sabemos que
tan importante como cuidar el cuerpo es atender el alma de nuestros pequeños
valientes, por eso ofrecemos asistencia psicológica, emocional y material. Para ello
contamos con la ayuda inestimable de nuestro gran equipo de voluntarios.
La Fundación Aladina es una organización independiente, no ligada a ningún grupo
político ni religioso y clasificada como Fundación de Asistencia Social por orden del
Ministerio de Trabajo y Asuntos Sociales de 8 de febrero de 2006 con el nº 28-1.378 e
inscrita en el Registro de Fundaciones de la Comunidad de Madrid con el número de
Hoja Personal 700, 1ª, Tomo CCXXVII, Folio: 201-215
1. Introducción
Por definición la calidad es la propiedad o conjunto de propiedades inherentes a algo,
que permiten juzgar su valor y hablando de software, es la adecuación de un producto
o servicio a las características especificadas.
Cuando hablamos de aseguramiento de la calidad, por definición, decimos que es el
conjunto de acciones planificadas y sistemáticas necesarias para proporcionar la
confianza adecuada de que un producto o servicio satisfará los requerimientos dados
sobre calidad. Explicado de otra manera, nos referimos a qué tipo de comprobaciones
tenemos que realizar para que un software determinado funcione exactamente como
se ha pedido.
Por lo tanto, un profesional dedicado al aseguramiento de la calidad del software tiene
que sercapaz de diseñar estaseriede actividades y hacer los determinados "filtros" para
cumplir con la calidad que se solicita por parte de los clientes finales del software y por
lo tanto, que no les llegue defectuoso.
1.1 Un poco de historia.
Hace bastantes años, el aseguramiento de la calidad no entraba dentro de la
planificación, no tenía presupuesto dentro del mismo y como consecuencia muchos de
los proyectos tenían problemas técnicos, no funcionaban como se esperaba y por lo
tanto eran cancelados incluso mucho antes de salir a la luz o de ser entregados.
Esto se “resolvió” con la técnica de verificación y validación que se ejecutaba a lo largo
de todo eldesarrollo delsoftware. Estatécnicaempleaba nuevas metodologías que eran
muy rigurosas y hacían que la Calidad ascendiera considerablemente, posibilitando un
porcentaje mucho más alto de éxito que de fracaso.
La verificación aseguraba que el producto se hiciese de manera correcta y tuviese un
comportamiento correcto para los usuarios finales, por otro lado, la validación estaba
asociada al grado de satisfacción que se quería aplicar al producto, siendo este el más
alto que se pudiese conseguir.
1.2 Situación actual.
Cuando el desarrollo del software fue evolucionando, las técnicas de la verificación y la
validación se fueron quedando cortas, por lo que se comenzó a implementar lo que se
llama SQA o Aseguramiento de la Calidad del Software. Esto vino propiciado por la
creación de herramientas que identificaban problemas de manera temprana, ya que la
calidad se comenzaba a implementar desde antes de que se empezara a desarrollar,
pudiendo corregir los defectos en cada etapa, ahorrando esfuerzo, tiempo y recursos,
sobre todo, económicos.
A lo largo de los años este tipo de práctica se ha globalizado, encontrándose en,
prácticamente, todos los desarrollos de software. A día de hoy, un error puede causar
un movimiento voluntario de gran parte de clientes hacia otras herramientas, pudiendo
ocasionar graves pérdidas económicas que las empresas no se pueden permitir.
Esto viene dado por el gran nivel de competitividad y alternativas que actualmente
encontramos en el mercado.
Un mercado cada vez mayor, cada vez más exigente, cada vez más competitivo y cada
vez más demandado, no puede obviar el aseguramiento de la calidad bajo ningún
concepto, obligando, en todos los casos, a introducir, más o menos rápido, las prácticas
que aseguranla calidadde una manera correcta y efectiva. Estose observa cada vez más
en las empresas, que invierten cantidades mayores en mejorar los procesos de
desarrollo para poder distinguirse de los demás, sobre todo innovando, destacándose
de sus principales competidores. Esta innovación está llegando de la mano de una
estabilidad cada vez mayor y un cuidado enorme a la hora de sacar un software a
producción, apoyándose en diferentes normas (ISO, IEEE) que ayudan a estandarizar
procesos y criterios.
1.3 Propósito de este libro
El aseguramiento de la calidad del software no es un tema que hay que dejar de lado,
actualmente, es una necesidad absoluta dentro del desarrollo del software.
Algo que he aprendido a lo largo de mi carrera profesional es que las cosas bien hechas
al final son duraderas y dignas de admirar. Las empresas que desarrollan software y
quieren que sus productos sean tenidos en cuenta, deberían de poner en práctica las
ideas que expongo y mejorar sus procesos.
De esta manera, las empresas mejorarán su sistema financiero, sus costes e inversiones
y su visibilidad de cara al exterior y a los clientes potenciales que utilizarán las
aplicaciones que saquen a la luz.
Como expongo más arriba, a día de hoy, la calidad es una necesidad absoluta en el
mercado actual, tanto a nivel de desarrollo de software como a nivel de cualquier
desarrollo de producto físico o virtual. Los clientes necesitan saber que las inversiones
que realizanson a largoplazo, duraderas y que funcionen como quieren y ellos necesiten
y más, cuando hablamos en términos de épocas de crisis.
El propósito de este libro es intentar facilitar, a los diferentes profesionales, una guía de
definiciones y conceptos ágiles, siendo un apoyo para poder implementarlos en sus
proyectos. Intentando, día a día, que cada vez se tenga más en cuenta el aseguramiento
de la calidady tender a una mayor utilización en las empresas para mejorar sus procesos
de desarrollo.
2. El proceso del Aseguramiento de la Calidad
Cuando hablamos de aseguramiento de la calidad, tenemos, como se explica en el
capítulo anterior, una serie de definiciones y conceptos demasiado generales, que no
concretan su utilización, puntos o partes que lo componen. En este capítulo vamos a
desgranar totalmente el aseguramiento de la calidad para explicar de manera detallada
todo lo relacionado con el mismo.
Como primer punto, es importante decir que elaseguramiento de la calidadno sepuede
centralizar en una sola persona, siempre tiene que ser un equipo de trabajo el que se
encargue de las tareas esenciales en el proyecto.
El equipo de calidad, tiene que trabajar desde el principio estableciendo los planes
necesarios y aplicando la metodología adecuada para un determinado proyecto,
elaborando todos los pasos que hay que dar para que se cumpla todo de manera
correcta. Durante todo elciclode vida del proyecto, elequipo de Calidadtiene que tener
muy presente que se pueden sufrir modificaciones o mejoras en su manera de trabajar
que garanticen que el software salga a producción de la manera adecuada.
El rol principal de un equipo de aseguramiento de la calidad del software es guiar al
equipo de desarrollo a alcanzar un producto de alta calidad, implementando un
procedimiento de trabajo estable, sin fisuras y totalmente ágil. Para que se asegure la
calidad tenemos que tener claro que absolutamente todo el proyecto tiene que aportar
su granito de arena en este fin, ya que no se garantiza todo cuando pasa por el equipo
de calidad, tiene que garantizarse desde el inicio del trabajo hasta que el cliente lo está
utilizando, de esta manera, se tiene que implicar absolutamente toda la empresa.
Este equipo se tiene que encargar de realizar el plan de aseguramiento, revisar el
software, verificarlo y generar los informes y la documentación necesaria.
Como segundo punto, hay que dejar claro que el aseguramiento de la calidad tiene que
empezar antes de desarrollar el software. De esta manera, aumentará casi
automáticamente la calidad y disminuirán los riesgos a los que nos enfrentemos en el
futuro, ya que tendremos planes de choque ya escritos y provistos de sentido acorde
con el software al que nos enfrentamos.
Durante el ciclo de vida del software el equipo ha de responsabilizarse de que existen
revisiones técnicas, hay un control de documentación y de cambios, una utilización
correcta de la metodología y definiciones o mejoras en las técnicas de calidad, tanto a
nivel de auditoría o registro de la información.
Cuando hablamos de un equipo de aseguramiento de calidad, un equipo de calidad o de
SQA, lo primero que se nos viene a la cabeza es la realización de pruebas, pero eso no
lo es todo, muchas veces, es más beneficioso otra clase de trabajo o de tareas dentro
del proyecto que lo que es una dedicación absoluta a la realización de pruebas. Esto nos
da una idea de la diferenciación entre un equipo de SQA y un equipo de Testing, por
ejemplo.
Un equipo dedicado al aseguramiento de la calidad siempre aportará una serie de
beneficios dentro de un proyecto. Es muy complicado encontrar alguna situación donde
el proyecto se ha visto empeorado por realizar alguna práctica de Calidad.
Dentro de las aportaciones que logra una buena inversión en Calidad podemos
encontrar:
- Un aumento total de las posibilidades de éxito del proyecto, pasando por una
mayor satisfacción de los clientes finales y una visibilidad exterior más sólida.
- Permitirá verificar que los estándares que se han querido aplicar a lo largo del
ciclo de vida se han llevado a cabo y se han cumplido, construyendo las métricas
necesarias para su valoración posterior.
- Definir un plan de monitorización de desarrollo contundente y sólido, que
aumente la velocidad de los equipos, ganando estabilidad, ahorrando recursos y
cumpliendolas planificacionesque se quieren lograr a lo largo detoda la vida útil
del proyecto.
Cuando cumplimos con las tres aportaciones anteriores, nos encontramos que durante
todo el recorrido de nuestro software desde que comenzó hasta que finaliza y es
entregado a los clientes que lo utilizan con garantías,podríamos exponer que beneficios
secumplen cuando un equipo de calidadtrabaja en el proyecto y que jamás aparecerían
en un proyecto sin él. De esta manera, recopilamos todo lo descrito anteriormente en
seis sencillos puntos:
1. Se han detectado rápidamente problemas, identificándose y solucionándose en
etapas tempranas del desarrollo.
2. Se afianza un desarrollo mucho más sólido, más mantenible y que a lo largo de
los años podrá ser reutilizado en otros proyectos o continuado sin recurrir a
costosas e inmanejables refactorizaciones.
3. Evitamos gastos innecesarios, recurrentes y que pueden desviar al 100% el
objetivo del proyecto, teniendo retrasos de entregas, mantenimientos excesivos
y problemas a la hora de cerrar fases que estaban planificadas de antemano.
4. Los objetivos de los equipos, que suelen ser más individualizados, se ven
afianzados acorde a los objetivos de la empresa que está desarrollando el
software.
5. Se crean y continúan estándares de trabajo que apoyan el proceso de desarrollo,
estableciendo históricos y documentación muy necesaria.
6. Se mejora continuamente el correcto funcionamiento del proceso, no del
producto.

Más contenido relacionado

La actualidad más candente

8 disciplinas (8 d)
8 disciplinas (8 d)8 disciplinas (8 d)
8 disciplinas (8 d)Miguel Angel
 
Zeety lineamientos de trabajo
Zeety   lineamientos de trabajoZeety   lineamientos de trabajo
Zeety lineamientos de trabajogrupozeety
 
Manual de Procedimientos
Manual de ProcedimientosManual de Procedimientos
Manual de Procedimientossoftkyj192
 
Análisis de causa raíz (8 disciplinas)
Análisis de causa raíz (8 disciplinas)Análisis de causa raíz (8 disciplinas)
Análisis de causa raíz (8 disciplinas)Victor H. Olguin
 
Liderando un Cambio Cultural a través de Prácticas Devops en LATAM Airlines
Liderando un Cambio Cultural a través de Prácticas Devops en LATAM AirlinesLiderando un Cambio Cultural a través de Prácticas Devops en LATAM Airlines
Liderando un Cambio Cultural a través de Prácticas Devops en LATAM AirlinesLuiza Nunes
 
Caso1 cuesta vanessa_pearson
Caso1 cuesta vanessa_pearsonCaso1 cuesta vanessa_pearson
Caso1 cuesta vanessa_pearsonvdcuesta
 
Q Austral
Q AustralQ Austral
Q Australcusmaic
 
QAustral
QAustralQAustral
QAustralcusmaim
 
Adpative software-development-y-lean-software-development
Adpative software-development-y-lean-software-developmentAdpative software-development-y-lean-software-development
Adpative software-development-y-lean-software-developmentDiego Ahumada
 
Transformación Digital en clave Cloud, ALM y DevOps
Transformación Digital en clave Cloud, ALM y DevOpsTransformación Digital en clave Cloud, ALM y DevOps
Transformación Digital en clave Cloud, ALM y DevOpsatSistemas
 
Camino hacia la calidad superlativa - Marcelo Corpucci
Camino hacia la calidad superlativa - Marcelo CorpucciCamino hacia la calidad superlativa - Marcelo Corpucci
Camino hacia la calidad superlativa - Marcelo CorpucciGlobalLogic Latinoamérica
 
8 d's para la solución de problemas
8 d's para la solución de problemas8 d's para la solución de problemas
8 d's para la solución de problemasJesus Sanchez
 
Cómo resolver un problema 8´d
Cómo resolver un problema 8´dCómo resolver un problema 8´d
Cómo resolver un problema 8´dGaby Briones
 
Introducción Ágil a eXtreme Programming
Introducción Ágil a eXtreme ProgrammingIntroducción Ágil a eXtreme Programming
Introducción Ágil a eXtreme ProgrammingChileAgil
 
Ingenieria del Software & Caracteristicas y Mitos del Software.
Ingenieria del Software & Caracteristicas y Mitos del Software.Ingenieria del Software & Caracteristicas y Mitos del Software.
Ingenieria del Software & Caracteristicas y Mitos del Software.claudyabra
 

La actualidad más candente (20)

8 disciplinas (8 d)
8 disciplinas (8 d)8 disciplinas (8 d)
8 disciplinas (8 d)
 
Zeety lineamientos de trabajo
Zeety   lineamientos de trabajoZeety   lineamientos de trabajo
Zeety lineamientos de trabajo
 
Manual de Procedimientos
Manual de ProcedimientosManual de Procedimientos
Manual de Procedimientos
 
Mitos del software
Mitos del softwareMitos del software
Mitos del software
 
Análisis de causa raíz (8 disciplinas)
Análisis de causa raíz (8 disciplinas)Análisis de causa raíz (8 disciplinas)
Análisis de causa raíz (8 disciplinas)
 
Liderando un Cambio Cultural a través de Prácticas Devops en LATAM Airlines
Liderando un Cambio Cultural a través de Prácticas Devops en LATAM AirlinesLiderando un Cambio Cultural a través de Prácticas Devops en LATAM Airlines
Liderando un Cambio Cultural a través de Prácticas Devops en LATAM Airlines
 
Caso1 cuesta vanessa_pearson
Caso1 cuesta vanessa_pearsonCaso1 cuesta vanessa_pearson
Caso1 cuesta vanessa_pearson
 
Q Austral
Q AustralQ Austral
Q Austral
 
QAustral
QAustralQAustral
QAustral
 
Curso de 8 Disciplinas
Curso de 8 DisciplinasCurso de 8 Disciplinas
Curso de 8 Disciplinas
 
Adpative software-development-y-lean-software-development
Adpative software-development-y-lean-software-developmentAdpative software-development-y-lean-software-development
Adpative software-development-y-lean-software-development
 
Metodologías Agiles
Metodologías AgilesMetodologías Agiles
Metodologías Agiles
 
Transformación Digital en clave Cloud, ALM y DevOps
Transformación Digital en clave Cloud, ALM y DevOpsTransformación Digital en clave Cloud, ALM y DevOps
Transformación Digital en clave Cloud, ALM y DevOps
 
Camino hacia la calidad superlativa - Marcelo Corpucci
Camino hacia la calidad superlativa - Marcelo CorpucciCamino hacia la calidad superlativa - Marcelo Corpucci
Camino hacia la calidad superlativa - Marcelo Corpucci
 
8 d's para la solución de problemas
8 d's para la solución de problemas8 d's para la solución de problemas
8 d's para la solución de problemas
 
Cómo resolver un problema 8´d
Cómo resolver un problema 8´dCómo resolver un problema 8´d
Cómo resolver un problema 8´d
 
Introducción Ágil a eXtreme Programming
Introducción Ágil a eXtreme ProgrammingIntroducción Ágil a eXtreme Programming
Introducción Ágil a eXtreme Programming
 
8 Disciplinas
8 Disciplinas8 Disciplinas
8 Disciplinas
 
Ingenieria del Software & Caracteristicas y Mitos del Software.
Ingenieria del Software & Caracteristicas y Mitos del Software.Ingenieria del Software & Caracteristicas y Mitos del Software.
Ingenieria del Software & Caracteristicas y Mitos del Software.
 
Evolucion del software crisis y mitos
Evolucion del software crisis y mitosEvolucion del software crisis y mitos
Evolucion del software crisis y mitos
 

Similar a Aseguramiento de la calidad - Víctor Gómez Adán

Software Gurú 2008: Pruebas de Aceptación
Software Gurú 2008: Pruebas de AceptaciónSoftware Gurú 2008: Pruebas de Aceptación
Software Gurú 2008: Pruebas de AceptaciónErnesto Kiszkurno
 
Proyecto de emprendimiento 1
Proyecto de emprendimiento 1Proyecto de emprendimiento 1
Proyecto de emprendimiento 1Astrid Hernandez
 
Actividad teorica practica victor mauricio fernandez grupo 04
Actividad teorica practica victor mauricio fernandez  grupo 04Actividad teorica practica victor mauricio fernandez  grupo 04
Actividad teorica practica victor mauricio fernandez grupo 04Mauricio Fernandez Guerra
 
EXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptx
EXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptxEXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptx
EXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptxmariasanchezdefranci
 
Guia del innovador
Guia del innovadorGuia del innovador
Guia del innovadorPaola Ramos
 
Ariel ramirez ensayo_actividad.2.1doc
Ariel ramirez ensayo_actividad.2.1docAriel ramirez ensayo_actividad.2.1doc
Ariel ramirez ensayo_actividad.2.1docAriel Ramirez
 
Proyecto integrador ivan aguirre salazar
Proyecto integrador  ivan aguirre salazarProyecto integrador  ivan aguirre salazar
Proyecto integrador ivan aguirre salazarsebeta1001
 
TRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUAL
TRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUALTRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUAL
TRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUALkasamo18
 
Clase 1 calidad en el desarrollo de software
Clase 1 calidad en el desarrollo de softwareClase 1 calidad en el desarrollo de software
Clase 1 calidad en el desarrollo de softwareMartita Lezcano
 
Perfil de proyecto de grado 2013 corregido
Perfil de proyecto de grado 2013 corregidoPerfil de proyecto de grado 2013 corregido
Perfil de proyecto de grado 2013 corregidoWalter Huanacota Choque
 
Trabajo final ingenieria de sistemas
Trabajo final ingenieria de sistemasTrabajo final ingenieria de sistemas
Trabajo final ingenieria de sistemasAngel Aguirre
 
Memoria de estadias (UTN) Diseño industrial
Memoria de estadias (UTN) Diseño industrialMemoria de estadias (UTN) Diseño industrial
Memoria de estadias (UTN) Diseño industrialRoger Robles Villarreal
 

Similar a Aseguramiento de la calidad - Víctor Gómez Adán (20)

Software Gurú 2008: Pruebas de Aceptación
Software Gurú 2008: Pruebas de AceptaciónSoftware Gurú 2008: Pruebas de Aceptación
Software Gurú 2008: Pruebas de Aceptación
 
Conceptos Generales de Calidad
Conceptos Generales de CalidadConceptos Generales de Calidad
Conceptos Generales de Calidad
 
Proyecto de emprendimiento 1
Proyecto de emprendimiento 1Proyecto de emprendimiento 1
Proyecto de emprendimiento 1
 
Documentacionpara todos
Documentacionpara todosDocumentacionpara todos
Documentacionpara todos
 
Actividad teorica practica victor mauricio fernandez grupo 04
Actividad teorica practica victor mauricio fernandez  grupo 04Actividad teorica practica victor mauricio fernandez  grupo 04
Actividad teorica practica victor mauricio fernandez grupo 04
 
EXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptx
EXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptxEXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptx
EXPOSICION_GRUPO_1 rol de la organizaciones modernas.pptx
 
Guia del innovador
Guia del innovadorGuia del innovador
Guia del innovador
 
Ariel ramirez ensayo_actividad.2.1doc
Ariel ramirez ensayo_actividad.2.1docAriel ramirez ensayo_actividad.2.1doc
Ariel ramirez ensayo_actividad.2.1doc
 
Proyecto integrador ivan aguirre salazar
Proyecto integrador  ivan aguirre salazarProyecto integrador  ivan aguirre salazar
Proyecto integrador ivan aguirre salazar
 
TRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUAL
TRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUALTRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUAL
TRABAJO ESCRITO - CLONES VIRTUALES O SERVICIO DE ASISTENTE VIRTUAL
 
Doc tesis
Doc tesis Doc tesis
Doc tesis
 
Clase 1 calidad en el desarrollo de software
Clase 1 calidad en el desarrollo de softwareClase 1 calidad en el desarrollo de software
Clase 1 calidad en el desarrollo de software
 
Perfil de proyecto de grado 2013 corregido
Perfil de proyecto de grado 2013 corregidoPerfil de proyecto de grado 2013 corregido
Perfil de proyecto de grado 2013 corregido
 
Trabajo final ingenieria de sistemas
Trabajo final ingenieria de sistemasTrabajo final ingenieria de sistemas
Trabajo final ingenieria de sistemas
 
Practica 1 emprendimiento
Practica 1 emprendimientoPractica 1 emprendimiento
Practica 1 emprendimiento
 
Programa final p.e 2
Programa final p.e 2Programa final p.e 2
Programa final p.e 2
 
Como mejorar la gestion ciclo de vida del producto
Como mejorar la gestion ciclo de vida del productoComo mejorar la gestion ciclo de vida del producto
Como mejorar la gestion ciclo de vida del producto
 
Introduccion a los casos de uso
Introduccion a los casos de usoIntroduccion a los casos de uso
Introduccion a los casos de uso
 
Memoria de estadias (UTN) Diseño industrial
Memoria de estadias (UTN) Diseño industrialMemoria de estadias (UTN) Diseño industrial
Memoria de estadias (UTN) Diseño industrial
 
Dosier Web
Dosier WebDosier Web
Dosier Web
 

Más de Víctor Gómez Adán

QA Global Services - Nuestros Servicios
QA Global Services - Nuestros ServiciosQA Global Services - Nuestros Servicios
QA Global Services - Nuestros ServiciosVíctor Gómez Adán
 
Un proceso para gobernarlos a todos
Un proceso para gobernarlos a todosUn proceso para gobernarlos a todos
Un proceso para gobernarlos a todosVíctor Gómez Adán
 
La calidad comienza en nosotros mismos
La calidad comienza en nosotros mismosLa calidad comienza en nosotros mismos
La calidad comienza en nosotros mismosVíctor Gómez Adán
 
La calidad comienza en nosotros mismos
La calidad comienza en nosotros mismosLa calidad comienza en nosotros mismos
La calidad comienza en nosotros mismosVíctor Gómez Adán
 
Como asegurar la Calidad en dispositivos móviles...y no morir en el intento
Como asegurar la Calidad en dispositivos móviles...y no morir en el intentoComo asegurar la Calidad en dispositivos móviles...y no morir en el intento
Como asegurar la Calidad en dispositivos móviles...y no morir en el intentoVíctor Gómez Adán
 
El tester no es un desarrollador - VLCTesting '14
El tester no es un desarrollador - VLCTesting '14El tester no es un desarrollador - VLCTesting '14
El tester no es un desarrollador - VLCTesting '14Víctor Gómez Adán
 

Más de Víctor Gómez Adán (7)

QA Lovers® - Formación
QA Lovers® - FormaciónQA Lovers® - Formación
QA Lovers® - Formación
 
QA Global Services - Nuestros Servicios
QA Global Services - Nuestros ServiciosQA Global Services - Nuestros Servicios
QA Global Services - Nuestros Servicios
 
Un proceso para gobernarlos a todos
Un proceso para gobernarlos a todosUn proceso para gobernarlos a todos
Un proceso para gobernarlos a todos
 
La calidad comienza en nosotros mismos
La calidad comienza en nosotros mismosLa calidad comienza en nosotros mismos
La calidad comienza en nosotros mismos
 
La calidad comienza en nosotros mismos
La calidad comienza en nosotros mismosLa calidad comienza en nosotros mismos
La calidad comienza en nosotros mismos
 
Como asegurar la Calidad en dispositivos móviles...y no morir en el intento
Como asegurar la Calidad en dispositivos móviles...y no morir en el intentoComo asegurar la Calidad en dispositivos móviles...y no morir en el intento
Como asegurar la Calidad en dispositivos móviles...y no morir en el intento
 
El tester no es un desarrollador - VLCTesting '14
El tester no es un desarrollador - VLCTesting '14El tester no es un desarrollador - VLCTesting '14
El tester no es un desarrollador - VLCTesting '14
 

Aseguramiento de la calidad - Víctor Gómez Adán

  • 1.
  • 2. Título: Aseguramiento de la Calidad © 2016, Víctor Gómez Adán © De los textos: Víctor Gómez Adán © Ilustración de portada: Víctor Gómez Adán 1ª edición – ISBN 978-84-608-7078-4 Reservados todos los derechos. No se permite la reproducción total o parcial de esta obra, ni su incorporación a un sistema informático, ni su transmisión en cualquier forma o por cualquier medio (electrónico, mecánico, fotocopia, grabación u otros) sin autorización previa y por escrito de los titulares del copyright. La infracción de dichos derechos puede constituir un delito contra la propiedad intelectual.
  • 3. A mi mujer, Isabel, que siempre me sigue y apoya en mis locas peripecias. Mi fuente inagotable de inspiración para todo lo que me propongo. A mi hermana, Sandra y a mi madre, Ángeles, por las correcciones hasta altas horas de la noche y confiar siempre en mi criterio. Sin vosotras tres, este libro no hubiera sido posible, gracias.
  • 4. ÍNDICE 1. Introducción 1.1 Un poco de historia. 1.2 Situación actual. 1.3 Propósito de este libro 2. El procesodel Aseguramientode laCalidad 2.1 Subprocesos dentro del Aseguramiento de la Calidad 2.2 Tipos de procesos de Aseguramiento de la Calidad 2.3 Aplicaciones de los procesos de Aseguramiento de la Calidad 2.4 Simbiosis entre el equipo de Calidad y el cliente final del software 3. Metodologías de Desarrollo y Aseguramientode laCalidad 3.1 Historia de las metodologías de Desarrollo y Aseguramiento de la Calidad 3.1.1 MetodologíasclásicasdeDesarrollo y Aseguramiento dela Calidad 3.1.2 MetodologíasmodernasdeDesarrollo y Aseguramiento dela Calidad 3.2 Enfoques de metodologías de Desarrollo y del Aseguramiento de la Calidad 3.2.1 Enfoquemetodológico en Cascada 3.2.2 Enfoquemetodológico Prototipado 3.2.3 Enfoquemetodológico Incremental 3.2.4 Enfoquemetodológico en Espiral 3.2.5 Enfoquemetodológico RAD 3.3 Principales aportaciones de las metodologías 3.4 Ampliando las metodologías en base a las necesidades del proyecto 3.4.1 Revisando la metodología a lo largo del ciclo devida del proyecto 4. Estándares de Calidaddel Software 4.1 Como protegen los estándares al comprador del software 4.2 Como protegen los estándares al negocio del proyecto. 4.3 Objetivos organizacionales por los que adoptar un estándar de Calidad 4.3.1 Característicasquedeben de cumplir los objetivosorganizacionalesdentro deun proyecto 4.3.2 Estableciendo los diferentesobjetivosdentro deun proyecto desoftware 4.3.3. Áreasde actividad dondedesempeñarobjetivosorganizacionales 4.4 Estándares IEEE SESC (Software Engineering Estandars Comitee) 4.4.1 IEEE Std.730 Standard forsoftwareQuality AssurancePlans 4.4.2 IEEE std1012 Standard forSoftwareValidationand Verification 4.5 Estándares de la Organización Internacional para la Estandarización (ISO) 4.5.1 ISO/IEC/IEEE29119 SoftwareTesting Standard 5. Pruebas de Calidad del Software 5.1 Características de las pruebas de Calidad del Software 5.1.1 Puntosimportantesa la hora de realizar PruebasdeCalidad del Software 5.2 Niveles de pruebas de Calidad del Software 5.2.1 PruebasUnitarias 5.2.2 Pruebasdeintegración 5.2.3 Pruebasdesistemas 5.2.4 Pruebasdeaceptación 5.3 Tipos de pruebas de Calidad del Software 5.3.1 Pruebasdecaja negra
  • 5. 5.3.2 Pruebasdecaja blanca 5.4 Pruebas funcionales de Calidad del Software 5.4.1 Fasespara la realización de pruebasfuncionalesdeCalidad delSoftware 5.4.2 Tipos de pruebasfuncionalesdeCalidad del Software 5.5 Pruebas no funcionales de Calidad del Software 5.5.1 Tipos de pruebasno funcionalesdeCalidad delSoftware
  • 6. El beneficio íntegro de este libro, irá destinado a la Fundación Aladina, que ayuda a niños y adolescentes con cáncer. Muchas gracias por tu ayuda. LaFundaciónAladina nació en 2005 pero comenzó agestarse cuatro años antes, cuando nuestro presidente, PacoArango,pidió a un amigo que le buscaseun proyecto en el que “mancharse las manos”. “Quería donar mi tiempo porque he tenido mucha suerte en la vida”, asegura el fundador. Así fue: visitó por primera vez el Hospital Niño Jesús la tarde de un miércoles de 2001 y ya no pudo dejarlo. Aladina proporciona apoyo integral a niños, adolescentes y familiares. Sabemos que tan importante como cuidar el cuerpo es atender el alma de nuestros pequeños valientes, por eso ofrecemos asistencia psicológica, emocional y material. Para ello contamos con la ayuda inestimable de nuestro gran equipo de voluntarios. La Fundación Aladina es una organización independiente, no ligada a ningún grupo político ni religioso y clasificada como Fundación de Asistencia Social por orden del Ministerio de Trabajo y Asuntos Sociales de 8 de febrero de 2006 con el nº 28-1.378 e inscrita en el Registro de Fundaciones de la Comunidad de Madrid con el número de Hoja Personal 700, 1ª, Tomo CCXXVII, Folio: 201-215
  • 7. 1. Introducción Por definición la calidad es la propiedad o conjunto de propiedades inherentes a algo, que permiten juzgar su valor y hablando de software, es la adecuación de un producto o servicio a las características especificadas. Cuando hablamos de aseguramiento de la calidad, por definición, decimos que es el conjunto de acciones planificadas y sistemáticas necesarias para proporcionar la confianza adecuada de que un producto o servicio satisfará los requerimientos dados sobre calidad. Explicado de otra manera, nos referimos a qué tipo de comprobaciones tenemos que realizar para que un software determinado funcione exactamente como se ha pedido. Por lo tanto, un profesional dedicado al aseguramiento de la calidad del software tiene que sercapaz de diseñar estaseriede actividades y hacer los determinados "filtros" para cumplir con la calidad que se solicita por parte de los clientes finales del software y por lo tanto, que no les llegue defectuoso. 1.1 Un poco de historia. Hace bastantes años, el aseguramiento de la calidad no entraba dentro de la planificación, no tenía presupuesto dentro del mismo y como consecuencia muchos de los proyectos tenían problemas técnicos, no funcionaban como se esperaba y por lo tanto eran cancelados incluso mucho antes de salir a la luz o de ser entregados. Esto se “resolvió” con la técnica de verificación y validación que se ejecutaba a lo largo de todo eldesarrollo delsoftware. Estatécnicaempleaba nuevas metodologías que eran muy rigurosas y hacían que la Calidad ascendiera considerablemente, posibilitando un porcentaje mucho más alto de éxito que de fracaso. La verificación aseguraba que el producto se hiciese de manera correcta y tuviese un comportamiento correcto para los usuarios finales, por otro lado, la validación estaba asociada al grado de satisfacción que se quería aplicar al producto, siendo este el más alto que se pudiese conseguir. 1.2 Situación actual. Cuando el desarrollo del software fue evolucionando, las técnicas de la verificación y la validación se fueron quedando cortas, por lo que se comenzó a implementar lo que se llama SQA o Aseguramiento de la Calidad del Software. Esto vino propiciado por la creación de herramientas que identificaban problemas de manera temprana, ya que la calidad se comenzaba a implementar desde antes de que se empezara a desarrollar, pudiendo corregir los defectos en cada etapa, ahorrando esfuerzo, tiempo y recursos, sobre todo, económicos. A lo largo de los años este tipo de práctica se ha globalizado, encontrándose en, prácticamente, todos los desarrollos de software. A día de hoy, un error puede causar un movimiento voluntario de gran parte de clientes hacia otras herramientas, pudiendo ocasionar graves pérdidas económicas que las empresas no se pueden permitir.
  • 8. Esto viene dado por el gran nivel de competitividad y alternativas que actualmente encontramos en el mercado. Un mercado cada vez mayor, cada vez más exigente, cada vez más competitivo y cada vez más demandado, no puede obviar el aseguramiento de la calidad bajo ningún concepto, obligando, en todos los casos, a introducir, más o menos rápido, las prácticas que aseguranla calidadde una manera correcta y efectiva. Estose observa cada vez más en las empresas, que invierten cantidades mayores en mejorar los procesos de desarrollo para poder distinguirse de los demás, sobre todo innovando, destacándose de sus principales competidores. Esta innovación está llegando de la mano de una estabilidad cada vez mayor y un cuidado enorme a la hora de sacar un software a producción, apoyándose en diferentes normas (ISO, IEEE) que ayudan a estandarizar procesos y criterios. 1.3 Propósito de este libro El aseguramiento de la calidad del software no es un tema que hay que dejar de lado, actualmente, es una necesidad absoluta dentro del desarrollo del software. Algo que he aprendido a lo largo de mi carrera profesional es que las cosas bien hechas al final son duraderas y dignas de admirar. Las empresas que desarrollan software y quieren que sus productos sean tenidos en cuenta, deberían de poner en práctica las ideas que expongo y mejorar sus procesos. De esta manera, las empresas mejorarán su sistema financiero, sus costes e inversiones y su visibilidad de cara al exterior y a los clientes potenciales que utilizarán las aplicaciones que saquen a la luz. Como expongo más arriba, a día de hoy, la calidad es una necesidad absoluta en el mercado actual, tanto a nivel de desarrollo de software como a nivel de cualquier desarrollo de producto físico o virtual. Los clientes necesitan saber que las inversiones que realizanson a largoplazo, duraderas y que funcionen como quieren y ellos necesiten y más, cuando hablamos en términos de épocas de crisis. El propósito de este libro es intentar facilitar, a los diferentes profesionales, una guía de definiciones y conceptos ágiles, siendo un apoyo para poder implementarlos en sus proyectos. Intentando, día a día, que cada vez se tenga más en cuenta el aseguramiento de la calidady tender a una mayor utilización en las empresas para mejorar sus procesos de desarrollo. 2. El proceso del Aseguramiento de la Calidad Cuando hablamos de aseguramiento de la calidad, tenemos, como se explica en el capítulo anterior, una serie de definiciones y conceptos demasiado generales, que no concretan su utilización, puntos o partes que lo componen. En este capítulo vamos a desgranar totalmente el aseguramiento de la calidad para explicar de manera detallada todo lo relacionado con el mismo.
  • 9. Como primer punto, es importante decir que elaseguramiento de la calidadno sepuede centralizar en una sola persona, siempre tiene que ser un equipo de trabajo el que se encargue de las tareas esenciales en el proyecto. El equipo de calidad, tiene que trabajar desde el principio estableciendo los planes necesarios y aplicando la metodología adecuada para un determinado proyecto, elaborando todos los pasos que hay que dar para que se cumpla todo de manera correcta. Durante todo elciclode vida del proyecto, elequipo de Calidadtiene que tener muy presente que se pueden sufrir modificaciones o mejoras en su manera de trabajar que garanticen que el software salga a producción de la manera adecuada. El rol principal de un equipo de aseguramiento de la calidad del software es guiar al equipo de desarrollo a alcanzar un producto de alta calidad, implementando un procedimiento de trabajo estable, sin fisuras y totalmente ágil. Para que se asegure la calidad tenemos que tener claro que absolutamente todo el proyecto tiene que aportar su granito de arena en este fin, ya que no se garantiza todo cuando pasa por el equipo de calidad, tiene que garantizarse desde el inicio del trabajo hasta que el cliente lo está utilizando, de esta manera, se tiene que implicar absolutamente toda la empresa. Este equipo se tiene que encargar de realizar el plan de aseguramiento, revisar el software, verificarlo y generar los informes y la documentación necesaria. Como segundo punto, hay que dejar claro que el aseguramiento de la calidad tiene que empezar antes de desarrollar el software. De esta manera, aumentará casi automáticamente la calidad y disminuirán los riesgos a los que nos enfrentemos en el futuro, ya que tendremos planes de choque ya escritos y provistos de sentido acorde con el software al que nos enfrentamos. Durante el ciclo de vida del software el equipo ha de responsabilizarse de que existen revisiones técnicas, hay un control de documentación y de cambios, una utilización correcta de la metodología y definiciones o mejoras en las técnicas de calidad, tanto a nivel de auditoría o registro de la información. Cuando hablamos de un equipo de aseguramiento de calidad, un equipo de calidad o de SQA, lo primero que se nos viene a la cabeza es la realización de pruebas, pero eso no lo es todo, muchas veces, es más beneficioso otra clase de trabajo o de tareas dentro del proyecto que lo que es una dedicación absoluta a la realización de pruebas. Esto nos da una idea de la diferenciación entre un equipo de SQA y un equipo de Testing, por ejemplo. Un equipo dedicado al aseguramiento de la calidad siempre aportará una serie de beneficios dentro de un proyecto. Es muy complicado encontrar alguna situación donde el proyecto se ha visto empeorado por realizar alguna práctica de Calidad. Dentro de las aportaciones que logra una buena inversión en Calidad podemos encontrar:
  • 10. - Un aumento total de las posibilidades de éxito del proyecto, pasando por una mayor satisfacción de los clientes finales y una visibilidad exterior más sólida. - Permitirá verificar que los estándares que se han querido aplicar a lo largo del ciclo de vida se han llevado a cabo y se han cumplido, construyendo las métricas necesarias para su valoración posterior. - Definir un plan de monitorización de desarrollo contundente y sólido, que aumente la velocidad de los equipos, ganando estabilidad, ahorrando recursos y cumpliendolas planificacionesque se quieren lograr a lo largo detoda la vida útil del proyecto. Cuando cumplimos con las tres aportaciones anteriores, nos encontramos que durante todo el recorrido de nuestro software desde que comenzó hasta que finaliza y es entregado a los clientes que lo utilizan con garantías,podríamos exponer que beneficios secumplen cuando un equipo de calidadtrabaja en el proyecto y que jamás aparecerían en un proyecto sin él. De esta manera, recopilamos todo lo descrito anteriormente en seis sencillos puntos: 1. Se han detectado rápidamente problemas, identificándose y solucionándose en etapas tempranas del desarrollo. 2. Se afianza un desarrollo mucho más sólido, más mantenible y que a lo largo de los años podrá ser reutilizado en otros proyectos o continuado sin recurrir a costosas e inmanejables refactorizaciones. 3. Evitamos gastos innecesarios, recurrentes y que pueden desviar al 100% el objetivo del proyecto, teniendo retrasos de entregas, mantenimientos excesivos y problemas a la hora de cerrar fases que estaban planificadas de antemano. 4. Los objetivos de los equipos, que suelen ser más individualizados, se ven afianzados acorde a los objetivos de la empresa que está desarrollando el software. 5. Se crean y continúan estándares de trabajo que apoyan el proceso de desarrollo, estableciendo históricos y documentación muy necesaria. 6. Se mejora continuamente el correcto funcionamiento del proceso, no del producto.