JCML - Java Card Modeling Language: Definição e ... - Ifrn
JCML - Java Card Modeling Language: Definição e ... - Ifrn
JCML - Java Card Modeling Language: Definição e ... - Ifrn
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
CAPÍTULO 3. JML - JAVA MODELING LANGUAGE 57As regras para a geração de código para verificação em tempo de execução a partirdas anotações JML de acordo com a abordagem wrapper são definidas com detalhes notrabalho de Yoonsik Cheon [9] e também será detalhada, no que interessar a esse trabalho,no Capítulo 4.3.4.2 Outras Ferramentas JMLExistem ferramentas JML que tem como foco a verificação estática, são elas: ESC/<strong>Java</strong>,Loop e Jack.ESC/<strong>Java</strong> A ferramenta ESC/<strong>Java</strong> [22] faz verificação estática a partir da especificação,e foi desenvolvida pela Compaq Systems Research Center. A ferramenta pode checarassertivas simples e pode checar alguns tipos de erros comuns no código <strong>Java</strong>, comoreferência nula ou índices de arrays fora do limite.LOOP A ferramenta LOOP [43], desenvolvida na Universidade de Nijmegen -Holanda, traduz código <strong>Java</strong> anotado com JML em obrigações de prova para o provadorde teoremas PVS [34]. LOOP permite verificação de propriedades mais complicadas queo ESC/<strong>Java</strong>.Jack - <strong>Java</strong> Applet Correctness Kit A partir de programas <strong>Java</strong> anotados com JML, oJACK também gera obrigações de prova para as ferramentas Coq [12], PVS [35] e Simplify[14]. Esta ferramenta foi desenvolvida pela Gemplus e pela Everest team em INRIASophia Antipolis. JACK tem como objetivo prover um ambiente de desenvolvimento paraverificação de programas <strong>Java</strong> e <strong>Java</strong> <strong>Card</strong> utilizando anotações JML.3.5 ConclusãoNeste capítulo, foi apresentado o que é JML, seus conceitos, estrutura e ferramentas.JML é baseado na especificação de modelos e interface de comportamento, utilizandoconceitos de projeto por contrato. JML facilita o desenvolvimento de aplicações orientada