Ontology-Based Variability Modeling for Self-Adaptive Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing self-adaptive software systems using role-based architectures lack guidelines for designing adaptation processes, making it difficult to determine the order and method of adaptation, and struggle to consider a large number of variabilities in the adaptation process.
Innovation Solution
A variability modeling method that employs ontology-based feature models and the strategic rationale (SR) model of the i*framework to define behavior and component features related to roles, continuously monitor the system and environment, and reconfigure the system by determining suitable variable points for adaptation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a role-based architecture is used to provide flexibility in system configuration, then the system can be loosely coupled and behavior can be changed under execution, but there is no guideline on how to design the adaptation process and through which order and process the system is to perform adaptation
Solution Approach 1:
The adaptation process is segmented into distinct phases: monitoring phase (detecting context changes), decision phase (determining whether adaptation is needed), and reconfiguration phase (performing the actual adaptation). This segmentation provides a structured guideline for designing adaptation processes while maintaining system flexibility.
Solution Approach 2:
The system performs preliminary actions by continuously monitoring context changes and preparing adaptation decisions before actual reconfiguration occurs. The monitoring and decision-making processes are executed in advance to determine the appropriate adaptation actions, ensuring systematic and controlled adaptation.
2Reliability
If the system continuously monitors the target system and environment to detect context changes, then the system can identify when adaptation is required, but the system complexity and resource consumption increase
Solution Approach 1:
The monitoring mechanism is designed to serve multiple functions: detecting context changes, triggering adaptation decisions, and providing information for reconfiguration. This multi-functional approach reduces the need for separate dedicated monitoring systems, thereby reducing overall system complexity while maintaining reliable detection capabilities.
3Adaptability or versatility
If the system performs reconfiguration by determining variable points suitable for context changes, then the system can adapt to changing environments, but the difficulty of designing and managing variability increases
Solution Approach 1:
Variability is segmented into discrete variable points that are explicitly defined in the feature model. Each variable point represents a specific aspect of the system that can be adapted (such as behavior features or component features). This segmentation makes variability management more systematic and less complex by breaking down the overall variability into manageable, identifiable points.
Solution Approach 2:
The feature model serves as an intermediary between the system architecture and the variability requirements. It provides a structured representation of behavior features, component features, and their relationships, making it easier to manage and determine appropriate variable points for adaptation without directly dealing with the complexity of the underlying system architecture.
Data Source
AI summary
In a variability modeling method implemented in a computer system to implement a self-adaptive system, the variability modeling method includes building ontology in which a target system to be modeled is defined through requirement analysis of the target system, deciding whether adaptation is required by continuously monitoring the target system and a change in environment, and when it is decided that the adaptation is required, performing reconfiguration of the target system by determining the variable point suitable for a change in context.


