Geração mecanizada de abstrações seguras para especificações CSP
Autor(a) principal: | |
---|---|
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 |