[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
10.1145/2701319.2701329acmotherconferencesArticle/Chapter ViewAbstractPublication PagesvamosConference Proceedingsconference-collections
research-article

Use-Case-Specific Source-Code Documentation for Feature-Oriented Programming

Published: 21 January 2015 Publication History

Abstract

Source-code documentation is essential to efficiently develop and maintain large software products. Documentation is equally important for software product lines (SPLs), which represent a set of different products with a common code base. Unfortunately, proper support for documenting the source code of an SPL is currently lacking, because source code variability is not considered by current documentation tools. We introduce a method to provide source-code documentation for feature-oriented programming and aim to support developers who implement, maintain, and use SPLs. We identify multiple use cases for developers working with SPLs and propose four different documentation types (meta, product, feature, and context) that fulfill the information requirements of these use cases. Furthermore, we design an algorithm that enables developers to create tailor-made documentation for each use case. Our method is based on the documentation tool Javadoc and allows developers to easily write documentation comments that contain little overhead or redundancy. To demonstrate the efficiency of our method, we present a prototypical implementation and evaluate our method with regard to documentation effort for the SPL developers by documenting two small SPLs.

References

[1]
S. Apel, D. Batory, C. Kästner, and G. Saake. Feature-Oriented Software Product Lines: Concepts and Implementation. Springer, 2013.
[2]
S. Apel, C. Kästner, and C. Lengauer. Language-Independent and Automated Software Composition: The FeatureHouse Experience. TSE, 39(1):63--79, 2013.
[3]
S. Apel and C. Lengauer. Superimposition: A Language-Independent Approach to Software Composition. In SC, pages 20--35, 2008.
[4]
D. Batory. Feature-Oriented Programming and the AHEAD Tool Suite. In ICSE, pages 702--703. IEEE Computer Society, 2004.
[5]
D. Batory, J. N. Sarvela, and A. Rauschmayer. Scaling Step-Wise Refinement. TSE, 30(6):355--371, 2004.
[6]
P. Clements and L. Northrop. Software Product Lines: Practices and Patterns. Addison-Wesley, 2001.
[7]
G. Holl, P. Grünbacher, and R. Rabiser. A Systematic Review and an Expert Survey on Capabilities Supporting Multi Product Lines. IST, 54(8):828--852, 2012.
[8]
K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, and A. S. Peterson. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-21, Software Engineering Institute, 1990.
[9]
D. V. Koznov and K. Y. Romanovsky. DocLine: A Method for Software Product Lines Documentation Development. PCS, 34(4):216--224, 2008.
[10]
C. W. Krueger. Software Reuse. CSUR, 24(2):131--183, 1992.
[11]
K. Pohl, G. Böckle, and F. J. van der Linden. Software Product Line Engineering : Foundations, Principles and Techniques. Springer, 2005.
[12]
C. Prehofer. Feature-Oriented Programming: A Fresh Look at Objects. In ECOOP, pages 419--443. Springer, 1997.
[13]
R. Rabiser, W. Heider, C. Elsner, M. Lehofer, P. Grünbacher, and C. Schwanninger. A Flexible Approach for Generating Product-Specific Documents in Product Lines. In SPLC, pages 47--61. Springer, 2010.
[14]
R. Schröter, N. Siegmund, T. Thüm, and G. Saake. Feature-context interfaces: tailored programming interfaces for software product lines. In SPLC, pages 102--111. ACM, 2014.
[15]
T. Thüm, C. Kästner, F. Benduhn, J. Meinicke, G. Saake, and T. Leich. FeatureIDE: An Extensible Framework for Feature-Oriented Software Development. SCP, 79(0):70--85, 2014.
[16]
T. Thüm, I. Schaefer, M. Kuhlemann, S. Apel, and G. Saake. Applying Design by Contract to Feature-Oriented Programming. In FASE, pages 255--269. Springer, 2012.

Cited By

View all
  • (2023)Dynamic Slicing Algorithm for FeatureC++ Programs2023 4th International Conference on Communication, Computing and Industry 6.0 (C216)10.1109/C2I659362.2023.10431250(1-6)Online publication date: 15-Dec-2023
  • (2017)Conditional Compilation with FeatureIDEMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_9(97-103)Online publication date: 13-Sep-2017
  • (2017)Quality Assurance for Feature Models and ConfigurationsMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_8(81-94)Online publication date: 13-Sep-2017
  • Show More Cited By

Index Terms

  1. Use-Case-Specific Source-Code Documentation for Feature-Oriented Programming

    Recommendations

    Comments

    Please enable JavaScript to view thecomments powered by Disqus.

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    VaMoS '15: Proceedings of the 9th International Workshop on Variability Modelling of Software-Intensive Systems
    January 2015
    127 pages
    ISBN:9781450332736
    DOI:10.1145/2701319
    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]

    In-Cooperation

    • SINTEF

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 21 January 2015

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. API Documentation
    2. Feature-Oriented Programming
    3. Software Product Lines
    4. Source Code Documentation

    Qualifiers

    • Research-article
    • Research
    • Refereed limited

    Conference

    VaMoS '15

    Acceptance Rates

    VaMoS '15 Paper Acceptance Rate 16 of 34 submissions, 47%;
    Overall Acceptance Rate 66 of 147 submissions, 45%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)8
    • Downloads (Last 6 weeks)0
    Reflects downloads up to 12 Dec 2024

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)Dynamic Slicing Algorithm for FeatureC++ Programs2023 4th International Conference on Communication, Computing and Industry 6.0 (C216)10.1109/C2I659362.2023.10431250(1-6)Online publication date: 15-Dec-2023
    • (2017)Conditional Compilation with FeatureIDEMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_9(97-103)Online publication date: 13-Sep-2017
    • (2017)Quality Assurance for Feature Models and ConfigurationsMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_8(81-94)Online publication date: 13-Sep-2017
    • (2017)Feature Traceability in Feature Models and ConfigurationsMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_7(73-80)Online publication date: 13-Sep-2017
    • (2017)Product ConfigurationMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_6(63-71)Online publication date: 13-Sep-2017
    • (2017)Feature ModelingMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_5(43-62)Online publication date: 13-Sep-2017
    • (2017)An Elevator as a Running ExampleMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_4(31-39)Online publication date: 13-Sep-2017
    • (2017)FeatureIDE in a NutshellMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_3(19-29)Online publication date: 13-Sep-2017
    • (2017)Getting StartedMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_2(11-17)Online publication date: 13-Sep-2017
    • (2017)Overview on FeatureIDEMastering Software Variability with FeatureIDE10.1007/978-3-319-61443-4_19(227-234)Online publication date: 13-Sep-2017
    • Show More Cited By

    View Options

    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