Monografias.com > Computación > Software
Descargar Imprimir Comentar Ver trabajos relacionados

Herramienta para gestión de pruebas basada en el estándar ISO/IEC 29119




Enviado por José Páez



  1. Resumen
  2. Introducción
  3. Fundamentación
    teórica
  4. Desarrollo de la
    herramienta SGP
  5. Resultados
    obtenidos
  6. Trabajos
    relacionados
  7. Conclusiones y
    recomendaciones
  8. Referencias

Resumen

Las pruebas de software son un elemento imprescindible y
crítico para la validación de un producto de
software. Es por esto que las pruebas de software deben apoyarse
en estándares que revisan los aspectos fundamentales que
debe considerar todo proceso de pruebas. Ante estos problemas, el
estándar ISO/IEC 29119 para pruebas de software es un
referente internacional en el ámbito de las pruebas
software y permite eliminar las inconsistencias existentes entre
las normas actuales. La presente investigación propone la
sistematización de la gestión de pruebas de
software utilizando como base este estándar internacional,
para lo cual se propone una herramienta que aportará a la
mejora de la calidad de un producto software, al evaluar el
proceso de pruebas y apoyar la toma de decisiones
oportunas.

PALABRAS CLAVE

ISO/IEC 29119, Pruebas de Software, Casos de Prueba,
Herramienta de Gestión de Casos de Prueba

ABSTRACT

Software testing is an essential and critical element
for the validation of a software product. This is why software
testing must be supported on standards that review key aspects to
consider throughout the testing process. Given these problems,
the standard ISO / IEC 29119 for software testing is an
international reference in the field of software testing and
eliminates the inconsistencies between existing standards. This
research proposes the systematization of the software testing
management processes using as a basis this international
standard, for which we propose a tool that will contribute to
improve the quality of a software product, to evaluate the
testing process and support timely decision-making.

KEYWORDS

ISO/IEC 29119, Software testing, Test Cases, Tool Test
Case Management

Introducción

Las pruebas de software son un elemento imprescindible y
crítico para la validación de un producto de
software [6]. En la actualidad las pruebas de software se hacen
más complicadas ya que deben hacer frente a una gran
cantidad de metodologías de desarrollo, lenguajes de
programación, sistemas operativos, hardware,
etc.

Es por esto que las pruebas de software deben apoyarse
en estándares que revisan los aspectos fundamentales que
debe considerar todo proceso de pruebas. Debido a esta
complejidad actualmente se cuentan con una gran cantidad de
software diseñado exclusivamente para la etapa de pruebas
pero que no abarca todo el ciclo de vida [6].

Ante estos problemas el estándar ISO/IEC 29119
para pruebas de software es un referente internacional en el
ámbito de las pruebas software y permite eliminar las
inconsistencias existentes entre las normas actuales, así
como cubrir aquellas áreas del proceso de pruebas de
software que simplemente no habían sido tratadas hasta
ahora en el resto de normas publicadas.

La presente investigación propone el desarrollo
de una herramienta que sistematice el estándar ISO/IEC
29119 [8], que cubrirá el ciclo de vida completo, a
través del análisis, diseño,
implementación y mantenimiento de las pruebas software. La
herramienta desarrollada se llama Sistema de Gestión de
Pruebas, en adelante SGP, y pretende ser un aporte en la
ingeniería de software para obtener productos con mayor
grado de aseguramiento de su calidad [1].

Entre las principales contribuciones de esta
investigación se puede citar: la sistematización de
un estándar internacional para pruebas de software en una
herramienta de gestión de pruebas, la mejora de la calidad
de un producto software, el apoyo a la toma de decisiones
oportunas. Además, permite identificar la fase más
crítica del desarrollo y la de mayor cuidado para futuros
proyectos.

Fundamentación
teórica

2.1 DEFINICIONES PRELIMINARES

La prueba es una actividad fundamental en los procesos
de desarrollo de software. De manera general, se puede decir que
la prueba de software permite al desarrollador determinar si el
producto generado satisface las especificaciones establecidas.
Así mismo, una prueba de software permite detectar la
presencia de errores que pudieran generar salidas o
comportamientos inapropiados durante su ejecución
[1].

En un ciclo de prueba se puede ejecutar una, alguna o
todas las pruebas planificadas para el producto de software. Uno
de los principales desafíos desde el punto de vista de la
prueba es estimar cuantos ciclos de pruebas se requieren, esta
consideración la realiza la persona encargada de ejecutar
la prueba [4].

2.2 VISIÓN GENERAL DEL
ESTÁNDAR ISO/IEC 29119

Son varias las normas que las principales organizaciones
internacionales de normalización (ISO, IEEE, BSI, etc.)
han publicado relacionadas directa o indirectamente con las
pruebas de software. En mayo de 2007, ISO crea un grupo de
trabajo para desarrollar el estándar ISO/IEC 29119, cuyo
objetivo es ser un estándar definitivo sobre pruebas
software, que recoja y estandarice el vocabulario, los
procesos, técnicas de documentación, etc., del
ciclo de vida de las pruebas.

Éste estándar pretende recopilar la
terminología, procesos, documentación y
técnicas para todo el ciclo de vida de pruebas en el
software. La ISO 29119 se compone de cuatro partes. Ver Figura
1.

Monografias.com

Figura 1. Estructura de ISO/IEC
29119

Parte 1: Definiciones y Vocabulario

Da una visión general de la norma y de los
conceptos generales de pruebas de software y para proporcionar un
vocabulario de términos de pruebas de software que
cubren las pruebas de software de todo el ciclo de
vida.

Se prevé que esta parte se incluyan los
siguientes temas:

  • Introducción a las pruebas de
    software

  • Pruebas de software en un contexto
    organizativo

  • El proceso de prueba

  • La relación entre las pruebas y el
    desarrollo

  • Implicaciones de los modelos de ciclo de vida de
    desarrollo software (por ejemplo, cascada, espiral,
    ágil)

  • Tipos de pruebas, pruebas técnicas y
    fases/niveles de prueba

  • Pruebas basadas en el Riesgo

  • Elementos de Pruebas

  • Requisitos de verificación del
    sistema

  • Requisitos de validación del
    sistema

Parte 2: Proceso de Pruebas

Define un modelo de proceso de pruebas genérico
que se puede utilizar dentro de cualquier desarrollo de software
y pruebas de ciclo de vida. Dicho modelo de procesos tal
está formado por tres niveles:

  • Procesos de la organización

  • Procesos de gestión

  • Procesos "fundamentales"

En el nivel superior se encuentran los procesos de la
organización, que no son específicos de un
determinado proyecto de pruebas. Permiten definir las
políticas y estrategias aplicables a toda la
organización o a una línea de proyectos
[9].

Para un proyecto de pruebas se tienen los niveles de
procesos de gestión y procesos "fundamentales". Se define
un conjunto de procesos de gestión genéricos para
permitir flexibilidad y adaptación a diferentes contextos.
Estos procesos son la planificación, monitorización
y control, y finalización de las pruebas. Los diferentes
procesos de gestión se podrán instanciar en uno o
en varios dependiendo de la situación. Por ejemplo, en un
proyecto simple puede existir solamente un plan de pruebas global
(una sola instancia). En un proyecto más complejo puede
existir un plan maestro y otros planes subordinados a éste
para cubrir diferentes niveles de prueba (por ejemplo, pruebas de
integración, sistema o aceptación) o diferentes
tipos de prueba. Cada uno de ellos sería una instancia del
proceso de gestión.

Los procesos fundamentales abarcan los aspectos
técnicos de las pruebas: diseño e
implementación, puesta a punto del entorno,
ejecución de pruebas y la notificación de
resultados de las pruebas. También se incluirán
variantes de los procesos para contemplar tanto pruebas
dinámicas como estáticas.

Parte 3: Documentación de Pruebas

Cubre la documentación de las pruebas a
través del ciclo de vida completo del software. Esta parte
contendrá plantillas de todas las capas del modelo de
proceso 29119, incluyendo:

  • Política organizacional del Proceso de
    prueba

  • Estrategia organizacional del Proceso de
    prueba

  • Proyecto de Gestión del Proceso de
    prueba

  • Proceso de pruebas fundamentales

Parte 4: Técnicas de Pruebas

Cubre las técnicas de pruebas del software a
través de todos los tipos de pruebas, incluyendo
estáticas (por ejemplo: revisiones, inspecciones,
tutoriales), funcionales (por ejemplo: caja negra, caja blanca),
no funcionales (por ejemplo: funcionamiento, seguridad, utilidad)
y basadas en experiencia (por ejemplo: cálculo de error,
experimental).

Adicionalmente, se está elaborando una Parte 5
Evaluación del Proceso, que será nombrada ISO/IEC
29119-5. La Figura 2 ilustra la relación de los procesos
definidos en el estándar.

Monografias.com

Figura 2. Procesos de ISO/IEC
29119

Desarrollo de la
herramienta SGP

La presente investigación requiere un importante
nivel de abstracción, y por lo tanto debe ser lo
suficientemente flexible para satisfacer los requerimientos en el
desarrollo de SGP.

3.1 ANÁLISIS

Después de definidos los requerimientos
automatizables y no automatizables, estructura, alcance,
funcionalidades y usuarios para el desarrollo del sistema SGP,
con la guía de la Norma ISO/IEC 29119, es necesario
definir estos requerimientos en diagramas de Casos de Uso para
cada uno de los usuarios, de esta forma las actividades de cada
participante en el sistema serán más claras y
entendibles.

3.2 DISEÑO

Para este proyecto se va a utilizar una arquitectura WEB
basada en una arquitectura de aplicaciones de tres capas, en
donde se separa la presentación, la lógica del
negocio y el acceso a los datos. El sistema SGP ha sido
diseñado para ser sencillo de utilizar y amigable, ya que
requerirá tener únicamente conocimientos
básicos para poderlo operar. Para el desarrollo se
utilizó los siguientes lenguajes y
herramientas:

  • PHP (Hypertext Preprocessor)

  • HTML (Hyper Text Markup Language)

  • Javascript (Lenguaje ejecutado en el navegador del
    cliente)

  • MySql (Base de datos)

  • Apache (Servidor web)

  • PhpMyAdmin (Administrador de la base de
    datos)

  • JQuery (Herramienta para desarrollo de interfaces
    web)

  • GeyBox (Permite cargar en una ventana emergente
    diferentes enlaces)

3.3 IMPLEMENTACIÓN

La implementación del sistema desarrollado,
necesita tener levantado un servidor web, una base de datos, un
servidor FTP, y conexión a Internet. Se contrató un
servicio de Hosting con las características especificadas
para alojar las páginas dinámicas y la base de
datos. Utiliza un navegador estándar porque la
tecnología que se ha utilizado para las aplicaciones es
HTML, DHTML, CSS y Javascript. Ver Figuras 3, 4, 5.

Monografias.com

Figura 3. Interfaz del Proceso de
Gestión de Pruebas de SGP

Monografias.com

Figura 4. Interfaz de Monitoreo y
Control de SGP

Monografias.com

Figura 4. Interfaz de Seguimiento y
evaluación de SGP.

Resultados
obtenidos

Luego del desarrollo del software para gestión de
pruebas del software en base al estándar ISO/IEC 29119, se
preveen los siguientes resultados.

  • Automatización en la gestión del
    proceso de pruebas.

  • Mayor confiabilidad en el estado de pruebas del
    proyecto.

  • Aumento de la calidad en el producto de software
    final.

  • Rapidez en la toma de decisiones.

  • Identificación de la fase de mayor
    complejidad y de mayor cuidado para futuros
    proyectos.

  • Medio de estimación más asertiva de
    costo y tiempo con fundamento en una base
    histórica.

  • Mayor garantía en los productos
    desarrollados.

Trabajos
relacionados

En el mercado actual existe una variedad de herramientas
y estándares que permiten tener un proceso de pruebas pero
todas son particulares. Así mismo, existen algunas normas
pero la que más enfoque tiene al proceso de software es la
ISO/IEC 29119, la misma que permite cubrir todo el ciclo de vida
completo, a través del análisis, diseño,
implementación y mantenimiento de las pruebas software. La
Tabla 1 resume los resultados del análisis que se
realizó en el contexto de esta investigación entre
algunas herramientas existentes.

Monografias.com

Tabla 1. Análisis de
Herramientas

Del análisis se concluye que no existe una
herramienta que permita tener una gestión basado en el
estándar ISO/IEC 29119 que permita evaluar y apoye la toma
de decisiones, es por ello que se vio la necesidad del desarrollo
de una herramienta, enfocándola para nuestro entorno pero
con bases internacionales con el fin de obtener un mejor producto
y una mejor calidad.

Conclusiones y
recomendaciones

6.1. CONCLUSIONES

Cada proyecto de software realizado y gestionado a
través de la herramienta permitirá una mejor toma
de decisiones por parte de la gerencia o dirección de
proyectos, como por ejemplo, identificar la fase de mayor
criticidad en el ciclo de vida de desarrollo de
software.

Así mismo, es importante destacar que para la
implementación de la herramienta, se consideran aspectos
relevantes en el área de pruebas de software, así
como algunas métricas para software, todo esto con el
propósito de enriquecer los criterios de evaluación
y obtener un producto de calidad.

La realización de este trabajo, los resultados
obtenidos a partir de él y muchas otras experiencias,
permite entender que la gestión de las pruebas de software
es una actividad que indiscutiblemente debe llevarse a cabo en
todo proceso de desarrollo en empresas tanto públicas como
privadas.

6.2. RECOMENDACIONES

Se recomienda que la herramienta a futuro sirva como
base para la realización de métricas y la
detección de puntos clave en el macro proceso de
creación de software.

Se recomienda dar a conocer la herramienta por medio de
la web, permitiendo al interesado pueda descargarla de forma
gratuita y sirva para toda la comunidad que crea el software a
baja, media y alta escala.

Es recomendable realizar actualizaciones al sistema de
tal manera de incluir funcionalidades como: reportes en formato
Excel y pdf.

Referencias

  • 1. Fischer G., "The Software
    Technology of the 21st Century: From Software Reuse to
    Collaborative Software Design". [Última visita:
    20-Junio- 2012] Disponible en:
    http://l3d.cs.colorado.edu/~gerhard/papers/isfst2001.pdf

  • 2. Instituto Nacional de
    Tecnologías de la Comunicación, "GUÍA DE
    MEJORES PRÁCTICAS DE CALIDAD DE PRODUCTO".
    [Última visita: 22-Junio- 2012] Disponible en:
    http://www.inteco.es/file/TnOIvX7kM5orWmEwNq53IQ.

  • 3. Páez J., "Diseño
    de un modelo para evaluación/pruebas del software en
    base a ingeniería de pruebas aplicando el
    estándar ISO/IEC 29119". AÑO. [Última
    visita: 22-Junio- 2012]

  • 4. Pérez B.,
    "Gestión de las Pruebas Funcionales". [Última
    visita: 22-Junio- 2012] Disponible en:
    http://www.ces.com.uy/documentos/imasd/CES-PRIS_Gestion_Testing.pdf

  • 5. Reales P., "Calidad de casos de
    prueba, Calidad y medición de sistema de
    información". [Última visita: 18-Junio- 2012]
    Disponible en:
    http://alarcos.inf-cr.uclm.es/doc/cmsi/trabajos/Pedro%20Reales.pdf

  • 6. Reid S., "Software Testing. The
    new international software testing standard ISO/IEC 29119".
    [Última visita: 18-Mayo-2012] Disponible en:
    http://softwaretestingstandard.org/

  • 7. Sánchez Melchor S., "UNA
    REVISIÓN Y COMPARATIVA DE MODELOS DE PROCESOS DE
    PRUEBA". [Última visita: 01-Julio-2012] Disponible en:
    http://eciencia.urjc.es/bitstream/10115/4115/1/Una%20revisi%C3%B3n%20y%20comparativa…%20Sandra%20S%C3%A1nchez%20Melchor.pdf

  • 8. Zapata C. y Cardona C.,
    "Feature comparison among some software tools for load
    testing" [Última visita: 22-Junio- 2012] Disponible
    en:
    http://www.revistas.unal.edu.co/index.php/avances/article/viewFile/26734/27044

 

 

Autor:

Ing. José Páez
E.

Escuela Politécnica del
Ejército – Ecuador

 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter