Fixing Inconsistencies in UML Design Models

Changes are inevitable during software development and so are their unintentional side effects. The focus of this paper is on UML design models, where unintentional side effects lead to inconsistencies. We demonstrate that a tool can assist the designer in discovering unintentional side effects, locating choices for fixing inconsistencies, and then in changing the design model. Our techniques are "on-line, " applied as the designer works, and non-intrusive, without overwhelming the designer. This is a significant improvement over the state-of-the-art. Our tool is fully integrated with the design tool IBM Rational Rosetrade. It was empirically evaluated on 48 case studies.

[1]  Robert S. Arnold,et al.  Software Change Impact Analysis , 1996 .

[2]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[3]  Bashar Nuseibeh,et al.  Managing inconsistent specifications: reasoning, analysis, and action , 1998, TSEM.

[4]  Václav Rajlich,et al.  Incremental change in object-oriented programming , 2004, IEEE Software.

[5]  Gregg Rothermel,et al.  An empirical comparison of dynamic impact analysis algorithms , 2004, Proceedings. 26th International Conference on Software Engineering.

[6]  Alexander Egyed,et al.  Integrating COTS Software into Systems through Instrumentation and Reasoning , 2006, Automated Software Engineering.

[7]  Robert Balzer Tolerating inconsistency (software development) , 1991, [1991 Proceedings] 13th International Conference on Software Engineering.

[8]  J. J. Whelan,et al.  5th international conference on software engineering , 1981, SOEN.

[9]  Alexander Egyed,et al.  UML/Analyzer: A Tool for the Instant Consistency Checking of UML Models , 2007, 29th International Conference on Software Engineering (ICSE'07).

[10]  Barry W. Boehm,et al.  A spiral model of software development and enhancement , 1986, Computer.

[11]  Wolfgang Emmerich,et al.  Consistency management with repair actions , 2003, 25th International Conference on Software Engineering, 2003. Proceedings..

[12]  Alexander Egyed,et al.  Instant consistency checking for the UML , 2006, ICSE.

[13]  Tom Mens,et al.  Using Description Logic to Maintain Consistency between UML Models , 2003, UML.

[14]  Robert Balzer,et al.  Tolerating Inconsistency , 1991, [1989] Proceedings of the 5th International Software Process Workshop.

[15]  Lionel C. Briand,et al.  Impact analysis and change management of UML models , 2003, International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings..

[16]  Licia Capra,et al.  xlinkit: a consistency checking and smart link generation service , 2002, TOIT.