Publication Type

Conference Proceeding Article

Version

submittedVersion

Publication Date

11-2006

Abstract

Improper management of software evolution, compounded by imprecise, and changing requirements, along with the “short time to market ” requirement, commonly leads to a lack of up-to-date specifications. This can result in software that is characterized by bugs, anomalies and even security threats. Software specification mining is a new technique to address this concern by inferring specifications automatically. In this paper, we propose a novel API specification mining architecture called SMArTIC (Specification Mining Architecture with Trace fIltering and Clustering) to improve the accuracy, robustness and scalability of specification miners. This architecture is constructed based on two hypotheses: (1) Erroneous traces should be pruned from the input traces to a miner, and (2) Clustering related traces will localize inaccuracies and reduce over-generalizationin learning. Correspondingly, SMArTIC comprises four components: an erroneous-trace filtering block, a related-trace clustering block, a learner, and a merger. We show through experiments that the quality of specification mining can be significantly improved using SMArTIC.

Keywords

Clustering Traces, Filtering Errors, Specification Mining

Discipline

Software Engineering

Research Areas

Software and Cyber-Physical Systems

Publication

SIGSOFT '06/FSE-14: Proceedings of the 14th ACM SIGSOFT Symposium on Foundations of Software Engineering, Portland, OR, November 5-11

First Page

265

Last Page

275

ISBN

9781595934680

Identifier

10.1145/1181775.1181808

Publisher

ACM

City or Country

New York

Additional URL

https://doi.org/10.1145/1181775.1181808

Share

COinS