kramann.info
© Guido Kramann

Login: Passwort:










5 Entwicklung von Fehler toleranter Software

5 Development of error tolerant software (EN google-translate)

5 Opracowanie oprogramowania tolerującego błędy (PL google-translate)

Problem.

Bild 5-1: Problem.

Die nachfolgenden Ausführungen fassen einige zentrale Kapitel aus dem Buch "Patterns for Fault Tolerant Software" zusammen.

The following comments summarize some central chapters from the book Patterns

Poniższe komentarze podsumowują niektóre centralne rozdziały z książki Wzorce

Die dort beschriebenen Konzepte sollen zu den eigenen Projekten in Beziehung gebracht werden: Identifizieren Sie fehleranfällige Bereiche in Ihrem Projekt und überlegen Sie, welche(s) Muster für eine fehlertolerante Behandlung dort eingesetzt das Gesamtverhalten verbessern, bzw. die Ausfallwahrscheinlichkeit verringern kann.

The concepts described there are intended to be used in one 's own projects Relationship: Identify areas prone to failure in your project and consider which pattern (s) for a fault-tolerant Treatment used there improve the overall behavior, or the probability of default can reduce.

Opisane tam pojęcia mają być używane we własnych projektach Relacja: Określ obszary podatne na awarię w twoim projekcie i zastanów się, który wzorzec jest odporny na uszkodzenia Stosowane tam leczenie poprawia ogólne zachowanie lub prawdopodobieństwo niewywiązania się z zobowiązań może zmniejszyć.

Wenden Sie dann dieses Konzept tatsächlich an und beschreiben Sie es auch später in dem Bericht zu Ihrem Projekt.

Then apply this concept and describe it later Report on your project.

Następnie zastosuj tę koncepcję i opisz ją później Zgłoś swój projekt.

Abhilfe.

Bild 5-2: Abhilfe.

Autor Titel erschienen
Hanmer, R.S. Patterns for Fault Tolerant Software John Wiley & Sons, Chichester, 2007.

Tabelle 5-1: Literatur zu "Fehlertoleranter Softwareentwurf"

  • zu lesen:
  1. Seiten 3..7
  2. Seiten 17..26
  3. Seiten 27..52
  4. Seiten 53..81

Begrifflichkeit

terminology

terminologia

  • Ein System ist fehlerhaft programmiert. Es gibt darin Fehler (faults).
  • Die fehlerhafte Programmierung kann im Betrieb zu Defekten und Störungen führen (Errors).
  • Die Defekte und Störungen wiederum können zum Versagen / zu Ausfällen des Systems führen (Failure).

Im folgenden sind die relevanten Begriffe im engeren thematischen Rahmen der "Fault tolerant Software" noch einmal zusammengefaßt:

The following are the relevant terms in the narrower thematic framework of Fault

Poniżej przedstawiono odpowiednie terminy w ramach węższych ram tematycznych Wina

Englisches Wort Deutsche Übersetzung Bedeutung
fault Fehler Programmierfehler / logischer Umsetzungsfehler
error Störung Defekte und Störungen, die im Betrieb auftreten
failure Ausfall Ausfall oder Versagen eines Systems

Tabelle 5-2: Begriffsübersicht.

Fehlertolerante Systeme und Echtzeitsysteme

Fault-tolerant systems and real-time systems

Systemy odporne na awarie i systemy czasu rzeczywistego

Dieses Thema hat einen engen Bezug zu der Echtzeitthematik., Bei den hier hauptsächlich behandelten mobilen Systemen mit eingebetteten Rechnern gibt es eine Vielzahl an möglichen Versagensursachen, die mit dem Zeitverhalten und einer Bewegung in unbekanntem Terrain zu tun haben:

This topic is closely related to the real-time topic., In the case of the mainly treated mobile systems with embedded Computers have a variety of possible causes of failure that have to do with timing and movement in unfamiliar terrain:

Ten temat jest ściśle związany z tematem w czasie rzeczywistym., W przypadku głównie traktowanych systemów mobilnych z wbudowanym Komputery mają wiele możliwych przyczyn awarii mają do czynienia z czasem i ruchem w nieznanym terenie:

  • Funkverbindungen mit einer Kontrollstation können abreißen,
  • Sensoren können falsche Werte liefern,
  • ein niedriger Ladungszustand der Bordbatterien kann zu fehlerhaften Signalen der Prozessoren oder zu deren Ausfall führen, was sich im schlimmsten Fall in einem unkontrollierten Fahrverhalten äußern kann.

Rezepte für die Erstellung Fehler toleranter Software (Pattern for Fault tolerant Software)

Recipes for creating error tolerant software (Pattern for Fault Tolerant Software)

Przepisy dotyczące tworzenia oprogramowania odpornego na błędy (Pattern for Fault Tolerant Software)

Diese Liste ließe sich beliebig verlängern, analysieren und kategorisieren. Aus einer solchen Arbeit heraus, sind Rezepte / Muster / Pattern entstanden, wie Software gestaltet werden sollte, um ein Fehler tolerantes (Fault tolerant) System zu erhalten.

This list could be extended, analyzed and categorized as desired. From such a work, recipes / patterns / patterns have emerged, How software should be designed to handle a fault tolerant System to receive.

Ta lista mogłaby zostać rozszerzona, przeanalizowana i skategoryzowana zgodnie z potrzebami. Z takiej pracy wyłoniły się receptury / wzory / wzory, Jak oprogramowanie powinno być zaprojektowane tak, aby było odporne na błędy System do odbioru.

Ein sehr elementares Konzept ist beispielsweise KIS für "Keep It Simple" - mach es einfach. Da jede Codezeile wieder eine Quelle für Programmierfehler sein kann, wird bei Fehler kritischen Systemen angestrebt, den Codeumfang auf das Wesentliche zu beschränken und gerade nicht zu versuchen Schnittstellen für alle möglichen Eventualitäte anzubieten.

A very elementary concept is, for example, KIS for Keep Since every line of code can once again be a source of programming errors, it is added The goal of critical systems is to limit the scope of the code to the essentials and not trying to offer interfaces for all kinds of eventualities.

Bardzo elementarną koncepcją jest na przykład KIS for Keep Ponieważ każda linia kodu może ponownie być źródłem błędów programowania, jest dodawana Celem krytycznych systemów jest ograniczenie zakresu kodu do podstawowych elementów i nie próbując oferować interfejsów dla wszystkich rodzajów zdarzeń.

11 Architectural Patterns / Software-Architektur zu 11 Mustern zur Umsetzung Fehler toleranter Software
11 Architectural Patterns / Software Architecture to 11 Patterns for Implementing Error Tolerant Software
11 Wzorce architektoniczne / Architektura oprogramowania do 11 wzorców implementacji oprogramowania odpornego na błędy

Überlegen Sie sich, welche Probleme bei der Regelung des Spiegels auftreten und wie diese durch Umsetzung der nachfolgenden Pattern eventuell behoben werden könnten:

Think about the problems that arise when controlling the mirror and how they might be resolved by implementing the following patterns:

Pomyśl o problemach, które pojawiają się podczas kontrolowania lustra i jak można je rozwiązać, stosując następujące wzorce:

Nr. Pattern (engl.) Muster (deu.) Zweck
1 Units Of Mitigation Elemente zur Abschwächung / Besänftigung Realisierte Strategien, um beispielsweise mit Überlastung umzugehen. Redundanz, Rollback, Recovery Blocks...
2 Correcting Audits Korrigierende Betriebsprüfung Überprüfung, ob Daten oder Strukturen korrumpiert sind und nötigenfalls deren Wiederherstellung.
3 Redundancy Redundanz Verfügbarkeit mehrerer Komponenten, die die gleichen Aufgaben übernehmen können.
4 Recovery Blocks Regenerierungs-Blöcke Zeitliches Hinternanderschalten von Blöcken, die die gleiche Aufgabe auf unterschiedliche Weise versuchen zu lösen. Versagt ein vorangehender Block, wird sein Nachfolger mit der gleichen Aufgabe betraut, versagt dieser, kommt dessen Nachfolger an die Reihe.
5 Minimize Human Intervention Minimierung menschlicher Einmischung Viele Fehler werden noch schlimmer, wenn durch Menschen in unsachgemäßer Weise interveniert wird.
6 Maximize Human Participation Maximierung menschlicher Anteilnahme Das System sollte Methoden bereithalten, die es Experten erlauben, an der Beseitigung von Fehlern mitzuwirken.
7 Maintenance Interface Wartungsschnittstelle Das System sollte eine Wartungsschnittstelle bereitstellen.
8 Someone in Charge Aufsichtsführung Zu jedem Modul und dessen Aktionen sollte es ein beaufsichtigendes Element geben.
9 Escalation Eskalation Wenn die üblichen Korrekturmethoden versagen, sollte ein Konzept für eine nächst höhere Eskalationsstufe greifen und danach eine weitere usw.
10 Fault Observer Fehler Beobachter Das System sollte Fehler automatisch korrigieren, jedoch sollte dies ggf. auch kenntlich gemacht werden. Mitgeschriebene Fehler sollten an passende Observer weitergeleitet werden.
11 Software Update Software Aktualisierung Entwerfe Dein System so, dass Software Updates vorgesehen sind. Se sollten im produktiven Betrieb möglich sein.

Tabelle 5-3: Software-Architektur-Muster für Fehler tolerante Software.

Weitere englische Begriffe

Other English terms

Inne terminy w języku angielskim

englisch deutsch
Reliability Ausfallsicherheit
Mitigation Abschwächung/Besänftigung
Recovery Erholung/Rettung
Tradeoff Austauschbeziehung
Mindset Denkweise
Coverage Absicherung
availability Betriebsbereitschaft

Tabelle 5-4: Weitere englische Begriffe.