Due to dynamic variability, identifying the specific conditions under which non-functional requirements (NFRs) are satisfied may be only possible at runtime. Therefore, it is necessary to consider the dynamic treatment of relevant information during the requirements specifications. The associated data can be gathered by monitoring the execution of the application and its underlying environment to support reasoning about how the current application configuration is fulfilling the established requirements. This paper presents a dynamic decision-making infrastructure to support both NFRs representation and monitoring, and to reason about the degree of satisfaction of NFRs during runtime. The infrastructure is composed of: (i) an extended feature model aligned with a domain-specific language for representing NFRs to be monitored at runtime; (ii) a monitoring infrastructure to continuously assess NFRs at runtime; and (iii) a exible decision-making process to select the best available configuration based on the satisfaction degree of the NRFs. The evaluation of the approach has shown that it is able to choose application configurations that well fit user NFRs based on runtime information. The evaluation also revealed that the proposed infrastructure provided consistent indicators regarding the best application configurations that fit user NFRs. Finally, a benefit of our approach is that it allows us to quantify the level of satisfaction with respect to NFRs specification.
|Title of host publication||Proceedings of the 30th annual ACM Symposium on Applied Computing, SAC '15|
|Place of Publication||New York, NY (US)|
|Number of pages||7|
|Publication status||Published - 13 Apr 2015|
|Event||30th annual ACM Symposium on Applied Computing - Salamanca, Spain|
Duration: 13 Apr 2015 → 17 Apr 2015
|Symposium||30th annual ACM Symposium on Applied Computing|
|Abbreviated title||SAC 2015|
|Period||13/04/15 → 17/04/15|
Bibliographical noteDefinitive Version of Record in the ACM Digital Library.
- non-functional requirements