kramann.info
© Guido Kramann

Login: Passwort:










Entwicklung fehlertoleranter Software (Fault Tolerant Software Development)


Material vom 29.09.2016

Themenschwerpunkte

  1. Entwurfsmuster für fehlertoleranten Softwareentwurf (Patterns for Fault Tolerant Software)
  2. Javascript
  3. Kiosksysteme
  4. Petrinetze

1. Entwurfsmuster für fehlertoleranten Softwareentwurf

Beispiel: RECOVERY BLOCKS

""Increase the probability of successfully meeting acceptance tests by providing sequential execution of alternate computation." "

Hanmer, R.S., "Pattern for Fault Tolerant Software", S.34, John Wiley & Sons, Weinheim 2007.

Beispiel für die Anwendung des Entwurfsmusters für Recovery Blöcke.

Bild 0-1: Beispiel für die Anwendung des Entwurfsmusters für Recovery Blöcke.


2. Javascript

*
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <script language:javascript>
            function verarbeiten()
            {
                var x = document.getElementById("x").value;
                var y = document.getElementById("y").value;
                var z = x*y;
                document.getElementById("z").value = z;
            }
        </script>
    </head>
    <body>
        <form>
            <input type="text" value="" id="x"/>*<input type="text" value="" id="y"/>
            <input type="button" onClick="javascript:verarbeiten()" value="="/>
            <input type="text" value="" id="z"/>
        </form>
    </body>
</html>

Code 0-1: Beispielquelltext eines Javascript-Programms, das in eine Webseite eingebettet ist.


3. Kiosksysteme

""KIOSKSYSTEM - Rechnergestütztes Informationssystem an öffentlich zugänglichen Orten, von welchem über eine einfache Benutzerschnittstelle, von häufig wechselnden und meist unbekannten Benutzern, überwiegend im Stehen und innerhalb einer relativ kurzen Verweildauer, Informationen abgerufen oder Transaktionen ausgelöst werden können." "

Holfelder, W., "Multimediale Kiosksysteme", S.16, Vieweg, Wiesbaden 1995.

Kiosksysteme sollen hier als Anwendungsfall bei der Entwicklung fehlertolranter Software verwendet werden, weil hier bestimmte Anforderungen auftreten, die diesen Aufwand sinnvoll erscheinen lassen. Ein Kiosksystem sollte ...

  • ... möglichst ohne Unterbrechung verfügbar sein,
  • mit den verschiedensten denkbaren Fällen der Benutzerinteraktion umgehen können,
  • Strategien für temporäre Störungen wie Netzausfall bereithalten,
  • ggf. Mißbrauch erkennen und weitermelden.

4. Petrinetze

Petrinetze können zur Modellierung nebenläufiger Prozesse verwendet werden und wurden in den 1960er Jahren von Carl Adam Petri erfunden.

""In der Grundausführung stellt sich ein Netz als ein Graph dar, der aus zwei Arten von Knoten aufgebaut ist, die Stellen (oder auch Plätze) bzw. Transitionen genannt werden. Die Knoten sind durch Kanten verbunden, wobei eine Kante genau eine Stelle mit einer Transition oder umgekehrt verbindet....Die Dynamik eines Netzes ergibt sich aus dem Schalten von Transitionen: schaltet eine Transition, so entnimmt sie Marken aus den Stellen in ihrem unmittelbaren Vorbereich und legt Marken in die Stellen in ihrem Nachbereich, und zwar jeweils so viele, wie an den Kanten angegeben ist. Würde die Transition mehr Marken benötigen, als tatsächlich dort liegen, so kann sie noch nicht schalten." "

Wikipedia, Netzresource https://de.wikipedia.org/wiki/Petri-Netz, 28.09.2016.

Grunde, u., "Petri-Netze - eine informelle Einführung in die Grundideen", 1988, Netzresource: http://www1.tfh-berlin.de/~grude/Petrinetze.pdf, 28.09.2016.
Beispiel-Petrinetz umgesetzt mit PIPE V4.3.0

Bild 0-1: Beispiel-Petrinetz umgesetzt mit PIPE V4.3.0

Quelle für PIPE: http://pipe2.sourceforge.net/