A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code

Detalhes bibliográficos
Autor(a) principal: Barrocas, Samuel Lincoln Magalhães
Data de Publicação: 2018
Tipo de documento: Tese
Idioma: por
Título da fonte: Repositório Institucional da UFRN
Texto Completo: https://repositorio.ufrn.br/jspui/handle/123456789/25443
Resumo: O uso de Geradores Automáticos de Código para Métodos Formais não apenas minimiza esforços na implementação de Sistemas de Software, como também reduz a chance da existência de erros na execução destes Sistemas. Estas ferramentas, no entanto, podem ter faltas em seus códigos-fonte que causam erros na geração dos Sistemas de Software, e então a verificação de tais ferramentas é encorajada. Esta tese de Doutorado visa criar e desenvolver uma estratégia para verificar JCircus, um Gerador Automático de Código de um amplo sub-conjunto de Circus para Java. O interesse em Circus vem do fato de que ele permite a especificação dos aspectos concorrentes e de estado de um Sistema de maneira direta. A estratégia de verificação consiste nos seguintes passos: (1) extensão da Semântica Operacional de Woodcock e prova de que ela é sólida com respeito à Semântica Denotacional existente de Circus na Teoria Unificada de Programação (UTP), que é um framework que permite prova e unificação entre diferentes teorias; (2) desenvolvimento e implementação de uma estratégia que verifica o refinamento do código gerado por JCircus, através de uma toolchain que engloba um Gerador de Sistema de Transições Rotuladas com Predicado (LPTS) para Circus e um Gerador de Modelos que aceita como entrada (I) o LPTS e (II) o código gerado por JCircus, e gera um modelo em Java Pathfinder que verifica o refinamento do código gerado por JCircus. Através da aplicação do passo (2) combinada com técnicas baseadas em cobertura no código fonte de JCircus, nós visamos aumentar a confiabilidade do código gerado de Circus para Java.
id UFRN_282e87531dc9296fd060dd7b2ee4cb64
oai_identifier_str oai:https://repositorio.ufrn.br:123456789/25443
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Barrocas, Samuel Lincoln MagalhãesMusicante, Martin AlejandroCosta, Umberto Souza DaMota, Alexandre CabralGomes, Bruno Emerson GurgelOliveira, Marcel Vinicius Medeiros2018-06-18T19:19:46Z2018-06-18T19:19:46Z2018-02-22BARROCAS, Samuel Lincoln Magalhães. A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code. 2018. 234f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2018.https://repositorio.ufrn.br/jspui/handle/123456789/25443O uso de Geradores Automáticos de Código para Métodos Formais não apenas minimiza esforços na implementação de Sistemas de Software, como também reduz a chance da existência de erros na execução destes Sistemas. Estas ferramentas, no entanto, podem ter faltas em seus códigos-fonte que causam erros na geração dos Sistemas de Software, e então a verificação de tais ferramentas é encorajada. Esta tese de Doutorado visa criar e desenvolver uma estratégia para verificar JCircus, um Gerador Automático de Código de um amplo sub-conjunto de Circus para Java. O interesse em Circus vem do fato de que ele permite a especificação dos aspectos concorrentes e de estado de um Sistema de maneira direta. A estratégia de verificação consiste nos seguintes passos: (1) extensão da Semântica Operacional de Woodcock e prova de que ela é sólida com respeito à Semântica Denotacional existente de Circus na Teoria Unificada de Programação (UTP), que é um framework que permite prova e unificação entre diferentes teorias; (2) desenvolvimento e implementação de uma estratégia que verifica o refinamento do código gerado por JCircus, através de uma toolchain que engloba um Gerador de Sistema de Transições Rotuladas com Predicado (LPTS) para Circus e um Gerador de Modelos que aceita como entrada (I) o LPTS e (II) o código gerado por JCircus, e gera um modelo em Java Pathfinder que verifica o refinamento do código gerado por JCircus. Através da aplicação do passo (2) combinada com técnicas baseadas em cobertura no código fonte de JCircus, nós visamos aumentar a confiabilidade do código gerado de Circus para Java.The use of Automatic Code Generators for Formal Methods not only minimizes efforts on the implementation of Software Systems, but also reduces the chance of existing errors on the execution of such Systems. These tools, however, can themselves have faults on their source codes that may cause errors on the generation of Software Systems, and thus verification of such tools is encouraged. This PhD thesis aims at creating and developing a strategy to verify the code generation from the Circus formal method to Java Code. The interest in Circus comes from the fact that it allows the specification of concurrent and state-rich aspects of a System in a straightforward manner. The code generation envisaged to be verified is performed by JCircus, a tool that translates a large subset of Circus to Java code that implements the JCSP API. The strategy of verification consists on the following steps: (1) extension of Woodcock’s Operational Semantics to Circus processes and proof that it is sound with respect to the Denotational Semantics of Circus in the Unifying Theories of Programming (UTP), that is a framework that allows proof and unification of different theories; (2) development and implementation of a strategy that refinement-checks the code generated by JCircus, through a toolchain that encompasses (2.1) a Labelled Predicate Transition System (LPTS) Generator for Circus and (2.2) a Model Generator that inputs (I) a LPTS and (II) the code generated by JCircus, and generates a model (that uses the Java Pathfinder code model-checker) that refinement-checks the code generated by JCircus. Combined with coverage-based techniques on the source code of JCircus, we envisage improving the reliability of the Code Generation from Circus to Java.porCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAOMétodos formaisVerificação de códigoTestes de SoftwareSíntese de códigoCircusA strategy to verify the code generation from concurrent and state-rich circus specifications to executable codeinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisPROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃOUFRNBrasilinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRNinstname:Universidade Federal do Rio Grande do Norte (UFRN)instacron:UFRNORIGINALSamuelLincolnMagalhaesBarrocas_TESE.pdfapplication/pdf4123420https://repositorio.ufrn.br/bitstream/123456789/25443/1/SamuelLincolnMagalhaesBarrocas_TESE.pdf746539c9cf569cfefe66e16e60516a7dMD51TEXTSamuelLincolnMagalhaesBarrocas_TESE.pdf.txtSamuelLincolnMagalhaesBarrocas_TESE.pdf.txtExtracted texttext/plain361952https://repositorio.ufrn.br/bitstream/123456789/25443/2/SamuelLincolnMagalhaesBarrocas_TESE.pdf.txt3166ecc6b18cbda81c36f9e50cb24f14MD52THUMBNAILSamuelLincolnMagalhaesBarrocas_TESE.pdf.jpgSamuelLincolnMagalhaesBarrocas_TESE.pdf.jpgIM Thumbnailimage/jpeg1902https://repositorio.ufrn.br/bitstream/123456789/25443/3/SamuelLincolnMagalhaesBarrocas_TESE.pdf.jpgcd679db13801983473372539ca541638MD53123456789/254432019-01-29 18:23:19.093oai:https://repositorio.ufrn.br:123456789/25443Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2019-01-29T21:23:19Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.pt_BR.fl_str_mv A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
title A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
spellingShingle A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
Barrocas, Samuel Lincoln Magalhães
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Métodos formais
Verificação de código
Testes de Software
Síntese de código
Circus
title_short A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
title_full A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
title_fullStr A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
title_full_unstemmed A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
title_sort A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code
author Barrocas, Samuel Lincoln Magalhães
author_facet Barrocas, Samuel Lincoln Magalhães
author_role author
dc.contributor.authorID.pt_BR.fl_str_mv
dc.contributor.advisorID.pt_BR.fl_str_mv
dc.contributor.referees1.none.fl_str_mv Musicante, Martin Alejandro
dc.contributor.referees1ID.pt_BR.fl_str_mv
dc.contributor.referees2.none.fl_str_mv Costa, Umberto Souza Da
dc.contributor.referees2ID.pt_BR.fl_str_mv
dc.contributor.referees3.none.fl_str_mv Mota, Alexandre Cabral
dc.contributor.referees3ID.pt_BR.fl_str_mv
dc.contributor.referees4.none.fl_str_mv Gomes, Bruno Emerson Gurgel
dc.contributor.referees4ID.pt_BR.fl_str_mv
dc.contributor.author.fl_str_mv Barrocas, Samuel Lincoln Magalhães
dc.contributor.advisor1.fl_str_mv Oliveira, Marcel Vinicius Medeiros
contributor_str_mv Oliveira, Marcel Vinicius Medeiros
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Métodos formais
Verificação de código
Testes de Software
Síntese de código
Circus
dc.subject.por.fl_str_mv Métodos formais
Verificação de código
Testes de Software
Síntese de código
Circus
description O uso de Geradores Automáticos de Código para Métodos Formais não apenas minimiza esforços na implementação de Sistemas de Software, como também reduz a chance da existência de erros na execução destes Sistemas. Estas ferramentas, no entanto, podem ter faltas em seus códigos-fonte que causam erros na geração dos Sistemas de Software, e então a verificação de tais ferramentas é encorajada. Esta tese de Doutorado visa criar e desenvolver uma estratégia para verificar JCircus, um Gerador Automático de Código de um amplo sub-conjunto de Circus para Java. O interesse em Circus vem do fato de que ele permite a especificação dos aspectos concorrentes e de estado de um Sistema de maneira direta. A estratégia de verificação consiste nos seguintes passos: (1) extensão da Semântica Operacional de Woodcock e prova de que ela é sólida com respeito à Semântica Denotacional existente de Circus na Teoria Unificada de Programação (UTP), que é um framework que permite prova e unificação entre diferentes teorias; (2) desenvolvimento e implementação de uma estratégia que verifica o refinamento do código gerado por JCircus, através de uma toolchain que engloba um Gerador de Sistema de Transições Rotuladas com Predicado (LPTS) para Circus e um Gerador de Modelos que aceita como entrada (I) o LPTS e (II) o código gerado por JCircus, e gera um modelo em Java Pathfinder que verifica o refinamento do código gerado por JCircus. Através da aplicação do passo (2) combinada com técnicas baseadas em cobertura no código fonte de JCircus, nós visamos aumentar a confiabilidade do código gerado de Circus para Java.
publishDate 2018
dc.date.accessioned.fl_str_mv 2018-06-18T19:19:46Z
dc.date.available.fl_str_mv 2018-06-18T19:19:46Z
dc.date.issued.fl_str_mv 2018-02-22
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv BARROCAS, Samuel Lincoln Magalhães. A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code. 2018. 234f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2018.
dc.identifier.uri.fl_str_mv https://repositorio.ufrn.br/jspui/handle/123456789/25443
identifier_str_mv BARROCAS, Samuel Lincoln Magalhães. A strategy to verify the code generation from concurrent and state-rich circus specifications to executable code. 2018. 234f. Tese (Doutorado em Ciência da Computação) - Centro de Ciências Exatas e da Terra, Universidade Federal do Rio Grande do Norte, Natal, 2018.
url https://repositorio.ufrn.br/jspui/handle/123456789/25443
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.publisher.program.fl_str_mv PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO
dc.publisher.initials.fl_str_mv UFRN
dc.publisher.country.fl_str_mv Brasil
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFRN
instname:Universidade Federal do Rio Grande do Norte (UFRN)
instacron:UFRN
instname_str Universidade Federal do Rio Grande do Norte (UFRN)
instacron_str UFRN
institution UFRN
reponame_str Repositório Institucional da UFRN
collection Repositório Institucional da UFRN
bitstream.url.fl_str_mv https://repositorio.ufrn.br/bitstream/123456789/25443/1/SamuelLincolnMagalhaesBarrocas_TESE.pdf
https://repositorio.ufrn.br/bitstream/123456789/25443/2/SamuelLincolnMagalhaesBarrocas_TESE.pdf.txt
https://repositorio.ufrn.br/bitstream/123456789/25443/3/SamuelLincolnMagalhaesBarrocas_TESE.pdf.jpg
bitstream.checksum.fl_str_mv 746539c9cf569cfefe66e16e60516a7d
3166ecc6b18cbda81c36f9e50cb24f14
cd679db13801983473372539ca541638
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)
repository.mail.fl_str_mv
_version_ 1802117642737156096