Automatically Detecting and Tracking Inconsistencies in Software Design Models. (bibtex)
by Alexander Egyed
Abstract:
Software models typically contain many inconsistencies and consistency checkers help engineers find them. Even if engineers are willing to tolerate inconsistencies, they are better off knowing about their existence to avoid follow-on errors and unnecessary rework. However, current approaches do not detect or track inconsistencies fast enough. This paper presents an automated approach for detecting and tracking inconsistencies in real time (while the model changes). Engineers only need to define consistency rules in any language and our approach automatically identifies how model changes affect these consistency rules. It does this by observing the behavior of consistency rules to understand how they affect the model. The approach is quick, correct, scalable, fully automated, and easy to use as it does not require any special skills from the engineers using it. We evaluated the approach on 34 models with model sizes of up to 162,237 model elements and 24 types of consistency rules. Our empirical evaluation shows that our approach requires only 1.4 ms to reevaluate the consistency of the model after a change (on average); its performance is not noticeably affected by the model size and common consistency rules but only by the number of consistency rules, at the expense of a quite acceptable, linearly increasing memory consumption.
Reference:
Alexander Egyed: Automatically Detecting and Tracking Inconsistencies in Software Design Models., in IEEE Transactions on Software Engineering, volume 37, 2011.
Bibtex Entry:
@Article{dblp:journals/tse/Egyed11,
  author   = {Alexander Egyed},
  title    = {Automatically Detecting and Tracking Inconsistencies in Software Design Models.},
  journal  = {IEEE Transactions on Software Engineering},
  year     = {2011},
  volume   = {37},
  number   = {2},
  pages    = {188-204},
  abstract = {Software models typically contain many inconsistencies and consistency
	checkers help engineers find them. Even if engineers are willing
	to tolerate inconsistencies, they are better off knowing about their
	existence to avoid follow-on errors and unnecessary rework. However,
	current approaches do not detect or track inconsistencies fast enough.
	This paper presents an automated approach for detecting and tracking
	inconsistencies in real time (while the model changes). Engineers
	only need to define consistency rules in any language and our
	approach automatically identifies how model changes affect these
	consistency rules. It does this by observing the behavior of consistency
	rules to understand how they affect the model. The approach is quick,
	correct, scalable, fully automated, and easy to use as it does not
	require any special skills from the engineers using it. We evaluated
	the approach on 34 models with model sizes of up to 162,237 model
	elements and 24 types of consistency rules. Our empirical evaluation
	shows that our approach requires only 1.4 ms to reevaluate the consistency
	of the model after a change (on average); its performance is not
	noticeably affected by the model size and common consistency rules
	but only by the number of consistency rules, at the expense of a
	quite acceptable, linearly increasing memory consumption.},
  file     = {:Journals\\TSE 2011 - Automatically Detecting and Tracking Inconsistencies in Software Design Models\\Automatically Detecting and Tracking Inconsistencies in Software Design Models-preprint.pdf:PDF},
  keywords = {FWF P21321},
  url      = {http://doi.ieeecomputersociety.org/10.1109/TSE.2010.38},
}
Powered by bibtexbrowser