IOException.de » user interfaces http://www.ioexception.de Ausgewählter Nerdkram von Informatikstudenten der Uni Ulm Wed, 19 Mar 2014 22:01:00 +0000 de-DE hourly 1 http://wordpress.org/?v=3.9.1 Irren ist menschlich http://www.ioexception.de/2012/04/24/irren-ist-menschlich/ http://www.ioexception.de/2012/04/24/irren-ist-menschlich/#comments Tue, 24 Apr 2012 20:09:04 +0000 http://www.ioexception.de/?p=1729 Fehler zu machen gehört zu den grundlegenden menschlichen Eigenschaften. Interessanter als Fehler, die auf falschem Wissen, falschen Zielen oder falschen Einschätzungen basieren(„error of thought“), sind vor allem unbewusste und versehentliche Fehler („slips“). Gründe und Ursachen hierfür sind nicht nur in der Psychologie interessant, sie können auch beim Gestalten von Gegenständen wie Benutzeroberflächen dabei helfen, die Benutzbarkeit zu erhöhen. Einerseits können Fehler gezielt von Anfang an verhindert werden, andererseits ermöglicht eine Antizipierung möglicher Fehler die Erkennung und Behandlung der Fehler.
Der Psychologe Donald A. Norman klassifizierte unbewusste und versehentliche Fehler in folgende sechs Kategorien:

Capture error
Grundlage für diesen Fehler sind zwei Handlungsabläufe, die sich ähneln und insbesondere einen gleichen Anfangszustand besitzen. Hierbei ist ein Handlungsablauf ein ganz alltäglicher Ablauf, der sehr häufig ausgeführt wird, während der andere eher eine Ausnahme darstellt. Führt man nun eine seltenere Handlung aus, so ist es aufgrund des Capture erros möglich, dass diese Handlung durch die alltäglichere ersetz wird.
Beispiel:

Alice fährt jeden Tag morgens mit dem Bus in die Uni. Am ersten Tag der Semesterferien hat sie sich vorgenommen, einkaufen zu fahren. An der Bushaltestelle steigt sie trotzdem in den Bus zur Uni, anstatt in Richtung des Einkaufszentrums, da der gewohnte Handlungsablauf den selteneren übernommen hat.

Description error
Ein Description error ist möglich, wenn eine beabsichtigte Handlung sehr viel Ähnlichkeiten mit anderen Alternativen aufweist. Grund hierfür ist, dass die mentale Beschreibung des Ziels nicht genau genug ist um bei der Ausführung eindeutig zu sein.
Beispiel:

Bob will eine Milchpackung aus der Tür des Kühlschrank holen, um sich ein Glas zu füllen. Seine mentale Beschreibung weist ihn an, die Packung aus der Kühlschranktür zu holen. Nun öffnet Bob die Türe des Kühlschrankes, greift allerdings zur benachbarten Packung Orangensaft, da sie in diesem Moment exakt auf die mentale Beschreibung passt. Der Description error hat zugeschlagen.

Data-driven error
Viele Aspekte menschlichen Verhaltens passieren unbewusst und werden direkt durch das Empfangen sensorischer Daten ausgelöst. Ein Beispiel für dieses Verhalten ist die Reaktion auf ein Insekt auf der Haut, das man ohne Überlegung beiseite schiebt. Nun kann es passieren, dass beim Eintreffen neuer sensorischer Daten diese mit gerade laufenden mentalen Prozessen interferieren und einen Data-driven error auslösen.
Beispiel:

Caroline schreibt gerade einen Blogeintrag über eine Person. Plötzlich poppt eine ICQ-Nachricht von einem Freund auf. Fälscherlicherweise schreibt sie nun in ihrem aktuellen Satz nicht den Namen der ursprünglichen Person, sondern den Namens des ICQ-Kontaktes.

Associative activation error
Genauso wie externe Daten können auch interne Gedanken oder Assoziationen laufende Handlungen beeinflußen.
Beispiel:

Daniels Telefon klingelt und er begrüßt sein Gegenüber mit „Herein!“

Diese Art von Fehler ist übrigens eng mit dem verwandt, was allgemein unter Freud’schen Fehlleistungen bekannt ist. Auch das Verwechseln von Namen enger Verwandter bei Familienfesten fällt in diese Kategorie.

Loss of activation error
Diesen Fehler dürfte wohl jedem bekannt sein. Es geht darum, eine gewisse Aktion durchführen zu wollen, jedoch bei der Ausführung das eigentliche Ziel zu vergessen.
Beispiel:

Erik geht in das Schlafzimmer, um ein T-Shirt aus dem Schrank zu holen. Als er im Schlafzimmer ankommt, weiß er nicht mehr, wieso er eigentlich ins Schlafzimmer gegangen ist.

Mode error
Diese Fehler entstehen, wenn bestimmte Aktionen abhängig vom Zustand zu anderen Ergebnissen führen, und man sich mental in einem anderen Zustand befindet, als man in Wirklichkeit ist.
Beispiel:

Felizitas ist auf dem Heimweg von einer Party. Sie möchte wissen wie viel Zeit sie benötigt und startet ihre Stopfunktion an ihrer digitalen Armbanduhr. Nach ein paar Minuten möchte sie wissen, wie lange sie schon unterwegs ist und drückt die Taste, die im normalen Modus zur Aktivierung der Hintergrundbeleuchtung der Anzeige zuständig ist. Leider sorgt die gleiche Taste im Stopmodus dafür, dass die Zeitmessung zurückgesetzt wird. Sie ist Opfer eines typischen Mode errors geworden.

Insbesondere der letzte Fehler ist ein wichtiger Fehler im Zusammenhang mit interaktiven System, denn er zeigt auf, wie wichtig es ist, dem Benutzer ein klares, verständliches mentales Modell der Anwendung zu liefern, welches solche Fehler verhindert. Ein anderes Beispiel im Bereich des Computers zur Verhinderung ist fehlertolerantes Löschen. Oft möchte man eine gewisse Datei löschen, vertut sich aber der Auswahl, zum Beispiel aufgrund eines Description errors, und selektiert die falsche Datei. Auch die direkt darauf folgende Löschbestätigung hilft nicht, da die Person sich noch in einem Handlungsablauf befindet, in der sie davon ausgeht, dass sie die richtige Datei löscht. Erst später bei der Bewertung des Handlungablaufes erkennt sie wohlmöglich den ausgeführten Fehler. Durch einen Papierkorb, der gelöschte Objekte zunächst zwischenspeichert, oder durch die Implementierung von Undo-Funktionen lassen sich solche Fehler benutzerfreundlich beheben.

Weiterführende Literatur: The Psychology of Everyday Things, Donald A. Norman (1988)

]]>
http://www.ioexception.de/2012/04/24/irren-ist-menschlich/feed/ 0
AF Ubiquitous Computing – Projektskizze ‘diretto’ http://www.ioexception.de/2010/05/13/af-ubiquitous-computing-projektskizze-diretto/ http://www.ioexception.de/2010/05/13/af-ubiquitous-computing-projektskizze-diretto/#comments Thu, 13 May 2010 18:19:33 +0000 http://www.ioexception.de/?p=518 Heutige Mobilgeräte wie Smartphones, Netbooks oder PDAs stellen zu einem großen Teil drahtlosen Zugriff auf das Internet bereit. Zugleich bieten diese Geräte häufig auch die Möglichkeit, multimediale Inhalte wie Bilder, Videos oder Tonmitschnitte überall zu produzieren. Alternativ können sie zumindest als Brücke ins Internet fungieren und dedizierte Geräte wie Digitalkameras anbinden.

Trotz dieser theoretischen Möglichkeiten existieren bisher kaum Anwendungen, die mithilfe dieser Technologien eine multimediale Berichterstattung in quasi Echtzeit ermöglichen. Das Ziel des diretto-Projektes ist es, eine solche Plattform zu entwickeln und Beispiellösungen für die Integration mobiler Geräte aufzuzeigen. Zusätzlich zu Sammlung der mutlimedialen Inhalte liegt ein weiter Fokus auf der Analyse, Bewertung und Verbesserung der erhaltenen Daten – sowohl durch das System als auch durch die Benutzer selbst. So kann zum Beispiel die Genauigkeit von Metadaten wie Orts- und Zeitangaben verbessert werden, Beiträge können mithilfe von Tags klassifiziert und verschiedene mutlimediale Inhalte untereinander sinnvoll verlinkt werden. Durch das System erzeugte Gruppierungen unterstützen den Benutzer zusätzlich bei der Auswertung der Inhalte.

Als Grundlage für das komplette Projekte werden zeitgemäße Web-Technologien eingesetzt. Somit ist die Plattform offen, sehr leicht erweiterbar und skaliert auch bei der Nutzung in größeren Szenarien. Die API steht in Form eines REST-konformen Webservices zur Verfügung. Metadaten werden im leichtgewichtigen JSON-Format kodiert. Ein spezieller PubSubHubbub-Endpunkt ermöglicht Benachrichtigungen über neue Inhalte in Echtzeit. Dezentrale Zusatzdientse steuern zusätzliche Funktionalitäten bei.

Eine mächtige Weboberfläche bietet Zugriff auf die Gesamtheit der erhobenen Daten – auch entfernt über das Internet. Sie bietet die Grundlage für komplexe Auswertungen der vorhandenen Multimediadaten und zugehörigen Metadaten. Im Vordergrund steht hierbei auch die Unterstützung des Benutzers beim Umgang mit den vieldimensionalen Daten.

Für die Integration mobiler Systeme werden verschiedene Clients entwickelt und erprobt. Ein Smartphone-Client erlaubt es dem Besitzer eines Smartphones direkt zum Reporter vor Ort zu werden und Inhalte beizusteuern. Für die Anbindung dedizierter Hardware wie einer digitalen Spiegelreflexkamera wird eine besondere Lösung erabreitet. Ein mobiler Rechner im Rucksack soll als Uplink-Gerät dienen und frisch geschossene Bilder ohne Verzögerung direkt auf die Plattform hochladen. Mithilfe einer solchen Lösung können Fotojournalisten als echte Live-Berichterstatter agieren und Pausen für den Upload entfallen.

Eine solche Plattform eignet sich je nach Ausrichtung für eine Vielzahl verschiedener Einsatzszenarien. So könnte es zur Live-Dokumentation großer Ereignisse dienen. In einem geschlossenen Kontext könnte es Einsatzkräfte bei Großschadenslagen dabei helfen, in kürzerer Zeit einen detaillierteren Überblick zu bekommen und unterstützende Kräfte zur Auswertung fernab einbinden.

Das Projekt wurde im Rahmen des Anwendungsfaches Ubiquitous Computing an der Universität Ulm von einem studentischen Team entworfen und nun in Zusammenarbeit mit einem Team für Interaktive Systeme als Prototyp realisiert. Nähere Informationen gibt es auf der Projektseite www.diretto.org

]]>
http://www.ioexception.de/2010/05/13/af-ubiquitous-computing-projektskizze-diretto/feed/ 0
Semantic Mashup http://www.ioexception.de/2009/11/29/semantic-mashup/ http://www.ioexception.de/2009/11/29/semantic-mashup/#comments Sun, 29 Nov 2009 16:39:43 +0000 http://www.ioexception.de/?p=334 Aus meiner Seminararbeit zum Thema Semantic Mashups aus dem vergangenen Sommersemester ist nun ein kleiner Technical Report geworden. Im Paper werden Mashups – also Anwendungen, die Informationen verschiedener Webseiten vermischen – analysiert und verschiedene technische Grundlagen, die hierfür nötig sind erläutert. Desweiteren werden existierende Mashup-Engines und Architekturen vorgestellt, sowie Herausforderungen und Probleme beim Erstellen von Mashups aufgezeigt.
semantic_mashup_cloud
Abstract:

Nowadays, the World Wide Web has become the most important source of information for many people and is nearly indispensable. However, the information is spread on billions of web pages. So there is an increasing demand to combine the data of different web pages for an acquisition of information. Mashup applications assist the user at this task. This paper will give an overview about how to extract structured and semantical data out of web pages using different technologies and also shows, what types of mashup applications already exist. Furthermore we take a look at mashup architectures and engines and unresolved issues for mashup applications.

Benjamin Erb, Jan-Patrick Elsholz, Franz J. Hauck: Semantic Mashup: Mashing up Information in the Todays World Wide Web – An Overview. VS-R08-2009, 2009. [pdf] [bib]

]]>
http://www.ioexception.de/2009/11/29/semantic-mashup/feed/ 0
Typotisch http://www.ioexception.de/2009/09/18/typotisch/ http://www.ioexception.de/2009/09/18/typotisch/#comments Fri, 18 Sep 2009 15:08:20 +0000 http://www.ioexception.de/?p=306

Typotisch – 1 from David L on Vimeo.

Dieses Projekt wurde im Rahmen des Praktikums “Aesthetic Computing” geplant und umgesetzt von Nora von Egloffstein und mir. Nachfolgend mehr Informationen (siehe auch hier).

Der Typotisch ist eine weiße Box, etwa so hoch wie eine Arbeitsplatte. Die Oberseite besteht aus einer Milchglasscheibe, auf die der Benutzer Wortplättchen legen kann. Auf einer großen Leinwand oder einem Bildschirm wird dann eine Animation der gelegten Worte gezeigt, wie wenn die Milchglasscheibe mit einer Kamera abgefahren würden. Je nachdem in welchem Winkel die Wortplättchen zueinander liegen, macht die Kamera eine entsprechende Drehung, auf 90° gerundet. Manche Wörter haben in der Animation einen fest zugeordneten Effekt. Der Typotisch soll eine Verknüpfung von Kinetischer Typographie und einer besonderen Interaktionsmöglichkeit sein.

Material

typotisch2 Die Box ist aus 12mm dicken MDF-Platten gebaut. Oben ist ein 30cm*30cm große Aussparung für die Milchglassplatte die dann auf Ausfräsungen am Rand der Aussparung gelegt werden kann. Im Inneren der Box sind zwei Bretter angebracht.

Die Wortplättchen sind aus Magnetgummi. Auf der vorderen Seite eines solchen Plättchens steht das Wort geschrieben und auf der Rückseite ist das Wort als QR-Code dargestellt.

So funktioniert´s

typotisch3 Auf dem oberen inneren Brett wird eine Digitalkamera, bei uns eine Canon Powershot A620, mit Objektiv nach oben, angebracht. Auf dem unteren Brett steht ein mit der Kamera verbundener Laptop. Durch die Fernsteuerungssoftware von Canon wird alle zehn Sekunden ein Foto von der Milchglasscheibe gemacht und in einen Ordner abgelegt. Dieser Ordner ist für den zweiten Laptop im lokalen Netzwerk freigegeben. Die Software die auf diesem Laptop läuft, greift auf die Fotos zu und generiert die Animation.

Software & Libraries

typotisch_qr Die Analyse des Fotos wurde mit Processing (1) realisiert. Das Foto wird gelesen, potentielle Plättchen erkannt, dank einer Bibliothek für OpenCV für Processing (2) Dann wird deren Lage bestimmt und ihre Drehung auf 0°, 90°, 180° oder 270° gerundet. Anschließend wird die Reihenfolge der Plättchen ausgelesen, angefangen an der linken oberen Ecke der Milchglasscheibe. Dabei werden auch die QR-Codes (3) dekodiert.

  1. http://processing.org
  2. http://ubaa.net/shared/processing/opencv/
  3. http://qrcode.sourceforge.jp/
]]>
http://www.ioexception.de/2009/09/18/typotisch/feed/ 0