Ausnahme-Situationen:
Wie kann man mit "Unerwartetem" umgehen?
<2019-04-14>
Wie sollte in konkret unvorhergesehene Ereignisse und Situationen agiert werden? Wie sollten try und catch etc. sowie Problem-Einträge in Logfiles und Nutzer-Benachrichtigungen eingesetzt werden?

"Unvorhergesehenes" in "Verarbeitbares" umwandeln:

Für alle erwartbaren Fälle sollten alle Komponenten des openWIM-Systems systematisch (re)agieren und die sich aus den Umständen und Anforderungen ableitbaren notwendigen "konstruktiven" Aktionen durchführen.

Aber auch das "Unerwartete" ist meist erwartbar, selbst wenn das exakte Ereignis im Einzelnen nicht immer vorhersehbar ist: Es ist praktisch unmöglich, für jede theoretisch denkbare Situation eine konkrete individuelle Vorsorge zu treffen, da sich beispielsweise das Umfeld einer Funktionalität unerwartet ändern kann oder benötigte Funktionalitäten ausfallen. Daher werden unter anderem Code-Bereiche des Systems in "try" & "catch"-Abschnitte eingefasst. Auch "default"-Zweige von "switch"-Statements oder "else"-Zweige in Abfragen können Orte für solcherart unerwarteter Ereignisse oder Situationen sein.

Die Behandlung unerwarteter Ereignisse sollte immer dann (und nur dann) geschehen, wenn das aufgetretene "unerwartete" Ereignis in eine "reguläre", konstruktive Aktion umgewandelt werden kann. Und sei es, dass dem Auftraggeber einer Funktionalität (per Message, Callback, etc.) mitgeteilt wird, dass ein Ausnahme-Ereignis stattgefunden hat. Sofern nützlich auch mit genaueren Angaben zu Details des unerwarteten Ereignisses und dem Umfeld bei seinem Eintreffen.

Unerwartetes notieren und Nutzer verständlich informieren:

Solche Ausnahme-Ereignisse sollten vom Abfang-Mechanismus (also in der catch-Mimik etc.) protokolliert werden, wenn Aktionen der Administration oder Entwicklung erfolgen sollten. Die Administration kann daraufhin beispielsweise den aktuellen Betrieb nachsteuern und die Entwicklung in zukünftigen Versionen des Systems neue "erwartbare Ereignisse" berücksichtigen.

Den aktuellen Nutzern (und meist auch der System-Administration) bringt eine direkte Mitteilung unerwarteter Ereignisse meist wenig. Daher werden diese Zielgruppen bei Bedarf auf dem Umweg über die Umwandlung in eine "verarbeitbare" Aktion informiert. Eine solche "verarbeitbare" Aktion kann beispielsweise die Behandlung eines Verbindungsabbruchs zwischen Client und Server bewirken, über den die Nutzer dementsprechend informiert werden, ohne dass sie dafür erfahren müssen, welcher hinterhältige Grund nun ganz genau das Problem ausgelöst hat.

Manchmal kann es sinnvoll sein, neben einem Logfile-Eintrag für die Entwickler auch einen Eintrag für die Administration zu erzeugen, falls administrative Maßnahmen aus dem unerwartetem Ereignis abgeleitet werden könnten. Dieses kann durchaus erst an nachgeordneter Stelle erfolgen und Zustandsdaten zur Auswirkung des aufgetretenen Problems enthalten.

Themen hierzuAssciated topics:

Datentypen {WIM} Robustheit des openWIM-Systems

Das könnte Sie auch interessierenFurther readings:
Datentypen von WIM-Datensätzen (wimRecord)
<2014-03-15>
WIM-Records mit gleicher Datenstruktur sollten immer vom gleichen "Datentyp" sein. Die wichtigsten Datentypen sollen hier gelistet werden.   Mehr »
ModuleSpec -Datensätze im WIM-System
<2014-05-25>
Der Datentyp "ModuleSpec" dient zur Definition von Modulen. Die entsprechenden Datensätze können verschiedenste Parameter enthalten, die hier beschrieben werden.   Mehr »
"Strukturierte" String-Daten in Parameterwerten beim WIM-System
<2013-05-19>
Manche String-Daten im WIM-System werden auf spezielle Weise interpretiert. Sie stellen oft eine kompakte Form von Datensätzen dar, von denen nur die Parameterwerte speziell angeordnet abgelegt werden.   Mehr »
Daten-Layer und -Aktualisierung
<2013-01-06>
Im WIM-System spielen "Vorlagen" eine bedeutende Rolle. Oftmals wird beim Zugriff auf einen Objekt-Parameter der Wert von einem Vorlage-Objekt geholt.   Mehr »
Ausfallsicherheit ("fail save") im Konzept des WIM-Systems
<2013-02-25>
Auch wenn sich die Systemdesigner und -entwickler noch so viele Mühe geben - es ist prinzipiell nicht vermeidbar, dass ein System "ausfällt". Ein wesentliches Konzept des WIM-Systems ist es, solche "Ausfälle" auf möglichst kleine Bereiche einzugrenzen und möglichst "sicher" abzufangen.   Mehr »
Internet-Links für openWIM-Entwickler
<2020-03-10>
In den Weiten des Internets gibt es etliche hilfreiche Internetpräsenzen und Dokumente, die für die Entwickler des openWIM-Systems hilfreich sein können. Hier sind einige aufgelistet:   Mehr »
Standard-Request-Parameter
<2013-06-13>
WIM-Requests haben einen Basis-Satz von Parameter. Diese werden hier beschrieben.   Mehr »
Aufbau einer Internetpräsenz mit dem WIM-System
<2013-08-04>
Mit dem WIM-System können kleine, überschaubare Internetpräsenzen leicht aufgebaut werden, aber auch sehr umfangreiche. Diese Info soll einen Überblick über den Aufbau des WIM-Systems und das Zusammenspiel seiner wichtigsten Komponenten geben.   Mehr »
Die Bildrechte werden in der Online-Version angegeben.For copyright notice look at the online version.

Bildrechte zu den in diese Datei eingebundenen Bild-Dateien:

Hinweise:
1. Die Bilder sind in der Reihenfolge ihres ersten Auftretens (im Quelltext dieser Seite) angeordnet.
2. Beim Anklicken eines der nachfolgenden Bezeichnungen, wird das zugehörige Bild angezeigt.
3, Die Bildrechte-Liste wird normalerweise nicht mitgedruckt,
4. Bildname und Rechteinhaber sind jeweils im Dateinamen des Bildes enthalten.