Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
SOFTWARE
Javier Martn
Centro Asociado de Mstoles /
Tres Cantos
UNED
Introduccin
JAVIER MARTIN (jmartin@escet.urjc.es)
TUTORIAS: JUEVES/VIERNES de 7 a 9
PLAN DE TRABAJO
Exposicin de los temas y mediante
transparencia, abundando en los puntos
ms importantes.
Resolucin de dudas
Propuesta y resolucin de ejercicios y
problemas
(DFD)
Se trata de realizar un modelo grfico para representar el flujo de datos
que entra en el sistema, las transformaciones que debe realizar y la
salida producida. Tambin se representan las entidades externas la
sistema que producen o consumen datos. El DFD inicial es el de
contexto, posteriormente y de forma jerrquica se van desarrollando
otros DFDs que detallan las transformaciones, las entradas y salidas
del diagrama detallado deben coincidir con el proceso correspondiente.
Recoge de forma esttica los procesos, dnde en el ltimo nivel de
refinamiento se especifican en lenguaje natural estructurado, y su
interrelacin.
CAJAS ADOSADAS
Y en los diagramas
HIPO de detalle
hay 3 zonas:
Entrada, Proceso y
Salida
COMN, se emplea una zona comn de datos a la que tienen acceso varios mdulos
MODERADO,
DE CONTROL, la zona comn es un dispositivo externo al que estn ligados los mdulos,
esto implica que un cambio en el formato de datos afecta a todos estos mdulos
POR ETIQUETA, en ontercambio de datos se realiza mediante una referencia a la
El anlisis de flujo de
transformacin
consiste en identificar
un flujo global de
informacin desde los
elementos de entrada
hasta los de salida.
Los procesos se
agrupan en 23
regiones: flujo de
entrada, de
transformacin y de
salida.
TRANSPORTABILIDAD
La potencia de clculo y la cantidad de memoria disponible en los computadores actuales hacer preferible
la claridad en el cdigo que la EFICIENCIA.
EFICIENCIA EN MEMORIA, en la fase de diseo se estudian las posibles alternativas y se opta por el
algoritmo que optimiza el uso dela memoria.
EFICIENCIA DE TIEMPO, es importante en el desarrollo de sistemas de tiempo real muy crticos. A
veces se mejora la eficiencia de tiempo a costa de ocupar ms memoria. En el diseo se estudian las
alternativas y se adopta el algoritmo ms rpido. Tcnicas de codificacin para aumentar la eficiencia
de tiempo:
Tabular clculo complejos
Expansin en lnea, emplear macros en vez de subrutinas
Simplificar las expresiones aritmticas y lgicas
Sacar fuera de los bucles lo que no sea necesario repetir
Usar estructuras de datos de acceso rpido
Evitar operaciones en coma flotante, mejor en coma fija
Evitar conversiones innecesarias de tipos
TRANSPORTABILIDAD DEL SOFTWARE, no solo es rentable a corto plazo para obtener versiones para
diferentes plataformas, a medio y largo plazo facilita el mantenimiento y la adaptacin de la aplicacin a las
nuevas arquitecturas.
Los factores para la transportabilidad son:
Utilizacin de estndares
Aislar las peculiaridades, colocndolas en mdulos separados. Se procurar evitar aquellos elementos no
consolidados y que pueden estar sujetos a futuros cambios o revisiones.
Las peculiaridades de los distintos tipos de computadores depende de la arquitectura y del sistema operativo
utilizado.
Lo importante es la elaboracin de los casos de prueba con el objetivo de descubrir los errores e
incorrecciones. Mtodos:
PARTICIN EN CLASES DE EQUIVALENCIA, se trata de ividir el espacio de ejecucin del
programa en varios subestapacios o clases equivalentes desde el punto de vista del a caja negra. Hay
que:
Determinar las clases equivalentes apropiadas
Establecer pruebas para cada clase de equivalencia, con datos de entrada vlidos y no
vlidos. Se repiten las pruebas hasta cubrir todos los casos vlidos de todas las clases.
ANLISIS DE VALORES LMITE, los errores tienden a aparecer al operar en las fronteras.
Directrices para la elaboracin de casos de pruebas:
Entradas, probar los valores del lmite y justo fuera del lmite
Salidas, probar los valores del lmite y justo fuera del lmite
Memoria, probar tamaos nulos, lmite superior y superior al lmite de todas las estructuras
de datos del programa
Recursos, probar lmites. Si terminales=30, probar 0, 20 y 31
Otros, probar los valores lmite y establecer las pruebas
COMPARACIN DE VERSIONES, se desarrollan varias versiones software para resolver la
especificacin del mdulo y se comparan los resultados con el fin de detectar errores.
EMPLEO DELA INTUICIN, la intuicin y la experiencia puede mejorar los casos de prueba,
tambin es conveniente que participen expertos ajenos al desarrollo.
INGENIERA DEL SOFTWARE Javi94
TCNICAS DE PRUEBAS DE UNIDADES: CAJA
TRANSPARENTE
Se tiene en cuenta la estructura interna del mdulo. Los
casos de prueba deben conseguir que:
Todas las decisiones se ejecuten en uno y otro sentido
Todos los bucles se ejecuten en los supuestos ms
diversos posibles
Todas las estructuras de datos se modifiquen y
consulten alguna vez
La complejidad de los mdulos dificulta realizar exhaustivas
pruebas de caja transparente. Conviene que participen
expertos con un conocimiento amplio de las estructura del
programa. Mtodos:
CUBRIMIENTO LGICO, consiste en no dejar ninguna seccin PRUEBAS DE BUCLES, que son elemento esencial en
del cdigo sin ejecutar en pruebas. Se llama camino bsico a cualquier programa. Casos:
cualquier recorrido sobre el diagrama de flujo que nos permita
llegar al final desde el punto de entrada. Bucles con n no acotado de repeticiones, probar 0, 1, 2,
bastantes y muchas iteraciones.
Hay que determinar el conjunto de caminos bsicos
que recorran todas las lneas de flujo del programa al menos una Bucles con n mximo de repeticiones, probar 0, 1, 2
vez. bastantes, M-1, M y M+1 iteraciones
N mximo de caminos = N predicados + 1 Bucles anidados, el n de pruebas para comprobar todas
las situaciones crece.
En un segundo nivel de casos de prueba se trata de
que se ejecuten todas las combinaciones de caminos bsicos por EMPLEO DE LA INTUICIN, conocer con detalle la
parejas estructura del mdulo y tener experiencia.
A otros niveles se generan casos de pruebas para
que se ejecuten un n significativo de combinaciones de caminos
bsicos INGENIERA DEL SOFTWARE Javi95
TCNICAS DE PRUEBAS DE UNIDADES: CAJA
TRANSPARENTE
Diagramas de flujo con 3 y con 4 predicados lgicos simples