curso de ingeniería de software basado en ian sommerville - capitulo3
DESCRIPTION
Curso de Ingeniería de Software basado en Ian SommervilleTRANSCRIPT
![Page 1: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/1.jpg)
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1
Sistemas Críticos – Capítulo 3
Curso de Ing. de Software – FIIS UNAC
Ing. Eddie Malca Vicente
![Page 2: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/2.jpg)
“Lo que no existe es simplemente lo que no hemos deseado con suficiente pasión “
![Page 3: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/3.jpg)
Objetivos
Explicar qué se entiende por sistema crítico en el que el fallo del sistema puede tener graves consecuencias económicas o humanas.
Explicar las cuatro dimensiones de la confiablidad de un sistema – disponibilidad, fiabilidad, seguridad y protección.
Explicar que, para lograr la confiabilidad, es necesario evitar los errores, detectar y eliminar los errores y limitar los daños causados por el fracaso.
![Page 4: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/4.jpg)
Tópicos Expuestos
Un sistema de seguridad crítico Confiabilidad del sistema Disponibilidad y fiabilidad Seguridad Protección
![Page 5: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/5.jpg)
Sistemas Críticos
Los sistemas críticos de seguridad- Las fallas se traducen en pérdida de vidas, lesiones o daños
para el entorno;- Sistema de protección de una planta química;
Sistemas de misión crítica- La falla da lugar a fallar en actividades dirigidas hacia una meta;- Sistema de navegación de naves espaciales;
Los sistemas críticos de negocio- Las fallas se traducen en altas pérdidas económicas;- Sistema de contabilidad de clientes en un banco;
![Page 6: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/6.jpg)
Confiabilidad del sistema
Para los sistemas críticos, por lo general se da el caso de que la propiedad más 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.
![Page 7: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/7.jpg)
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 pérdida de
información con una consiguiente recuperación de alto costo.
![Page 8: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/8.jpg)
Metodologías de desarrollo para sistemas críticos
Los costos de error de sistemas críticos son tan elevados que la metodología de desarrollo puede ser no rentable para otros tipos de sistema.
Ejemplos de metodologías de desarrollo- Métodos formales de desarrollo de software- Análisis estático- Garantía externa de la calidad
![Page 9: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/9.jpg)
Sistemas socio-técnicos críticos
Fallo de hardware- El hardware falla debido a errores de diseño y fabricación
o bien a que éstos componentes han finalizado su periodo de vida útil.
Fallo de software- Software falla debido a errores en su especificación,
diseño o implementación. Fallo de funcionamiento
- Operadores humanos cometen errores. Actualmente tal vez la principal causa de los fallos del sistema.
![Page 10: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/10.jpg)
Software de control para una bomba de insulina
Utilizados por los diabéticos para simular la función del páncreas que produce insulina, una hormona que metaboliza la glucosa en la sangre.
Mide la glucosa en la sangre (azúcar) con micro-sensores y calcula la dosis de insulina necesaria para metabolizar la glucosa.
![Page 11: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/11.jpg)
Estructura de la bomba de insulina
![Page 12: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/12.jpg)
Modelo de flujo de datos de la bomba de insulina
![Page 13: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/13.jpg)
Requerimientos de confiabilidad
El sistema se pondrá a disposición 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 azúcar en la sangre.
El requisito de seguridad esencial es que excesivas dosis de insulina nunca deben ser bombeadas ya que estas son potencialmente mortales.
![Page 14: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/14.jpg)
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;- Protección
![Page 15: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/15.jpg)
Aspectos de confiabilidad
![Page 16: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/16.jpg)
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.
![Page 17: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/17.jpg)
Mantenibilidad
Un atributo del sistema que se refiere a la facilidad de reparar el sistema después de que una falla ha sido descubierta o cambiar el sistema a fin de incluir nuevas características
De gran importancia para los sistemas críticos puesto que comúnmente se introducen fallas al sistema debido a problemas de mantenimiento
La mantenibilidad es distinta de otros aspectos de la confiabilidad, porque es un atributo estático y no dinámico..
![Page 18: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/18.jpg)
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 más importancia para los sistemas distribuidos, cuya seguridad personal puede verse comprometida
La supervivencia incluye la noción de resistencia - la capacidad de un sistema para seguir en funcionamiento a pesar de los fallos de componentes
![Page 19: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/19.jpg)
Confiabilidad vs Funcionamiento
Sistemas poco fiables pueden ser rechazados por sus usuarios
El costo de fallas del sistema puede ser muy alto Es muy difícil de ajustar los sistemas para hacerlos más fiables Es posible compensar sistemas de funcionamiento pobre Los sistemas no confiables pueden causar la pérdida de
información valiosa
![Page 20: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/20.jpg)
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 técnicas de desarrollo y hardware más caros
que se requieren para alcanzar los niveles más altos de fiabilidad
- El aumento de las pruebas y la validación del sistema que se necesita para convencer al cliente de que el sistema ha logrado los niveles de fiabilidad requeridos
![Page 21: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/21.jpg)
Confiabilidad y costos
![Page 22: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/22.jpg)
La economía de la confiabilidad
Debido a costos muy elevados de logro de fiabilidad, puede ser más rentable aceptar sistemas no confiables y pagar los costes de fallos del mismo.
Sin embargo, esto depende de factores sociales y políticos. 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.
![Page 23: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/23.jpg)
Disponibilidad y fiabilidad
Fiabilidad- La probabilidad de fallo libre de la operación del sistema
durante un período de tiempo determinado en un entorno determinado para un propósito 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.
![Page 24: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/24.jpg)
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 específicos 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 rápidamente y no dañar los datos, la baja fiabilidad puede no ser un problema.
La disponibilidad toma en cuenta tiempo de reparación.
![Page 25: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/25.jpg)
Terminología de la fiabilidad
![Page 26: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/26.jpg)
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 detección
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.
![Page 27: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/27.jpg)
Percepciones de confiabilidad
La definición formal de la fiabilidad no siempre refleja la percepción 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 utilización del mismo sistema en un entorno universitario.
- Las consecuencias de los fallos en el sistema afecta a la percepción de confiabilidad:- Limpiaparabrisas poco confiables de un coche pueden ser
irrelevantes en un clima seco.- Las fallas que tienen consecuencias serias (tales como una
avería en el motor de un automóvil) tienen mayor peso por parte de los usuarios que otras fallas inadecuadas.
![Page 28: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/28.jpg)
Logros de Confiabilidad
Evitación de la culpa- Técnica empleada en el desarrollo que se utiliza ya sea para
reducir al mínimo la posibilidad de errores o trampas antes de que resulten introduciéndose errores al sistema.
Detección y eliminación de defectos- Son usadas técnicas de verificación y validación que aumentan
la probabilidad de detectar y corregir errores antes de que el sistema entre en servicio.
Tolerancia a fallos- Técnicas en tiempo de ejecución 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.
![Page 29: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/29.jpg)
Modelado Confiable
Puede modelarse un sistema como un mapa de entrada-salida donde algunas entradas se traducirán en resultados erróneos.
La fiabilidad del sistema es la probabilidad de que una determinada entrada estará dentro de un conjunto de entradas que causan salidas erróneas.
Diferentes personas utilizan el sistema en diferentes formas, por lo que esta probabilidad no es un atributo estático del sistema, pero depende del entorno del sistema.
![Page 30: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/30.jpg)
Correspondencia entre entradas y salidas
![Page 31: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/31.jpg)
Patrones del uso de Software
![Page 32: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/32.jpg)
Mejora de la confiabilidad
X% de la eliminación de los defectos en un sistema no necesariamente mejoran la fiabilidad en un X%. Un estudio de IBM demostró que la eliminación 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 código, de manera que tal vez nunca sean encontrados por los usuarios. La eliminación de estos no afecta a la percepción de fiabilidad.
Un programa con defectos conocidos todavía puede ser visto como fiable por sus usuarios.
![Page 33: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/33.jpg)
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 daño para el entorno del sistema.
Es cada vez más importante considerar seguridad del software pues los dispositivos incorporan cada vez más 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.
![Page 34: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/34.jpg)
Sistemas de seguridad críticos primarios- Sistemas de software embebido cuyo fallo puede hacer
que el hardware asociado falle y amenace directamente a la gente.
Sistemas de seguridad críticos 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 críticos
primarios- Los sistemas de seguridad-críticos secundarios se
pueden considerar solamente sobre una base única.
Seguridad-criticidad
![Page 35: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/35.jpg)
La seguridad y la fiabilidad están 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 daño alguno, independientemente de sise ajusta a su especificación o no.
La seguridad y la fiabilidad
![Page 36: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/36.jpg)
Especificación de los errores- Si la especificación del sistema es incorrecta, entonces el
sistema puede comportarse tal como se especifica causando así un accidente.
Fallas de hardware que generan entradas falsas- Difíciles de prever en la especificación.
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.
Sistemas confiables no seguros
![Page 37: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/37.jpg)
La terminología de seguridad
![Page 38: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/38.jpg)
Logros de seguridad
Evitar los peligros- El sistema está diseñado de modo que algunas clases de
peligro no puede surgir. Detección y eliminación de peligros
- El sistema está diseñado de manera que los peligros se detectan y se retiran antes de resultar en un accidente.
Limitar los daños- El sistema incluye características de protección que
minimicen los daños que pueden derivarse de un accidente.
![Page 39: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/39.jpg)
Accidentes normales
Los accidentes en los sistemas complejos raramente tienen una única causa, ya que estos sistemas están diseñados para ser resistentes a un único punto de fallo.- Diseñar sistemas de forma que un único punto de fallo no
provoque un accidente, es un principio fundamental del diseño de sistemas de seguridad.
Casi todos los accidentes son el resultado de combinaciones de fallos de funcionamiento.
Es probablemente el caso de que la previsión 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.
![Page 40: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/40.jpg)
Protección
La protección de un sistema es una propiedad del sistema que refleja la capacidad del sistema para protegerse de un ataque exterior accidental o deliberado.
La protección es cada vez más importante a medida que los sistemas emplean redes, debido a la posibilidad de acceso externo al sistema a través de Internet.
La protección es un requisito previo esencial para la disponibilidad, fiabilidad y seguridad.
![Page 41: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/41.jpg)
Protección Fundamental
Si un sistema es un sistema de red, es inseguro, luego las declaraciones acerca de su fiabilidad y su protección no son fiables.
Estas declaraciones dependen de que el sistema de ejecución y el sistema que se desarrolló sean el mismo. Sin embargo, la intrusión puede cambiar el sistema de ejecución y / o sus datos.
Por lo tanto, la fiabilidad y la garantía de protección ya no son válidas.
![Page 42: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/42.jpg)
La terminología de protección
![Page 43: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/43.jpg)
Los daños provocados por la inseguridad
Denegación de servicio- El sistema se ve obligado a un estado donde no se
dispone de los servicios normales de prestación de servicios o cuando es degradado.
La corrupción de los programas o datos- Los programas o datos en el sistema pueden ser
modificados de manera no autorizada. Divulgación de información confidencial
- Información que es administrada por el sistema puede estar expuesta a personas que no están autorizadas a leer o utilizar esa información.
![Page 44: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/44.jpg)
Garantía de Protección
Evitar la vulnerabilidad- El sistema está diseñado de modo que la vulnerabilidad no se
produzcan. Por ejemplo, si no hay ninguna conexión de red externa a continuación, las agresiones externas son imposibles.
Ataque de detección y eliminación- El sistema está diseñado para que los ataques a las
vulnerabilidades se detectan y neutralizan antes de que deriven en una exposición. Por ejemplo, detectores de virus encuentran y eliminan los virus antes de infectar un sistema.
Limitación de la exposición- El sistema está diseñado para que las consecuencias adversas
de un ataque con éxito se reducen al mínimo. Por ejemplo, una copia de seguridad de la información permite que se restablezca información dañada.
![Page 45: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/45.jpg)
Puntos clave
Un sistema crítico es un sistema donde el fracaso puede conducir a altas pérdidas económicas, daños físicos 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 serán entregados, tal como se especifica.
Fiabilidad y disponibilidad son generalmente vistos como condiciones necesarias pero no suficientes para la seguridad y la protección.
![Page 46: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/46.jpg)
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 protección 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-técnico para el diseño, en la que considera a los seres humanos, así como el hardware y el software
![Page 47: Curso de Ingeniería de Software basado en Ian Sommerville - Capitulo3](https://reader033.vdocuments.co/reader033/viewer/2022052311/557b4938d8b42a014a8b4be1/html5/thumbnails/47.jpg)
©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1
Sistemas Críticos – Capítulo 3
Curso de Ing. de Software – FIIS UNAC
Ing. Eddie Malca Vicente