11
Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Embed Size (px)

Citation preview

Page 1: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Mining System-User Interaction Traces for Use Case Models

Mohammed El-RamlyEleni StrouliaPaul Sorenson

(presented by Hsiao-Ming Tsou)

Page 2: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

"In [previous works], we presented the CelLEST method for legacy user interface (UI) reengineering and integration. This method uses recorded traces of the interaction between the legacy system and its users as its input, and does not require examination of the legacy code."

"In this paper, we discuss how the CelLEST method can be further automated by discovering the use case models, needed for the GUI construction, from the interaction traces. We use knowledge discovery and pattern searching algorithms to search for frequently occurring patterns in the traces."

Page 3: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Agenda

Background

Previous Works

Current Works

Summary

Likes/Dislikes

Page 4: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Background

Often times, new systems under development require integration with other systems.

Such systems include: Off-the-shelf components (COTS)

Usually comes with documentation on how to integrate. Legacy systems

Usually lacks documentation. Source code, even if available, is often poorly structured in terms of

application design.

How to integrate a new system with an underlying legacy system, given a lack of internal specifications?

Solution: data mine user-interface (UI) specifications; collect input/output traces (use cases) of real users using the legacy system, and build a behavioral model of the system out of it.

Page 5: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Previous Works

CelLEST was developed as a method for legacy user interface reengineering and integration.

"The CelLEST UI reengineering method is applicable when the reengineering objective is to provide a more usable GUI to current legacy services, or to make them available through the Web."

The CelLEST method consists of two phases: Phase 1: Reverse Engineering

Produce a state-transition diagram out of use cases - recorded traces of the interaction between the legacy systems and its users. The traces are a series of screen snapshots of the user interface.

Phase 2: Forward Engineering Construct an abstract specification of a GUI for the modeled task, such

that it can be implemented.

Page 6: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Previous Works (2)

Page 7: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Previous Works (3)

Page 8: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Current Works

"In this paper, we describe how patterns of frequent user tasks can be discovered automatically by applying data mining techniques to interaction traces, and hence eliminating the need to collect task-specific traces."

There are some issues in automatically discovering frequent user tasks from interaction traces: Not all frequent user tasks are interesting - we want only the

interesting ones. How to define the criteria that makes a task interesting How to extract the tasks that are interesting Verifying that those extracted tasks are what we are looking for Building use case models for the extracted patterns

Page 9: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Current Works (2)

Finding common sequences:

The "interesting"-ness is scored in terms of three parameters: pattF (pattern frequency pattF (pattern frequency) density ("accuracy" of the pattern)

Page 10: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Current Works (3)

Page 11: Mining System-User Interaction Traces for Use Case Models Mohammed El-Ramly Eleni Stroulia Paul Sorenson (presented by Hsiao-Ming Tsou)

Likes/Dislikes

Likes: The diagrams were intuitive.

Dislikes: Intuitively (and logically), this isn't a very sound approach to

engineering interfaces on the Web. Automation isn't the answer to everything, and this is an arguably inherently insecure way to build interfaces.

Some of the equations in the paper aren't explained in terms of reason.

Why not just ask the expert user?