Publicado el 28 de Julio del 2017
772 visualizaciones desde el 28 de Julio del 2017
827,7 KB
163 paginas
Creado hace 16a (10/06/2008)
Centro de Investigación y de Estudios Avanzados
del IPN
Departamento de Computación
Evaluación y Análisis de la Calidad en los
Sistemas en Internet
Tesis Doctoral
Leticia Dávila Nicanor
Supervisada por: Dr. Pedro Mejía Álvarez
Junio 2008
Agradecimientos
A mis padres, mis hermanos y a mi hijo les dedico este trabajo que he podido sacar adelante
gracias a su apoyo y cariño incondicional que siempre me han brindado y gracias a los cuales he
llegado hasta este punto.
A mi asesor le agradezco el apoyo que siempre me dio en todos los sentidos, su guía fue deter-
minante abriendo mi camino hacia senderos de luz y conocimiento para culminar este trabajo con
entereza.
A Dios por haber iluminado mi camino y mi estancia cuando me trajo hasta el Cinvestav donde
he conocido personas muy valiosas en todos los sentidos que me han ayudado a superarme profe-
sional y personalmente.
M. en C. Leticia Dávila Nicanor.
Abstract
Software reliability is a necessity for any organization that develops and maintains software
systems. During the development process, the test phase is the phase that occupies a greater period
of time for its execution. Normally this phase can use from 40 to 60development process and in
spite of occupying this great amount of time, usually never produces fault free systems.
So far in the area of Software Reliability hundred of models have been proposed and used to
estimate the reliability and the probability of failure in the system components. However the vast
majority of these are not applicable in real operational contexts. Some of those, who currently have
demonstrated their applicability, still present problems such as, difficulties in obtaining inputs, slow
in its execution, require an extensive mathematical knowledge for its solution, and in general present
great difficulties to locate faults and their causes, which greatly complicates their interface with the
testing phase.
The contribution of this work focuses on the development of processes and methodologies for
the evaluation and analysis of reliability in software systems for the Internet. In this thesis work,
we use formal techniques such as statistical modeling and graphs for the analysis and evaluation of
reliability. One of the most important objectives of our work is that the proposed methodologies
and processes can serve as a model in the checking and verification of quality for organizations that
develop software products under a reliable approach. One of our main objectives in developing the
model was its applicability in real operational contexts.
The methodologies we have developed are applicable in practice through the use of a CASE tool
we developed, and its results were compared with other current reliability modeling proposals with
satisfactory results.
Resumen
La Confiabilidad del software es una necesidad para cualquier organización que desarrolla siste-
mas de software. Durante el proceso de desarrollo, la fase de pruebas es la fase que ocupa un mayor
periodo de tiempo para su ejecución. Normalmente esta fase puede durar del 40 al 60 % del tiempo
total empleado para el proceso del desarrollo y a pesar de ocupar esta gran cantidad de tiempo,
normalmente los sistemas numnca estan libres de fallos.
Hasta ahora en el área de la Confiabilidad del Software se han propuesto más de un ciento
de modelos que estiman el nivel de la Confiabilidad y que determinan la probabilidad de fallo en
los componentes del sistema. Sin embargo la gran mayoría de estos no son aplicables en contextos
operativos reales. Algunos de los que actualmente si han demostrado su aplicabilidad presentan
dificultades tales como, entradas difíciles de obtener, lentas en su ejecucion, requiere de un cono-
cimiento matemático extenso para su solución y en general con una gran dificultad para localizar
fallos y sus causas, lo cual complica mucho su interfaz con la etapa de pruebas.
La contribución del presente trabajo se enfoca en el desarrollo de procesos y metodologías para
la evaluación y el análisis de la Confiabilidad en productos de software para Internet. En este
trabajo, se emplean técnicas formales como la modelación estadística y la técnica de grafos en el
análisis de fallos para la evaluación de la Confiabilidad. Uno de los objetivos más importantes de
nuestro trabajo es que las metodologías y procesos propuestos puedan servir como modelo en la
validación y verificación de la calidad para las organizaciones que desarrollan productos de software
bajo un enfoque confiable. Uno de nuestros principales objetivos en el desarrollo de los modelos fue
su aplicabilidad real en contextos operativos.
Las metodologias desarrolladas las hemos llevado a la práctica mediante herramientas y sus re-
sultados los comparamos con otras propuestas actuales de modelación de la confiabilidad obteniendo
resultados satisfactorios.
Índice general
Índice general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Índice de figuras
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
Índice de tablas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viii
iii
1. Introducción
1.1. Objetivos generales y específicos de la tesis
. . . . . . . . . . . . . . . . . . . . . . .
1.2.
Infraestructura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3. Organización del documento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2. Desarrollo de Productos de Software Confiables
2.1.
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.2.
Ingeniería de la Confiabilidad del Software (ICS) . . . . . . . . . . . . . . . . . . . .
2.2.1. Determinación de los perfiles operacionales
. . . . . . . . . . . . . . . . . . .
2.2.2. Planeación de pruebas en base a los perfiles operacionales . . . . . . . . . . .
2.3. Proceso de Medición de Productos de Software . . . . . . . . . . . . . . . . . . . . .
2.4. Métricas de Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.1. Características de las métricas de software . . . . . . . . . . . . . . . . . . . .
2.4.2. Tipos de métricas de software . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.3. Métricas de producto final . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.4.4. Métricas de Complejidad del Software . . . . . . . . . . . . . . . . . . . . . .
2.5. Técnicas de análisis para la Confiabilidad . . . . . . . . . . . . . . . . . . . . . . . .
2.6. Aspectos de Calidad en los Sistemas en Internet . . . . . . . . . . . . . . . . . . . . .
3. Metodología para la evaluación de la Confiabilidad
3.1.
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1
3
5
5
7
7
8
9
11
12
13
13
14
14
15
17
18
21
21
i
ii
3.2. Trabajo Relacionado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3. Establecimiento de la Metodología . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.3.1. Proceso de Evaluación y Modelación . . . . . . . . . . . . . . . . . . . . . . .
3.4. Caso de Estudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.1. Planteamiento del Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3.4.2. Fase 1: Determinación del comportamiento ideal de la Confiabilidad . . . . .
3.4.3. Fase 2:Evaluación de la confiabilidad en el sistema real . . . . . . . . . . . . .
3.5. Automatización del Proceso de Evaluación . . . . . . . . . . . . . . . . . . . . . . . .
3.6. Conclusiones
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4. Escenarios de Riesgo
4.1. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2.
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3. Trabajo relacionado. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4. Modelo de Evaluación de la Confiabilidad mediante Escenarios de Riesgo . . . . . .
4.4.1. Grafo de Dependencia Funcionales (GDF) . . . . . . . . . . . . . . . . . . . .
4.4.2. Proceso para diseñar Escenarios de Riesgo . . . . . . . . . . . . . . . . . . . .
4.5. Caso de Estudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.1. Descripción del sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.5.2. Determinación del Grafo de Dependencias Funcionales (GDF).
. . . . . . . .
4.5.3. Determinación de la probabilidad de ocurrencia.
. . . . . . . . . . . . . . . .
4.5.4. Estimación de la Complejidad Ciclomática de las Relaciones Funcionales. . .
4.5.5. Determinar los Escenarios de Riesgo en el sistema de software . . . . . . . . .
4.5.6. Automatización de las pruebas.
. . . . . . . . . . . . . . . . . . . . . . . . .
4.6. Conclusiones
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5. Estudio comparativo.
5.1. Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2.
Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.3. Caso de Estudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4. Diseño de la Cadena de Markov. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.4.1. Estimación de las probabilidades de entrada de la cadena de Markov . . . .
22
28
29
32
33
33
40
45
49
51
51
52
53
58
58
60
62
63
63
64
68
68
76
79
81
81
83
84
85
85
5.4.2. Generación de las secuencias de la cadena de Markov.
. . . . . . . . . . . . .
5.5. Análisis de los estados estables.
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
Comentarios de: Evaluación y Análisis de la Calidad en los Sistemas en Internet (0)
No hay comentarios