Font Size: a A A

Reverse engineering legacy user interfaces using interaction traces

Posted on:2004-12-31Degree:Ph.DType:Thesis
University:University of Alberta (Canada)Candidate:El-Ramly, MohammadFull Text:PDF
GTID:2458390011955291Subject:Computer Science
Abstract/Summary:
Legacy system user-interface reengineering is an increasingly popular area in research and practice. Many legacy user-interfaces get reengineered to reproduce them in modern graphical user-interfaces, integrate them with other systems' front-ends, or most important, open them for Web-access. Often, it is desired to reengineer the user-interface without changing the legacy system code because the system performance is satisfactory and/or due to the prohibitive cost or risk. In such cases, lightweight non-invasive reengineering methods are needed.; This thesis presents a novel method for reverse engineering legacy character-based user-interfaces using traces of interaction between the legacy system and its users, as the only input. This "interaction reverse engineering" method produces a behavioral model of the legacy user-interface and discovers important usage scenarios of the legacy system services, represented by the frequent patterns of interaction with its user-interface. Then, a complementary forward engineering method uses the model and patterns to build a new task-centered front-end.; Our method consists of three steps and is implemented in a prototype tool called the Legacy Navigation Domain Identifier (LeNDI). First, the system-user dialog is recorded in the form of interaction traces using a specially instrumented emulator. These traces capture the screen snapshots forwarded to the user terminal and the user keyboard actions in return. Second, LeNDI builds a behavioral state-transition model for the legacy user-interface, whose states represent the legacy user-interface screens and whose transitions represent the permissible user actions on each screen. To build the model, LeNDI extracts a vector of features for every snapshot, clusters similar snapshots together, and finally induces a classifier that can classify new snapshots to one of the existing clusters. Third, LeNDI uses one of its two novel interaction pattern mining algorithms, IPM and IPM2, to mine the interaction traces for patterns of user activity. Associated with these steps, is a process of user feedback and revision to verify the results.; Our interaction reverse engineering method is code-independent and utilizes a novel easy-to-collect input, the interaction traces. Currently, it can reverse engineer block-mode data transfer protocols, e.g., IBM 3270. It is lightweight in terms of the time, cost and skills required. It supersedes the current manual labor-intensive time-consuming industrial practices. Several case studies were conducting to reverse engineer the user interaction with a number of real legacy systems, with very encouraging results.
Keywords/Search Tags:Legacy, User, Interaction, Reverse, Engineering, Using
Related items