Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal

Detalhes bibliográficos
Autor(a) principal: Pereira, Iverson Luís
Data de Publicação: 2018
Tipo de documento: Trabalho de conclusão de curso
Idioma: por
Título da fonte: Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE)
Texto Completo: https://repository.ufrpe.br/handle/123456789/703
Resumo: O interesse por ambientes de programação de robôs virtuais para fins educacionais tem crescido nos últimos anos. Estes ambientes são uma alternativa para o uso de robôs reais que possuem um alto custo de aquisição. No entanto, não existem ambientes gratuitos que oferecem mecanismos automatizados para verificação dos programas de robôs virtuais, o que impossibilita que alunos e professores tenham um feedback rápidoeautomáticosobreofuncionamentodosprogramas.Estetrabalhopropõe umaabordagemdeverificaçãoautomáticadeprogramasderobôsvirtuaisescritosna linguagemeducacionalROBO.DesenvolvemosumcompiladorquelêprogramasescritosemROBOetraduzosprogramasparaumanotaçãoformalchamadaCSP(Communicating Sequential Processes), que é a entrada para uma ferramenta de verificação automática de modelos chamada FDR (Failures-Divergences Refinement). As fases da compilação foram implementadas usando a plataforma Spoofax, onde definimos a gramática da linguagem ROBO e especificamos regras de tradução de ROBO para CSP. Estetrabalhoremoveumalimitaçãodanossaabordagemanteriordeverificação que não permite a análise de programas ROBO contendo variáveis e procedimentos. Uma importante contribuição deste trabalho é a extensão da abordagem de verificação para permitir a análise automática de programas ROBO com variáveis e procedimentos. A extensão consiste na modificação da gramática do compilador pela inclusão de variáveis e procedimentos e na inclusão de novas regras de tradução que definem a semântica formal para os elementos adicionados na gramática. O trabalho propõe uma ferramenta que torna transparente o processo de tradução de ROBO para CSP e a verificação automática usando FDR. Validamos a abordagem utilizando a ferramenta proposta para verificar o comportamento de um programa ROBO com variáveis e procedimentos.
id UFRPE_f567ef0bf2a4bc50bc900184356d0e48
oai_identifier_str oai:dspace:123456789/703
network_acronym_str UFRPE
network_name_str Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE)
repository_id_str https://v2.sherpa.ac.uk/id/repository/10612
spelling Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formalEngenharia de softwareSoftware - TestesSoftware - DesenvolvimentoO interesse por ambientes de programação de robôs virtuais para fins educacionais tem crescido nos últimos anos. Estes ambientes são uma alternativa para o uso de robôs reais que possuem um alto custo de aquisição. No entanto, não existem ambientes gratuitos que oferecem mecanismos automatizados para verificação dos programas de robôs virtuais, o que impossibilita que alunos e professores tenham um feedback rápidoeautomáticosobreofuncionamentodosprogramas.Estetrabalhopropõe umaabordagemdeverificaçãoautomáticadeprogramasderobôsvirtuaisescritosna linguagemeducacionalROBO.DesenvolvemosumcompiladorquelêprogramasescritosemROBOetraduzosprogramasparaumanotaçãoformalchamadaCSP(Communicating Sequential Processes), que é a entrada para uma ferramenta de verificação automática de modelos chamada FDR (Failures-Divergences Refinement). As fases da compilação foram implementadas usando a plataforma Spoofax, onde definimos a gramática da linguagem ROBO e especificamos regras de tradução de ROBO para CSP. Estetrabalhoremoveumalimitaçãodanossaabordagemanteriordeverificação que não permite a análise de programas ROBO contendo variáveis e procedimentos. Uma importante contribuição deste trabalho é a extensão da abordagem de verificação para permitir a análise automática de programas ROBO com variáveis e procedimentos. A extensão consiste na modificação da gramática do compilador pela inclusão de variáveis e procedimentos e na inclusão de novas regras de tradução que definem a semântica formal para os elementos adicionados na gramática. O trabalho propõe uma ferramenta que torna transparente o processo de tradução de ROBO para CSP e a verificação automática usando FDR. Validamos a abordagem utilizando a ferramenta proposta para verificar o comportamento de um programa ROBO com variáveis e procedimentos.There is an increasing interest in virtual robot programming environments for educational purposes in recent years. These environments are an alternative to the use of real robots, which have a high acquisition value. Automatic verification of robot programs is a demand of students and teachers that expect to have fast and automatic feed back about the correctness of robot programs.However,no free software provides an automatic verification of virtual robot programs. This work proposes an approach for the automatic verification of virtual robot programs authored in the educational language called ROBO. We propose a compiler that reads programs written in ROBO and translates its source code into a formal notation called CSP (Communicating Sequential Processes), which is the input to a model checking tool called FDR (FailuresDivergences Refinement). The compiler was implemented using the facilities of the Spoofax framework, which is used to define a parser for the ROBO language and a set of translation rules from ROBO to CSP. This work removes a limitation of our previous verification approach that does not perform the verification of ROBO programs containing variables and procedures. A significant contribution is the extension of the verification approach to allow the automatic analysis of ROBO programs with variables and procedures.The extension consists of the modification of the compiler Grammar by the inclusion of variables and procedures and the inclusion of translation rules that define the formal semantics for the elements added into the grammar.Moreover, the work proposes a tool that makes transparent the translation process from ROBO to CSP and the automatic verification using FDR.We validate the approach using the proposed tool to verify the behavior of a ROBO program with variables and procedures.BrasilNogueira, Sidney de Carvalhohttp://lattes.cnpq.br/1186672408246777http://lattes.cnpq.br/9171224058305522Pereira, Iverson Luís2019-01-16T18:47:59Z2019-01-16T18:47:59Z2018info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesis88 f.application/pdfPEREIRA, Iverson Luís. Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal. 2018. 88 f. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) - Departamento de Computação, Universidade Federal Rural de Pernambuco, Recife, 2018.https://repository.ufrpe.br/handle/123456789/703porAttribution-NonCommercial-NoDerivs 3.0 Brazilhttps://creativecommons.org/licenses/by-nc-nd/3.0/br/deed.en_USopenAccessinfo:eu-repo/semantics/openAccessreponame:Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE)instname:Universidade Federal Rural de Pernambuco (UFRPE)instacron:UFRPE2019-02-18T18:38:28Zoai:dspace:123456789/703Repositório InstitucionalPUBhttps://repository.ufrpe.br/oai/requestrepositorio.sib@ufrpe.bropendoar:https://v2.sherpa.ac.uk/id/repository/106122019-02-18T18:38:28Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE) - Universidade Federal Rural de Pernambuco (UFRPE)false
dc.title.none.fl_str_mv Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
title Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
spellingShingle Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
Pereira, Iverson Luís
Engenharia de software
Software - Testes
Software - Desenvolvimento
title_short Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
title_full Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
title_fullStr Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
title_full_unstemmed Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
title_sort Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal
author Pereira, Iverson Luís
author_facet Pereira, Iverson Luís
author_role author
dc.contributor.none.fl_str_mv Nogueira, Sidney de Carvalho
http://lattes.cnpq.br/1186672408246777
http://lattes.cnpq.br/9171224058305522
dc.contributor.author.fl_str_mv Pereira, Iverson Luís
dc.subject.por.fl_str_mv Engenharia de software
Software - Testes
Software - Desenvolvimento
topic Engenharia de software
Software - Testes
Software - Desenvolvimento
description O interesse por ambientes de programação de robôs virtuais para fins educacionais tem crescido nos últimos anos. Estes ambientes são uma alternativa para o uso de robôs reais que possuem um alto custo de aquisição. No entanto, não existem ambientes gratuitos que oferecem mecanismos automatizados para verificação dos programas de robôs virtuais, o que impossibilita que alunos e professores tenham um feedback rápidoeautomáticosobreofuncionamentodosprogramas.Estetrabalhopropõe umaabordagemdeverificaçãoautomáticadeprogramasderobôsvirtuaisescritosna linguagemeducacionalROBO.DesenvolvemosumcompiladorquelêprogramasescritosemROBOetraduzosprogramasparaumanotaçãoformalchamadaCSP(Communicating Sequential Processes), que é a entrada para uma ferramenta de verificação automática de modelos chamada FDR (Failures-Divergences Refinement). As fases da compilação foram implementadas usando a plataforma Spoofax, onde definimos a gramática da linguagem ROBO e especificamos regras de tradução de ROBO para CSP. Estetrabalhoremoveumalimitaçãodanossaabordagemanteriordeverificação que não permite a análise de programas ROBO contendo variáveis e procedimentos. Uma importante contribuição deste trabalho é a extensão da abordagem de verificação para permitir a análise automática de programas ROBO com variáveis e procedimentos. A extensão consiste na modificação da gramática do compilador pela inclusão de variáveis e procedimentos e na inclusão de novas regras de tradução que definem a semântica formal para os elementos adicionados na gramática. O trabalho propõe uma ferramenta que torna transparente o processo de tradução de ROBO para CSP e a verificação automática usando FDR. Validamos a abordagem utilizando a ferramenta proposta para verificar o comportamento de um programa ROBO com variáveis e procedimentos.
publishDate 2018
dc.date.none.fl_str_mv 2018
2019-01-16T18:47:59Z
2019-01-16T18:47:59Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/bachelorThesis
format bachelorThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv PEREIRA, Iverson Luís. Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal. 2018. 88 f. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) - Departamento de Computação, Universidade Federal Rural de Pernambuco, Recife, 2018.
https://repository.ufrpe.br/handle/123456789/703
identifier_str_mv PEREIRA, Iverson Luís. Uma abordagem para tradução de uma linguagem de programação de robôs para um modelo formal. 2018. 88 f. Trabalho de Conclusão de Curso (Bacharelado em Ciência da Computação) - Departamento de Computação, Universidade Federal Rural de Pernambuco, Recife, 2018.
url https://repository.ufrpe.br/handle/123456789/703
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
https://creativecommons.org/licenses/by-nc-nd/3.0/br/deed.en_US
openAccess
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
https://creativecommons.org/licenses/by-nc-nd/3.0/br/deed.en_US
openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv 88 f.
application/pdf
dc.publisher.none.fl_str_mv Brasil
publisher.none.fl_str_mv Brasil
dc.source.none.fl_str_mv reponame:Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE)
instname:Universidade Federal Rural de Pernambuco (UFRPE)
instacron:UFRPE
instname_str Universidade Federal Rural de Pernambuco (UFRPE)
instacron_str UFRPE
institution UFRPE
reponame_str Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE)
collection Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE)
repository.name.fl_str_mv Repositório institucional da Universidade Federal Rural de Pernambuco (UFRPE) (RI-UFRPE) - Universidade Federal Rural de Pernambuco (UFRPE)
repository.mail.fl_str_mv repositorio.sib@ufrpe.br
_version_ 1809277155309256704