Title :
Extracting Interaction-Based Stateful Behavior in Rich Internet Applications
Author :
Maezawa, Yuta ; Washizaki, Hironori ; Honiden, Shinichi
Author_Institution :
Univ. of Tokyo, Tokyo, Japan
Abstract :
Although asynchronous technologies such as Ajax make Rich Internet Applications (RIAs) responsive, they can result in unexpected behavior due to nondeterministic client-side processing and asynchronous communication. One difficulty in understanding such erroneous behavior lies in the unpredictable contexts of the running system. Dynamic behavior analysis techniques do not help to verify the correctness of certain "blind spots" in the execution path. In this work, we present a static approach for extracting all possible state transitions described in source code from the RIAs. Our approach is based on the assumption that user, server and self interactions with the RIAs can change the states of the application. Our method consists of three steps: (i) annotating interactions and extracting their controls in source code (ii) abstracting a call graph to extract relationships among the interactions and (iii) refining the relationships with interaction controls By extracting the state machines of test scenarios of the correct and wrong behavior, it can help developers to pinpoint the statements in the source code that lead to the erroneous behavior. Our approach has been evaluated against a few experimental cases and we conclude that it can extract comprehensible state machines in a reasonable time.
Keywords :
Internet; Java; XML; client-server systems; finite state machines; program diagnostics; reverse engineering; source coding; user interfaces; Ajax; RIA; asynchronous communication; call graph abstraction; dynamic behavior analysis; erroneous behavior; interaction controls; interaction-based stateful behavior extraction; nondeterministic client side processing; rich Internet application; source code; state machines; state transition extraction; static approach; Context; HTML; Internet; Libraries; Reactive power; Servers; Web pages; Ajax; Program Comprehension; Reverse Engineering; Rich Internet Applications;
Conference_Titel :
Software Maintenance and Reengineering (CSMR), 2012 16th European Conference on
Conference_Location :
Szeged
Print_ISBN :
978-1-4673-0984-4
DOI :
10.1109/CSMR.2012.53