We present an approach to reasoning on complex adaptive software architectures able to dynamically design and change features of the model according to changed behavioral properties or context variables and parameters. The approach consists of a metamodel composed by a Knowledge Graph(KG) and case-based reasoning to find a path connecting state, context and action on the KG. The metamodel allows to derive a runtime architectural model of adaptive application from high level goals and operational requirements, and enable runtime composition of the layout of a decentralized and distributed complex application. To validate the metamodel we also propose an instantiation in two real scenarios in order to exploit both requirements and architectural model.
['Marina Mongiello', 'Tommaso Di Noia', 'Francesco Nocera', 'Eugenio Di Sciascio']
Case-based reasoning and knowledge-graph based metamodel for runtime adaptive architectural modeling