Publicação
Ontology-driven metamodeling towards hypervisor design automation: semantically-enriched DSL infrastructure
| Resumo: | Software complexity is an unavoidable problem in the modern era of embedded systems. Working with multiple teams with heterogeneous backgrounds requires the definition of a common ground and considerable synchronization efforts. The differences among developers go beyond their level of expertise and include diverseness in domain specialization, stage of development and adopted standards. In addition to integration issues, there is a constant demand for intelligent software, capable of detecting human errors and automating system design without compromising the integrity and feasibility of the generated system. Providing a formal knowledge description language enables the automation of validation procedures. However, the key challenge consists in incorporating this language in an intelligent development infrastructure, capable of addressing the integration issues, and flexible enough to cope with the growing complexity of embedded systems’ projects. There is not a leading solution for every scenario. Current approaches include the development of ontology-querying execution engines, domain-specific languages, metamodel integration techniques, and frameworks that combine these technologies with existing general-purpose languages. Numerous approaches promote interoperability and preserve the separation of concerns by following a model-driven engineering methodology, creating several abstraction layers to address different development stages. However, some solutions only partially address the presented challenge, and the ones which cover most of it, usually lack some key characteristic, such as extendibility, flexibility, viewpoint integration or simplicity. This dissertation presents a semantically-enriched DSL infrastructure, capable of combining the knowledge of domain experts with implementation artifacts of system developers, to offer the user a complete and intelligent solution for system design. It leverages the formal knowledge description and reasoning power of ontologies to enrich the syntax and semantics of a dynamic DSL, which adapts itself to be synchronized with viewpoint updates and new artifact releases. To this end, the benefits and weaknesses of current approaches were analyzed. The infrastructure was developed and tested in cooperation with a group of students which focuses on the design of an hypervisor kernel framework, thus contributing to a larger common goal. Rigorous design principles and methodologies of ontology and DSL development were established to create and iteratively refine the infrastructure through individual testing and systematic collaboration meetings. The final product of this dissertation was successfully used by the other participating elements to create system metamodels which actively contribute to hypervisor design automation. |
|---|---|
| Autores principais: | Abreu, Miguel António Mourão de |
| Assunto: | Engenharia e Tecnologia::Engenharia Eletrotécnica, Eletrónica e Informática |
| Ano: | 2017 |
| País: | Portugal |
| Tipo de documento: | dissertação de mestrado |
| Tipo de acesso: | acesso aberto |
| Instituição associada: | Universidade do Minho |
| Idioma: | inglês |
| Origem: | RepositóriUM - Universidade do Minho |
| Resumo: | Software complexity is an unavoidable problem in the modern era of embedded systems. Working with multiple teams with heterogeneous backgrounds requires the definition of a common ground and considerable synchronization efforts. The differences among developers go beyond their level of expertise and include diverseness in domain specialization, stage of development and adopted standards. In addition to integration issues, there is a constant demand for intelligent software, capable of detecting human errors and automating system design without compromising the integrity and feasibility of the generated system. Providing a formal knowledge description language enables the automation of validation procedures. However, the key challenge consists in incorporating this language in an intelligent development infrastructure, capable of addressing the integration issues, and flexible enough to cope with the growing complexity of embedded systems’ projects. There is not a leading solution for every scenario. Current approaches include the development of ontology-querying execution engines, domain-specific languages, metamodel integration techniques, and frameworks that combine these technologies with existing general-purpose languages. Numerous approaches promote interoperability and preserve the separation of concerns by following a model-driven engineering methodology, creating several abstraction layers to address different development stages. However, some solutions only partially address the presented challenge, and the ones which cover most of it, usually lack some key characteristic, such as extendibility, flexibility, viewpoint integration or simplicity. This dissertation presents a semantically-enriched DSL infrastructure, capable of combining the knowledge of domain experts with implementation artifacts of system developers, to offer the user a complete and intelligent solution for system design. It leverages the formal knowledge description and reasoning power of ontologies to enrich the syntax and semantics of a dynamic DSL, which adapts itself to be synchronized with viewpoint updates and new artifact releases. To this end, the benefits and weaknesses of current approaches were analyzed. The infrastructure was developed and tested in cooperation with a group of students which focuses on the design of an hypervisor kernel framework, thus contributing to a larger common goal. Rigorous design principles and methodologies of ontology and DSL development were established to create and iteratively refine the infrastructure through individual testing and systematic collaboration meetings. The final product of this dissertation was successfully used by the other participating elements to create system metamodels which actively contribute to hypervisor design automation. |
|---|