2011 IEEE 19th International Requirements Engineering Conference (2011)
Aug. 29, 2011 to Sept. 2, 2011
N. A. Ernst , Dept. of Comput. Sci., Univ. of Toronto, Toronto, ON, Canada
A. Borgida , Dept. of Comput. Sci., Rutgers Univ., Piscataway, NJ, USA
I. Jureta , FNRS & Inf. Manage., Univ. of Namur, Namur, Belgium
This paper investigates aspects of the problem of software evolution resulting from top-level requirements change. In particular, while most research on design for software focuses on finding some correct solution, this ignores that such a solution is often only correct in a particular, and often short-lived, context. Using a logic-based goal-oriented requirements modeling language, the paper poses the problem of finding desirable solutions as the requirements change. Among other possible criteria of desirability, we consider minimizing the effort required to implement the new solution, which involves reusing parts of the old solution. In general, the solution of requirements problems is viewed as an exploration using a "requirements engineering knowledge base" (REKB), whose specification is formalized. The paper reports on experience implementing the REKB on top of a so-called "reason-maintenance system", and provides evidence that incremental solution finding is indeed more efficient.
incremental solution finding, software evolution, logic-based goal-oriented requirements modeling language, requirements engineering knowledge base, REKB, reason-maintenance system
I. Jureta, A. Borgida and N. A. Ernst, "Finding incremental solutions for evolving requirements," 2011 IEEE 19th International Requirements Engineering Conference(RE), Trento, 2011, pp. 15-24.