Automatische Softwareanalyse - Monitoring von Benutzerverhalten

Hallo Zusammen,

ich habe ein interessantes Thema zu bearbeiten, finde aber im Moment keinen Einstiegspunkt.

Es geht um folgendes:
Bei der Einführung neuer Software in Unternehmen wird es immer wichtiger das Verhalten der User während des Umgangs mit der Software zu beoachten. Das Tool, dass zur Beobachtung dient, soll unabhängig von der Software sein, die der User bedient.

Ein Beispiel: "Der User soll ein Worddokument speichern"
Hier gibt es nun verschieden Möglichkeiten.
- STRG + S
- Menü | Speichern
- Menü | Speichern unter

Jetzt meine Frage:
Ist es möglich solche Eingaben bzw. Events durch ein externes Programm abzufangen, um zu wissen welchen Weg der Benutzer genommen hat um sein Dokument zu speichern?

Wäre schön wenn mir jemand weiterhelfen könnte. :)

mfg,
Chris
 
Hallo.

Grundsätzlich ist es erstmal kein Problem, alle Benutzereingaben aufzuzeichnen. Im einfachsten Fall geht das z.B. durch Keylogger, es gibt aber auch Software, mit denen man praktisch jede Eingabe, sei es durch Maus oder Tastatur, speichern kann. In der Regel ist es anschließend möglich, das ganze auch wieder abzuspielen (bekanntestes Beispiel ist vll. AppleScript: Man klickt irgendwas an und das Ding schreibt Code, den man später wieder ausführen kann, vergleichbares gibt's auch für Windows). Für einfache Monitoringzwecke dürfte das ausreichen.

Was es jedoch m.E. nicht gibt, ist ein Programm, dass die aufgezeichneten Eingaben auch interpretiert. Drückt der Benutzer z.B. Strg/s, wird dort dann halt "Strg-S" in der Ausgabe erscheinen, aber nicht "Benutzer speichert durch Tastenkombination". Das wäre auch schwierig zu realisieren, weil die Intelligenz für jedes Programm neu programmiert werden müsste. Strg/s ist noch relativ einheitlich, aber Strg/b für Fettdruck beschränkt sich nur auf die gängigen Textverarbeitungen und kann in anderen Programmen natürlich auch was ganz anderes bedeuten.

MfG.
 
Sehe ich genauso. Evtl. könnte man da inteligente Hooks werfen ob die Maus oder Tastatur oder SendKeys() & Co genutzt wurde aber das ist echt Arbeit und ich denke das würde auch nciht in jedem Fall klappen.

Wozu brauchst du denn das, als "Serial auch ja von Hand" Prüfung? ;)
 
Erstmal Danke für die Beiträge.

Zur Frage warum ich das brauche:
Softwareusabilitytest können immer nur in sehr kleinem Rahmen druchgeführt werden. Bei komplexer Software ist es somit unmöglich herauszufinden wie und in welchem Maße Funktionen verwendet werden. Da wäre es eben sehr komfortabl dies durch ein zweites Programm aufzuzeichnen. Live beim Enduser sozusagen. Es wäre denkbar den Namen des Buttons, des Menüs, etc. aufzuzeichnen zu sammeln und auswerten.

Über das API Hooking bin ich auch schon gestolpert, werde mich wohl doch noch mal genauer damit befassen müssen.
 
Zurück
Oben