A comparison of strategies for tolerating inconsistencies during decision-making.

by Alexander Nöhrer, Armin Biere, Alexander Egyed
Abstract:
Tolerating inconsistencies is well accepted in design modeling because it is often neither obvious how to fix an inconsistency nor important to do so right away. However, there are technical reasons why inconsistencies are not tolerated in many areas of software engineering. The most obvious being that common reasoning engines are rendered (partially) useless in the presence of inconsistencies. This paper investigates automated strategies for tolerating inconsistencies during decision-making in product line engineering, based on isolating parts from reasoning that cause inconsistencies. We compare trade offs concerning incorrect and incomplete reasoning and demonstrate that it is even possible to fully eliminate incorrect reasoning in the presence of inconsistencies at the expense of marginally less complete reasoning. Our evaluation is based on five medium-to-large size software product line case studies. It is important to note that our mechanism for tolerating inconsistencies can be applied to arbitrary SAT problems and thus the basic principles of this approach are applicable to other domains also.
Reference:
Alexander Nöhrer, Armin Biere, Alexander Egyed, "A comparison of strategies for tolerating inconsistencies during decision-making.", pp. 11-20, 2012.
Bibtex Entry:
@Conference{DBLP:conf/splc/NohrerBE12,
  Title                    = {A comparison of strategies for tolerating inconsistencies during decision-making.},
  Author                   = {Alexander Nöhrer and Armin Biere and Alexander Egyed},
  Booktitle                = {16th International Software Product Line Conference (SPLC), Salvador, Brazil},
  Year                     = {2012},
  Pages                    = {11-20},

  Abstract                 = {Tolerating inconsistencies is well accepted in design modeling because it is often neither obvious how to fix an inconsistency nor important to do so right away. However, there are technical reasons why inconsistencies are not tolerated in many areas of software engineering. The most obvious being that common reasoning engines are rendered (partially) useless in the presence of inconsistencies. This paper investigates automated strategies for tolerating inconsistencies during decision-making in product line engineering, based on isolating parts from reasoning that cause inconsistencies. We compare trade offs concerning incorrect and incomplete reasoning and demonstrate that it is even possible to fully eliminate incorrect reasoning in the presence of inconsistencies at the expense of marginally less complete reasoning. Our evaluation is based on five medium-to-large size software product line case studies. It is important to note that our mechanism for tolerating inconsistencies can be applied to arbitrary SAT problems and thus the basic principles of this approach are applicable to other domains also.},
  Doi                      = {10.1145/2362536.2362543},
  File                     = {A Comparison of Strategies for Tolerating Inconsistencies during Decision-Making:Conferences\\SPLC 2012 - A Comparison of Strategies for Tolerating Inconsistencies\\A Comparison of Strategies for Tolerating Inconsistencies during Decision-Making.pdf:PDF},
  Keywords                 = {variability, consistency}
}
Powered by bibtexbrowser