Computing repair trees for resolving inconsistencies in design models.

by Alexander Reder, Alexander Egyed
Abstract:
Resolving inconsistencies in software models is a complex task because the number of repairs grows exponentially. Existing approaches thus emphasize on selected repairs only but doing so diminishes their usefulness. This paper copes with the large number of repairs by focusing on what caused an inconsistency and presenting repairs as a linearly growing repair tree. The cause is computed by examining the runtime evaluation of the inconsistency to understand where and why it failed. The individual changes that make up repairs are then modeled in a repair tree as alternatives and sequences reflecting the syntactic structure of the inconsistent design rule. The approach is automated and tool supported. Its scalability was empirically evaluated on 29 UML models and 18 OCL design rules where we show that the approach computes repair trees in milliseconds on average. We believe that the approach is applicable to arbitrary modeling and constraint languages.
Reference:
Alexander Reder, Alexander Egyed, "Computing repair trees for resolving inconsistencies in design models.", pp. 220-229, 2012.
Bibtex Entry:
@Conference{DBLP:conf/kbse/RederE12,
  Title                    = {Computing repair trees for resolving inconsistencies in design models.},
  Author                   = {Alexander Reder and Alexander Egyed},
  Booktitle                = {27th International Conference on Automated Software Engineering (ASE), Essen, Germany},
  Year                     = {2012},
  Pages                    = {220-229},

  Abstract                 = {Resolving inconsistencies in software models is a complex task because the number of repairs grows exponentially. Existing approaches thus emphasize on selected repairs only but doing so diminishes their usefulness. This paper copes with the large number of repairs by focusing on what caused an inconsistency and presenting repairs as a linearly growing repair tree. The cause is computed by examining the runtime evaluation of the inconsistency to understand where and why it failed. The individual changes that make up repairs are then modeled in a repair tree as alternatives and sequences reflecting the syntactic structure of the inconsistent design rule. The approach is automated and tool supported. Its scalability was empirically evaluated on 29 UML models and 18 OCL design rules where we show that the approach computes repair trees in milliseconds on average. We believe that the approach is applicable to arbitrary modeling and constraint languages.},
  Doi                      = {10.1145/2351676.2351707},
  File                     = {Computing Repair Trees for Resolving Inconsistencies in Design Models:Conferences\\ASE 2012 - Computing Repair Trees for Resolving Inconsistencies in Design Models\\Computing Repair Trees for Resolving Inconsistencies in Design Models.pdf:PDF},
  Keywords                 = {consistency, repair, change, FWF P21321-N15}
}
Powered by bibtexbrowser