Font Size: a A A

Research On Automatic Online Specification Mining

Posted on:2012-09-23Degree:MasterType:Thesis
Country:ChinaCandidate:D L WangFull Text:PDF
GTID:2218330362460449Subject:Computer Science and Technology
Abstract/Summary:
Software specification is a description on how a piece of software is supposed to behave. Software specifications are the foundation of many software development activities including maintenance, testing, verification and comprehension. However, it is hard to describe and evaluate formal specifications in a unified way, so many specifications of softwares are unavailable. Moreover, software evolves in software evolution, often the documented specification is not updated. This might render the original documented specification of little use after several cycles of program evolution. Hence, A lot of research focuses on specification inference which can mine specifications from software source code and the logs of programs or from the dynamic behaviors of software.Specification mining is a process of extracting knowledge and information from programs automatically or semi-automatically. Dynamic specification inference attempts to infer specifications of software's correct behaviors from execution traces. Automatic online specification mining automatically infers software specifications from online behaviors of in-field programs. Compared with off-line approaches, automatic online specification mining does not depend on test case suites, but is more challenging. There are two key issues needed to be resolved in this area: one is how to extract different scenarios from the evolving trace which is called scenario identification, the other is how to deal with software failure problem. Hence, this paper proposes a scenario identification strategy which uses method executions as different scenarios and scenario confidence evaluation stategy for each problem. Meanwhile, based on such strategies, we design AOSM (Automatic online specification mining) to infer specifications automatically for in-field software. In order to evaluate precision and completeness of specifications inferred by AOSM, we design a experiment that is using AOSM to infer specifications of plug-ins of eclipse. The experiment result demonstrates that precision and completeness of specifications inferred by AOSM respectively have increases of 25% and 7.2% more than these inferred by off-line approaches and scenario confidence evaluation stategy can effectively deal with software failure.The effectiveness of automatic online specification mining is of great effect on automation of inference and the quality of specifications inferred. The approach presented in this paper shows high effectiveness in improving the quality of specifications and dealing with software failure, meanwhile makes contributions to the field of specification mining.
Keywords/Search Tags:specification mining, automatic online specification mining, scenario, software failure
Related items