Results 1 - 10
of
32
Relax: Incorporating uncertainty into the specification of self-adaptive systems
- In 17th IEEE International Requirements Engineering Conference RE 2009
, 2009
"... Self-adaptive systems have the capability to autonomously modify their behaviour at run-time in response to changes in their environment. Self-adaptation is particularly necessary for applications that must run continuously, even under adverse conditions and changing requirements; sample domains inc ..."
Abstract
-
Cited by 38 (7 self)
- Add to MetaCart
(Show Context)
Self-adaptive systems have the capability to autonomously modify their behaviour at run-time in response to changes in their environment. Self-adaptation is particularly necessary for applications that must run continuously, even under adverse conditions and changing requirements; sample domains include automotive systems, telecommunications, and environmental monitoring systems. While a few techniques have been developed to support the monitoring and analysis of requirements for adaptive systems, limited attention has been paid to the actual creation and specification of requirements of self-adaptive systems. As a result, self-adaptivity is often constructed in an ad-hoc manner. In this paper, we argue that a more rigorous treatment of requirements explicitly relating to self-adaptivity is needed and that, in particular, requirements languages for self-adaptive systems should include explicit constructs for specifying and dealing with the uncertainty inherent in self-adaptive systems. We present RELAX, a new requirements language for selfadaptive systems and illustrate it using examples from the smart home domain. 1.
Live goals for adaptive service compositions
- in Software Eng. for Adaptive and Self-Managing Systems
, 2010
"... Service compositions represent an important family of self-adaptive systems. Though many approaches for monitor-ing and adapting service compositions have already been proposed, a clear connection with the motivations for us-ing such techniques is still missing. To this aim we address self-adaptatio ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
(Show Context)
Service compositions represent an important family of self-adaptive systems. Though many approaches for monitor-ing and adapting service compositions have already been proposed, a clear connection with the motivations for us-ing such techniques is still missing. To this aim we address self-adaptation from requirements elicitation down to exe-cution. In this paper, we propose to enrich existing goal models with adaptive goals, responsible for the actual evo-lution/adaptation of the goal model at runtime. We also translate the goal model with both conventional and adap-tive goals, into the actual functionality provided by the sys-tem and the adaptation policies needed to make it self-adapt.
Location-based Software Modeling and Analysis: Tropos-based Approach
"... Abstract. The continuous growth of interest in mobile applications makes the concept of location essential to design and develop software systems. Location-based software is supposed to be able to monitor the surrounding location and choose accordingly the most appropriate behavior. In this paper, w ..."
Abstract
-
Cited by 11 (9 self)
- Add to MetaCart
(Show Context)
Abstract. The continuous growth of interest in mobile applications makes the concept of location essential to design and develop software systems. Location-based software is supposed to be able to monitor the surrounding location and choose accordingly the most appropriate behavior. In this paper, we propose a novel conceptual framework to model and analyze location-based software. We mainly focus on the social facets of locations adopting concepts such as actor, resource, and location-based behavior. Our approach is based on Tropos methodology and allows the analyst to elicit and model software requirements according to the different locations where the software will operate. We propose an extension of Tropos modeling and adapt its process to suit well with the development of location-based software. The proposed framework also includes automated analysis techniques to reason about the relation between location and location-based software. 1
Relaxing Claims: Coping With Uncertainty While Evaluating Assumptions at Run Time
"... Abstract. Self-adaptation enables software systems to respond to changing environmental contexts that may not be fully understood at design time. Designing a dynamically adaptive system (DAS) to cope with this uncertainty is challenging, as it is impractical during requirements analysis and design t ..."
Abstract
-
Cited by 9 (6 self)
- Add to MetaCart
(Show Context)
Abstract. Self-adaptation enables software systems to respond to changing environmental contexts that may not be fully understood at design time. Designing a dynamically adaptive system (DAS) to cope with this uncertainty is challenging, as it is impractical during requirements analysis and design time to anticipate every environmental condition that the DAS may encounter. Previously, the RELAX language was proposed to make requirements more tolerant to environmental uncertainty, and Claims were applied as markers of uncertainty that document how design assumptions affect goals. This paper integrates these two techniques in order to assess the validity of Claims at run time while tolerating minor and unanticipated environmental conditions that can trigger adaptations. We apply the proposed approach to the dynamic reconfiguration of a remote data mirroring network that must diffuse data while minimizing costs and exposure to data loss. Results show RELAXing Claims enables a DAS to reduce adaptation costs. 1
Requirements evolution: from assumptions to reality
- In the 16th International Conference on Exploring Modeling Methods in Systems Analysis and Design (EMMSAD 11
, 2011
"... Abstract. Requirements evolution is a main driver for systems evolution. Traditionally, requirements evolution is associated to changes in the users ’ needs and environments. In this paper, we explore another cause for requirements evolution: assumptions. Requirements engineers often make assumption ..."
Abstract
-
Cited by 7 (4 self)
- Add to MetaCart
(Show Context)
Abstract. Requirements evolution is a main driver for systems evolution. Traditionally, requirements evolution is associated to changes in the users ’ needs and environments. In this paper, we explore another cause for requirements evolution: assumptions. Requirements engineers often make assumptions stating, for example, that satisfying certain sub-requirements and/or correctly executing certain system functionalities would lead to reach a certain requirement. However, assumptions might be, or eventually become, invalid. We outline an approach to monitor, at runtime, the assumptions in a requirements model and to evolve the model to reflect the validity level of such assumptions. We introduce two types of requirements evolution: autonomic (which evolves the priorities of system alternatives based on their success/failure in meeting requirements) and designersupported (which detects loci in the requirements model containing invalid assumptions and recommends designers to take evolutionary actions).
oro.open.ac.uk SOCIAL ADAPTATION When Software Gives Users a Voice
"... For guidance on citations see FAQs. ..."
(Show Context)
Goal-Based Self-Contextualization
"... Abstract. System self-contextualizability is the system ability to autonomously adapt its behavior to the uncontrollable relevant context to keep its objectives satisfied. Self-contextualizable system must have alternative behaviors each fitting to a set of contexts. We propose to start considering ..."
Abstract
-
Cited by 5 (4 self)
- Add to MetaCart
(Show Context)
Abstract. System self-contextualizability is the system ability to autonomously adapt its behavior to the uncontrollable relevant context to keep its objectives satisfied. Self-contextualizable system must have alternative behaviors each fitting to a set of contexts. We propose to start considering context at the level of requirements engineering, adopting Tropos goal model to express requirements and complementing it with our proposed context analysis. We define variation points on goal model where a context-based decision might need to be taken, and propose constructs to analyze context. While goal analysis provides constructs to hierarchically analyze goals and discover alternative sets of tasks to be executed to satisfy a goal, our proposed context analysis provides constructs to hierarchically analyze context and discover alternative sets of facts to be monitored to verify a context. 1
oro.open.ac.uk Specifying and Detecting Meaningful Changes in Programs
"... and other research outputs Specifying and detecting meaningful changes in programs ..."
Abstract
-
Cited by 5 (2 self)
- Add to MetaCart
(Show Context)
and other research outputs Specifying and detecting meaningful changes in programs
Adaptation goals for adaptive service-oriented architectures
- In Relating Software Requirements and Architectures
, 2011
"... Abstract Service-oriented architecture supports the definition and execution of complex business processes in a flexible and loosely-coupled way. A service-based application assembles the functionality provided by disparate, remote services in a seamless way. Since the architectural style prescribes ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
(Show Context)
Abstract Service-oriented architecture supports the definition and execution of complex business processes in a flexible and loosely-coupled way. A service-based application assembles the functionality provided by disparate, remote services in a seamless way. Since the architectural style prescribes that all features be pro-vided remotely, these applications adapt to changes and new business needs by se-lecting new partner services to interact with. Despite the success of the architec-tural style, a clear link between the actual applications —also referred to as service compositions — and the requirements they are supposed to meet is still missing. The embedded dynamism also imposes that requirements properly state how an appli-cation can evolve and adapt at runtime. The solution proposed in this chapter aims to solve these problems by extending classical goal models to provide an innovative means to represent both conventional (functional and non-functional) requirements and adaptation policies. To increase the support to dynamism, the proposal distin-guishes between crisp goals, of which satisfiability is boolean, and fuzzy goals, which can be satisfied at different degrees; adaptation goals are used to render adap-tation policies. The information provided in the goal model is then used to automat-ically devise the application’s architecture (i.e., the composition) and its adaptation capabilities. The goal model becomes a live, runtime entity whose evolution helps govern the actual adaptation of the application. All key elements are exemplified through a service-based news provider.
Exploiting Requirements Variability for Software Customization and Adaptation
, 2011
"... The complexity of software systems is exploding, along with their use and application in new domains. Managing this complexity has become a focal point for research in Software Engineering. One direction for research in this area is developing techniques for designing adaptive software systems that ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
The complexity of software systems is exploding, along with their use and application in new domains. Managing this complexity has become a focal point for research in Software Engineering. One direction for research in this area is developing techniques for designing adaptive software systems that self-optimize, self-repair, self-configure and self-protect, thereby reducing maintenance costs, while improving quality of service. This thesis presents a requirements-driven approach for developing adaptive and customizable systems. Requirements goal models are used as a basis for capturing problem variability, leading to software designs that support a space of possible behaviours – all delivering the same functionality. This space can be exploited at system deployment time to customize the system on the basis of user preferences. It can also be used at runtime to support system adaptation if the current behaviour of the running system is deemed to be unsatisfactory. The contributions of the thesis include a framework for systematically generating designs from high-variability goal models. Three complementary design views are generated: configurational view (feature model), behavioural view (statecharts) and an architectural view (parameterized