A negotiation support system for defining utility functions for multi-stakeholder self-adaptive systems

For realistic self-adaptive systems, multiple quality attributes need to be considered and traded off against each other. These quality attributes are commonly encoded in a utility function , for instance, a weighted sum of relevant objectives. Utility functions are typically subject to a set of con...

Full description

Saved in:
Bibliographic Details
Published inRequirements engineering Vol. 28; no. 1; pp. 3 - 22
Main Authors Wohlrab, Rebekka, Garlan, David
Format Journal Article
LanguageEnglish
Published London Springer London 01.03.2023
Springer Nature B.V
Subjects
Online AccessGet full text
ISSN0947-3602
1432-010X
DOI10.1007/s00766-021-00368-y

Cover

More Information
Summary:For realistic self-adaptive systems, multiple quality attributes need to be considered and traded off against each other. These quality attributes are commonly encoded in a utility function , for instance, a weighted sum of relevant objectives. Utility functions are typically subject to a set of constraints, i.e., hard requirements that should not be violated by the system. The research agenda for requirements engineering for self-adaptive systems has raised the need for decision-making techniques that consider the trade-offs and priorities of multiple objectives. Human stakeholders need to be engaged in the decision-making process so that constraints and the relative importance of each objective can be correctly elicited. This paper presents a method that supports multiple stakeholders in eliciting constraints, prioritizing quality attributes, negotiating priorities, and giving input to define utility functions for self-adaptive systems. We developed tool support in the form of a blackboard system that aggregates information by different stakeholders, detects conflicts, proposes mechanisms to reach an agreement, and generates a utility function. We performed a think-aloud study with 14 participants to investigate negotiation processes and assess the approach’s understandability and user satisfaction. Our study sheds light on how humans reason about and how they negotiate around quality attributes. The mechanisms for conflict detection and resolution were perceived as very useful. Overall, our approach was found to make the process of utility function definition more understandable and transparent.
Bibliography:ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ISSN:0947-3602
1432-010X
DOI:10.1007/s00766-021-00368-y