Zuverlässigkeit - Dependability

In der Systemtechnik ist Zuverlässigkeit ein Maß für die Verfügbarkeit , Zuverlässigkeit , Wartbarkeit eines Systems und in einigen Fällen auch für andere Eigenschaften wie Dauerhaftigkeit , Sicherheit und Schutz . Beim Echtzeit- Computing ist Zuverlässigkeit die Fähigkeit, vertrauenswürdige Dienste innerhalb eines bestimmten Zeitraums bereitzustellen. Die Servicegarantien müssen auch dann gelten, wenn das System Angriffen oder Naturausfällen ausgesetzt ist.

Die Internationale Elektrotechnische Kommission (IEC) entwickelt und pflegt über ihr Technisches Komitee TC 56 internationale Standards, die systematische Methoden und Werkzeuge für die Zuverlässigkeitsbewertung und das Management von Geräten, Diensten und Systemen während ihres gesamten Lebenszyklus bereitstellen. Die IFIP-Arbeitsgruppe 10.4 zum Thema "Zuverlässiges Rechnen und Fehlertoleranz" spielt eine Rolle bei der Zusammenfassung der Fortschritte der technischen Gemeinschaft auf diesem Gebiet und organisiert jedes Jahr zwei Workshops, um die Ergebnisse zu verbreiten.

Die Zuverlässigkeit lässt sich in drei Elemente unterteilen:

  • Attribute - eine Möglichkeit, die Zuverlässigkeit eines Systems zu bewerten
  • Bedrohungen – ein Verständnis der Dinge, die die Zuverlässigkeit eines Systems beeinträchtigen können
  • Mittel - Möglichkeiten, die Zuverlässigkeit eines Systems zu erhöhen

Geschichte

Einige Quellen behaupten, dass das Wort in den Neunzehn-Jahren in der Auto-Druckwerbung von Dodge Brothers geprägt wurde. Aber das Wort stammt aus dieser Zeit, und das Oxford English Dictionary fand seine erste Verwendung im Jahr 1901.

Als das Interesse an Fehlertoleranz und Systemzuverlässigkeit in den 1960er und 1970er Jahren zunahm, wurde Zuverlässigkeit ein Maß für [x], da Zuverlässigkeitsmaße zusätzliche Maßnahmen wie Sicherheit und Integrität umfassten. In den frühen 1980er Jahren wählte Jean-Claude Laprie daher Zuverlässigkeit als Begriff, um Studien zur Fehlertoleranz und Systemzuverlässigkeit ohne die der Zuverlässigkeit innewohnende Bedeutungserweiterung zu umfassen .

Das Feld der Zuverlässigkeit hat sich aus diesen Anfängen zu einem international aktiven Forschungsgebiet entwickelt, das durch eine Reihe bedeutender internationaler Konferenzen gefördert wird, insbesondere die International Conference on Dependable Systems and Networks , das International Symposium on Reliable Distributed Systems und das International Symposium on Software Reliability Ingenieurwesen .

Traditionell Zuverlässigkeit für ein System enthält Verfügbarkeit , Zuverlässigkeit , Wartbarkeit , aber seit den 1980er Jahren, die Sicherheit und die Sicherheit wurden Maßnahmen der Zuverlässigkeit hinzugefügt.

Elemente der Zuverlässigkeit

Attribute

Taxonomie, die den Zusammenhang zwischen Zuverlässigkeit und Sicherheit sowie Attributen, Bedrohungen und Mitteln zeigt (nach Laprie et al.)

Attribute sind Eigenschaften eines Systems. Diese können bewertet werden, um ihre Gesamtzuverlässigkeit mit qualitativen oder quantitativen Maßnahmen zu bestimmen . Avizienis et al. Definieren Sie die folgenden Zuverlässigkeitsattribute:

Wie diese Definitionen nahelegen, sind nur Verfügbarkeit und Zuverlässigkeit durch direkte Messungen quantifizierbar, während andere eher subjektiv sind. Sicherheit kann beispielsweise nicht direkt über Metriken gemessen werden, sondern ist eine subjektive Bewertung, die die Anwendung von Beurteilungsinformationen erfordert, um ein Vertrauensniveau zu geben, während Zuverlässigkeit als Fehler im Laufe der Zeit gemessen werden kann.

Vertraulichkeit , dh das Fehlen einer unbefugten Offenlegung von Informationen, wird auch bei der Adressierung der Sicherheit verwendet. Sicherheit setzt sich aus Vertraulichkeit , Integrität und Verfügbarkeit zusammen . Sicherheit wird manchmal als Attribut klassifiziert, aber die aktuelle Ansicht besteht darin, sie zusammen mit Zuverlässigkeit zu aggregieren und Zuverlässigkeit als einen zusammengesetzten Begriff namens Zuverlässigkeit und Sicherheit zu behandeln.

In der Praxis verbessert das Anwenden von Sicherheitsmaßnahmen auf die Appliances eines Systems im Allgemeinen die Zuverlässigkeit, indem die Anzahl von extern verursachten Fehlern begrenzt wird.

Bedrohungen

Bedrohungen sind Dinge, die ein System beeinträchtigen und die Zuverlässigkeit beeinträchtigen können. Es gibt drei Hauptbegriffe, die klar verstanden werden müssen:

  • Fehler: Ein Fehler (der aus historischen Gründen in der Regel als Bug bezeichnet wird) ist ein Defekt in einem System. Das Vorhandensein eines Fehlers in einem System kann zu einem Ausfall führen oder nicht. Obwohl ein System beispielsweise einen Fehler enthalten kann, können seine Eingabe- und Zustandsbedingungen niemals dazu führen, dass dieser Fehler ausgeführt wird, so dass ein Fehler auftritt; und daher zeigt sich dieser bestimmte Fehler nie als Fehler.
  • Fehler: Ein Fehler ist eine Diskrepanz zwischen dem beabsichtigten Verhalten eines Systems und seinem tatsächlichen Verhalten innerhalb der Systemgrenze. Fehler treten zur Laufzeit auf, wenn ein Teil des Systems aufgrund der Aktivierung eines Fehlers in einen unerwarteten Zustand gerät. Da Fehler aus ungültigen Zuständen generiert werden, sind sie ohne spezielle Mechanismen wie Debugger oder Debug-Ausgaben in Protokollen schwer zu beobachten.
  • Fehler: Ein Fehler ist ein Ereignis, in dem ein System ein Verhalten zeigt, das seiner Spezifikation widerspricht. Ein Fehler muss nicht unbedingt zu einem Ausfall führen, beispielsweise kann ein System eine Ausnahme auslösen, dies kann jedoch mithilfe von Fehlertoleranztechniken abgefangen und behandelt werden, sodass der Gesamtbetrieb des Systems der Spezifikation entspricht.

Es ist wichtig zu beachten, dass Fehler an der Systemgrenze aufgezeichnet werden. Sie sind im Grunde Fehler, die sich bis zur Systemgrenze ausgebreitet haben und beobachtbar geworden sind. Fehler, Fehler und Ausfälle funktionieren nach einem Mechanismus. Dieser Mechanismus wird manchmal als Fehler-Fehler-Fehler-Kette bezeichnet. In der Regel kann ein Fehler, wenn aktiviert, zu einem Fehler führen (das ist ein ungültiger Zustand) und der durch einen Fehler erzeugte ungültige Zustand kann zu einem anderen Fehler oder einem Ausfall führen (was eine beobachtbare Abweichung vom spezifizierten Verhalten bei der Systemgrenze).

Sobald ein Fehler aktiviert ist, wird ein Fehler erzeugt. Ein Fehler kann sich in der gleichen Weise wie ein Fehler verhalten, indem er weitere Fehlerbedingungen erzeugen kann, daher kann sich ein Fehler innerhalb einer Systemgrenze mehrmals ausbreiten, ohne einen beobachtbaren Fehler zu verursachen. Wenn sich ein Fehler außerhalb der Systemgrenze ausbreitet, tritt ein Fehler auf. Ein Fehler ist im Grunde der Punkt, an dem gesagt werden kann, dass ein Dienst seine Spezifikation nicht erfüllt. Da die Ausgabedaten eines Dienstes in einen anderen eingespeist werden können, kann sich ein Fehler in einem Dienst als Fehler auf einen anderen Dienst ausbreiten, sodass eine Kette der Form gebildet werden kann: Fehler, der zu Fehler führt, der zu Fehler führt, usw.

Meint

Da der Mechanismus einer Fehler-Fehler-Kette verstanden ist, ist es möglich, Mittel zu konstruieren, um diese Ketten zu unterbrechen und dadurch die Zuverlässigkeit eines Systems zu erhöhen. Bisher wurden vier Mittel identifiziert:

  1. Verhütung
  2. Entfernung
  3. Prognose
  4. Toleranz

Fehlervermeidung befasst sich mit der Verhinderung der Einführung von Fehlern in ein System. Dies kann durch die Verwendung von Entwicklungsmethoden und guten Implementierungstechniken erreicht werden.

Die Fehlerbehebung kann in zwei Unterkategorien unterteilt werden: Entfernung während der Entwicklung und Entfernung während der Nutzung.
Das Entfernen während der Entwicklung erfordert eine Überprüfung, damit Fehler erkannt und behoben werden können, bevor ein System in Produktion geht. Nachdem Systeme in Produktion gegangen sind, wird ein System benötigt, um Ausfälle zu erfassen und über einen Wartungszyklus zu beseitigen.

Die Fehlerprognose prognostiziert wahrscheinliche Fehler, damit sie behoben oder ihre Auswirkungen umgangen werden können.

Fehlertoleranz befasst sich mit der Einrichtung von Mechanismen, die es einem System ermöglichen, den erforderlichen Dienst auch bei Vorhandensein von Fehlern bereitzustellen, obwohl dieser Dienst möglicherweise auf einem verschlechterten Niveau ist.

Zuverlässigkeitsmittel sollen die Anzahl von Ausfällen reduzieren, die für die Endbenutzer eines Systems sichtbar gemacht werden.

Beharrlichkeit

Je nachdem, wie Fehler auftreten oder bestehen bleiben, werden sie wie folgt klassifiziert:

  • Vorübergehend: Sie erscheinen ohne ersichtlichen Grund und verschwinden ohne ersichtlichen Grund wieder
  • Intermittierend: Sie erscheinen mehrmals, möglicherweise ohne erkennbares Muster, und verschwinden von selbst
  • Permanent: Sobald sie erscheinen, werden sie nicht von selbst gelöst

Zuverlässigkeit von Informationssystemen und Überlebensfähigkeit

Einige Arbeiten zur Zuverlässigkeit verwenden strukturierte Informationssysteme , z. B. mit SOA , um das Attribut Überlebensfähigkeit einzuführen und damit die verschlechterten Dienste zu berücksichtigen, die ein Informationssystem nach einem nicht maskierbaren Ausfall aufrechterhält oder wiederaufnimmt.

Die Flexibilität aktueller Frameworks ermutigt Systemarchitekten, Rekonfigurationsmechanismen zu aktivieren, die die verfügbaren, sicheren Ressourcen neu fokussieren, um die kritischsten Dienste zu unterstützen, anstatt zu viel bereitzustellen, um ein ausfallsicheres System aufzubauen.

Mit der Verallgemeinerung vernetzter Informationssysteme wurde die Zugänglichkeit eingeführt, um der Benutzererfahrung eine größere Bedeutung zu verleihen.

Um das Leistungsniveau zu berücksichtigen, wird die Leistungsfähigkeitsmessung definiert als „Quantifizierung der Leistung des Objektsystems bei Vorhandensein von Fehlern über einen bestimmten Zeitraum“.

Siehe auch

Weiterlesen

Papiere

Konferenzen

  • International Symposium on Dependable Systems and Networks (DSN): Flaggschiff-Konferenz der Community, die seit 1970 jährlich stattfindet.
  • International Symposium on Reliable Distributed Systems (SRDS): Sein 40. Angebot findet im Jahr 2021 statt.

Mehr regional ausgerichtete Konferenzen:

  • Latin-American Symposium on Dependable Computing (LADC): Das zehnte Angebot findet 2021 statt.
  • Pacific Rim International Symposium on Dependable Computing (PRDC): Das 25. Angebot findet 2021 statt.

Zeitschriften

Bücher

  • JC Laprie, Dependability: Basic Concepts and Terminology , Springer-Verlag, 1992. ISBN  0-387-82296-8
  • Daniel P. Siewiorek, Robert S. Swarz, Zuverlässige Computersysteme: Design and Evaluation , AK Peters/CRC Press, 1998. ISBN 978-1568810928

Forschungsprojekte

  • DESEREC , DEpendability and Security by Enhanced REConfigurability , FP6 / IST integriertes Projekt 2006–2008
  • NODES , Netzwerk auf zuverlässigen Systemen
  • ESFORS, Europäisches Sicherheitsforum für Webdienste, Software und Systeme , RP6/IST-Koordinierungsaktion
  • HIDENETS Hochzuverlässige IP-basierte Netzwerke und Dienste , RP6/IST -Zielprojekt 2006–2008
  • RESIST FP6/IST Exzellenznetzwerk 2006–2007
  • RODIN Rigorous Open Development Environment for Complex Systems FP6/IST- Zielprojekt 2004–2007
  • SERENITY System Engineering für Sicherheit und Zuverlässigkeit , FP6/IST integriertes Projekt 2006–2008
  • Willow Survivability Architecture und STILT , System for Terrorism Intervention and Large-scale Teamwork 2002–2004
  • ANIKETOS Zuverlässige und sichere Servicezusammensetzung , FP7/IST integriertes Projekt 2010–2014

Verweise