The Tracer and the related material below are property of the Weizmann Institute of Science, Rehovot, Israel.
Model-based trace visualization and exploration for reactive systems
|Case study application: RSS News Ticker created using the S2A compiler|
We have used the Tracer to visualize some execution traces of an RSS News Ticker application, previously developed as an example case study for scenario-based execution using the S2A compiler. The News Ticker is a small desktop application; it downloads RSS news from user defined websites and presents them to the user as continuously scrolling text. Additional features include switching between horizontal and vertical presentation modes, switching between several predefined scrolling speeds, changing the URL for the RSS feeds, and, when a headline is clicked, opening the corresponding news item in the browser window. The model and source code for the News Ticker are available from the S2A website.
The model for the News Ticker application consists of seven scenarios divided into two use cases. The typical traces we used were 8K-10K events long. These rather long traces are due mainly to repeated time tick and text scrolling events. Other events, such as the ones involved in changing the scrolling speed, are relatively rare. By applying the pre-defined vertical filter option `hide inactive ranges' to the use case in which these more rare scenarios are grouped, we were able to automatically exclude most of the trace from the view, leaving a filtered trace showing only the very few and relatively short ranges where the scenarios of interest were active. When this filter was not applied, given the length of the trace, the overview supporting view and the semantics-based navigation options such as `go to next instance' were helpful in browsing the lengthy trace and looking for locations of interest.
Selected screenshots appear below. Click on the pictures to enlarge.
|Main view with completion information, vertical filters, and metrics.|