Refactoring using event-based profiling

TitleRefactoring using event-based profiling
Publication TypeJournal Articles
Year of Publication2003
AuthorsNagarajan A, Memon AM
JournalFirst International Workshop on REFactoring: Achievements, Challenges, Effects (REFACE)
Date Published2003///

Refactoring is a disciplined process of restructuring soft-ware code in order to improve it, e.g., to make it more
reusable, reliable and maintainable. The source of infor-
mation that guides the refactoring process may be the soft-
ware’s user profiles. An increasingly important class of soft-
ware is event-based software. Event-based software take an
event as an input, change their state, and perhaps output
an event. They provide new opportunities for refactoring.
For example, reorganizing the objects related to an event
and restructuring the event handlers based on the behavior
of the software. These opportunities require that we collect
user profiles at the level of events rather than the code and
model the software in such a way that allows refactoring of
event handlers. We present new techniques to collect event-
level profiles and organize event handlers. We describe our
techniques on one class of event-based software – Graphi-
cal User Interfaces (GUIs). We demonstrate the practicality
and usefulness of our techniques on a large software system.