Discovery of Interaction Patterns with Graphical User Interface Usage Mining
Total Page:16
File Type:pdf, Size:1020Kb
Discovery of Interaction Patterns with Graphical User Interface Usage Mining Entdeckung von Interaktionsmustern bei Verwendung der grafischen Benutzeroberfläche Master-Thesis von Markus Schröder aus Bensheim Tag der Einreichung: 1. Gutachten: Prof. Dr. Max Mühlhäuser 2. Gutachten: Dr. Benedikt Schmidt Fachbereich Informatik Telecooperation Group Discovery of Interaction Patterns with Graphical User Interface Usage Mining Entdeckung von Interaktionsmustern bei Verwendung der grafischen Benutzeroberfläche Vorgelegte Master-Thesis von Markus Schröder aus Bensheim 1. Gutachten: Prof. Dr. Max Mühlhäuser 2. Gutachten: Dr. Benedikt Schmidt Tag der Einreichung: Erklärung zur Master-Thesis Hiermit versichere ich, die vorliegende Master-Thesis ohne Hilfe Dritter nur mit den angegebenen Quellen und Hilfsmitteln angefertigt zu haben. Alle Stellen, die aus Quellen entnommen wurden, sind als solche kenntlich gemacht. Diese Arbeit hat in gleicher oder ähnlicher Form noch keiner Prüfungs- behörde vorgelegen. Darmstadt, den January 20, 2015 (Markus Schröder) Abstract The Graphical User Interface (GUI) serves as an interface to directly manipulate graphical elements. Application softwares contain these graphical elements which represent functionality for a specific application. The main target is the discovery of patterns which express functionality usage. In the first part, the interaction between study participants and application softwares are observed by a tool called "Interaction Observer". This is accomplished with the Accessibility technology which provides access to graphical elements. The approach is termed "Graphical Software Mining" which mines software exclusively on a graphical level. The observation forms an interaction log. In the second part, interaction patterns are defined and in the interaction log discovered. Interaction patterns are sequences of interactions which express an intentional action. This approach is termed "GUI Usage Mining" which discovers usage information from GUI interaction logs. Initially, reference patterns are discovered by human annotators. The insights are used to preprocess the raw interaction log. Transactions, which are meaningful interaction clusters, are identified with four approaches. This enables the application of four mining strategies: sequential pattern mining, graph mining, process mining and mining based on n-grams. They are implemented with the help of extern libraries. User-program pairs are analyzed in the evaluation. The patterns of the four strategies are judged by the corresponding participants. The evaluation indicates that the n-gram based strategy discovers more accepted patterns. Zusammenfassung Die grafische Benutzeroberfläche dient als Schnittstelle, um grafische Elemente direkt zu manipulieren. Programme ent- halten diese grafischen Elemente, die Funktionalität für eine bestimmte Anwendung repräsentieren. Das hauptsächliche Ziel ist die Entdeckung von Interaktionsmustern, die die Benutzung der Funktionalität ausdrücken. Im ersten Teil wird die Interaktion zwischen Studienteilnehmern und Anwendungen mit einem Werkzeug, dem sog. Interaktionsbeobach- ter, beobachtet. Dies wird über Barrierefreiheit-Technologie, die Zugang zu grafischen Elementen bietet, bewerkstelligt. Dieses Vorgehen wird Graphical Software Mining genannt, das ausschließlich Software auf einer grafischen Ebene be- obachtet. Die Beobachtung erzeugt ein Interaktionsprotokoll. Im zweiten Teil werden Interaktionsmuster definiert und im Interaktionsprotokoll erkannt. Interaktionsmuster sind Interaktionssequenzen, die eine beabsichtigte Handlung aus- drücken. Dieses Verfahren wird GUI Usage Mining genannt, das Benutzungsinformationen von Interaktionsprotokollen der grafische Benutzeroberfläche entdeckt. Bezugsinteraktionsmuster werden anfänglich von menschlichen Kommentatoren entdeckt. Die daraus gewonnenen Erkenntnisse werden benutzt, um das unbearbeitete Interaktionsprotokoll aufzube- reiten. Arbeitsvorgänge, welche sinnvolle Interaktionsabschnitte darstellen, werden durch vier Verfahren identifiziert. Das befähigt die Anwendung von vier Entdeckungsstrategien: Sequential Pattern Mining, Graph Mining, Process Mining und eine auf N-Grammen basierende Entdeckung. Diese sind mit der Hilfe von fremden Programmbibliotheken umge- setzt. In der Auswertung werden Paare von Benutzern zu Anwendungen analysiert. Die Interaktionsmuster von den vier Entdeckungsstrategien werden von den entsprechenden Teilnehmern beurteilt. Die Auswertung deutet an, dass das auf N-Grammen basierende Verfahren die akzeptiertesten Interaktionsmuster entdeckt. Contents 1 Graphical Software Mining 7 1.1 Introduction . .7 1.2 Problem Statement . .7 1.3 Background Research . .9 1.4 Related Work . 10 1.5 Approach . 11 1.5.1 Interaction Initiation . 11 1.5.2 Program Identification . 12 1.5.3 User Identification . 12 1.5.4 GUI Element of Interest . 13 1.5.5 GUI Element Identification . 14 1.5.6 GUI Element Alignment . 15 1.5.7 GUI Asynchrony . 16 1.5.8 Privacy Issues . 17 1.6 Implementation . 18 1.7 Evaluation . 20 1.7.1 Example Participant . 24 1.8 Conclusion . 33 1.8.1 Summary . 33 1.8.2 Discussion . 34 1.8.3 Motivation . 35 2 GUI Usage Mining 36 2.1 Introduction . 36 2.2 Problem Statement . 36 2.3 Background Research . 37 2.3.1 Patterns . 37 2.3.2 Web Mining . 38 2.3.3 Frequent Pattern Mining . 39 2.3.4 Process Mining . 40 2.4 Related Work . 41 2.4.1 Web Mining . 41 2.4.2 Graph Mining . 42 2.4.3 Process Mining . 42 2.4.4 Bayesian User Modeling . 43 2.5 Approach . 43 2.5.1 Reference Patterns . 43 2.5.2 Preprocessing . 46 2.5.3 Strategy 1: Sequential Pattern Mining . 49 2.5.4 Strategy 2: Graph Mining . 50 2.5.5 Strategy 3: Process Mining . 51 2.5.6 Strategy 4: N-Gram Based . 52 2.6 Implementation . 53 2.6.1 Strategy 1: Sequential Pattern Mining . 53 2.6.2 Strategy 2: Graph Mining . 54 2.6.3 Strategy 3: Process Mining . 56 2.7 Evaluation . 57 2.7.1 User-Program Pairs . 57 2.7.2 Interaction Time . 60 2.7.3 Transaction Identification . 61 2.7.4 Pattern Mining Setup with Reference Pattern Analysis . 67 2.7.5 Pattern Analysis . 68 2.8 Conclusion . 78 2.8.1 Summary . 78 2.8.2 Discussion . 78 2.8.3 Outlook . 80 3 List of Figures 1 Alignment candidate generation based on hash code comparison . ..