A Method for Reverse Extraction of Object Statechart Diagram with Controllable Granularity

J. Zhang, T. Feng, D. Li, and Q. Yuan (PRC)


Reverse engineering, Program understanding, Object statechart diagram, Status tree, Dynamic analysis 518-022


Object statechart diagram is an important dynamic model for describing the results of analysis and design in object-oriented methodology. This paper introduces an approach to explore object states and reversely generate object statechart diagrams with controllable granularity. In this approach, object state is considered as taxonomy to object behaviors after receiving messages. An object's response to messages is determinate when it is in a certain state. Condition statements in the member functions of a class are the foundation to distinguish object’s behavior and can be used to explore the states of an object. Concepts such as status tree and concrete status tree are presented. A status tree describes the hierarchy of condition statements, while a concrete status tree classifies object states. Applying program dynamic analysis technology, this paper establishes transition steps for tracing object state changes according to run time informations. While determining concrete status tree from status tree, Object statechart diagram with needed granularity is generated. Completeness and determinacy of extracted object statechart diagram are also discussed.

Important Links:

Go Back