ASSETRE: uma arquitetura de software para sistemas embarcados de tempo real. - Denis Silva Loubach (2007)
Nas últimas duas décadas, muitos sistemas embarcados de tempo real vêm se utilizando de arquiteturas, modelos e técnicas como a análise estruturada. As ferramentas de ambientes integrados de engenharia de software ajudada por computador (I-CASE-E) não vêm sendo utilizadas de maneira apropriada, a modelagem dos sistemas ainda é vista como um projeto separado e os testes vêm sendo executados somente em fases posteriores do ciclo de desenvolvimento. Este trabalho de pesquisa propõe uma Arquitetura de Software para Sistemas Embarcados de Tempo Real, denominada ASSETRE, bem como um método para a aplicação da arquitetura denominado MAASSETRE. Neste contexto, concebeu-se a ASSETRE, como uma possível solução para as principais dificuldades existentes e inerentes às abordagens tradicionais de desenvolvimento de sistemas de software embarcado de tempo real. A arquitetura proposta baseia-se nas Modelagens UML, SysML, MDD/MDA, nos Processos como RUP e ROPES, e nas ferramentas de I-CASE-E de desenvolvimento e testes até o nível de sistema operacional. Durante a pesquisa, a partir do momento em que ficou claro que a aplicação da ASSETRE não se tratava somente de um conjunto de boas práticas, mas sim de um método definido e caracterizado por um conjunto de aplicações de conceitos técnicos e/ou científicos, identificou-se nove passos que compõem o MAASSETRE. A verificação da aplicação da arquitetura e do método propostos foi realizada por meio de um Estudo de Caso. Ele envolveu o desenvolvimento de um protótipo de sistema de software embarcado de tempo real, denominado Item de Configuração de Software de Computador - ICSC de Determinação e Controle de Atitude (IDECA), para um satélite, e cinco experimentos. Neles, aplicou-se a arquitetura (ASSETRE), o método (MAASSETRE), as métricas de Halstead, de Linhas de Código e Comentário, Complexidade Ciclomática, e algumas Análises em Tempo de Execução, como Utilização de Memória, Perfil de Desempenho e Cobertura de Código.