A Method for Ontology-based Architecture Reconstruction of Computing Platforms
This work addresses the challenge of systematically characterizing complex computing systems for safety, security, and maintenance, particularly in embedded systems and IoT, though it appears incremental by extending existing software engineering practices to hardware-software boundaries.
The authors tackled the problem of reconstructing the architecture of computing platforms that integrate hardware and software, proposing a generalized method using an ontology-based approach with their developed PLATOnt ontology, which was evaluated as more effective using the ONTOQA framework and applied to ARM-based Trusted Execution Environment and Raspberry Pi platforms.
Today's ubiquitous computing ecosystem involves various kinds of hardware and software technologies for different computing environments. As the result, computing systems can be seen as integrated system of hardware and software systems. Realizing such complex systems is crucial for providing safety, security, and maintenance. This is while the characterization of computing systems is not possible without a systematic procedure for enumerating different components and their structural/behavioral relationships. Architecture Reconstruction (AR) is a practice defined in the domain of software engineering for the realization of a specific software component. However, it is not applicable to a whole system (including HW/SW). Inspired by Symphony AR framework, we have proposed a generalized method to reconstruct the architecture of a computing platform at HW/SW boundary. In order to cover diverge set of existing HW/SW technologies, our method uses an ontology-based approach to handle these complexities. Due to the lack of a comprehensive accurate ontology in the literature, we have developed our own ontology -- called PLATOnt -- which is shown to be more effective by ONTOQA evaluation framework. We have used our AR method in two use case scenarios to reconstruct the architecture of ARM-based Trusted execution environment and a Raspberry-pi platform have extensive application in embedded systems and IoT devices.