Resumo: A Engenharia Dirigida a Modelos (Model-Driven Engineering - MDE) apoia a evolução e o refinamento de modelos por meio de transformações em vários níveis de abstração. SyMPLES é uma abordagem de desenvolvimento para sistemas embarcados, que combina conceitos de MDE com Linha de Produto de Software (LPS). Essa abordagem possui um processo de transformação automatizado de modelos SysML para Simulink para guiar o desenvolvimento a partir de modelos rumo _a implementação. A validação dessas transformações é importante para assegurar a qualidade dos modelos transformados. Neste trabalho é apresentada uma abordagem de validação baseada em teste funcional para transformações complexas, as quais são compostas por várias etapas distintas. A transformação da SyMPLES possui duas etapas, uma escrita em linguagem ATL e outra em linguagem Java. Essa transformação de modelos foi avaliada por meio da abordagem de validação utilizando duas técnicas de geração de casos de teste. A primeira utilizou uma LPS e a segunda o metamodelo SysML. A aplicação da abordagem identificou determinados tipos de erro. Utilizando políticas de geração e critérios de cobertura foi possível diminuir a quantidade de casos de teste gerados, o que possibilitou minimizar o esforço e o tempo do teste da transformação.
Abstract: Model-Driven Engineering (MDE) supports model evolution and refining by means of transformations. SyMPLES is a development approach for embedded systems which is based on concepts of both Software Product Line (SPL) and MDE. This approach has a model transformation process from SysML to Simulink which guides the development from the models towards implementation. The validation of these transformations are important, to ensure the quality of the transformed models. Therefore, this work proposes a validation approach based on functional test for complex model transformations composed of several distinct steps. The SyMPLES transformation has two transformation steps, one written in ATL language and the other in Java languagem. This transformation has been evaluated by means of the validation approach using two test case generation techniques. The first used a SPL and the second used the SysML metamodel. The application of the approach identified certain kinds of error. By using generation policies and coverage criteria it was possible to reduce the amount of test cases generated, allowing to minimize the transformation test effort and time. |