logo of the SSW institute ;)
Computer Science
System Software

Home

General
Staff
Contact
Partners
Alumni

Research
Areas
Projects
Papers
Books
Reports
Awards

Teaching
Lectures
Exams
B.Projects
M.Theses
PhD Theses
Go Abroad

Misc
Talks
Library
Gallery
Links
Search

Webmaster


Program Slicing


What is Program Slicing?
User Interface of the Slicer (including some screen-shots)
Features of our Program Slicing Tool
Download the Oberon Slicing Tool
Publications
Links

What is Program Slicing?

Program slicing is a program analysis technique. It is mainly used during debugging and reengineering. It tries to eliminate all parts from the program that are not currently of interest to the programmer. Therefore, the programmer clicks on a statement (which is of interest to him, e.g. because the value of a variable is wrong) and the program slicer highlights all program statements that might have produced the erroneous value. Relationships between program entities like variable definitions and variable usages are visualized.


Features of the Oberon Slicing Tool

  • It computes program slices of Oberon-2 programs (no restrictions on the programs, i.e. they may use structured types (records and arrays), global variables of any type, objects on the heap; functions may have arbitrary side-effects; procedures may be nested; there may be recursion and dynamic binding due to type-bound procedures (methods) and procedure variables (function pointers); and the program can consist of modules).
  • It is extremely fast (slicing information is computed within a few seconds, slices are computed without any delay at all).
  • It uses static slicing (which produces bigger slices than dynamic slicing but is much more efficient)
  • It can compute intraprocedural, interprocedural and intermodular slices.
  • It can handle procedural and object-oriented programs.
  • It does so in an expression-oriented way (finer grained than statement-oriented slicing).
  • It uses user-feedback to restrict the effects of aliases and dynamic binding.
  • It uses a repository to store the computed slicing information which can be re-used later when importing already sliced modules.
  • It implements the Model-View-Controller concept (i.e. it is possible to have multiple views of the same slice that are kept consistent).

Download the Oberon Slicing Tool

The Oberon Slicing Tool (OST) is published under the Oberon Slicing Tool License.
OST is the property of Christoph Steindl and bears Christoph Steindl's copyright. Any use you make of OST must respect Christoph Steindl's proprietary rights.
Download the Oberon Slicing Tool via this link
In order to run the Program Slicing Tool, you need a current version of the Oberon System!


Publications


Links

The Oberon Webring Navigator
[Skip Prev] [Prev] [Next] [Skip Next]
[Random] [Next 5] [List Sites] [Join]