ePrints@IIScePrints@IISc Home | About | Browse | Latest Additions | Advanced Search | Contact | Help

Combining Concern Input with Program Analysis for Bloat Detection

Bhattacharya, Suparna and Gopinath, K and Nanda, Mangala Gowri (2013) Combining Concern Input with Program Analysis for Bloat Detection. In: ACM SIGPLAN NOTICES, 48 (10). pp. 745-763.

[img] PDF
ACM_SIG_NOT_48-10_745_2013.pdf - Published Version
Restricted to Registered users only

Download (636kB) | Request a copy
Official URL: http://dx.doi.org/10.1145/2509136.2509522


Framework based software tends to get bloated by accumulating optional features (or concerns) just-in-case they are needed. The good news is that such feature bloat need not always cause runtime execution bloat. The bad news is that often enough, only a few statements from an optional concern may cause execution bloat that may result in as much as 50% runtime overhead. We present a novel technique to analyze the connection between optional concerns and the potential sources of execution bloat induced by them. Our analysis automatically answers questions such as (1) whether a given set of optional concerns could lead to execution bloat and (2) which particular statements are the likely sources of bloat when those concerns are not required. The technique combines coarse grain concern input from an external source with a fine-grained static analysis. Our experimental evaluation highlights the effectiveness of such concern augmented program analysis in execution bloat assessment of ten programs.

Item Type: Journal Article
Additional Information: Copy right for this article belongs to the ASSOC COMPUTING MACHINERY, 2 PENN PLAZA, STE 701, NEW YORK, NY 10121-0701 USA
Keywords: software bloat; program concerns; feature oriented programming
Department/Centre: Division of Electrical Sciences > Computer Science & Automation
Depositing User: Id for Latest eprints
Date Deposited: 25 Aug 2016 10:41
Last Modified: 25 Aug 2016 10:41
URI: http://eprints.iisc.ac.in/id/eprint/54275

Actions (login required)

View Item View Item