BTestBox: uma ferramenta de teste para implementações B

Detalhes bibliográficos
Ano de defesa: 2018
Autor(a) principal: Oliveira, Diego de Azevedo
Orientador(a): Deharbe, David Boris Paul
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Não Informado pela instituição
Programa de Pós-Graduação: PROGRAMA DE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO
Departamento: Não Informado pela instituição
País: Brasil
Palavras-chave em Português:
Área do conhecimento CNPq:
Link de acesso: https://repositorio.ufrn.br/jspui/handle/123456789/25489
Resumo: Softwares precisam ser seguros e corretos. Partindo desse pressuposto, novas tecnologias e técnicas são desenvolvidas para comprovar as competências de um programa. Essa necessidade de segurança se torna mais relevante ao tratar de softwares que atuam em sistemas críticos, como os sistemas ferroviário e aeroviário. A utilização de métodos formais na construção de software busca solucionar o problema. Ao utilizar o método formal B através da plataforma Atelier-B, e após provar os componentes de um projeto é necessária a tradução para a linguagem desejada. Essa tradução ocorre por meio de tradutores e compiladores B. Habitualmente, o processo de compilação em compiladores maduros é seguro, porém não estão completamente livres de falhas e eventualmente erros são encontrados. Ao expandir essa afirmação para tradutores B é necessário cautela, uma vez que esses não são tão comuns e utilizados quanto compiladores que circulam há mais tempo no mercado. Testes de software podem ser utilizados para realizar a análise da tradução. Através de critérios de cobertura é possível inferir o nível de qualidade do software e facilitar a detecção de falhas. Realizar a checagem da cobertura e testes em software pode exigir bastante esforço e tempo, principalmente ao serem realizados manualmente. Para sanar essa demanda, a ferramenta BTestBox visa analisar, de maneira automática, a cobertura atingida por implementações B desenvolvidas através do Atelier-B. BTestBox também testa automaticamente as traduções feitas a partir de implementações B. Para isso, BTestBox utiliza os casos de teste gerados para a verificação de cobertura e compara os valores esperados de saída com os encontrados após a tradução. O processo feito por BTestBox é todo automático e pode ser utilizado a partir do Atelier-B via instalação de plugin com uma interface simples. Essa dissertação apresenta a ferramenta BTestBox. BTestBox foi testado através de pequenas implementações B com os elementos gramaticais possíveis da linguagem B. BTestBox apresenta funcionalidade e vantagens para programadores que utilizam o método formal B.
id UFRN_da84ec08057a70b062e47008a1776be6
oai_identifier_str oai:https://repositorio.ufrn.br:123456789/25489
network_acronym_str UFRN
network_name_str Repositório Institucional da UFRN
repository_id_str
spelling Oliveira, Diego de AzevedoOliveira, Marcel Vinicius MedeirosMedeiros Júnior, Valério Gutemberg deDeharbe, David Boris Paul2018-07-04T13:18:53Z2018-07-04T13:18:53Z2018-02-05OLIVEIRA, Diego de Azevedo. BTestBox: uma ferramenta de teste para implementações B. 2018. 73f. Dissertação (Mestrado em Sistemas e 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/25489Softwares precisam ser seguros e corretos. Partindo desse pressuposto, novas tecnologias e técnicas são desenvolvidas para comprovar as competências de um programa. Essa necessidade de segurança se torna mais relevante ao tratar de softwares que atuam em sistemas críticos, como os sistemas ferroviário e aeroviário. A utilização de métodos formais na construção de software busca solucionar o problema. Ao utilizar o método formal B através da plataforma Atelier-B, e após provar os componentes de um projeto é necessária a tradução para a linguagem desejada. Essa tradução ocorre por meio de tradutores e compiladores B. Habitualmente, o processo de compilação em compiladores maduros é seguro, porém não estão completamente livres de falhas e eventualmente erros são encontrados. Ao expandir essa afirmação para tradutores B é necessário cautela, uma vez que esses não são tão comuns e utilizados quanto compiladores que circulam há mais tempo no mercado. Testes de software podem ser utilizados para realizar a análise da tradução. Através de critérios de cobertura é possível inferir o nível de qualidade do software e facilitar a detecção de falhas. Realizar a checagem da cobertura e testes em software pode exigir bastante esforço e tempo, principalmente ao serem realizados manualmente. Para sanar essa demanda, a ferramenta BTestBox visa analisar, de maneira automática, a cobertura atingida por implementações B desenvolvidas através do Atelier-B. BTestBox também testa automaticamente as traduções feitas a partir de implementações B. Para isso, BTestBox utiliza os casos de teste gerados para a verificação de cobertura e compara os valores esperados de saída com os encontrados após a tradução. O processo feito por BTestBox é todo automático e pode ser utilizado a partir do Atelier-B via instalação de plugin com uma interface simples. Essa dissertação apresenta a ferramenta BTestBox. BTestBox foi testado através de pequenas implementações B com os elementos gramaticais possíveis da linguagem B. BTestBox apresenta funcionalidade e vantagens para programadores que utilizam o método formal B.Software needs to be safe and run smoothly. From that assumption, new technologies and techniques are developed to test the quality of a program. This is more relevant when developing critical systems, such as railways and avionics control systems. Formal methods try to adress this need. When using B in Atelier-B, after proving the components of a project is necessary to translate to the desired language, a translation is made by using B translators and compilers. Usually, the process of compilation is safe when perfomed by mature compilers although they are not free of errors and bugs often crop up. The same reliability is not always observed in B translators since they have been on the market for less time. Software testing may solve and be used to perform the analyses of the translated code. From coverage criteria, it is possible to infer quality of a piece of software and detect bugs. This process is hard and time-consuming, mainly if it is perfomed manually. To address this problem, the BTestBox tool aims to analyze automatically the coverage of B implementations built through Atelier-B. BTestBox also automatically tests the translation from B implementations. For this, BTestBox uses the same test case generated to verify the coverage and compare the output expected values with the values found in the translation. This process is fully automatic and may be started from Atelier-B with a plugin. This thesis presents the tool BTestBox. The tool is a solution to the problems exposed in the previous paragraph. BTestBox was tested with small B implementations and all gramatical elements from B language. It offers various functionalities and advantages to developers that use the B-Method.porCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAOMétodo BTeste de softwareFerramentaAtelier-BCobertura de códigoBTestBox: uma ferramenta de teste para implementações Binfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisPROGRAMA 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:UFRNORIGINALDiegoDeAzevedoOliveira_DISSERT.pdfapplication/pdf1039192https://repositorio.ufrn.br/bitstream/123456789/25489/1/DiegoDeAzevedoOliveira_DISSERT.pdfa387d372d3c8da2d66010f294542538aMD51TEXTDiegoDeAzevedoOliveira_DISSERT.pdf.txtDiegoDeAzevedoOliveira_DISSERT.pdf.txtExtracted texttext/plain149753https://repositorio.ufrn.br/bitstream/123456789/25489/2/DiegoDeAzevedoOliveira_DISSERT.pdf.txt6a4c8dcf514c8edbe6e815d992c8e2aaMD52THUMBNAILDiegoDeAzevedoOliveira_DISSERT.pdf.jpgDiegoDeAzevedoOliveira_DISSERT.pdf.jpgIM Thumbnailimage/jpeg3054https://repositorio.ufrn.br/bitstream/123456789/25489/3/DiegoDeAzevedoOliveira_DISSERT.pdf.jpg3b430cc93f394f8114d22c52cfac6092MD53123456789/254892019-01-29 23:41:42.448oai:https://repositorio.ufrn.br:123456789/25489Repositório de PublicaçõesPUBhttp://repositorio.ufrn.br/oai/opendoar:2019-01-30T02:41:42Repositório Institucional da UFRN - Universidade Federal do Rio Grande do Norte (UFRN)false
dc.title.pt_BR.fl_str_mv BTestBox: uma ferramenta de teste para implementações B
title BTestBox: uma ferramenta de teste para implementações B
spellingShingle BTestBox: uma ferramenta de teste para implementações B
Oliveira, Diego de Azevedo
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::SISTEMAS DE COMPUTACAO
Método B
Teste de software
Ferramenta
Atelier-B
Cobertura de código
title_short BTestBox: uma ferramenta de teste para implementações B
title_full BTestBox: uma ferramenta de teste para implementações B
title_fullStr BTestBox: uma ferramenta de teste para implementações B
title_full_unstemmed BTestBox: uma ferramenta de teste para implementações B
title_sort BTestBox: uma ferramenta de teste para implementações B
author Oliveira, Diego de Azevedo
author_facet Oliveira, Diego de Azevedo
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 Oliveira, Marcel Vinicius Medeiros
dc.contributor.referees1ID.pt_BR.fl_str_mv
dc.contributor.referees2.none.fl_str_mv Medeiros Júnior, Valério Gutemberg de
dc.contributor.referees2ID.pt_BR.fl_str_mv
dc.contributor.author.fl_str_mv Oliveira, Diego de Azevedo
dc.contributor.advisor1.fl_str_mv Deharbe, David Boris Paul
contributor_str_mv Deharbe, David Boris Paul
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étodo B
Teste de software
Ferramenta
Atelier-B
Cobertura de código
dc.subject.por.fl_str_mv Método B
Teste de software
Ferramenta
Atelier-B
Cobertura de código
description Softwares precisam ser seguros e corretos. Partindo desse pressuposto, novas tecnologias e técnicas são desenvolvidas para comprovar as competências de um programa. Essa necessidade de segurança se torna mais relevante ao tratar de softwares que atuam em sistemas críticos, como os sistemas ferroviário e aeroviário. A utilização de métodos formais na construção de software busca solucionar o problema. Ao utilizar o método formal B através da plataforma Atelier-B, e após provar os componentes de um projeto é necessária a tradução para a linguagem desejada. Essa tradução ocorre por meio de tradutores e compiladores B. Habitualmente, o processo de compilação em compiladores maduros é seguro, porém não estão completamente livres de falhas e eventualmente erros são encontrados. Ao expandir essa afirmação para tradutores B é necessário cautela, uma vez que esses não são tão comuns e utilizados quanto compiladores que circulam há mais tempo no mercado. Testes de software podem ser utilizados para realizar a análise da tradução. Através de critérios de cobertura é possível inferir o nível de qualidade do software e facilitar a detecção de falhas. Realizar a checagem da cobertura e testes em software pode exigir bastante esforço e tempo, principalmente ao serem realizados manualmente. Para sanar essa demanda, a ferramenta BTestBox visa analisar, de maneira automática, a cobertura atingida por implementações B desenvolvidas através do Atelier-B. BTestBox também testa automaticamente as traduções feitas a partir de implementações B. Para isso, BTestBox utiliza os casos de teste gerados para a verificação de cobertura e compara os valores esperados de saída com os encontrados após a tradução. O processo feito por BTestBox é todo automático e pode ser utilizado a partir do Atelier-B via instalação de plugin com uma interface simples. Essa dissertação apresenta a ferramenta BTestBox. BTestBox foi testado através de pequenas implementações B com os elementos gramaticais possíveis da linguagem B. BTestBox apresenta funcionalidade e vantagens para programadores que utilizam o método formal B.
publishDate 2018
dc.date.accessioned.fl_str_mv 2018-07-04T13:18:53Z
dc.date.available.fl_str_mv 2018-07-04T13:18:53Z
dc.date.issued.fl_str_mv 2018-02-05
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.citation.fl_str_mv OLIVEIRA, Diego de Azevedo. BTestBox: uma ferramenta de teste para implementações B. 2018. 73f. Dissertação (Mestrado em Sistemas e 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/25489
identifier_str_mv OLIVEIRA, Diego de Azevedo. BTestBox: uma ferramenta de teste para implementações B. 2018. 73f. Dissertação (Mestrado em Sistemas e 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/25489
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/25489/1/DiegoDeAzevedoOliveira_DISSERT.pdf
https://repositorio.ufrn.br/bitstream/123456789/25489/2/DiegoDeAzevedoOliveira_DISSERT.pdf.txt
https://repositorio.ufrn.br/bitstream/123456789/25489/3/DiegoDeAzevedoOliveira_DISSERT.pdf.jpg
bitstream.checksum.fl_str_mv a387d372d3c8da2d66010f294542538a
6a4c8dcf514c8edbe6e815d992c8e2aa
3b430cc93f394f8114d22c52cfac6092
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_ 1797777727053365248