Computing repair trees for resolving inconsistencies in design models. (bibtex)
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:
Computing repair trees for resolving inconsistencies in design models. (Alexander Reder, Alexander Egyed), In Proceedings of the 27th International Conference on Automated Software Engineering (ASE 2012), Essen, Germany (Michael Goedicke, Tim Menzies, Motoshi Saeki, eds.), ACM, 2012.
Bibtex Entry:
@Conference{DBLP:conf/kbse/RederE12,
  author    = {Alexander Reder and Alexander Egyed},
  title     = {Computing repair trees for resolving inconsistencies in design models.},
  booktitle = {Proceedings of the 27th International Conference on Automated Software Engineering (ASE 2012), Essen, Germany},
  year      = {2012},
  editor    = {Michael Goedicke and Tim Menzies and Motoshi Saeki},
  pages     = {220-229},
  publisher = {ACM},
  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      = {:Conferences\\ASE 2012 - Computing Repair Trees for Resolving Inconsistencies in Design Models\\Computing Repair Trees for Resolving Inconsistencies in Design Models-preprint.pdf:PDF},
  keywords  = {FWF P21321},
}
Powered by bibtexbrowser