Sei sulla pagina 1di 45

Sistemas Crticos

Ctedra: Ingenieria de Software

Sommerville Ian , 7ta Edicin


Objetivos
Explicar qu se entiende por sistema crtico en el que el fallo del
sistema puede tener graves consecuencias econmicas o
humanas.
Explicar las cuatro dimensiones de la confiablidad de un sistema
disponibilidad, fiabilidad, seguridad y proteccin.
Explicar que, para lograr la confiabilidad, es necesario evitar los
errores, detectar y eliminar los errores y limitar los daos causados
por el fracaso.
Tpicos Expuestos

Un sistema de seguridad crtico


Confiabilidad del sistema
Disponibilidad y fiabilidad
Seguridad
Proteccin
Sistemas Crticos

Los sistemas crticos de seguridad


Las fallas se traducen en prdida de vidas, lesiones o daos para el
entorno;
Sistema de proteccin de una planta qumica;
Sistemas de misin crtica
La falla da lugar a fallar en actividades dirigidas hacia una meta;
Sistema de navegacin de naves espaciales;
Los sistemas crticos de negocio
Las fallas se traducen en altas prdidas econmicas;
Sistema de contabilidad de clientes en un banco;
Confiabilidad del sistema

Para los sistemas crticos, por lo general se da el caso de


que la propiedad ms importante es la fiabilidad del
sistema.
La fiabilidad de un sistema refleja el grado de confianza
en dicho sistema por parte del usuario. Refleja el grado
de confianza del usuario de que el sistema va a
funcionar como los usuarios esperan y que no fallar'
en condiciones normales de uso.
Utilidad y confiabilidad no son la misma cosa. Un
sistema no tiene que ser de confianza para ser til.
Importancia de la fiabilidad

Sistemas que no son fiables y son desconfiables,


inseguros o no protegidos pueden ser
rechazados por sus usuarios.
Los costes de fallo del sistema pueden ser muy
altos.
Sistemas no confiables pueden causar la
prdida de informacin con una consiguiente
recuperacin de alto costo.
Metodologas de desarrollo para sistemas
crticos

Los costos de error de sistemas crticos son tan


elevados que la metodologa de desarrollo
puede ser no rentable para otros tipos de
sistema.
Ejemplos de metodologas de desarrollo
Mtodos formales de desarrollo de software
Anlisis esttico
Garanta externa de la calidad
Sistemas socio-tcnicos crticos

Fallo de hardware
El hardware falla debido a errores de diseo y
fabricacin o bien a que stos componentes han
finalizado su periodo de vida til.
Fallo de software
Software falla debido a errores en su especificacin,
diseo o implementacin.
Fallo de funcionamiento
Operadores humanos cometen errores. Actualmente
tal vez la principal causa de los fallos del sistema.
Software de control para una bomba
de insulina
Utilizados por los diabticos para simular la funcin del
pncreas que produce insulina, una hormona que
metaboliza la glucosa en la sangre.
Mide la glucosa en la sangre (azcar) con micro-
sensores y calcula la dosis de insulina necesaria para
metabolizar la glucosa.
Estructura de la bomba de insulina
Modelo de flujo de datos de la bomba
de insulina
Requerimientos de confiabilidad
El sistema se pondr a disposicin de entregar la
insulina cuando sea necesario hacerlo.
El sistema actuar confiablemente y entregar
la cantidad correcta de insulina para
contrarrestar el actual nivel de azcar en la
sangre.
El requisito de seguridad esencial es que
excesivas dosis de insulina nunca deben ser
bombeadas ya que estas son potencialmente
mortales.
Confiabilidad

La confiabilidad de un sistema equivale a la fiabilidad


del mismo.
Un sistema fiable es un sistema que es de confianza
para sus usuarios.
Principales aspectos de la confiabilidad son los
siguientes:
Disponibilidad;
Fiabilidad;
Seguridad;
Proteccin
Aspectos de confiabilidad
Otras propiedades de confiabilidad

Reparabilidad
Refleja el grado en que el sistema puede ser reparado en caso de
un fracaso
Mantenibilidad
Refleja el grado en que el sistema puede ser adaptado a las
nuevas necesidades;
Supervivencia
Refleja el grado en que el sistema puede ofrecer servicios bajo
ataque hostil;
Tolerancia de error
Refleja el grado en que los errores introducidos por el usuario
pueden ser evadidos y tolerados.
Mantenibilidad

Un atributo del sistema que se refiere a la facilidad de


reparar el sistema despus de que una falla ha sido
descubierta o cambiar el sistema a fin de incluir nuevas
caractersticas
De gran importancia para los sistemas crticos puesto
que comnmente se introducen fallas al sistema debido
a problemas de mantenimiento
La mantenibilidad es distinta de otros aspectos de la
confiabilidad, porque es un atributo esttico y no
dinmico. No contemplo ello en este curso (El Autor).
Supervivencia
La capacidad de un sistema para seguir
prestando sus servicios a los usuarios frente a un
ataque deliberado o accidental
Este es un atributo de cada vez ms importancia
para los sistemas distribuidos, cuya seguridad
personal puede verse comprometida
La supervivencia incluye la nocin de resistencia
- la capacidad de un sistema para seguir en
funcionamiento a pesar de los fallos de
componentes
Confiabilidad vs Funcionamiento

Sistemas poco fiables pueden ser rechazados por sus


usuarios
El costo de fallas del sistema puede ser muy alto
Es muy difcil de ajustar los sistemas para hacerlos ms
fiables
Es posible compensar sistemas de funcionamiento
pobre
Los sistemas no confiables pueden causar la prdida de
informacin valiosa
Confiabilidad y costos

Los costos de funcionamiento eficiente y confiable


tienden a aumentar de forma exponencial al
incrementar los niveles de confiabilidad requeridos
Hay dos razones para ello
El uso de tcnicas de desarrollo y hardware ms caros que se
requieren para alcanzar los niveles ms altos de fiabilidad
El aumento de las pruebas y la validacin del sistema que se
necesita para convencer al cliente de que el sistema ha
logrado los niveles de fiabilidad requeridos
Confiabilidad y costos
La economa de la confiabilidad

Debido a costos muy elevados de logro de fiabilidad,


puede ser ms rentable aceptar sistemas no confiables
y pagar los costes de fallos del mismo
Sin embargo, esto depende de factores sociales y
polticos. Repudiar supuestos sistemas no confiables
puede dar lugar a futuros negocios perdidos
Depende del tipo de sistema - para sistemas
empresariales, en particular, los niveles de confiabilidad
modesta puede ser adecuada
Disponibilidad y fiabilidad

Fiabilidad
La probabilidad de fallo libre de la operacin del sistema
durante un perodo de tiempo determinado en un entorno
determinado para un propsito determinado
Disponibilidad
La probabilidad de que un sistema, en un punto en el tiempo,
estar en funcionamiento y capaz de ofrecer los servicios
solicitados
Ambos de estos atributos pueden expresarse
cuantitativamente
Disponibilidad y fiabilidad
A veces es posible incluir la disponibilidad del
sistema en virtud de la fiabilidad del sistema
Obviamente, si un sistema no est disponible no se
hace entrega de los servicios especficos del sistema
Sin embargo, es posible disponer de sistemas de
baja confiabilidad que deben estar disponibles.
Siempre y cuando los fallos en el sistema puedan
ser reparados rpidamente y no daar los datos,
la baja fiabilidad puede no ser un problema
La disponibilidad toma en cuenta tiempo de
reparacin
Terminologa de la fiabilidad
Defectos y Fallos
Los fallos son por lo general una consecuencia
de los errores del sistema que se derivan de
defectos en el sistema
Sin embargo, los defectos no necesariamente
resultan en errores de sistema
El defectuoso estado del sistema puede ser temporal y
"corregido" antes de que un error surja
Errores no conducen necesariamente a los fallos
en el sistema
El error puede ser corregido por un sistema de
deteccin de errores incorporado, y ser recuperado
Puede protegerse de fallos mediante instalaciones
protectoras incorporadas o sistemas de detecciones.
Estos pueden, por ejemplo, proteger los recursos del
sistema de errores de sistema
Percepciones de confiabilidad

La definicin formal de la fiabilidad no siempre refleja la


percepcin del usuario acerca de la fiabilidad de un sistema
Los supuestos que se hacen sobre el entorno en el que un sistema
ser utilizado pueden ser incorrectos
El uso de un sistema en un entorno de oficina puede ser muy diferente
de la utilizacin del mismo sistema en un entorno universitario
Las consecuencias de los fallos en el sistema afecta a la
percepcin de confiabilidad
Limpiaparabrisas poco confiables de un coche pueden ser irrelevantes
en un clima seco
Las fallas que tienen consecuencias serias (tales como una avera en el
motor de un automvil) tienen mayor peso por parte de los usuarios
que otras fallas inadecuadas.
Logros de Confiabilidad

Evitacin de la culpa
Tcnica empleada en el desarrollo que se utiliza ya sea para
reducir al mnimo la posibilidad de errores o trampas antes de que
resulten introducindose errores al sistema
Deteccin y eliminacin de defectos
Son usadas tcnicas de verificacin y validacin que aumentan la
probabilidad de detectar y corregir errores antes de que el sistema
entre en servicio
Tolerancia a fallos
Tcnicas en tiempo de ejecucin que se utilizan para garantizar
que los defectos del sistema no dan lugar a fallos de sistema y / o
que los errores de sistema que no dan lugar a fallos en el sistema
Modelado Confiable

Puede modelarse un sistema como un mapa de


entrada-salida donde algunas entradas se traducirn
en resultados errneos
La fiabilidad del sistema es la probabilidad de que una
determinada entrada estar dentro de un conjunto de
entradas que causan salidas errneas
Diferentes personas utilizan el sistema en diferentes
formas, por lo que esta probabilidad no es un atributo
esttico del sistema, pero depende del entorno del
sistema
Correspondencia entre entradas y
salidas
Patrones del uso de Software
Mejora de la confiabilidad

X% de la eliminacin de los defectos en un sistema no


necesariamente mejoran la fiabilidad en un X%. Un estudio
de IBM demostr que la eliminacin del 60% de los defectos
de los productos result en un 3% de mejora en la fiabilidad
Los defectos del programa pueden estar en las secciones
raramente ejecutadas del cdigo, de manera que tal vez
nunca sean encontrados por los usuarios. La eliminacin de
estos no afecta a la percepcin de fiabilidad
Un programa con defectos conocidos todava puede ser
visto como fiable por sus usuarios
Seguridad

La seguridad es una propiedad de un sistema que refleja la


capacidad del sistema para operar normalmente o
anormalmente, sin peligro de causar lesiones o la muerte
humana y sin dao para el entorno del sistema
Es cada vez ms importante considerar seguridad del
software pues los dispositivos incorporan cada vez ms
sistemas de control basados en software
Los requisitos de seguridad son exclusivos, es decir que
excluyen situaciones indeseables en lugar de especificar los
servicios requeridos del sistema
Seguridad-criticidad

Sistemas de seguridad crticos primarios


Sistemas de software embebido cuyo fallo puede hacer que el
hardware asociado falle y amenace directamente a la gente.
Sistemas de seguridad crticos secundarios
Sistemas cuyo fallo se traduce en fallas de otros sistemas que
pueden amenazar a la gente
Se hace un enfoque en los sistemas de seguridad
crticos primarios
Los sistemas de seguridad-crticos secundarios se pueden
considerar solamente sobre una base nica
La seguridad y la fiabilidad

La seguridad y la fiabilidad estn relacionadas pero son distintas


En general, la fiabilidad y la disponibilidad son condiciones necesarias
pero no suficientes para un sistema de seguridad
La fiabilidad se refiere a la conformidad con un pliego de
condiciones y la entrega de servicio
Seguridad hace referencia a que el aseguramiento del sistema no
pueda causar dao alguno, independientemente de si
se ajusta a su especificacin o no
Sistemas confiables no seguros
Especificacin de los errores
Si la especificacin del sistema es incorrecta, entonces el
sistema puede comportarse tal como se especifica
causando as un accidente
Fallas de hardware que generan entradas falsas
Difciles de prever en la especificacin
Comandos sensibles al contexto, es decir que publican el
comando correcto en el momento inadecuado
A menudo es resultado de los errores de los operadores
La terminologa de seguridad
Logros de seguridad

Evitar los peligros


El sistema est diseado de modo que algunas clases de peligro
no puede surgir.
Deteccin y eliminacin de peligros
El sistema est diseado de manera que los peligros se
detectan y se retiran antes de resultar en un accidente
Limitar los daos
El sistema incluye caractersticas de proteccin que minimicen
los daos que pueden derivarse de un accidente
Accidentes normales

Los accidentes en los sistemas complejos raramente tienen


una nica causa, ya que estos sistemas estn diseados para
ser resistentes a un nico punto de fallo
Disear sistemas de forma que un nico punto de fallo no provoque
un accidente, es un principio fundamental del diseo de sistemas
de seguridad
Casi todos los accidentes son el resultado de combinaciones
de fallos de funcionamiento
Es probablemente el caso de que la previsin de todas las
combinaciones del problema, sobre todo, en sistemas
controlados por software es imposible, as que alcanzar de
manera completa la seguridad es imposible
Proteccin

La proteccin de un sistema es una propiedad del sistema que refleja la


capacidad del sistema para protegerse de un ataque exterior accidental
o deliberado
La proteccin es cada vez ms importante a medida que los sistemas
emplean redes, debido a la posibilidad de acceso externo al sistema a
travs de Internet.
La proteccin es un requisito previo esencial para la disponibilidad,
fiabilidad y seguridad
Proteccin Fundamental

Si un sistema es un sistema de red, es inseguro, luego las declaraciones


acerca de su fiabilidad y su proteccin no son fiables
Estas declaraciones dependen de que el sistema de ejecucin y el sistema
que se desarroll sean el mismo. Sin embargo, la intrusin puede cambiar
el sistema de ejecucin y / o sus datos
Por lo tanto, la fiabilidad y la garanta de proteccin ya no son vlidas
La terminologa de proteccin
Los daos provocados por la
inseguridad
Denegacin de servicio
El sistema se ve obligado a un estado donde no se dispone de los
servicios normales de prestacin de servicios o cuando es
degradado
La corrupcin de los programas o datos
Los programas o datos en el sistema pueden ser modificados de
manera no autorizada
Divulgacin de informacin confidencial
Informacin que es administrada por el sistema puede estar
expuesta a personas que no estn autorizadas a leer o utilizar esa
informacin
Garanta de Proteccin
Evitar la vulnerabilidad
El sistema est diseado de modo que la vulnerabilidad
no se produzcan. Por ejemplo, si no hay ninguna conexin
de red externa a continuacin, las agresiones externas
son imposibles
Ataque de deteccin y eliminacin
El sistema est diseado para que los ataques a las
vulnerabilidades se detectan y neutralizan antes de que
deriven en una exposicin. Por ejemplo, detectores de
virus encuentran y eliminan los virus antes de infectar un
sistema
Limitacin de la exposicin
El sistema est diseado para que las consecuencias
adversas de un ataque con xito se reducen al mnimo.
Por ejemplo, una copia de seguridad de la informacin
permite que se restablezca informacin daada
Puntos clave
Un sistema crtico es un sistema donde el fracaso
puede conducir a altas prdidas econmicas,
daos fsicos o de amenazas a la vida.
La confiabilidad en un sistema refleja la
confianza del usuario en ese sistema
La disponibilidad de un sistema es la
probabilidad de que pueda estar disponible
para prestar servicios cuando se solicite
La fiabilidad de un sistema es la probabilidad de
que los servicios del sistema sern entregados,
tal como se especifica
Fiabilidad y disponibilidad son generalmente
vistos como condiciones necesarias pero no
suficientes para la seguridad y la proteccin
Puntos clave

La fiabilidad se relaciona con la probabilidad de que se


produzca un error en el uso operativo. Un sistema con fallas
conocidas puede ser fiable
La proteccin es un atributo del sistema que refleja la
capacidad del sistema para funcionar sin poner en peligro
las personas o el entorno
La seguridad es un atributo del sistema que refleja la
capacidad del sistema para protegerse de las agresiones
externas
La mejora de la fiabilidad requiere un enfoque socio-tcnico
para el diseo, en la que considera a los seres humanos, as
como el hardware y el software

Potrebbero piacerti anche