Nothing Special   »   [go: up one dir, main page]

skip to main content
10.5555/2337223.2337231acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

Generating range fixes for software configuration

Published: 02 June 2012 Publication History

Abstract

To prevent ill-formed configurations, highly configurable software often allows defining constraints over the available options. As these constraints can be complex, fixing a configuration that violates one or more constraints can be challenging. Although several fix-generation approaches exist, their applicability is limited because (1) they typically generate only one fix, failing to cover the solution that the user wants; and (2) they do not fully support non-Boolean constraints, which contain arithmetic, inequality, and string operators.
This paper proposes a novel concept, range fix, for software configuration. A range fix specifies the options to change and the ranges of values for these options. We also design an algorithm that automatically generates range fixes for a violated constraint. We have evaluated our approach with three different strategies for handling constraint interactions, on data from five open source projects. Our evaluation shows that, even with the most complex strategy, our approach generates complete fix lists that are mostly short and concise, in a fraction of a second.

References

[1]
L. Chen and M. Ali Babar, "A systematic review of evaluation of variability management approaches in software product lines," Information and Software Technology, vol. 53, no. 4, pp. 344-362, 2011.
[2]
T. Berger, S. She, R. Lotufo, A. Wasowski, and K. Czarnecki, "Variability modeling in the real: a perspective from the operating systems domain," in ASE. ACM, 2010, pp. 73-82.
[3]
K. Kang, S. Cohen, J. Hess, W. Novak, and A. Peterson, "Feature-oriented domain analysis (FODA) feasibility study," Carnegie-Mellon Univ, Tech. Rep. CMU/SEI-90-TR- 21, 1990.
[4]
A. Hubaux, Y. Xiong, and K. Czarnecki, "A user survey of configuration challenges in Linux and eCos," in VaMoS. ACM press, 2012, pp. 149-155.
[5]
L. Passos, M. Novakovic, Y. Xiong, T. Berger, K. Czarnecki, and A. Wasowski, "A study of non-boolean constraints in variability models of an embedded operating system," in FOSD. ACM, 2011, pp. 2:1-2:8.
[6]
M. Jose and R. Majumdar, "Cause clue clauses: error localization using maximum satisfiability," in PLDI. ACM, 2011, pp. 437-446.
[7]
J. White, D. C. Schmidt, D. Benavides, P. Trinidad, and A. Ruiz-Cortés, "Automated diagnosis of product-line configuration errors in feature models," in SPLC. IEEE Computer Society, 2008, pp. 225-234.
[8]
R. Reiter, "A theory of diagnosis from first principles," Artificial intelligence, vol. 32, no. 1, pp. 57-95, 1987.
[9]
R. Greiner, B. Smith, and R. Wilkerson, "A correction to the algorithm in Reiter's theory of diagnosis," Artificial Intelligence, vol. 41, no. 1, pp. 79-88, 1989.
[10]
L. De Moura and N. Bjørner, "Z3: an efficient SMT solver," in TACAS/ETAPS. Springer-Verlag, 2008, pp. 337-340.
[11]
B. Veer and J. Dallaway, "The eCos component writer's guide," ecos.sourceware.org/ecos/docs-latest/cdl-guide/ cdl-guide.html, 2001.
[12]
K. Czarnecki and A. Wasowski, "Feature diagrams and logics: There and back again," in SPLC. IEEE Computer Society, 2007, pp. 23-34.
[13]
T. Berger and S. She, "Formal semantics of the CDL language," www.informatik.uni-leipzig.de/~berger/cdl_ semantics.pdf, 2010.
[14]
C. Nentwich, W. Emmerich, and A. Finkelstein, "Consistency management with repair actions," in ICSE. IEEE Computer Society, 2003, pp. 455-464.
[15]
A. Egyed, E. Letier, and A. Finkelstein, "Generating and evaluating choices for fixing inconsistencies in UML design models," in ASE. IEEE Computer Society, 2008, pp. 99-108.
[16]
C. Barrett, A. Stump, and C. Tinelli, "The SMT-LIB standard: Version 2.0," http://www.smtlib.org/, 2010.
[17]
Y. Xiong, "Configurator semantics of the CDL language," Generative Software Development Laboratory, University of Waterloo, Tech. Rep. GSDLAB-TR 2011-06-05, 2011, http: //gsd.uwaterloo.ca/GSDLAB-TR2011-06-05.
[18]
N. Bjørner, N. Tillmann, and A. Voronkov, "Path feasibility analysis for string-manipulating programs," in TACAS. Springer-Verlag, 2009, pp. 307-321.
[19]
J. Scheffczyk, P. Rödig, U. M. Borghoff, and L. Schmitz, "Managing inconsistent repositories via prioritized repairs," in DocEng. ACM, 2004.
[20]
T. Hadzic, S. Subbarayan, R. M. Jensen, H. R. Andersen, J. Møller, and H. Hulgaard, "Fast backtrack-free product configuration using a precompiled solution space representation," in PETO. DTU-tryk, 2004, pp. 131-138.
[21]
M. Mendonça, "Efficient reasoning techniques for large scale feature models," Ph.D. dissertation, University of Waterloo, 2009.
[22]
M. Janota, G. Botterweck, R. Grigore, and J. Marques-Silva, "How to complete an interactive configuration process?" in SOFSEM. Springer-Verlag, 2010, pp. 528-539.
[23]
P. Trinidad, D. Benavides, A. Durán, A. Ruiz-Cortés, and M. Toro, "Automated error analysis for the agilization of feature modeling," Journal of Systems and Software, vol. 81, no. 6, pp. 883-896, 2008.
[24]
B. Wang, Y. Xiong, Z. Hu, H. Zhao, W. Zhang, and H. Mei, "A dynamic-priority based approach to fixing inconsistent feature models," in MODELS. Springer-Verlag, 2010, pp. 181-195.
[25]
B. Demsky and M. Rinard, "Automatic detection and repair of errors in data structures," in OOPSLA. ACM, 2003, pp. 78-95.
[26]
S. Mani, V. S. Sinha, P. Dhoolia, and S. Sinha, "Automated support for repairing input-model faults," in ASE. ACM, 2010, pp. 195-204.
[27]
Y. Xiong, Z. Hu, H. Zhao, H. Song, M. Takeichi, and H. Mei, "Supporting automatic model inconsistency fixing," in ESEC/FSE. ACM, 2009, pp. 315-324.
[28]
U. Junker, "QUICKXPLAIN: preferred explanations and relaxations for over-constrained problems," in AAAI. AAAI Press, 2004, pp. 167-172.
[29]
A. Felfernig, G. Friedrich, D. Jannach, and M. Stumptner, "Consistency-based diagnosis of configuration knowledge bases," Artificial Intelligence, vol. 152, pp. 213-234, 2004.
[30]
D. Jannach and J. Liegl, "Conflict-directed relaxation of constraints in content-based recommender systems," in Advances in Applied Artificial Intelligence. Springer Berlin / Heidelberg, 2006, vol. 4031, pp. 819-829.
[31]
A. Felfernig, G. Friedrich, M. Schubert, M. Mandl, M. Mairitsch, and E. Teppan, "Plausible repairs for inconsistent requirements," in IJCAI. Morgan Kaufmann Publishers Inc., 2009, pp. 791-796.
[32]
B. O'Sullivan, A. Papadopoulos, B. Faltings, and P. Pu, "Representative explanations for over-constrained problems," in AAAI. AAAI Press, 2007, pp. 323-328.

Cited By

View all
  • (2021)An Evolutionary Study of Configuration Design and Implementation in Cloud SystemsProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00029(188-200)Online publication date: 22-May-2021
  • (2020)GuyDanceProceedings of the 24th ACM International Systems and Software Product Line Conference - Volume B10.1145/3382026.3425769(56-64)Online publication date: 19-Oct-2020
  • (2020)SMT-based variability analyses in FeatureIDEProceedings of the 14th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3377024.3377036(1-9)Online publication date: 5-Feb-2020
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image ACM Conferences
ICSE '12: Proceedings of the 34th International Conference on Software Engineering
June 2012
1657 pages
ISBN:9781467310673

Sponsors

Publisher

IEEE Press

Publication History

Published: 02 June 2012

Check for updates

Qualifiers

  • Article

Conference

ICSE '12
Sponsor:

Acceptance Rates

Overall Acceptance Rate 276 of 1,856 submissions, 15%

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)1
Reflects downloads up to 22 Nov 2024

Other Metrics

Citations

Cited By

View all
  • (2021)An Evolutionary Study of Configuration Design and Implementation in Cloud SystemsProceedings of the 43rd International Conference on Software Engineering10.1109/ICSE43902.2021.00029(188-200)Online publication date: 22-May-2021
  • (2020)GuyDanceProceedings of the 24th ACM International Systems and Software Product Line Conference - Volume B10.1145/3382026.3425769(56-64)Online publication date: 19-Oct-2020
  • (2020)SMT-based variability analyses in FeatureIDEProceedings of the 14th International Working Conference on Variability Modelling of Software-Intensive Systems10.1145/3377024.3377036(1-9)Online publication date: 5-Feb-2020
  • (2018)VaryLATEXProceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems10.1145/3168365.3168372(83-88)Online publication date: 7-Feb-2018
  • (2017)Easier Said Than DoneProceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering10.1145/3084226.3084276(196-201)Online publication date: 15-Jun-2017
  • (2016)CacheOptimizer: helping developers configure caching frameworks for hibernate-based database-centric web applicationsProceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering10.1145/2950290.2950303(666-677)Online publication date: 1-Nov-2016
  • (2015)An empirical study on real bug fixesProceedings of the 37th International Conference on Software Engineering - Volume 110.5555/2818754.2818864(913-923)Online publication date: 16-May-2015
  • (2015)Systems Approaches to Tackling Configuration ErrorsACM Computing Surveys10.1145/279157747:4(1-41)Online publication date: 21-Jul-2015
  • (2015)Hey, you have given me too many knobs!: understanding and dealing with over-designed configuration in system softwareProceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering10.1145/2786805.2786852(307-319)Online publication date: 30-Aug-2015
  • (2015)Proactive detection of inadequate diagnostic messages for software configuration errorsProceedings of the 2015 International Symposium on Software Testing and Analysis10.1145/2771783.2771817(12-23)Online publication date: 13-Jul-2015
  • 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