Está en la página 1de 2

PRUEBA DE SOFTWARE

COLUMNA

El Proceso de la Prueba de Software


Lenguajes de Denicin de Procesos

n este nmero y el siguiente abordaremos el proceso de la prueba de software. Iniciaremos con el tratamiento formal del concepto, para luego pasar a su aplicacin, vinculndolo con la administracin de proyectos.

Una Definicin Formal


Es comn encontrarse en la literatura que aborda el proceso de prueba una referencia al Modelo-V. Mediante este modelo se describe a un nivel muy alto de abstraccin las fases del ciclo de desarrollo en las que (idealmente) se involucra la prueba; La siguiente grfica ilustra una adaptacin de este modelo, que incluye algunas actividades de cada fase.

Las actividades de prueba de la lnea izquierda de la V se llevan a cabo en paralelo al desarrollo de software e involucran tambin la revisin de apego a estndares; las de la lnea derecha involucran la terminacin del diseo de los casos de prueba y la aplicacin de los mismos. Una desventaja del modelo es que requiere an de mucho detalle para ser til en la prctica. Adems, la documentacin de procesos es una actividad en s misma, y los documentos generados suelen ser muy propensos a quedar rpidamente inconsistentes (a causa de los cambios) y/o sin actualizar (por la dificultad para realizar esos cambios).

Osterweil[1]. De manera semejante a lo que ocurre con los BPMSs, el utilizar un PDL para definir un proceso de prueba posibilita la generacin de un sistema de informacin que nos permite integrar herramientas CAST y administrar proyectos de prueba de software. En la empresa e-Quallity hemos desarrollado un PDL para definir nuestros procesos y hemos observado que facilita mucho las actividades de diseo, documentacin, anlisis, mejora y mantenimiento de los mismos, debido a que la documentacin adquiere muchos de los atributos de un lenguaje de computacin, entre otros: es posible escribir descripciones ms precisas y sucintas, con menos probabilidad de contener ambigedades; las descripciones pueden modularizarse con facilidad, posibilitando el reuso y el mantenimiento efectivo. Aqu presentar un PDL mucho muy sencillo, en el que se omiten algunas cosas por cuestiones de espacio, pero tratando de incluir las ideas esenciales. Por la misma razn de espacio, no utilizar grafos de sintaxis, sino que har la definicin utilizando BNF, con los terminales en negritas [2] y denotando la cadena nula; los no-terminales marcados con itlicas entre signos de mayor que y menor que (<As>), no son definidos con mayor detalle; adems no especificar entre otras cosas lo que tiene que ver con el sistema de tipos (bsicos, constructores, constantes y variables) ni los mecanismos de paso de parmetros. El PDL es ms bien procedural y permite definir procesos dentro de otros procesos (tipo Pascal), posibilitando la generacin de una jerarqua de procesos; los niveles permitiran diferenciar entre procesos y procedimientos.
www.softwareguru.com.mx

Luis Vinicio Len Carrillo es profesor-investigador del Departamento de Electrnica, Sistemas e Informtica del ITESO, y director general de e-Quallity S.A. de C.V., empresa especializada en prueba de software. Luis Vinicio es doctorando por la Universidad Tcnica de Clausthal, Alemania. Luis Vinicio es coautor de un marco tecnolgico que hoy permite a e-Quallity desarrollar empresas de prueba de software. En el contexto de ese marco, su tesis doctoral tiene que ver con aplicaciones de mtodos y lenguajes formales que para hacer ms eciente y efectiva la prueba de software. Luis Vinicio es co-fundador del Captulo Guadalajara de la AMCIS y su Secretario actual.

Este modelo tiene la ventaja de ser bastante intuitivo: la prueba comienza haciendo revisiones tcnicas a los requerimientos y bosquejando los primeros casos de prueba de aceptacin, pasando luego a revisar que la arquitectura satisfaga los requerimientos y a definir los primeros casos de prueba de sistema; despus se revisa la modularidad del diseo y se bosquejan casos de prueba de integracin, para luego pasar a revisar los algoritmos y a desarrollar los casos de prueba de unidad.

Utilizando el conocimiento que hoy se tiene en el diseo e implementacin de lenguajes de computacin, se han desarrollado lenguajes que buscan abatir esos problemas; en la literatura se les conoce como Process Definition Languages (PDLs), y en ellos se basan los Business Process Management Systems (BPMSs), a los que se dedic el nmero de julio-agosto 2005 de esta revista. Uno de los primeros trabajos en el campo de los PDLs es el de

46

NOV-DIC 2005

Documentacin_del_Proceso ? proceso Identificador() ; <Historia_de_Cambios> ; Cuerpo Cuerpo ? <Constantes_Tipos_Variables>

| | | | |

Secuencia_de_Actividades Alternacin_de_Actividades Repeticin_de_Actividades Paralelizacin_de_Actividades Identificador() ; ?

Subprocesos Secuencia_de_Actividades Subprocesos ? Cuerpo ; Resto1 ? proceso Identificador() ; Llamada_a_subproceso ?

Alternacin_de_Actividades Resto3 ?

<Historia_de_Cambios> ; Resto1 ? Subprocesos |

si (<Condicin>) Actividad Resto3 fin_s sino Actividad | ? ?

Repeticin_de_Actividades

Secuencia_de_Actividades inicio Actividades fin Actividades ? Resto2 Actividad | ? ?

mientras ( <Condicin> ) Actividad fin_m Paralelizacin_de_Actividades Secuencias_de_Actividades ? Secuencias_de_Actividades Resto4 Resto4 ? Secuencias_de_Actividades |

Actividad Resto2 Actividades | <Definicin_de_Tarea>

paralelizar Secuencias_de_Actividades fin_p

Llamada_a_subproceso

Entrenamiento en Prueba Evaulacin y mejora de Procesos de Prueba Puesta en marcha de Organizaciones de Prueba Bur especializado de Testers

Pnganos a prueba!

probamos software...

Nosotros

o Mexic d de Ciuda ero 2007 Febr

+
-

Calidad Utilidades Tranquilidad Riesgos Esfuerzo Costos

Evaluacin de Productos de Software

www.e-quallity.net

contact@e-quallity.net +52 (33) 3030 6909