Beruflich Dokumente
Kultur Dokumente
IX SEMESTRE
EVALUACIN DE SOFTWARE
INGENIERIA DE SISTEMAS
UNIVERSIDAD DE CARTAGENA
SEDE - LORICA
30 / 09 / 2015
Qu es la ISO 8402?
Es un complemento de la serie de normas ISO 9000. En ella se definen trminos
relacionados con la calidad.
La norma ISO 8402 define los trminos bsicos y fundamentales relacionados con
los conceptos de la calidad, aplicables a todos los campos.
Es un complemento de la serie de normas ISO 9000. En ella se definen trminos
relacionados con la calidad. Clarifica y normaliza los trminos relativos a la calidad
que sean aplicables al campo de la gestin de la calidad. La necesidad de utilizar
una terminologa normalizada para evitar malentendidos o confusiones, oblig al
desarrollo de una norma auxiliar que precisara trminos y conceptos.
para
compradores;
ISO/IEC
14598-5,
Procedimiento
para
medio de cambio (TCM), que es el tiempo que tarda en: Analizar una peticin,
disear una modificacin, Implementar un cambio o Probar y realizar un cambio.
Integridad: mide la capacidad del software para resistir ataques. Se define como,
Integridad= Sumatoria [(1-amenaza)*(1-seguridad)], para ello se debe tener en
cuenta los siguientes atributos: Amenaza que es la probabilidad de que un ataque
ocurra en un tiempo determinado, y la seguridad que es la probabilidad de que se
pueda repeler el ataque de un tipo determinado.
Facilidad de Uso: Mide la amigabilidad del software con el usuario final. Se mide
en funcin de: Habilidad intelectual o fsica para aprender el sistema, el tiempo
requerido para hacer uso eficiente del sistema, Aumento de la productividad y la
valoracin subjetiva de la disposicin de los usuarios hacia el sistema.
Eficacia de la eliminacin de defectos: La eficacia de la eliminacin de defectos
(EED), es una mtrica que permite medir la habilidad de filtrar las actividades de la
garanta de calidad y de control, ya que es aplicable a todas las actividades del
marco de trabajo del proceso. Se definen de la siguiente forma:
EED= E/ (E+ D), donde E es el nmero de errores encontrados antes de la
entrega del software y D es el nmero de defectos encontrados despus de la
entrega. El valor ptimo de EED es 1, que significa que no se han encontrado
defectos en el software.
MTRICAS TCNICAS DEL SOFTWARE
Las mtricas tcnicas para el software proporcionan una manera sistemtica de
valorar la calidad basndose en un conjunto de reglas. Tambin proporcionan al
ingeniero del software descubrir y corregir problemas potenciales antes de que se
conviertan en defectos catastrficos.
Factores de calidad de McCall
McCall y Cavano definieron un juego de factores de calidad como los primeros
pasos hacia el desarrollo de mtricas de la calidad del software. Estos factores
evalan el software desde tres puntos de vista distintos: Operacin del producto,
Revisin del producto y Transicin del producto.
Los principios que se pueden asociar con la formulacin de las mtricas tcnicas
son los siguientes: Los objetivos de la medicin que deben establecerse antes de
empezar la recoleccin de datos, Todas las tcnicas sobre mtricas deben
definirse sin ambigedades, Las mtricas deberan obtenerse basndose en una
teora vlida para el dominio de aplicacin, Hay que hacer las mtricas a medida
para acomodar mejor los productos y procesos especficos.
Roche sugiere los siguientes principios para la recoleccin y anlisis de datos:
Siempre que sea posible, la recogida de datos y el anlisis debe automatizarse,
Se deben aplicar tcnicas estadsticas vlidas para establecer las relaciones entre
los atributos internos del producto y las caractersticas externas de la calidad, Se
deben establecer directrices de interpretacin y recomendaciones para todas las
mtricas.
Mtricas del Modelo de Anlisis
En esta fase, las mtricas tcnicas proporcionan una visin interna a la calidad del
modelo de anlisis. Estas mtricas examinan el modelo de anlisis con la
intencin de predecir el tamao del sistema resultante; es probable que el
tamao y la complejidad del diseo estn directamente relacionados. Dentro de
las mtricas del modelo de anlisis tenemos:
Mtricas basadas en la Funcin: La mtrica del punto de funcin se utiliza como
medio para predecir el tamao de un sistema obtenido a partir de un modelo de
anlisis. Para visualizar esta mtrica se utiliza un diagrama de flujo de datos, el
cual se evaluar para determinar las siguientes medidas clave que son necesarias
para el clculo de a mtrica de punto de funcin: Nmero de entradas del usuario,
Nmero de salidas del usuario, Nmero de consultas del usuario, Nmero de
archivos, Nmero de interfaces externas.
Mtrica Bang
Puede aplicarse para desarrollar una indicacin del tamao del software a
implementar como consecuencia del modelo del anlisis. Para calcular la mtrica
Bang, el desarrollador de software evala primero un conjunto de primitivas. Las
primitivas se determinan evaluando el modelo de anlisis y desarrollando cuentas.
Utiliza un conjunto de medidas primitivas que pueden obtenerse una vez que se
han generado o estimado el cdigo despus de completar el diseo. Estas
medidas son:
n1: nmero de operadores diferentes que aparecen en el programa.
N2: nmero de operandos diferentes que aparecen en el programa.
N1: nmero total de veces que aparece el operador.
N2: nmero total de veces que aparecen el operando.
Halstead utiliza medidas primitivas para desarrollar expresiones par la longitud
global del programa; volumen mnimo potencial para un algoritmo; el volumen real
(nmero de bits requeridos para especificar un programa); el nivel del programa
(una medida de la complejidad del software); nivel del lenguaje (una constante
para un lenguaje dado); y otras caractersticas tales como el esfuerzo de
desarrollo, tiempo de desarrollo e incluso el nmero esperado de fallos en el
software.
Halstead propone las siguientes mtricas:
Longitud N se puede estimar como: N = n1 log2 n1 + n2 log2 n2
Volumen de programa se define como: V = N n1 log2 (n1 + n2).
Tomando en cuenta que V variar con el lenguaje de programacin y representa el
volumen de informacin (en bits) necesarios para especificar un programa.
Mtricas para Pruebas
Las mtricas para pruebas se concentran en el proceso de prueba, no en las
caractersticas tcnicas de las pruebas mismas. En general, los responsables de
las pruebas deben fiarse en las mtricas de anlisis, diseo y cdigo para que
sirvan de gua en el diseo y ejecucin de los casos de prueba. El esfuerzo de las
pruebas tambin se puede estimar utilizando mtricas obtenidas de las medidas
de Halstead. Usando la definicin del volumen de un programa, y, y nivel de
programa, NP, el esfuerzo de la ciencia del software puede calcularse como:
NP = 1/[(n1/2) x (N2/n2)) (Ec. 1) e = V/NP (Ec. 2)
El porcentaje del esfuerzo global de pruebas a asignar a un mdulo k se puede
estimar utilizando la siguiente relacin:
Estas
son
conocidas
como
pruebas
funcionales
pruebas
de
puede definir las condiciones lmite como las situaciones que se hallan
directamente arriba, abajo y en los mrgenes de las clases de equivalencia.
Conjetura de errores: Esta tcnica consiste en enumerar una lista de errores
posibles que pueden cometer los desarrolladores o de situaciones propensas a
ciertos errores. Despus se generan casos de prueba en base a dicha lista que
suelen corresponder con defectos que aparecen comnmente y no con aspectos
funcionales. No existen directrices eficaces que puedan ayudar a generar este tipo
de casos, lo nico que se puede hacer es presentar algunos ejemplos que reflejan
esta tcnica.
Pruebas Aleatorias: En las pruebas aleatorias se simula la entrada habitual del
programa creando datos para introducir en l que sigan la secuencia y la
frecuencia con las que podran aparecer en la prctica diaria, de forma continua,
sin descanso. Esto implica usar herramientas denominadas generadores de
pruebas a las que se alimenta con una descripcin de datos y secuencias de
entradas posibles as como una estimacin de probabilidad de ocurrir cada una de
ellas en el uso real. Si el proceso de generacin de pruebas se ha realizado
correctamente, se crearn todas las posibles entradas del programa en todas las
combinaciones posibles, aunque no sea necesario hacer esto para una prueba
adecuada. Tambin se puede conseguir, indicando la distribucin estadstica que
siguen, que la frecuencia de entrada para orientar correctamente nuestras pruebas
hacia aquello que es ms probable que suceda en la prctica real.
Estrategias de aplicacin de pruebas del software
Una estrategia de prueba integra las tcnicas de diseo de casos de prueba en un
conjunto de pasos bien planeados que dan como resultado la correcta
construccin del software. Una estrategia de prueba de software proporciona una
gua para los desarrolladores del software, para la organizacin de control de
calidad y para el cliente. Por tanto una estrategia de software debe incorporar la
planificacin de la prueba, el diseo de casos de prueba, la ejecucin de pruebas
y la agrupacin y evaluacin de los datos resultantes.
est listo para ser implantado para el uso operativo en el entorno del usuario. Si la
prueba del sistema determin la capacidad real del sistema y permiti a la
organizacin de desarrollo tener confianza en que estaba listo para su
funcionamiento, la prueba de aceptacin es la prueba planificada y organizada
formalmente para determinar si se cumplen los requisitos de aceptacin marcados
por el cliente.
Las caractersticas principales de esta prueba son las siguientes:
Participacin del usuario, se enfoca hacia la prueba de los requisitos de usuario
especificados, es la fase final del proceso para crear una confianza en que el
producto es el apropiado para su uso en explotacin.
Pruebas de unidad
Pruebas de unidad.
Aunque la realizacin de pruebas de unidad es una actividad que en algn
momento es llevada a cabo por el desarrollador, existe un marco de trabajo
adicional a considerar: el de la persona que se interesa en el componente con el
fin de integrarlo en sus sistemas.
Actualmente son pocos los trabajos en materia de pruebas de unidad para
componentes, dos sobresalientes en este ramo son el proyecto Trusted
Components y el Proyecto Kimera, aunque este ltimo no est dirigido totalmente
a componentes, sino a la seguridad de las mquinas virtuales de Java cada vez
que se carga una clase.
Pruebas de integracin.
Si las pruebas de nivel de unidad para componentes muestran severas carencias,
en nivel de integracin, al igual que en otros enfoques de desarrollo, las carencias
son an ms notables. Sin embargo, existen coincidencias en cuanto a las
problemticas comunes al integrar componentes:
El volumen y la lentitud: Cuando se utilizan componentes dentro de un sistema,
no siempre se utilizan todas sus capacidades, lo que hace que cierta parte del
cdigo no sea necesario. Este problema se agrava cuando se tienen sistemas
grandes, afectndose as su rendimiento.
Los mecanismos de comunicacin utilizados: Se han presentado algunas
contrariedades e inconsistencias al utilizar dentro de un mismo sistema varios
mecanismos de comunicacin como eventos, mensajes o bien el paso de
parmetros.