Summary: | At safety-critical, mission-critical and business-critical systems the high cost of failure
makes required the use of methods and techniques to ensure application reliability. In this
context, formal languages, as Circus or specific languages versions like Safety-Critical Java,
were created to facilitate the verification and validation of applications so consequently assisting
to increase the overall reliability. Despite of the reliability increase, the modeled systems in
formal languages can not be executed subsequently has to be implemented in a traditional programming
language. It is in this process of free translation where occur most mistakes that end
up not ensuring that the generated code conforms to the specification. Based on that premise,
this paper propose to expound a strategy of translation from models written in Circus language
to executable programs in SCJ language. Among the main objectives and contributions include
the creation of EBNFs of the two languages and the detailed description of the translation of all
elements between the two languages. === Em sistemas críticos de segurança, missão ou negócios o alto custo das falhas faz com
que sejam necessários o uso de métodos e técnicas para garantir a confiabilidade da aplicação.
É neste contexto que foram criadas linguagens formais como o Circus ou versões específicas de
linguagens como o Safety-Critical Java para facilitar a verificação e validação das aplicações
criadas e aumentar consequentemente a confiabilidade geral da aplicação. Apesar de aumentar
a confiabilidade, os sistemas modelados em linguagens formais não podem ser executados e
então precisam ser implementados em uma linguagem de programação tradicional. É nesse processo
de livre tradução do sistema especificado onde ocorrem a maioria dos erros que acabam
por não garantir que o código gerado esteja de acordo com a especificação. Baseando-se nessa
premissa o presente trabalho propõem-se a apresentar uma estratégia de tradução de modelos
escritos na linguagem Circus para programas executáveis na linguagem SCJ. Entre os principais
objetivos e contribuições do trabalho estão a criação das EBNFs das duas linguagens e a
descrição detalhada da tradução de todos os elementos entre as duas linguagens.
|