Please use this identifier to cite or link to this item:
Title: Debugging statecharts models via model-code tracebility
Authors: GUO LIANG
Keywords: Debugging, Statechart, Model, Slicing, Association, Tracebility
Issue Date: 5-Aug-2008
Citation: GUO LIANG (2008-08-05). Debugging statecharts models via model-code tracebility. ScholarBank@NUS Repository.
Abstract: Model-driven software development involves constructing behavioral models from informal English requirements. These models are then used to guide software construction. The compilation of behavioral models into software is the topic of many existing research works. There also exist a number of UML-based modeling tools which support such model compilation. In this thesis, we show how Statechart models can be validated/debugged by (a) generating code from the Statechart models, (b) employing established software debugging methods like program slicing on the generated code, and (c) relating the program slice back to the Statechart level.First, our study is presented concretely in terms of dynamic slicing of sequential Java code produced from Statechart models. The slice produced at the code level is mapped back to the model level for enhanced design comprehension. We use the open-source JSlice tool for dynamic slicing of Java programs in our experiments. We present results on a wide variety of real-life control systems which are modeled as Statecharts (from the informal English requirements) and debugged using our methodology. We feel that our debugging methodology o, ts in well with design o, ows in model-driven software development.The existing dynamic slicing tool JSlice only supports basic features of Java languages. However, most real programs utilize advanced Java language features including exception, reflection, and multi-threading. We further extend JSlice tool to support full Java language by integrating the above three features into it. Meanwhile, with the support of multi-threading in the concrete code-level analysis tool JSlice, we enhance our code generation methodology of Statechart models to produce multi-threaded Java code. Compared to sequential code generated, multi-threaded program lifts the restriction imposed on Statechart behavior where concurrent states are serialized in sequential programs. With the support of advanced language features, both code generation tool and JSlice greatly extend their usability.
Appears in Collections:Master's Theses (Open)

Show full item record
Files in This Item:
File Description SizeFormatAccess SettingsVersion 
main.pdf572.13 kBAdobe PDF



Page view(s)

checked on May 23, 2019


checked on May 23, 2019

Google ScholarTM


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.