Publication Type

Conference Proceeding Article

Version

publishedVersion

Publication Date

9-2010

Abstract

Specification mining takes execution traces as input and extracts likely program invariants, which can be used for comprehension, verification, and evolution related tasks. In this work we integrate scenario-based specification mining, which uses data-mining algorithms to suggest ordering constraints in the form of live sequence charts, an inter-object, visual, modal, scenario-based specification language, with mining of value-based invariants, which detects likely invariants holding at specific program points. The key to the integration is a technique we call scenario-based slicing, running on top of the mining algorithms to distinguish the scenario-specific invariants from the general ones. The resulting suggested specifications are rich, consisting of modal scenarios annotated with scenario-specific value-based invariants, referring to event parameters and participating object properties. An evaluation of our work over a number of case studies shows promising results in extracting expressive specifications from real programs, which could not be extracted previously. The more expressive the mined specifications, the higher their potential to support program comprehension and testing.

Keywords

Specification Mining, Dynamic Analysis, Live Sequence Charts, Value-Based Invariants

Discipline

Software Engineering

Research Areas

Software and Cyber-Physical Systems

Publication

ASE '10: Proccedings of the 25th IEEE/ACM International Conference on Automated Software Engineering, 20-24 September, Antwerp, Belgium

First Page

387

Last Page

396

ISBN

9781450301169

Identifier

10.1145/1858996.1859081

Publisher

ACM

City or Country

New York

Copyright Owner and License

Publisher

Additional URL

https://doi.org/10.1145/1858996.1859081

Share

COinS