Issue No. 05 - May (2006 vol. 32)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TSE.2006.48
Alexander Egyed , IEEE
The desirability of maintaining multiple stakeholders' interests during the software design process argues for leaving choices undecided as long as possible. Yet, any form of underspecification, either missing information or undecided choices, must be resolved before automated analysis tools can be used. This paper demonstrates how Constraint Satisfaction Problem Solution Techniques (CSTs) can be used to automatically reduce the space of choices for ambiguities by incorporating the local effects of constraints, ultimately with more global consequences. As constraints typical of those encountered during the software design process, we use UML consistency and well-formedness rules. It is somewhat surprising that CSTs are suitable for the software modeling domain since the constraints may relate many ambiguities during their evaluation, encountering a well-known problem with CSTs called the k-consistency problem. This paper demonstrates that our CST-based approach is computationally scalable and effective—as evidenced by empirical experiments based on dozens of industrial models.
UML, design choices, consistency checking, design alternatives, choice elimination.
David S. Wile, Alexander Egyed, "Support for Managing Design-Time Decisions", IEEE Transactions on Software Engineering, vol. 32, no. , pp. 299-314, May 2006, doi:10.1109/TSE.2006.48