검색 상세

Reasoning Non-Functional Requirements Trade-off in Self-Adaptive Systems Using Multi-Entity Bayesian Network Modeling

초록/요약

(Context and Motivation) Non-Functional Requirements (NFR) play a crucial role during the software development process. Currently, Non-Functional Requirements considered to be more important than Functional Requirements and can determine the success of the software system. Non-Functional Requirements can be very complicated to understand due to their subjective manner and especially their conflicting nature. Many approaches and techniques have been introduced to manage the conflicts between multiple Non-functional Requirements and to analyze the trade-off in costs and benefits between the alternative solutions that satisfy them. (Problem) Self-adaptive systems (SAS) systems are operating in dynamically changing environment. Furthermore, the configuration of the SAS systems is dynamically changing according to the current systems context. This means that the configuration that manages the trade-off between Non-Functional Requirements (NFRs) in this context may not be suitable in another. This is because the NFRs satisfaction is based on a per-context basis. Therefore, one context configuration to satisfy one NFR may produce a conflict with another NFR. Furthermore, current approaches managing Non-Functional Requirements trade-off stops managing them during the system runtime. (Approach and Objective) We investigated the trade-offs between multiple Non-Functional Requirements in Self-Adaptive Systems. We fragmentized the Non-Functional Requirements and its alternative solutions in form of Multi-entity Bayesian network fragments. As a result, when changes occur, our system creates a situation specific Bayesian network to measure the impact of the system’s conditions and environmental changes on the Non-Functional Requirements satisfaction. Furthermore, it dynamically decides which alternative solution is suitable for the current situation.

more

목차

ACKNOWLEDGEMENTS i
ABSTRACT ii
TABLE OF CONTENTS iv
LIST OF FIGURES vi
LIST OF TABLES viii
CHAPTER 1. Introduction 1
1.1 Context 1
1.2 Problem and Motivation 1
1.3 Research objective and questions 3
1.4 Contribution 4
1.5 Scope 4
1.6 Thesis organization 5
CHAPTER 2. Background 6
2.1 Non-Functional Requirements 6
2.2 Goal Model 8
2.3 Multi-Entity Bayesian Networks 10
2.3.1 MEBN Main Elements 11
2.4 Self-Adaptive Systems 13
2.4.1 MAPE-K loop 13
2.4.2 MAPE-K loop in our approach 15
CHAPTER 3. Related Work 16
3.1 Multi-Entity Bayesian Networks 16
3.2 Bayesian Networks for Self-Adaptive Systems 16
3.3 Limitation of the Related Work 17
CHAPTER 4. Proposed Approach 18
4.1 Approach Overview 18
4.2 Approach Main Components 20
4.2.1 Goal Model. 20
4.2.2 System run-time Environment 20
4.2.3 MEBN MTheory 21
4.2.4 NFRs Satisfaction degree 21
4.2.5 The Chosen Solution 21
4.3 Mapping Goal model and System run-time to MEBN 21
4.4 Methodology 24
4.4.1 Define the goal model. 25
4.4.2 Define the system run-time monitored variables and assumption 25
4.4.3 Construct the MEBN Fragments 25
4.4.4 Querying the NFRs Satisfaction degree 26
4.4.5 Querying the Chosen Solution 26
CHAPTER 5. Case Study 27
5.1 Robot Vacuum Cleaner 27
5.1.1 Robot Vacuum Cleaner Scenario 27
5.1.2 Applying the methodology on the Robot Vacuum Cleaner 28
5.2 Remote Data Mirroring (RDM) application 36
5.2.1 RDM Scenario 36
5.2.2 Applying the methodology on the Robot Vacuum Cleaner 37
CHAPTER 6. Evaluation 46
6.1 Theoretical Evaluation of Proposed Methodology 46
6.1.1 Study Questions 46
6.1.2 Study Proposition 47
6.1.3 Unit of Analysis 48
6.1.4 Linking Data 49
6.2 Results 51
6.2.1 Robot Vacuum Cleaner Results 51
6.2.2 RDM Results 52
CHAPTER 7. Discussion 55
7.1 Applicability 55
7.2 Scalability 55
7.3 Usability 56
CHAPTER 8. Conclusion and Future Work 57
8.1 Summary of Contribution 57
8.2 Future Scope of Research 58
REFERENCES 59

more