Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSN › Conference contribution/Paper › peer-review
Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSN › Conference contribution/Paper › peer-review
}
TY - GEN
T1 - Requirements reflection: requirements as runtime entities
AU - Bencomo, Nelly
AU - Whittle, Jon
AU - Sawyer, Peter
AU - Finkelstein, Anthony
AU - Letier, Emmanuel
PY - 2010/5
Y1 - 2010/5
N2 - Computational reflection is a well-established technique that gives a program the ability to dynamically observe and possibly modify its behavior. To date, however, reflection is mainly applied either to the software architecture or its implementation. We know of no approach that fully supports requirements reflection– that is, making requirements available as runtime objects. Although there is a body of literature on requirements monitoring, such work typically generates runtime artifacts from requirements and so the requirements themselves are not directly accessible at runtime. In this paper, we define the notion of requirements reflection and set out a research agenda. Requirements reflection is important because software systems of the future will be self-managing and will need to adapt continuously to changing environmental conditions. We argue that requirements reflection can support such self-adaptive systems by making requirements first-class runtime entities, thus endowing software systems with the ability to reason about, understand, explain and modify requirements at runtime.
AB - Computational reflection is a well-established technique that gives a program the ability to dynamically observe and possibly modify its behavior. To date, however, reflection is mainly applied either to the software architecture or its implementation. We know of no approach that fully supports requirements reflection– that is, making requirements available as runtime objects. Although there is a body of literature on requirements monitoring, such work typically generates runtime artifacts from requirements and so the requirements themselves are not directly accessible at runtime. In this paper, we define the notion of requirements reflection and set out a research agenda. Requirements reflection is important because software systems of the future will be self-managing and will need to adapt continuously to changing environmental conditions. We argue that requirements reflection can support such self-adaptive systems by making requirements first-class runtime entities, thus endowing software systems with the ability to reason about, understand, explain and modify requirements at runtime.
U2 - 10.1145/1810295.1810329
DO - 10.1145/1810295.1810329
M3 - Conference contribution/Paper
SN - 978-1-60558-719-6
SP - 199
EP - 202
BT - ICSE '10 Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
PB - ACM
CY - New York
T2 - International Conference on Software Engineering (ICSE 2010)
Y2 - 2 May 2010 through 8 May 2010
ER -