Requirements-aware systems: a research agenda for RE for self-adaptive systems

Peter Sawyer, Nelly Bencomo, Jon Whittle, Emmanuel Letier, Anthony Finkelstein

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Requirements are sensitive to the context in which the system-to-be must operate. Where such context is well-understood and is static or evolves slowly, existing RE techniques can be made to work well. Increasingly, however, development projects are being challenged to build systems to operate in contexts that are volatile over short periods in ways that are imperfectly understood. Such systems need to be able to adapt to new environmental contexts dynamically, but the contextual uncertainty that demands this self-adaptive ability makes it hard to formulate, validate and manage their requirements. Different contexts may demand different requirements trade-offs. Unanticipated contexts may even lead to entirely new requirements. To help counter this uncertainty, we argue that requirements for self-adaptive systems should be run-time entities that can be reasoned over in order to understand the extent to which they are being satisfied and to support adaptation decisions that can take advantage of the systems' self-adaptive machinery. We take our inspiration from the fact that explicit, abstract representations of software architectures used to be considered design-time-only entities but computational reflection showed that architectural concerns could be represented at run-time too, helping systems to dynamically reconfigure themselves according to changing context. We propose to use analogous mechanisms to achieve requirements reflection. In this paper we discuss the ideas that support requirements reflection as a means to articulate some of the outstanding research challenges.
Original languageEnglish
Title of host publicationProceedings of the 18th IEEE International Requirements Engineering Conference (RE '10)
PublisherIEEE
Pages95-103
Number of pages9
ISBN (Print)978-1-4244-8022-7
DOIs
Publication statusPublished - 2010
Event18th IEEE International Requirements Engineering Conference - Sydney, Australia
Duration: 27 Sep 20101 Oct 2010

Publication series

NameInternational requirements engineering conference: proceedings
PublisherIEEE
ISSN (Print)1090-705X

Conference

Conference18th IEEE International Requirements Engineering Conference
CountryAustralia
CitySydney
Period27/09/101/10/10

Fingerprint

Adaptive systems
Software architecture
Machinery
Uncertainty

Bibliographical note

© 2010 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.

Keywords

  • requirements
  • reflection
  • run-time
  • self-adaptive systems

Cite this

Sawyer, P., Bencomo, N., Whittle, J., Letier, E., & Finkelstein, A. (2010). Requirements-aware systems: a research agenda for RE for self-adaptive systems. In Proceedings of the 18th IEEE International Requirements Engineering Conference (RE '10) (pp. 95-103). (International requirements engineering conference: proceedings). IEEE. https://doi.org/10.1109/RE.2010.21
Sawyer, Peter ; Bencomo, Nelly ; Whittle, Jon ; Letier, Emmanuel ; Finkelstein, Anthony. / Requirements-aware systems : a research agenda for RE for self-adaptive systems. Proceedings of the 18th IEEE International Requirements Engineering Conference (RE '10). IEEE, 2010. pp. 95-103 (International requirements engineering conference: proceedings).
@inproceedings{913b56e6bf634ef7bfd70964434fa723,
title = "Requirements-aware systems: a research agenda for RE for self-adaptive systems",
abstract = "Requirements are sensitive to the context in which the system-to-be must operate. Where such context is well-understood and is static or evolves slowly, existing RE techniques can be made to work well. Increasingly, however, development projects are being challenged to build systems to operate in contexts that are volatile over short periods in ways that are imperfectly understood. Such systems need to be able to adapt to new environmental contexts dynamically, but the contextual uncertainty that demands this self-adaptive ability makes it hard to formulate, validate and manage their requirements. Different contexts may demand different requirements trade-offs. Unanticipated contexts may even lead to entirely new requirements. To help counter this uncertainty, we argue that requirements for self-adaptive systems should be run-time entities that can be reasoned over in order to understand the extent to which they are being satisfied and to support adaptation decisions that can take advantage of the systems' self-adaptive machinery. We take our inspiration from the fact that explicit, abstract representations of software architectures used to be considered design-time-only entities but computational reflection showed that architectural concerns could be represented at run-time too, helping systems to dynamically reconfigure themselves according to changing context. We propose to use analogous mechanisms to achieve requirements reflection. In this paper we discuss the ideas that support requirements reflection as a means to articulate some of the outstanding research challenges.",
keywords = "requirements, reflection, run-time, self-adaptive systems",
author = "Peter Sawyer and Nelly Bencomo and Jon Whittle and Emmanuel Letier and Anthony Finkelstein",
note = "{\circledC} 2010 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.",
year = "2010",
doi = "10.1109/RE.2010.21",
language = "English",
isbn = "978-1-4244-8022-7",
series = "International requirements engineering conference: proceedings",
publisher = "IEEE",
pages = "95--103",
booktitle = "Proceedings of the 18th IEEE International Requirements Engineering Conference (RE '10)",
address = "United States",

}

Sawyer, P, Bencomo, N, Whittle, J, Letier, E & Finkelstein, A 2010, Requirements-aware systems: a research agenda for RE for self-adaptive systems. in Proceedings of the 18th IEEE International Requirements Engineering Conference (RE '10). International requirements engineering conference: proceedings, IEEE, pp. 95-103, 18th IEEE International Requirements Engineering Conference, Sydney, Australia, 27/09/10. https://doi.org/10.1109/RE.2010.21

Requirements-aware systems : a research agenda for RE for self-adaptive systems. / Sawyer, Peter; Bencomo, Nelly; Whittle, Jon; Letier, Emmanuel; Finkelstein, Anthony.

Proceedings of the 18th IEEE International Requirements Engineering Conference (RE '10). IEEE, 2010. p. 95-103 (International requirements engineering conference: proceedings).

Research output: Chapter in Book/Report/Conference proceedingConference contribution

TY - GEN

T1 - Requirements-aware systems

T2 - a research agenda for RE for self-adaptive systems

AU - Sawyer, Peter

AU - Bencomo, Nelly

AU - Whittle, Jon

AU - Letier, Emmanuel

AU - Finkelstein, Anthony

N1 - © 2010 IEEE. Personal use of this material is permitted. Permission from IEEE must be obtained for all other uses, in any current or future media, including reprinting/republishing this material for advertising or promotional purposes, creating new collective works, for resale or redistribution to servers or lists, or reuse of any copyrighted component of this work in other works.

PY - 2010

Y1 - 2010

N2 - Requirements are sensitive to the context in which the system-to-be must operate. Where such context is well-understood and is static or evolves slowly, existing RE techniques can be made to work well. Increasingly, however, development projects are being challenged to build systems to operate in contexts that are volatile over short periods in ways that are imperfectly understood. Such systems need to be able to adapt to new environmental contexts dynamically, but the contextual uncertainty that demands this self-adaptive ability makes it hard to formulate, validate and manage their requirements. Different contexts may demand different requirements trade-offs. Unanticipated contexts may even lead to entirely new requirements. To help counter this uncertainty, we argue that requirements for self-adaptive systems should be run-time entities that can be reasoned over in order to understand the extent to which they are being satisfied and to support adaptation decisions that can take advantage of the systems' self-adaptive machinery. We take our inspiration from the fact that explicit, abstract representations of software architectures used to be considered design-time-only entities but computational reflection showed that architectural concerns could be represented at run-time too, helping systems to dynamically reconfigure themselves according to changing context. We propose to use analogous mechanisms to achieve requirements reflection. In this paper we discuss the ideas that support requirements reflection as a means to articulate some of the outstanding research challenges.

AB - Requirements are sensitive to the context in which the system-to-be must operate. Where such context is well-understood and is static or evolves slowly, existing RE techniques can be made to work well. Increasingly, however, development projects are being challenged to build systems to operate in contexts that are volatile over short periods in ways that are imperfectly understood. Such systems need to be able to adapt to new environmental contexts dynamically, but the contextual uncertainty that demands this self-adaptive ability makes it hard to formulate, validate and manage their requirements. Different contexts may demand different requirements trade-offs. Unanticipated contexts may even lead to entirely new requirements. To help counter this uncertainty, we argue that requirements for self-adaptive systems should be run-time entities that can be reasoned over in order to understand the extent to which they are being satisfied and to support adaptation decisions that can take advantage of the systems' self-adaptive machinery. We take our inspiration from the fact that explicit, abstract representations of software architectures used to be considered design-time-only entities but computational reflection showed that architectural concerns could be represented at run-time too, helping systems to dynamically reconfigure themselves according to changing context. We propose to use analogous mechanisms to achieve requirements reflection. In this paper we discuss the ideas that support requirements reflection as a means to articulate some of the outstanding research challenges.

KW - requirements

KW - reflection

KW - run-time

KW - self-adaptive systems

UR - http://www.scopus.com/inward/record.url?scp=78650371992&partnerID=8YFLogxK

U2 - 10.1109/RE.2010.21

DO - 10.1109/RE.2010.21

M3 - Conference contribution

AN - SCOPUS:78650371992

SN - 978-1-4244-8022-7

T3 - International requirements engineering conference: proceedings

SP - 95

EP - 103

BT - Proceedings of the 18th IEEE International Requirements Engineering Conference (RE '10)

PB - IEEE

ER -

Sawyer P, Bencomo N, Whittle J, Letier E, Finkelstein A. Requirements-aware systems: a research agenda for RE for self-adaptive systems. In Proceedings of the 18th IEEE International Requirements Engineering Conference (RE '10). IEEE. 2010. p. 95-103. (International requirements engineering conference: proceedings). https://doi.org/10.1109/RE.2010.21