Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/2480362.2480559acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

Test-based SPL extraction: an exploratory study

Published: 18 March 2013 Publication History
  • Get Citation Alerts
  • Abstract

    Many software systems have been developed as single products before Software Product Lines (SPLs) have emerged. Although some promising approaches have been proposed, extracting an SPL from existing software products is still expensive and time consuming. This paper presents an exploratory study that relies on a test-based SPL extraction from systems already developed. We aim to evaluate testing as the main mean to locate feature code and different sorts of existing artifacts to support the test-based location. We conduct two case studies starting from the derivation of the SPL feature model to the feature code location. Our preliminary results indicate (i) good rates of precision for feature seed location, where seed means a small portion of the feature code that allows the identification of the remaining portion, and (ii) good rates of recall for locating the whole feature code.

    References

    [1]
    Bourque et. al. 2001. Guide to the Software Engineering Body of Knowledge - SWEBOK. IEEE Press, USA.
    [2]
    Antoniol, G. and Guéhéneuc, Y. 2005. Feature identification: A novel approach and a case study. Proc. of the Int'l Conf. on Software Maint. (ICSM), pp. 357--366.
    [3]
    Chastek, G. J., McGregor, J. D. 2008. Production Planning in a Software Product Line Organization. Proc. of the Int'l Software Product Line Conference (SPLC), pp. 369--369.
    [4]
    Couto, M., Valente, M. and Figueiredo, E. 2011. Extracting Software Product Lines: A Case Study Using Conditional Compilation. Proc. of the European Conf. on Software Maintenance and Reengineering (CSMR).
    [5]
    Eisenbarth, T., et. al. 2003. Locating features in source code. IEEE Trans. on Software Eng. (TSE), v.29, pp. 210--224.
    [6]
    Ferreira, G., Gaia, F., Figueiredo, E. and Maia, M. 2011. On the Use of Feature-Oriented Programming for Evolving Software Product Lines -- a Comparative Study. Proc. of the XV Brazilian Symp. of Progr. Lang. (SBLP), pp. 121--135.
    [7]
    Figueiredo, E. et. al. 2008. Evolving Software Product Lines with Aspects: An Empirical Study on Design Stability. Proc. of Int'l Conf. on Software Engineering (ICSE), pp. 261--270.
    [8]
    Fowler, M. 1999. Refactoring: Improving the Design of Existing Code. Addison-Wesley Publishing Boston, USA.
    [9]
    Ghanam, Y. and Maurer, F. 2010. Linking feature models to code artifacts using executable acceptance tests. Proc. of Int'l Software Product Line Conf. (SPLC), pp. 211--225.
    [10]
    Kästner, C, Dreiling, A. and Ostermann, K. 2011. Variability mining with LEADT. Technical report, Philipps University Marburg.
    [11]
    Muhammad A. N., Rick R. and Paul G. 2008. Agile product line planning: A collaborative approach and a case study. Journal of Systems and Software (JSS), vol. 81, pp. 868--882.
    [12]
    Poshyvanyk, D. et. al. 2007. Feature location using probabilistic ranking of methods based on execution scenarios and information retrieval. IEEE Transactions Software Engineering (TSE), vol. 33, pp. 420--432.
    [13]
    Santos, I., Santos, A. and Santos Neto, P. 2011. Reusing Functional Testing in order to Decrease Performance and Stress Testing Costs. Proc. of Int'l Conf. on Software Engineering and Knowledge Eng. (SEKE), pp. 1--5.
    [14]
    Sharp, D. 2000. Reducing Avionics Software Cost Through Component Based Product Line Development, Proc. of Software Product Line Conference (SPLC).
    [15]
    Taube-Schock, C. et. al. 2011. Can we avoid high coupling? Proc. of the European Conf. on OOP (ECOOP), pp. 25--29.
    [16]
    Valente, M., Borges, V. and Passos, L. 2012. A Semi-Automatic Approach for Extracting Software Product Lines. IEEE Trans. of Software Eng. (TSE), 38(4), pp.737--754.
    [17]
    Varela, P., Araújo, J., Brito, I. and Moreira, A. 2011. Aspect-oriented analysis for software product lines requirements engineering. Proc. of ACM Symposium on Applied Computing (SAC), pp. 667--674.
    [18]
    Walkinshaw, N., Roper, M. and Wood, M. 2007. Feature location and extraction using landmarks and barriers. Proc. of the Int'l Conf. on Software Maint. (ICSM), pp. 54--63.
    [19]
    JBook. http://sourceforge.net/projects/jbookweb/
    [20]
    Kästner, C., Apel, S. and Kuhlemann, M. 2008. Granularity in software product lines. Proc. of the Int'l Conf. on Software Engineering (ICSE), pp. 311--320.
    [21]
    Marin, M. Deursen, A. V. and Moonen, L. 2007. Identifying Cross-cutting Concerns Using Fan-In Analysis. ACM Trans. of Software Eng. Methodologies (TOSEM), 17, article 3.
    [22]
    Tassey, G. 2002. The economic impacts of inadequate infrastructure for software testing. Planning Report. National Institute of Standards & Technology (NIST), pp. 2--3.
    [23]
    Binder, R. 1999. Testing object-oriented Systems -- Models, Patterns and Tools. Addison Wesley Reading.
    [24]
    Test-based SPL Extraction. http://www.dcc.ufmg.br/~jigueiredo/spl/extraction

    Cited By

    View all
    • (2019)PAxSPL: A feature retrieval process for software product line reengineeringSoftware: Practice and Experience10.1002/spe.270749:8(1278-1306)Online publication date: 31-May-2019
    • (2014)Feature location for software product line migrationProceedings of the 18th International Software Product Line Conference: Companion Volume for Workshops, Demonstrations and Tools - Volume 210.1145/2647908.2655967(52-59)Online publication date: 15-Sep-2014
    • (2014)Extending JUnit 4 with Java annotations and reflection to test variant model transformation assetsProceedings of the 29th Annual ACM Symposium on Applied Computing10.1145/2554850.2555054(1601-1608)Online publication date: 24-Mar-2014
    • Show More Cited By

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    SAC '13: Proceedings of the 28th Annual ACM Symposium on Applied Computing
    March 2013
    2124 pages
    ISBN:9781450316569
    DOI:10.1145/2480362
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 18 March 2013

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. feature location
    2. product line extraction
    3. software testing

    Qualifiers

    • Research-article

    Funding Sources

    Conference

    SAC '13
    Sponsor:
    SAC '13: SAC '13
    March 18 - 22, 2013
    Coimbra, Portugal

    Acceptance Rates

    SAC '13 Paper Acceptance Rate 255 of 1,063 submissions, 24%;
    Overall Acceptance Rate 1,650 of 6,669 submissions, 25%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)7
    • Downloads (Last 6 weeks)2
    Reflects downloads up to 27 Jul 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2019)PAxSPL: A feature retrieval process for software product line reengineeringSoftware: Practice and Experience10.1002/spe.270749:8(1278-1306)Online publication date: 31-May-2019
    • (2014)Feature location for software product line migrationProceedings of the 18th International Software Product Line Conference: Companion Volume for Workshops, Demonstrations and Tools - Volume 210.1145/2647908.2655967(52-59)Online publication date: 15-Sep-2014
    • (2014)Extending JUnit 4 with Java annotations and reflection to test variant model transformation assetsProceedings of the 29th Annual ACM Symposium on Applied Computing10.1145/2554850.2555054(1601-1608)Online publication date: 24-Mar-2014
    • (2014)A Systematic Literature Review of Software Product Line Management ToolsSoftware Reuse for Dynamic Systems in the Cloud and Beyond10.1007/978-3-319-14130-5_6(73-89)Online publication date: 2014

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media