• No results found

Se plantean a continuaci´on algunos modelos de fiabilidad de importancia destacada [95, 96, 97], a partir de los cuales se han generado y se generan un gran n´umero de variaciones de inter´es. En primer lugar se platean dos m´etodos habitualmente clasificados como predictores o del dominio del tiempo. Son los modelos de Jelinsky-Moranda y Goel- Okumoto. Seguidamente se plantean dos m´etodos estimadores o del dominio de los datos. Son los modelos de Mills y Nelson.

Modelo de Jelinski y Moranda

Es considerado el modelo seminal de otros muchos basados en cadenas de Markov. Sus consideraciones iniciales son las siguientes:

1. El n´umero de defectos software es desconocido pero fijo.

2. Cuando se detecta un defecto, se elimina inmediatamente (el tiempo de reparaci´on es despreciable) y no se introducen nuevos defectos.

3. Los tiempos entre fallos son independientes y son variables aleatorias con funci´on de densidad exponencial.

4. Todos los defectos software contribuyen de la misma manera a la tasa de fallos. En esencia, una cadena de Markov es un proceso estoc´astico {Xn, n= 0,1,2, ...} en el que la variable aleatoria Xn representa el estado del proceso en el instante n y cumple la siguiente propiedad [98].

P{Xn+1=j|Xn=i, Xn−1 =in−1, ..., X1 =i1, X0 =i0}=P{Xn+1 =j|Xn =i}=Pij (2.26) La ecuaci´on (2.26) plantea que en una cadena de Markov la probabilidad de pasar de un estado i a un estado j no depende de los estados anteriores al estado i en lo que pudiera haber estado el proceso.

En el modelo de Jelinski y Moranda se considera que el n´umero de defectos existentes en el sistema, antes de comenzar a depurar el mismo, es igual a N0. Atendiendo a las

consideraciones 3 y 4, la tasa de fallos inicial cumple λ(N0) = N0φ, en donde φ es una

constante de proporcionalidad que denota la contribuci´on de cada fallo a la tasa de fallos. Cuando se detecta el defecto i, el sistema pasa a tenerN0 −i defectos remanentes.

Si se denomina Ti a la variable aleatoria “tiempo sin fallos”, entonces, seg´un la consi- deraci´on 3 se cumple (2.27).

P(Ti < ti) =λ(i)e−λ(i)ti, i= 1,2, ..., N0 (2.27)

En donde λ(i) cumple (2.28).

λ(i) =φ[N0−(i−1)] = φ(N0−i+ 1), i= 1,2, ..., N0 (2.28)

Figura 2.7: Cadena de Markov correspondiente al modelo de Jelinski-Moranda

El m´etodo de m´axima verosimilitud [99] puede utilizarse para estimar los par´ametros

N0 y φ si se han registrado los tiempos transcurridos entre detecciones de fallos.

Existe un elevado n´umero de variantes del modelo de Jelinski-Moranda, algunas de las cuales proponen considerar distintas contribuciones de los defectos a la tasa de fallos, otras proponen considerar procedimientos de depuraci´on imperfectos, plante´andose cadenas de Markov en las que la detecci´on de defectos no necesariamente genera un cambio de estado a otro con menos defectos, sino que incluso puede producirse la introducci´on de m´as defectos (pasando a constituir modelos de nacimiento y muerte).

Modelo de Goel y Okumoto

Este modelo es uno de los paradigmas m´as destacados de los basados en Procesos de Poisson no Homogeneos (PPNH), los cuales proponen que la frecuencia a la que se producen los fallos sea funci´on del tiempo, o dicho de otra manera, la frecuencia de los fallos decrece a medida que el proceso de depuraci´on avanza.

Un proceso de cuenta {N(t), t≥0} cumple las siguientes propiedades:

1. N(t)≥0

2. N(t) toma valores enteros. 3. Si s < t entonces N(s)≤N(t)

4. Para un s < t, entoncesN(t)−N(s) es igual al n´umero de eventos que han tenido lugar en el intervalo (s, t).

Un proceso de cuenta{N(t), t≥0}se dice que es un PPNH con funci´on de intensidad

λt, siendot≥0, si cumple las siguientes propiedades:

1. N(0) = 0

2. {N(t), t≥0} tiene incrementos independientes. 3. P(N(t+h)−N(t))≥2) =o(h)

La funci´ono(h) cumple la ecuaci´on 2.29.

l´ım h→0

o(h)

h = 0 (2.29)

El modelo de Goel-Okumoto (modelo-GO) plantea las siguientes consideraciones: 1. El n´umero de fallos acumulados hasta un instante t sigue una distribuci´on de Pois-

son.

2. Todos los defectos son independientes y tienen la misma oportunidad de ser detec- tados.

3. Todos los defectos detectados son inmediatamente eliminados y no se introduce al hacerlo nuevos defectos.

En los modelos basados en PPNH se considera que la variable aleatoria X(t) que registra el n´umero de fallos en un intervalo de tiempo (0, t) sigue una distribuci´on de Poisson seg´un la ecuaci´on 2.30.

P[X(t) =n] = (m(t))

ne−m(t)

n! (2.30)

De la ecuaci´on (2.30) se deduce que el proceso de fallos de un sistema software es un PPNH con valor medio m(t), seg´un se indica en 2.31 y tasa de fallos λ(t) seg´un se indica en 2.32.

m(t) = a[1−e−bt], a >0, b >0 (2.31)

λ(t) = d

dtm(t) = abe

−bt (2.32)

Es interesante observar que m(∞) = a, por lo que se asigna al par´ametro a el total de defectos que ser´an detectados. El par´ametro b puede interpretarse como la frecuencia a la que un defecto se manifiesta en un fallo.

El n´umero de defectos remanentes en un instante t puede calcularse seg´un 2.33.

E[N(∞)−N(t)] = m(∞)−m(t) = ae−bt (2.33) Los par´ametrosay b puede ser estimados por medio del m´etodo de m´axima verosimi- litud.

Modelo de Mills

En este m´etodo se propone inyectar un conjunto de defectos al sistema software sin de- purar. Al pasar las bater´ıas de pruebas se hace un recuento del total de defectos detectados

dtas´ı como se determina cu´ales de esos defectos hab´ıan sido previamente inyectados di. El fundamento del m´etodo consiste b´asicamente en considerar que la relaci´on dt

di debe man-

tenerse entre el total de defectos original del sistemaDty el total de defectos inicialmente inyectados Di. Al mantenerse dicha relaci´on se puede estimar el n´umero desconocido de defectos originalmente existente en el sistema (2.34).

Dt Di = dt di ⇒Dt=Di dt di (2.34) Modelo de Nelson

En el modelo de Nelson se propone seleccionar aleatoriamente un conjunto n de en- tradas al sistema, considerando para ello la probabilidad de dichas entradas dentro del perfil de operaci´on del sistema. Al pasar las bater´ıas de pruebas con las entradas seleccio- nadas se contabiliza cuantos ensayos han terminado en fracaso f y por ´ultimo se estima la fiabilidad seg´un la ecuaci´on 2.35.

b

R= 1− f

n (2.35)

Modelo de Kaplan-Meier y prueba log-rank

El m´etodo deKaplan-Meier [100] permite obtener la curva de fiabilidad bajo una pers- pectiva no param´etrica y a˜nade la consideraci´on de la censura de los datos. Este m´etodo generalmente se estudia dentro del an´alisis de supervivencia, el cual tiene connotaciones muy pr´oximas a los estudios de fiabilidad. El an´alisis de supervivencia aglutina el conjun- to de procedimientos estad´ısticos que permiten tratar experimentos en los que los datos recogidos son los tiempos hasta que se produce un evento (por ejemplo un fallo) [101].

Los tipos de censura habitualmente considerados son los siguientes:

1. Tipo I. Este tipo de censura generalmente tiene lugar en aplicaciones de ingenier´ıa en las que se ponen a prueba un conjunto significativo de componentes y se registra el tiempo transcurrido hasta que fallan. Dado que no suele ser posible esperar hasta que se produzca el fallo de todos y cada uno de los componentes del estudio, se suele prefijar un tiempo para el ensayo con independencia de que al final queden compo- nentes que no hayan fallado. Este planteamiento es congruente con la definici´on de fiabilidad (1).

2. Tipo II. Este tipo de censura suele darse tambi´en en aplicaciones de ingenier´ıa. Se plantea en este caso la terminaci´on del experimento cuando han fallado una fracci´on prefijada de los componentes que intervienen en el ensayo.

3. Censura aleatoria. La censura aleatoria generalmente tiene lugar en estudios m´edi- cos. Los datos pueden ser censurados en este caso por tres circunstancias.

a) Se pierde el contacto con uno de los componentes del ensayo, por lo que solo se puede afirmar que el evento bajo estudio no se ha producido solo hasta el momento en que exist´ıa contacto.

b) Por efectos laterales un componente abandona el estudio (por ejemplo un pa- ciente no tolera un tratamiento bajo estudio, o sufre un accidente por causas ajenas al estudio).

c) Un componente supera el tiempo estipulado para la realizaci´on del estudio. La forma de aplicar el m´etodo deKaplan-Meier generalmente exige contar con un con- junto de los componentes a estudiar, como por ejemplo pacientes, componentes electr´oni- cos, conjunto de ordenadores ejecutando un programa, etc. Una vez iniciado el experimen- to, se registran los tiempos en los que se produce el evento bajo estudio (por ejemplo un fallo). Con todos los tiempos obtenidos se obtiene la curva de fiabilidad (o supervivencia) aplicando el m´etodo, que de forma resumida exige cursar los tres pasos siguientes [102]:

1. Deben ordenarse los eventos detectados seg´un el instante de tiempo, de menor a mayor.

2. Debe estimarse, para cada intervalo, las probabilidades de supervivencia seg´un la ecuaci´on 2.36. En dicha expresi´on Sb(ti) representa la fiabilidad en el instante ti, ri

representa el n´umero de componentes en los que en el instanteti no se ha producido el evento analizado ymies el n´umero de componentes para los que s´ı se ha producido el evento analizado en el intervalo (ti−1, ti].

3. Deben dibujarse las fiabilidades obtenidas en un gr´afico en el que habitualmente el eje de abscisas representa el tiempo transcurrido y el eje de ordenadas la fiabilidad.

b S(ti) = ri−mi ri b S(ti−1) (2.36)

Con frecuencia surge el problema de comparar dos o m´as curvas de fiabilidad obtenidas por el m´etodo de Kaplan-Meier. Ello se resuelve generalmente con la prueba estad´ıstica log-rank. La prueba log-rank es una prueba del tipoχ2, en la que se utilizan datos obser-

vados junto con datos esperados en los diferentes intervalos de tiempo del experimento. La formulaci´on matem´atica de la prueba estad´ıstica log-rank es la siguiente [103]:

1. Se utiliza el ´ındice i = 1,2, ..., G para hacer referencia a los distintos grupos de datos que configuran cada curva-ide fiabilidad. Del mismo modo se utiliza el ´ındice

j = 1,2, ..., k para representar los distintos instantes en los que se ha producido un fallo.

2. nij es el n´umero remanente de componentes en riesgo del grupo de datos i en el instante j.

3. mij es el n´umero de fallos observados en el grupo i en el instante j.

4. El valor esperado del grupo i en el instante j se calcula de la siguiente manera:

eij = nij PG d=1ndj ! G X d=1 mdj ! (2.37) 5. nj = PG i=1nij 6. mj =PGi=1mij

7. La suma de datos observados menos datos esperados puede calcularse de la siguiente manera: Oi−Ei = k X j=1 (mij −eij) (2.38)

8. La matriz de varianza se calcula seg´un (2.39).

V ar(Oi−Ei) = k X j=1 nij(nj−nij)mj(nj−mj) n2 j(nj −1) (2.39)

9. La matriz de covarianza se calcula seg´un (2.40).

Cov(Oi −Ei, Ol−El) = k X j=1 −nijnljmj(nj−mj) n2 j(nj −1) (2.40)

10. El vector d, que posteriormente ser´a utilizado, se calcula de la siguiente manera: d= (O1−E1, O2−E2, ..., OG−1−EG−1)T

11. La matrizV, que igualmente se utilizar´a posteriormente, se calcula atendiendo a las siguientes consideraciones: V= [vil] en dondevii=V ar(Oi−Ei) y vil =Cov(Oi−

12. El estad´ısticolog-rank se calcula comodTV−1d, el cual sigue una distribuci´onχ2 con

G−1 grados de libertad para la hip´otesis nula de que todas las curvas comparadas (G en total) respetan una misma curva de fiabilidad.

Los programas de estad´ıstica que suministran el estad´ısticolog-rank cuando se quieren comparar varias curvas de fiabilidad obtenidas por el procedimiento de Kaplan-Meier suministran el valor p (en ingl´es p-value), el cual representa la probabilidad de obtener un estad´ıstico tan extremo como el obtenido con los datos suministrados bajo el supuesto de que la hip´otesis nula es cierta.

Desde un punto de vista pr´actico suele rechazarse la hip´otesis nula cuando el valor p

es inferior a 0,05.

Consideraciones iniciales:

1. Existe inter´es por la configuraci´on de triciclo en robots aut´onomos m´oviles.

2. Los diferentes estilos arquitect´onicos utilizados en rob´otica m´ovil contemplan un componente para realizar el control de velocidad.

3. Sistemas cr´ıticos desarrollados con especial cuidado no est´an libres de tener defectos. 4. Errores de programaci´on como mutaci´on en constantes, cambio de operadores aritm´eti-

cos y negaci´on de expresiones l´ogicas pueden tener lugar en controladores de veloci- dad.

5. Poder garantizar la ausencia de defectos en un sistema inform´atico, en general, es un reto pendiente de alcanzar.

6. La fiabilidad surge como medida de calidad de los productos fabricados en masa.

7. Existe unidad de criterio alrededor de la definici´on de fiabilidad, as´ı co- mo en la forma de tratar los datos obtenidos en un experimento b´asico planteado para obtener la fiabilidad de un sistema.

8. Existen est´andares que plantean procedimientos de desarrollo muy exi- gentes, para mitigar, en la medida de lo posible, la posibilidad de fallar en los sistemas software considerados cr´ıticos. La fiabilidad es una de las medidas generalmente recomendadas.

9. Las t´ecnicas de an´alisis de la fiabilidad de sistemas software atienden dos cometidos principalmente: estimar la fiabilidad y predecir su evo- luci´on.

10. Existen t´ecnicas para el estudio de la fiabilidad de sistemas software bien descritas y asentadas, al menos en la comunidad cient´ıfica.

Related documents