De Wikipedia, la enciclopedia libre
Saltar a navegación Saltar a búsqueda

En la ingeniería de sistemas , la confiabilidad es una medida de la disponibilidad , confiabilidad y capacidad de mantenimiento de un sistema , y el rendimiento del soporte de mantenimiento y, en algunos casos, otras características como la durabilidad , la seguridad y la protección . [1] En la ingeniería de software , la confiabilidad es la capacidad de proporcionar servicios en los que se puede confiar de manera defendible dentro de un período de tiempo. [ cita requerida ]Esto también puede abarcar mecanismos diseñados para aumentar y mantener la confiabilidad de un sistema o software. [2]

La Comisión Electrotécnica Internacional (IEC), a través de su Comité Técnico TC 56, desarrolla y mantiene estándares internacionales que proporcionan métodos y herramientas sistemáticos para la evaluación de la confiabilidad y la gestión de equipos, servicios y sistemas a lo largo de sus ciclos de vida.

La confiabilidad se puede dividir en tres elementos:

  • Atributos : una forma de evaluar la confiabilidad de un sistema
  • Amenazas : comprensión de las cosas que pueden afectar la confiabilidad de un sistema.
  • Medios : formas de aumentar la confiabilidad de un sistema

Historia [ editar ]

Algunas fuentes sostienen que la palabra se acuñó en los diecinueve años en la publicidad impresa de automóviles de Dodge Brothers. Pero la palabra es anterior a ese período, y el Oxford English Dictionary encontró su primer uso en 1901.

A medida que aumentó el interés en la tolerancia a fallas y la confiabilidad del sistema en las décadas de 1960 y 1970, la confiabilidad llegó a ser una medida de [x], ya que las medidas de confiabilidad llegaron a abarcar medidas adicionales como la seguridad y la integridad. [3] A principios de la década de 1980, Jean-Claude Laprie eligió la confiabilidad como término para abarcar los estudios de tolerancia a fallas y confiabilidad del sistema sin la extensión del significado inherente a la confiabilidad . [4]

El campo de la confiabilidad ha evolucionado desde estos inicios para convertirse en un campo de investigación internacionalmente activo fomentado por una serie de conferencias internacionales destacadas, en particular la Conferencia Internacional sobre Sistemas y Redes Confiables , el Simposio Internacional sobre Sistemas Distribuidos Confiables y el Simposio Internacional sobre Confiabilidad del Software Ingeniería .

Tradicionalmente, la confiabilidad de un sistema incorpora disponibilidad , confiabilidad y facilidad de mantenimiento , pero desde la década de 1980, la seguridad y la protección se han agregado a las medidas de confiabilidad. [5]

Elementos de confiabilidad [ editar ]

Atributos [ editar ]

Taxonomía que muestra la relación entre confiabilidad y seguridad y atributos, amenazas y medios (según Laprie et al.)

Los atributos son cualidades de un sistema. Estos se pueden evaluar para determinar su confiabilidad general utilizando medidas cualitativas o cuantitativas . Avizienis y col. definir los siguientes atributos de confiabilidad:

  • Disponibilidad : preparación para un servicio correcto
  • Fiabilidad : continuidad del servicio correcto
  • Seguridad : ausencia de consecuencias catastróficas para los usuarios y el medio ambiente
  • Integridad : ausencia de alteración inadecuada del sistema
  • Mantenibilidad : capacidad para un fácil mantenimiento (reparación)

Como sugieren estas definiciones, solo la Disponibilidad y la Fiabilidad son cuantificables mediante mediciones directas, mientras que otras son más subjetivas. Por ejemplo, la seguridad no se puede medir directamente a través de métricas, sino que es una evaluación subjetiva que requiere que se aplique información de juicio para brindar un nivel de confianza, mientras que la confiabilidad se puede medir como fallas a lo largo del tiempo.

La confidencialidad , es decir, la ausencia de divulgación no autorizada de información, también se utiliza al abordar la seguridad. La seguridad es una combinación de confidencialidad , integridad y disponibilidad . La seguridad a veces se clasifica como un atributo [6], pero la visión actual es agregarlo junto con la confiabilidad y tratar la confiabilidad como un término compuesto llamado confiabilidad y seguridad. [2]

En la práctica, la aplicación de medidas de seguridad a los dispositivos de un sistema generalmente mejora la confiabilidad al limitar el número de errores originados externamente.

Amenazas [ editar ]

Las amenazas son cosas que pueden afectar a un sistema y provocar una caída en la confiabilidad. Hay tres términos principales que deben entenderse claramente:

  • Falla: una falla (que generalmente se conoce como un error por razones históricas) es un defecto en un sistema. La presencia de una falla en un sistema puede conducir o no a una falla. Por ejemplo, aunque un sistema puede contener una falla, es posible que sus condiciones de entrada y estado nunca provoquen la ejecución de esta falla de modo que ocurra un error; y, por tanto, esa falta en particular nunca se presenta como una falla.
  • Error: un error es una discrepancia entre el comportamiento previsto de un sistema y su comportamiento real dentro de los límites del sistema. Los errores ocurren en tiempo de ejecución cuando alguna parte del sistema entra en un estado inesperado debido a la activación de una falla. Dado que los errores se generan a partir de estados no válidos, son difíciles de observar sin mecanismos especiales, como depuradores o resultados de depuración en registros.
  • Falla: una falla es una instancia en el tiempo cuando un sistema muestra un comportamiento contrario a su especificación. Un error puede no causar necesariamente una falla, por ejemplo, un sistema puede lanzar una excepción, pero esto puede ser detectado y manejado usando técnicas de tolerancia a fallas para que el funcionamiento general del sistema se ajuste a la especificación.

Es importante tener en cuenta que las fallas se registran en el límite del sistema. Básicamente son errores que se han propagado a los límites del sistema y se han vuelto observables. Las fallas, errores y fallas operan de acuerdo con un mecanismo. Este mecanismo a veces se conoce como cadena de falla-error-falla. [7] Como regla general, una falla, cuando se activa, puede conducir a un error (que es un estado inválido) y el estado inválido generado por un error puede conducir a otro error o falla (que es una desviación observable de la especificada comportamiento en el límite del sistema). [8]

Una vez que se activa una falla, se crea un error. Un error puede actuar de la misma manera que una falla, ya que puede crear más condiciones de error, por lo tanto, un error puede propagarse varias veces dentro de los límites del sistema sin causar una falla observable. Si un error se propaga fuera de los límites del sistema, se dice que ocurre una falla. Una falla es básicamente el punto en el que se puede decir que un servicio no cumple con su especificación. Dado que los datos de salida de un servicio pueden alimentarse a otro, una falla en un servicio puede propagarse a otro servicio como una falla, por lo que se puede formar una cadena de la forma: Falla que conduce a Error que conduce a Falla que conduce a Error, etc.

Medios [ editar ]

Dado que se entiende el mecanismo de una Cadena de Fallo-Error, es posible construir medios para romper estas cadenas y así aumentar la confiabilidad de un sistema. Hasta ahora se han identificado cuatro medios:

  1. Prevención
  2. Eliminación
  3. Previsión
  4. Tolerancia

La prevención de fallas se ocupa de evitar que las fallas se incorporen a un sistema. Esto se puede lograr mediante el uso de metodologías de desarrollo y buenas técnicas de implementación.

La eliminación de fallas se puede subdividir en dos subcategorías: eliminación durante el desarrollo y eliminación durante el uso.
La eliminación durante el desarrollo requiere verificación para que las fallas se puedan detectar y eliminar antes de que un sistema se ponga en producción. Una vez que los sistemas se han puesto en producción, se necesita un sistema para registrar las fallas y eliminarlas mediante un ciclo de mantenimiento.

El pronóstico de fallas predice fallas probables para que se puedan eliminar o sus efectos se puedan eludir. [9] [10]

La tolerancia a fallas se ocupa de poner en marcha mecanismos que permitan que un sistema aún brinde el servicio requerido en presencia de fallas, aunque ese servicio puede estar en un nivel degradado.

Los medios de confiabilidad están destinados a reducir el número de fallas que se presentan al usuario de un sistema. Las fallas se registran tradicionalmente a lo largo del tiempo y es útil comprender cómo se mide su frecuencia para poder evaluar la efectividad de los medios.11

Fiabilidad de los sistemas de información y supervivencia [ editar ]

Algunos trabajos sobre confiabilidad [11] utilizan sistemas de información estructurados , por ejemplo con SOA , para introducir el atributo de supervivencia , teniendo en cuenta los servicios degradados que un Sistema de Información sostiene o reanuda después de una falla no enmascarable.

La flexibilidad de los marcos actuales alienta a los arquitectos de sistemas a habilitar mecanismos de reconfiguración que reorienten los recursos seguros disponibles para respaldar los servicios más críticos en lugar de aprovisionar en exceso para construir un sistema a prueba de fallas.

Con la generalización de los sistemas de información en red, se introdujo la accesibilidad para dar mayor importancia a la experiencia de los usuarios.

Para tener en cuenta el nivel de rendimiento, la medición de la capacidad de rendimiento se define como "cuantificar qué tan bien se desempeña el sistema de objetos en presencia de fallas durante un período de tiempo específico". [12]

Ver también [ editar ]

  • Conferencia internacional sobre redes y sistemas confiables  - Conferencia sobre redes informáticas
  • Inyección de fallas
  • Tolerancia a fallas  : resistencia de los sistemas a fallas o errores de componentes
  • Métodos formales  : especificación del programa matemático destinada a permitir pruebas de corrección, incluidas las
  • Lista de atributos de calidad del sistema  : requisitos no funcionales para la evaluación del sistema
  • RAMS
  • Ingeniería de confiabilidad  : Subdisciplina de ingeniería de sistemas que enfatiza la confiabilidad en la gestión del ciclo de vida de un producto o sistema.
  • Ingeniería de seguridad  : disciplina de la ingeniería que asegura que los sistemas diseñados brinden niveles aceptables de seguridad.

Lectura adicional [ editar ]

Papeles [ editar ]

  • Wilfredo Torres-Pomales: Tolerancia a fallas de software: un tutorial , 2002
  • Stefano Porcarelli, Marco Castaldi, Felicita Di Giandomenico, Andrea Bondavalli, Paola Inverardi Un enfoque para gestionar la reconfiguración en sistemas distribuidos tolerantes a fallas

Revistas [ editar ]

  • Prognostics Journal es una revista de acceso abierto que proporciona un foro internacional para la publicación electrónica de artículos originales de investigación y experiencia industrial en todas las áreas de confiabilidad y pronóstico de sistemas.
  • Revista internacional de sistemas informáticos críticos
  • Simposio Latinoamericano de Computación Dependiente

Libros [ editar ]

  • JC Laprie, Fiabilidad : conceptos básicos y terminología Springer-Verlag, 1992. ISBN  0-387-82296-8

Proyectos de investigación [ editar ]

  • DESEREC , Fiabilidad y seguridad gracias a la reconfigurabilidad mejorada , proyecto integrado FP6 / IST 2006-2008
  • NODES [ enlace muerto permanente ] , red en sistemas fiables
  • ESFORS, Foro europeo de seguridad para servicios web, software y sistemas , acción de coordinación FP6 / IST
  • HIDENETS Redes y servicios basados ​​en ip altamente confiables , proyecto focalizado FP6 / IST 2006-2008
  • RESIST FP6 / IST Network of Excellence 2006-2007
  • RODIN Entorno de desarrollo abierto riguroso para sistemas complejos Proyecto focalizado FP6 / IST 2004-2007
  • SERENITY Ingeniería de sistemas para seguridad y confiabilidad , proyecto integrado FP6 / IST 2006-2008
  • Willow Survivability Architecture y STILT , Sistema de Intervención Terrorista y Trabajo en Equipo a Gran Escala 2002-2004
  • Composición de servicio seguro y confiable de ANIKETOS , proyecto integrado FP7 / IST 2010-2014

Referencias [ editar ]

  1. ^ IEC, Electropedia del 192 Dependability , http://www.electropedia.org , seleccione 192 Dependability, consulte 192-01-22 Dependability.
  2. ↑ a b A. Avizienis, J.-C. Laprie, Brian Randell y C. Landwehr, " Conceptos básicos y taxonomía de la informática segura y fiable ", IEEE Transactions on Dependable and Secure Computing, vol. 1, págs. 11-33, 2004.
  3. ^ Brian Randell , "Confiabilidad del software: una visión personal", en el proceso del 25º Simposio internacional sobre informática tolerante a fallas (FTCS-25), California, Estados Unidos, págs. 35-41, junio de 1995.
  4. ^ JC Laprie. "Computación confiable y tolerancia a fallas: conceptos y terminología", en Proc. 15 ° IEEE Int. Symp. sobre Computación tolerante a fallas, 1985
  5. A. Avizienis, J.-C. Laprie y Brian Randell : conceptos fundamentales de confiabilidad . Informe de investigación No 1145, Lydford g DrAAS-CNRS , abril de 2001
  6. ^ I. Sommerville, Ingeniería de software: Addison-Wesley, 2004.
  7. ^ A. Avizienis, V. Magnus U, JC Laprie y Brian Randell , "Conceptos fundamentales de confiabilidad", presentado en ISW-2000, Cambridge, MA, 2000.
  8. ^ Moradi, Mehrdad; Van Acker, Bert; Vanherpen, Ken; Denil, Joachim (2019). Chamberlain, Roger; Taha, Walid; Törngren, Martin (eds.). "Inyección de fallas híbridas implementadas en modelos para Simulink (demostraciones de herramientas)". Sistemas ciberfísicos. Diseño basado en modelos . Apuntes de conferencias en informática. Cham: Springer International Publishing. 11615 : 71–90. doi : 10.1007 / 978-3-030-23703-5_4 . ISBN 978-3-030-23703-5.
  9. ^ "Optimización de la inyección de fallas en la co-simulación de FMI a través de la partición de sensibilidad | Actas de la Conferencia de simulación de verano de 2019" . dl.acm.org . Consultado el 15 de junio de 2020 .
  10. ^ Moradi, Mehrdad, Bentley James Oakes, Mustafa Saraoglu, Andrey Morozov, Klaus Janschek y Joachim Denil. "Exploración del espacio de parámetros de fallas mediante la inyección de fallas basada en el aprendizaje reforzado". (2020).
  11. ^ John C. Knight, Elisabeth A. Strunk, Kevin J. Sullivan: Hacia una definición rigurosa de la supervivencia del sistema de información Archivado el 29 de octubre de 2006 en la Wayback Machine.
  12. ^ John F. Meyer, William H. Sanders Especificación y construcción de modelos de performabilidad