• Keine Ergebnisse gefunden

7. Aspektorientierte Teilkonzepte

N/A
N/A
Protected

Academic year: 2021

Aktie "7. Aspektorientierte Teilkonzepte"

Copied!
8
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 1

7. Aspektorientierte Teilkonzepte

7.1 Benutzerschnittstelle Grundsätze

Boehm's Prinzip: “Do unto others as you would have others to unto you – if you were like them”

Nievergelt/Venturas Regel: Jederzeit wissen

Wo bin ich

Was kann ich hier tun

Wie bin ich hergekommen und wohin kann ich gehen

Verlässlichkeit und Durchschaubarkeit: System verhält sich wie ein verlässlicher menschlicher Partner – Reaktionen sind nachvollziehbar, in analogen Situationen analog, keine bizzarren, unvorhersehbaren Reaktionen

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 2

Metaphernkonformität: Schnittstelle folgt konsequent einer Präsen- tations-/Interaktionsmetapher (zum Beispiel Schreibtischmetapher, Instrumentenbrettmetapher, ...)

Rückkopplung: Jede Bedienungshandlung hat eine unmittelbare Wirkung

Abgrenzung zur Spezifikation

Zwitterrolle:

Benutzerschnittstelle ist mitentscheidendes Kriterium für die Brauchbarkeit eines Systems -> gehört zu den Anforderungen

Bedienung ist nur Mittel zum Zweck: Funktionen verwalten/auslösen->

gehört in den Entwurf

Fallweise zu klären, wann was gemacht wird

Immer mit Benutzerbeteiligung

Im Zweifelsfall: Prototypen

(2)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 3

Was ist zu gestalten

Medien für Ein- und Ausgabe

Ausgaben: Anzeigen, Ausdrucke, Ton...

Dialogabläufe

geführt – frei

modal – nichtmodal

Eingaben: Masken, Zeigeinstrumente, Sprache,...

standardisiert – anwendungsorientiert

Einbettung in die Gesamtarchitektur

Getrennt vom übrigen System (MVC-Muster)

Heute in der Regel ereignisgesteuert

Häufig unter Verwendung eines gegebenen Rahmens

(3)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 5

7.2 Datenhaltungskonzept

Teilweise Bestandteil der Gesamtarchitektur

Teilweise als aspektorientiertes Teilkonzept: Schemata, Integrität, Zugriffsschutz, etc.

Zu treffendende Architekturentscheidungen

Flüchtig – persistent

Dateien – Datenbanken

Homogen – heterogen

Physisch zentral – verteilt

Logisch zentral – föderiert – autonom

Steuerung/Koordination (z.B. durch TP-Monitor)

Festlegung der Grundarchitektur

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 6

Aspektorientiertes Teilkonzept für Datenhaltung

Festlegung von Datenmodell(en)

Entwurf der konzeptuellen und externen Schemata

Verteilung

was – wo a) Daten

b) Anwendungslogik

Replikation

Sicherstellung der Integrität

Zugriffsschutz

(4)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 7

7.3 Fehlertoleranz Zur Terminologie

Eine Person begeht einen Irrtum (mistake) .

Als mögliche Folge davon enthält die Software einen Defekt (defect, fault).

Wird der Defekt durch Inspizieren der Software gefunden, so ergibt das einen Befund (finding).

Bei der Ausführung von Software mit einem Defekt kommt es zu einem Fehler (error): Die tatsächlichen Ergebnisse weichen von den

erwarteten / den richtigen ab.

Dies kann zum Ausfall (failure) eines software-basierten Systems führen.

Fehlertoleranz – Auftreten von Fehlern führt nicht zum Ausfall.

Hardware-Fehlertoleranz

System überlebt Ausfälle von Hardware-Komponenten

Maßnahmen zu treffen

primär gegen Material- und Energieprobleme

sekundär gegen Entwurfsfehler

Mittel:

Vervielfachung von Komponenten, zum Beispiel

• Dreifach-Redundanz

• Datenspiegelung

(5)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 9

Software-Fehlertoleranz

Maßnahmen gegen logische Fehler

in den Daten

in Programmen

Mittel zur Tolerierung von Datenfehlern

Datenredundanz

ggf. Wiederholen / Ignorieren / Interpolieren / Verwendung voreingestellter Werte

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 10

Mittel zur Tolerierung von Programmfehlern

Wiederholen mit anderen Algorithmen (Recovery Blocks)

N-Versionsprogrammierung: Mehrere, unabhängige Realisierungen der gleichen Software

Probleme:

Datensynchronisation in den n Versionen

präzise gemeinsame Spezifikation notwendig

Defekte in mehreren Versionen sind nicht stochastisch unabhängig

Daher:

Die Ausfallwahrscheinlchkeiten des Gesamtsystems ist nicht gleich dem Produkt der Ausfallwahrscheinlichkeiten der Einzel- versionen (sondern größer!)

N-Versionsprogrammierung hilft nicht gegen Spezifikationsfehler.

(6)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 11

7.4 Sicherheit

Zwei Bedeutungen:

Schutz von Information gegen missbräuchliche Verwendung (Security)

Schutz von Personen und Sachen gegen Schäden, die durch den

Einsatz von Informatiksystemen verursacht oder mitverursacht werden (Safety)

Sicherheit und Zuverlässigkeit sind nicht das gleiche:

Zuverlässigkeit – Die Fähigkeit eines Systems, die verlangte Funktionalität unter gegebenen Randbedingungen für eine gegebene Zeit zu erfüllen (d.h. in dieser Zeit ohne Ausfälle zu funktionieren).

Sicherheit im Sinn von Security

Bedrohungen

Verlust / Bruch / Verweigerung von

Vertraulichkeit (Abhören, Spionieren)

Integrität (Datenmanipulation, Datenverlust)

Authentizität (Erschleichen von Zugriff, Erschleichen von Leistungen, Verfälschen der Urheberschaft)

Verfügbarkeit (Nichtverfügbarkeit oder Verweigerung von Leistungen)

Verbindlichkeit (Bestreiten der Urheberschaft oder des Empfangs)

(7)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 13

Mögliche Maßnahmen

Verschlüsselung

Identifikation

Transaktionen

Logging

Auditing

Zertifikate

Physische Maßnahmen (Einschließen, Zutrittskontrolle)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 14

Sicherheit im Sinn von Safety

Problemerkennung und -analyse

Minimierung des Risikos, dass ein System in einen verbotenen Zustand gerät (zum Beispiel, dass eine Lokomotive ein rotes Signal überfährt, ohne dass die Steuersoftware der Lok dies erkennt und eine Schnellbremsung auslöst)

Identifikation gefährlicher verbotener Zustände

Gefahrenanalyse: Beurteilung der Gefährlichkeit der verbotenen Zustände, d.h. wie hoch sind Eintretenswahrscheinlichkeit und Schadenhöhe eines resultierenden Schadens (zum Beispiel eines Zugunglücks beim Überfahren eines roten Signals)

(8)

Architektur und Entwurf von Software 7. Aspektorientierte Teilkonzepte MG, 99-06-17 15

Maßnahmen

Beweis der Unerreichbarkeit gefährlicher Zustände

Nachweis der Ungefährlichkeit erreichbarer verbotener Zustände

Analyse möglicher Wege zu den kritischen verbotenen Zuständen a) Vorwärts: mögliche Folgen von Ereignissen konstruieren

b) Rückwärts: Ausgehend vom Gefahrenzustand Ermittlung direkter Ursachen (und-oder-Kombinationen)

Rekursive Bestimmung der Ursachen für die Ursachen

Resultierenden Fehlerbaum soweit wie möglich zurückverfolgen

Entwurf so ändern, dass alle möglichen Pfade zu einem Gefahren- zustand unterbrochen oder mit hinreichend kleinen Wahrscheinlich- keiten belegt sind

Referenzen

ÄHNLICHE DOKUMENTE

Durch Interviews mit Mitarbeitern der Produktions- und Instandhaltungsschicht werden Informationen über mögliche Störursachen gesammelt und Abschätzungen über die Dauer

Wichtige nichtfunktionale Anforderungen an die Personal Health Manager Software sind einerseits Datensicherheit (ergibt sich aus A7), da hier persönliche Daten der

externes Schema = Städteverbindungen Osnabrück internes Schema = Abbildung auf

Abgesehen vom Zeitbezug unterscheiden wir aspektorientierte Systeme ferner hinsicht- lich der Lokalität der innerhalb des Selektionskriteriums verwendeten Informationen (in Bezug

Nach den Ereignissen in Japan – und zusätzlich zur auch bei rationaler Optik keineswegs gelösten Endlagerproblematik – sorgen sich sehr viele Frauen und Männer um die Zukunft

Dekoration sind wieder deutliche Anspielungen auf das Pantheon (…).“ PLAGEMANN, Volker, Das Pantheon und die Entwurfsmethode Palladios im Werk C.F. 58 „Angesichts der von

 Methode  für  das  Objekt  aufrufen

Bitkom regt deshalb zur Vermeidung von Doppelregulierungen eine Klarstellung derart an, dass die im Zuge der Umsetzung der NIS-Richtlinie geschaffenen Verpflichtungen