Program slicing was introduced as a technique to reduce the size of the source code of interest by identifying only those parts of the original program that are relevant to the computation of a particular user-specified slicing criterion. The criterion captures the point of interest within the program, while the process of slicing consists of following dependencies to locate those parts of the program that may affect the slicing criterion. As modeling for software and systems engineering gained in popularity and become an industrially accepted practice in many application domains, researchers have moved from considering only program slicing to model slicing. Models are used throughout the system development life cycle for describing requirements, specifications, design, deployment, and maintenance. These models convey many types of information better than programs, but become unwieldy in scale far quicker. As a result, they become hard to understand, difficult to debug and to maintain. In this project, we are interested in applying slicing techniques to the Use Case Maps language, in order to support their comprehension and maintenance. We plan to develop and apply new UCM-based algorithms to implement different slicing flavors (Static, dynamic, etc.). The development of efficient UCM-based slicing algorithms would help software engineers understand the UCM requirements specification prior to performing a maintenance task, hence, increasing their productivity and reducing the cost of typical maintenance tasks.
|Effective start/end date||1/01/15 → 1/07/16|
Explore the research topics touched on by this project. These labels are generated based on the underlying awards/grants. Together they form a unique fingerprint.