Conference Paper

Requirements-Aware Systems: A Research Agenda for RE for Self-adaptive Systems.

Comput. Dept., Lancaster Univ., Lancaster, UK
DOI: 10.1109/RE.2010.21 Conference: RE 2010, 18th IEEE International Requirements Engineering Conference, Sydney, New South Wales, Australia, September 27 - October 1, 2010
Source: DBLP

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.

  • [Show abstract] [Hide abstract]
    ABSTRACT: Users' feedback is a main source of knowledge on how users perceive the role of software in meeting their requirements. Collectively, such feedback helps shaping software autonomous and semi-autonomous adaptation decisions of what is called Social Adaptation. It also helps developers to identify loci in the system where an evolution should be introduced in the next release. Despite this role of users' feedback, there is a lack of systematic engineering approaches on how to design its acquisition mechanisms. In this paper, we observe that the acquisition of feedback should be itself adaptive to the context of use. We conduct an empirical study following a mixed-method sequential exploratory approach to explore the main drivers of such adaptation and understand users' attitude when being asked to provide feedback. Our findings are meant to enrich the knowledge base for developers and researchers in users-centric, or crowd-centric, adaptation. It also highlights areas of study for a future research in the area.
    2014 IEEE Eighth International Conference on Research Challenges in Information Science (RCIS); 05/2014
  • [Show abstract] [Hide abstract]
    ABSTRACT: Information systems today are expected to function in an increasingly dynamic world with many uncertainties. System development is seldom a linear progression from well-defined, fully-specified requirements to finished products that fully meet the initial requirements. More likely, there are ongoing cycles of exploration, design and implementation, taking into account evolving needs and capabilities, as well as lessons from earlier cycles. Existing requirements modeling and analysis techniques largely presume application settings that are stable and predictable. Can these techniques be used to support analysis in the new dynamic environment? Scenarios from the recent surge in demand for business intelligence capabilities in enterprises provide an interesting setting for examining organizational and IT responses to the challenges of high uncertainty and rapid change. In this paper, we apply existing requirements modeling techniques to these scenarios in order to uncover their inadequacies, and to identify research challenges.
    2013 IEEE Seventh International Conference on Research Challenges in Information Science (RCIS); 05/2013
  • [Show abstract] [Hide abstract]
    ABSTRACT: Dynamically adaptive systems (DAS) must cope with system and environmental conditions that may not have been fully understood or anticipated during development. RELAX is a fuzzy logic-based specification language for identifying and assessing sources of environmental uncertainty, thereby making DAS requirements more tolerant of unanticipated conditions. This paper presents AutoRELAX, an approach that automatically generates RELAXed goal models to address environmental uncertainty. Specifically, AutoRELAX identifies goals to RELAX, which RELAX operators to apply, and the shape of the fuzzy logic function that establishes the goal satisfaction criteria. AutoRELAX generates different solutions by making tradeoffs between minimizing the number of RELAXed goals and maximizing delivered functionality by reducing the number of adaptations triggered by minor and adverse environmental conditions. In a recent extension, AutoRELAX uses a stepwise adaptation of weights to balance these two competing concerns and thereby further improve the utility of AutoRELAX. We apply it to two industry-based applications involving network management and a robotic controller, respectively.
    Empirical Software Engineering 10/2014; 19(5). DOI:10.1007/s10664-014-9305-0 · 1.64 Impact Factor

Full-text (2 Sources)

Available from
Jun 2, 2014