Geração mecanizada de abstrações seguras para especificações CSP

Detalhes bibliográficos
Autor(a) principal: DAMASCENO, Adriana Carla
Data de Publicação: 2008
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFPE
dARK ID: ark:/64986/001300000dc4f
Texto Completo: https://repositorio.ufpe.br/handle/123456789/1471
Resumo: Com a crescente demanda por diminuição de custos no desenvolvimento de software, há a necessidade de que os programas possam ser construídos de acordo com uma especificação concordante com os requisitos do cliente. Nesse sentido, a especificação formal pode ser utilizada para representar os requisitos do sistema. Uma vez que a especificação formal foi desenvolvida, ela pode ser usada como base para investigar determinadas propriedades através de um verificador de modelos. Ele aceita modelos e propriedades que o sistema final deve satisfazer. Então, a ferramenta gera uma resposta positiva se um dado modelo satisfaz uma dada especificação ou um contra-exemplo, em caso negativo. O contra-exemplo detalha a situação em que o modelo não foi satisfeito. Mas na maioria das vezes, problemas do mundo real não podem adotar essa abordagem porque usam domínios infinitos (levando ao problema da explosão de estados). Como forma de resolver essa questão, técnicas de abstração de dados são empregadas para gerar especificações abstratas finitas a partir de sistemas infinitos concretos. A linguagem de especificação usada nesse trabalho é CSP (Communicating Sequential Processes). Ela é uma linguagem formal que é usada para descrever padrões de interação em sistemas concorrentes. Uma das técnicas de abstração para especificações possíveis para essa linguagem é a abstração segura de dados. Essa abstração visa gerar um modelo abstrato a partir de um equivalente concreto que conserve as propriedades do sistema com respeito ao comportamento (modelo de traces) através da escolha de um dado do domínio abstrato para cada subconjunto do domínio concreto. O objetivo desse trabalho é propor um algoritmo para geração mecanizada de abstrações seguras para sistemas CSP seqüenciais com recursão simples. A especificação do algoritmo é apresentada usando o paradigma funcional e elementos da linguagem Z, com a introdução da estratégia através de exemplos. No estudo de caso, o software Mathematica é usado para instanciar os valores das variáveis e realizar a simplificação dos predicados construídos a partir desse algoritmo. Com esse trabalho, é possível gerar abstrações seguras de forma mecânica, e por conseqüência verificar o comportamento de modelos infinitos. Ademais, a geração de dados de testes automática também é beneficiada, já que com o domínio abstrato dos dados é possível percorrer todos os caminhos do sistema, gerando 100% de cobertura do modelo. Esse esforço é justificado pela importância que a fase de testes tem para a qualidade do software. Estudos prévios mostraram que essa fase demanda mais de 50% do custo de seu desenvolvimento, e uma pesquisa detalhada realizada nos Estados Unidos quantifica os altos impactos econômicos de uma infra-estrutura de software
id UFPE_c5f676304e0368038dffa88151343078
oai_identifier_str oai:repositorio.ufpe.br:123456789/1471
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str 2221
spelling DAMASCENO, Adriana CarlaMOTA, Alexandre Cabral2014-06-12T15:50:21Z2014-06-12T15:50:21Z2008-01-31Carla Damasceno, Adriana; Cabral Mota, Alexandre. Geração mecanizada de abstrações seguras para especificações CSP. 2008. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2008.https://repositorio.ufpe.br/handle/123456789/1471ark:/64986/001300000dc4fCom a crescente demanda por diminuição de custos no desenvolvimento de software, há a necessidade de que os programas possam ser construídos de acordo com uma especificação concordante com os requisitos do cliente. Nesse sentido, a especificação formal pode ser utilizada para representar os requisitos do sistema. Uma vez que a especificação formal foi desenvolvida, ela pode ser usada como base para investigar determinadas propriedades através de um verificador de modelos. Ele aceita modelos e propriedades que o sistema final deve satisfazer. Então, a ferramenta gera uma resposta positiva se um dado modelo satisfaz uma dada especificação ou um contra-exemplo, em caso negativo. O contra-exemplo detalha a situação em que o modelo não foi satisfeito. Mas na maioria das vezes, problemas do mundo real não podem adotar essa abordagem porque usam domínios infinitos (levando ao problema da explosão de estados). Como forma de resolver essa questão, técnicas de abstração de dados são empregadas para gerar especificações abstratas finitas a partir de sistemas infinitos concretos. A linguagem de especificação usada nesse trabalho é CSP (Communicating Sequential Processes). Ela é uma linguagem formal que é usada para descrever padrões de interação em sistemas concorrentes. Uma das técnicas de abstração para especificações possíveis para essa linguagem é a abstração segura de dados. Essa abstração visa gerar um modelo abstrato a partir de um equivalente concreto que conserve as propriedades do sistema com respeito ao comportamento (modelo de traces) através da escolha de um dado do domínio abstrato para cada subconjunto do domínio concreto. O objetivo desse trabalho é propor um algoritmo para geração mecanizada de abstrações seguras para sistemas CSP seqüenciais com recursão simples. A especificação do algoritmo é apresentada usando o paradigma funcional e elementos da linguagem Z, com a introdução da estratégia através de exemplos. No estudo de caso, o software Mathematica é usado para instanciar os valores das variáveis e realizar a simplificação dos predicados construídos a partir desse algoritmo. Com esse trabalho, é possível gerar abstrações seguras de forma mecânica, e por conseqüência verificar o comportamento de modelos infinitos. Ademais, a geração de dados de testes automática também é beneficiada, já que com o domínio abstrato dos dados é possível percorrer todos os caminhos do sistema, gerando 100% de cobertura do modelo. Esse esforço é justificado pela importância que a fase de testes tem para a qualidade do software. Estudos prévios mostraram que essa fase demanda mais de 50% do custo de seu desenvolvimento, e uma pesquisa detalhada realizada nos Estados Unidos quantifica os altos impactos econômicos de uma infra-estrutura de softwareCoordenação de Aperfeiçoamento de Pessoal de Nível SuperiorporUniversidade Federal de PernambucoAttribution-NonCommercial-NoDerivs 3.0 Brazilhttp://creativecommons.org/licenses/by-nc-nd/3.0/br/info:eu-repo/semantics/openAccessAbstração de dadosGeração de dados de testeCspGeração mecanizada de abstrações seguras para especificações CSPinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPETHUMBNAILACD.pdf.jpgACD.pdf.jpgGenerated Thumbnailimage/jpeg1225https://repositorio.ufpe.br/bitstream/123456789/1471/4/ACD.pdf.jpg5b981b849a211120820f050def7cfa15MD54LICENSElicense.txttext/plain1748https://repositorio.ufpe.br/bitstream/123456789/1471/1/license.txt8a4605be74aa9ea9d79846c1fba20a33MD51ORIGINALACD.pdfACD.pdfapplication/pdf978201https://repositorio.ufpe.br/bitstream/123456789/1471/2/ACD.pdf0d9f32faffab7dde71851a33332bb3a9MD52TEXTACD.pdf.txtACD.pdf.txtExtracted texttext/plain195844https://repositorio.ufpe.br/bitstream/123456789/1471/3/ACD.pdf.txtfce94d37f6c32cf71e1e7eaf16bcbfe7MD53123456789/14712019-10-25 16:52:53.622oai:repositorio.ufpe.br:123456789/1471Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212019-10-25T19:52:53Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.pt_BR.fl_str_mv Geração mecanizada de abstrações seguras para especificações CSP
title Geração mecanizada de abstrações seguras para especificações CSP
spellingShingle Geração mecanizada de abstrações seguras para especificações CSP
DAMASCENO, Adriana Carla
Abstração de dados
Geração de dados de teste
Csp
title_short Geração mecanizada de abstrações seguras para especificações CSP
title_full Geração mecanizada de abstrações seguras para especificações CSP
title_fullStr Geração mecanizada de abstrações seguras para especificações CSP
title_full_unstemmed Geração mecanizada de abstrações seguras para especificações CSP
title_sort Geração mecanizada de abstrações seguras para especificações CSP
author DAMASCENO, Adriana Carla
author_facet DAMASCENO, Adriana Carla
author_role author
dc.contributor.author.fl_str_mv DAMASCENO, Adriana Carla
dc.contributor.advisor1.fl_str_mv MOTA, Alexandre Cabral
contributor_str_mv MOTA, Alexandre Cabral
dc.subject.por.fl_str_mv Abstração de dados
Geração de dados de teste
Csp
topic Abstração de dados
Geração de dados de teste
Csp
description Com a crescente demanda por diminuição de custos no desenvolvimento de software, há a necessidade de que os programas possam ser construídos de acordo com uma especificação concordante com os requisitos do cliente. Nesse sentido, a especificação formal pode ser utilizada para representar os requisitos do sistema. Uma vez que a especificação formal foi desenvolvida, ela pode ser usada como base para investigar determinadas propriedades através de um verificador de modelos. Ele aceita modelos e propriedades que o sistema final deve satisfazer. Então, a ferramenta gera uma resposta positiva se um dado modelo satisfaz uma dada especificação ou um contra-exemplo, em caso negativo. O contra-exemplo detalha a situação em que o modelo não foi satisfeito. Mas na maioria das vezes, problemas do mundo real não podem adotar essa abordagem porque usam domínios infinitos (levando ao problema da explosão de estados). Como forma de resolver essa questão, técnicas de abstração de dados são empregadas para gerar especificações abstratas finitas a partir de sistemas infinitos concretos. A linguagem de especificação usada nesse trabalho é CSP (Communicating Sequential Processes). Ela é uma linguagem formal que é usada para descrever padrões de interação em sistemas concorrentes. Uma das técnicas de abstração para especificações possíveis para essa linguagem é a abstração segura de dados. Essa abstração visa gerar um modelo abstrato a partir de um equivalente concreto que conserve as propriedades do sistema com respeito ao comportamento (modelo de traces) através da escolha de um dado do domínio abstrato para cada subconjunto do domínio concreto. O objetivo desse trabalho é propor um algoritmo para geração mecanizada de abstrações seguras para sistemas CSP seqüenciais com recursão simples. A especificação do algoritmo é apresentada usando o paradigma funcional e elementos da linguagem Z, com a introdução da estratégia através de exemplos. No estudo de caso, o software Mathematica é usado para instanciar os valores das variáveis e realizar a simplificação dos predicados construídos a partir desse algoritmo. Com esse trabalho, é possível gerar abstrações seguras de forma mecânica, e por conseqüência verificar o comportamento de modelos infinitos. Ademais, a geração de dados de testes automática também é beneficiada, já que com o domínio abstrato dos dados é possível percorrer todos os caminhos do sistema, gerando 100% de cobertura do modelo. Esse esforço é justificado pela importância que a fase de testes tem para a qualidade do software. Estudos prévios mostraram que essa fase demanda mais de 50% do custo de seu desenvolvimento, e uma pesquisa detalhada realizada nos Estados Unidos quantifica os altos impactos econômicos de uma infra-estrutura de software
publishDate 2008
dc.date.issued.fl_str_mv 2008-01-31
dc.date.accessioned.fl_str_mv 2014-06-12T15:50:21Z
dc.date.available.fl_str_mv 2014-06-12T15:50:21Z
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 Carla Damasceno, Adriana; Cabral Mota, Alexandre. Geração mecanizada de abstrações seguras para especificações CSP. 2008. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2008.
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/1471
dc.identifier.dark.fl_str_mv ark:/64986/001300000dc4f
identifier_str_mv Carla Damasceno, Adriana; Cabral Mota, Alexandre. Geração mecanizada de abstrações seguras para especificações CSP. 2008. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2008.
ark:/64986/001300000dc4f
url https://repositorio.ufpe.br/handle/123456789/1471
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Attribution-NonCommercial-NoDerivs 3.0 Brazil
http://creativecommons.org/licenses/by-nc-nd/3.0/br/
eu_rights_str_mv openAccess
dc.publisher.none.fl_str_mv Universidade Federal de Pernambuco
publisher.none.fl_str_mv Universidade Federal de Pernambuco
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFPE
instname:Universidade Federal de Pernambuco (UFPE)
instacron:UFPE
instname_str Universidade Federal de Pernambuco (UFPE)
instacron_str UFPE
institution UFPE
reponame_str Repositório Institucional da UFPE
collection Repositório Institucional da UFPE
bitstream.url.fl_str_mv https://repositorio.ufpe.br/bitstream/123456789/1471/4/ACD.pdf.jpg
https://repositorio.ufpe.br/bitstream/123456789/1471/1/license.txt
https://repositorio.ufpe.br/bitstream/123456789/1471/2/ACD.pdf
https://repositorio.ufpe.br/bitstream/123456789/1471/3/ACD.pdf.txt
bitstream.checksum.fl_str_mv 5b981b849a211120820f050def7cfa15
8a4605be74aa9ea9d79846c1fba20a33
0d9f32faffab7dde71851a33332bb3a9
fce94d37f6c32cf71e1e7eaf16bcbfe7
bitstream.checksumAlgorithm.fl_str_mv MD5
MD5
MD5
MD5
repository.name.fl_str_mv Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)
repository.mail.fl_str_mv attena@ufpe.br
_version_ 1815172797817683968