Title: Mining System-User Interaction Traces for Use Case Models
1Mining System-User Interaction Traces for Use
Case Models Mohammed El-Ramly Eleni
Stroulia Paul Sorenson (presented by Hsiao-Ming
Tsou)?
2"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."
3Agenda
- Background
- Previous Works
- Current Works
- Summary
- Likes/Dislikes
4Background
- 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.
5Previous 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.
6Previous Works (2)?
7Previous Works (3)?
8Current 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
9Current 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)?
10Current Works (3)?
11Likes/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?