© Bloomicon/Shutterstock.com
Teil 4: Metriken, Evaluationswerkzeuge und Testplattform

Usable Security and Privacy by Design


Auf welche Weise kann man überprüfen, ob bei einer Anwendungssoftware das Qualitätsmerkmal Usable Security erfolgreich umgesetzt wurde, sprich: ob die Sicherheitsfunktionen dieser Software benutzerfreundlich gestaltet sind? Dieser Fragestellung geht der vierte Teil unserer Artikelserie nach. Er schlägt ein Set von Metriken und einfachen Werkzeugen vor, mit denen auch kleinere Hersteller die Qualität ihrer Produkte evaluieren können – ohne tiefere Spezial- und Expertenkenntnisse und in der Regel ohne Laborumgebung.

Softwaresysteme und interaktive Produkte müssen so gestaltet sein, dass sie den Benutzer bei seinen sicherheits- und datenschutzrelevanten Zielen und Vorhaben möglichst gut unterstützen. Insbesondere müssen diese Produkte mit Sicherheitselementen ausgestattet sein, die für möglichst viele Nutzergruppen verständlich und benutzbar sind. Damit das gelingt, bedarf es eines interdisziplinären Ansatzes, der Methoden und Werkzeuge des Security Engineerings mit Modellen der Psychologie und Erkenntnissen aus der Mensch-Maschine-Interaktion sowie der Designforschung zusammenführt.

In Teil 1 unserer Artikelserie (Entwickler Magazin 6.2015) haben wir in das Thema Usable Security and Privacy eingeführt und auf die besondere Stellung hingewiesen, die der Softwareentwickler dabei einnimmt. Die Teile 2 (Entwickler Magazin 4.2016) und 3 (Entwickler Magazin 6.2016) befassten sich mit Entwurfs- und Gestaltungswerkzeugen, die Softwarearchitekten und -programmierer bei der Entwicklung von Anwendungen mit dem Qualitätsmerkmal Usable Security unterstützen sollen [1]. Damit solche Produkte auf möglichst effiziente Weise entwickelt werden können, ist eine Unterstützung in frühen Prozessphasen notwendig. Usabilitymängel oder Schwachstellen, die die Themen Security und Privacy betreffen, werden dann bestenfalls von Anfang an vermieden und müssen nicht in späteren Prozessphasen identifiziert und behoben werden.

Genau zu diesem Zweck haben wir im Rahmen des Projekts „Usable Security by Design“ (kurz: USecureD, vgl. Kasten) drei verschiedene Arten von Werkzeugen entwickelt und zugänglich gemacht. Diese sollen vor allem Softwarearchitekten und -entwicklern bei kleinen und mittelständischen Softwareunternehmen eine bessere Unterstützung bieten:

  • Prinzipien für Usable Security sind allgemeine Grundsätze, denen die Entwicklung bzw. Implementierung folgen sollte. Sie helfen dabei, von Anfang an wichtige Weichenstellungen für die Systementwicklung richtig vorzunehmen.

  • Richtlinien für Usable Security beschreiben, wie diese Prinzipien umgesetzt werden können. Sie verringern die Komplexität von Entwicklungsprojekten und sind wichtig, um bereits bei der Entwicklung möglichst viele Ursachen für spätere Schwachstellen zu eliminieren.

  • Patterns für Usable Security sind bewährte Musterlösungen für wiederkehrende Probleme, die während der Systementwicklung auftreten können. Sie geben konkrete Anleitung bei der Konzeption und Implementierung benutzerfreundlicher Sicherheitsfunktionen.

Neben diesen Entwurfs- und Gestaltungswerkzeugen, die zur Qualitätssicherung in frühen Projektphasen dienen, sollten in Entwicklungsprojekten aber auch stets Methoden und Werkzeuge eingesetzt werden, mit denen im Anschluss an die Implementierung die tatsächlich erreichte Qualität überprüft bzw. gemessen werden kann.

Evaluierung der Benutzerfreundlichkeit von Sicherheitsfunktionen

Im USecureD-Projekt wurde daher ein Evaluierungskonzept entwickelt, das Softwarearchitekten und -entwickler in die Lage versetzt, im eigenen Kontext selbstständig Evaluierungen der implementierten Konzepte und Softwareanwendungen durchzuführen (vgl. Tabelle 1). Ziel war es, eine Evaluierungsmethodik zu schaffen, die aussagekräftige Resultate in Bezug auf das Qualitätsmerkmal Usable Security liefert, aber trotzdem möglichst „leichtgewichtig“ ist. Leichtgewichtig bedeutet nach unserem Verständnis, dass der Methodeneinsatz je nach Evaluierungsfall an die Erfordernisse des konkreten Projekts angepasst werden kann, um so einen optimalen Einsatz der personellen und zeitlichen Ressourcen zu ermöglichen. Im Vordergrund stehen sollten effiziente und praxistaugliche Werkzeuge, die in unterschiedlichen Entwicklungsstadien einer Anwendungssoftware eine relativ einfache Bewertung des Qualitätsmerkmals Usable Security ermöglichen.

Analytische Evaluation

Empirische Evaluation

Heuristische Evaluation

Cognitive Walkthrough

Konsistenz- und Patternprüfung

Metriken

Fragebögen: AttrakDiff, INTUI, PANAS, Bedürfnisskalen

Tabelle 1: Das Usable-Security-Evaluierungskonzept im Überblick

Bei der Evaluierung eines Prototyps bzw. einer Software kann unterschieden werden zwischen einer analytischen Evaluation und einer empirischen Evaluation. Bei der analytischen Evaluation erfolgt die Bewertung in der Regel durch einen oder mehrere interne Mitarbeiter des Herstellers (bzw. Experten), bei einer empirischen Evaluation dagegen durch mehrere Endnutzer oder externe Probanden. Für beide Anwendungsbereiche erläutern wir die Rahmenbedingungen und stellen entsprechende Methoden und Werkzeuge vor.

Analytische Evaluation

Mit analytischen Evaluationsmethoden kann man sich ohne allzu großen Aufwand eine schnelle Übersicht über die aktuelle Qualität eines Prototyps bzw. eines Produkts verschaffen. Die Projektphase bzw. Reife des Prototyps ist hierbei nicht relevant. Oft ...

Neugierig geworden? Wir haben diese Angebote für dich:

Angebote für Gewinner-Teams

Wir bieten Lizenz-Lösungen für Teams jeder Größe: Finden Sie heraus, welche Lösung am besten zu Ihnen passt.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang