MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER

Detalhes bibliográficos
Autor(a) principal: Santiago Ferreira, Felype
Data de Publicação: 2012
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UFPE
dARK ID: ark:/64986/001300000svrw
Texto Completo: https://repositorio.ufpe.br/handle/123456789/2852
Resumo: Desenvolvedores evoluem linhas de produtos de software (LPSs) manualmente ou usando Ferramentas típicas de refatoração de programas. No entanto, quando a evolução de uma Linha de produtos é feita para introduzir novas características, ou para melhorar o seu projeto, é importante ter a certeza de que o comportamento dos produtos existentes não é modificado. Programas típicos de refatoração de software não podem garantir isso porque o contexto de LPS vai além de código, e outros tipos de artefatos de código, e envolve artefatos adicionais, tais como modelos de feature e configuration knowledge. Além disso, em uma LPS, normalmente temos que lidar com um conjunto de possíveis artefatos de código-fonte alternativos que não constitui um programa bem formado. Como resultado, mudanças manuais e ferramentas de refatoração de software existentes podem introduzir mudanças comportamentais ou invalidar configurações de produtos existentes. Para evitar isso, propomos abordagens e implementamos ferramentas para tornar a evolução de linhas de produtos mais segura; essas ferramentas verificam se transformações em LPS são refinamentos no sentido de que preservam o comportamento dos produtos originais da LPS. Elas implementam aproximações diferentes e práticas de uma definição formal de refinamento de LPS. Avaliamos as abordagens em cenários concretos de evolução de LPS, onde o comportamento do produto existente deve ser preservado. No entanto, nossas ferramentas constataram que algumas transformações introduziram mudanças comportamentais. Além disso, avaliamos refinamentos defeituosos, e o conjunto de ferramentas detectou as mudanças de comportamento.
id UFPE_a4e985bd03d652bdb9e9edea51c63446
oai_identifier_str oai:repositorio.ufpe.br:123456789/2852
network_acronym_str UFPE
network_name_str Repositório Institucional da UFPE
repository_id_str 2221
spelling Santiago Ferreira, FelypeHenrique Monteiro Borba, Paulo2014-06-12T16:01:35Z2014-06-12T16:01:35Z2012-01-31Santiago Ferreira, Felype; Henrique Monteiro Borba, Paulo. MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER. 2012. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2012.https://repositorio.ufpe.br/handle/123456789/2852ark:/64986/001300000svrwDesenvolvedores evoluem linhas de produtos de software (LPSs) manualmente ou usando Ferramentas típicas de refatoração de programas. No entanto, quando a evolução de uma Linha de produtos é feita para introduzir novas características, ou para melhorar o seu projeto, é importante ter a certeza de que o comportamento dos produtos existentes não é modificado. Programas típicos de refatoração de software não podem garantir isso porque o contexto de LPS vai além de código, e outros tipos de artefatos de código, e envolve artefatos adicionais, tais como modelos de feature e configuration knowledge. Além disso, em uma LPS, normalmente temos que lidar com um conjunto de possíveis artefatos de código-fonte alternativos que não constitui um programa bem formado. Como resultado, mudanças manuais e ferramentas de refatoração de software existentes podem introduzir mudanças comportamentais ou invalidar configurações de produtos existentes. Para evitar isso, propomos abordagens e implementamos ferramentas para tornar a evolução de linhas de produtos mais segura; essas ferramentas verificam se transformações em LPS são refinamentos no sentido de que preservam o comportamento dos produtos originais da LPS. Elas implementam aproximações diferentes e práticas de uma definição formal de refinamento de LPS. Avaliamos as abordagens em cenários concretos de evolução de LPS, onde o comportamento do produto existente deve ser preservado. No entanto, nossas ferramentas constataram que algumas transformações introduziram mudanças comportamentais. Além disso, avaliamos refinamentos defeituosos, e o conjunto de ferramentas detectou as mudanças de comportamento.Coordenaçã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/openAccessLinhas de produtos de softwareevolução de linha de produtoferramentas de checagemrefatoraçãorefinamentoevolução seguraMAKING SOFTWARE PRODUCT LINE EVOLUTION SAFERinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisreponame:Repositório Institucional da UFPEinstname:Universidade Federal de Pernambuco (UFPE)instacron:UFPELICENSElicense.txttext/plain1748https://repositorio.ufpe.br/bitstream/123456789/2852/1/license.txt8a4605be74aa9ea9d79846c1fba20a33MD51123456789/28522016-06-17 12:02:56.127oai:repositorio.ufpe.br:123456789/2852Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório InstitucionalPUBhttps://repositorio.ufpe.br/oai/requestattena@ufpe.bropendoar:22212016-06-17T15:02:56Repositório Institucional da UFPE - Universidade Federal de Pernambuco (UFPE)false
dc.title.pt_BR.fl_str_mv MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
title MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
spellingShingle MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
Santiago Ferreira, Felype
Linhas de produtos de software
evolução de linha de produto
ferramentas de checagem
refatoração
refinamento
evolução segura
title_short MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
title_full MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
title_fullStr MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
title_full_unstemmed MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
title_sort MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER
author Santiago Ferreira, Felype
author_facet Santiago Ferreira, Felype
author_role author
dc.contributor.author.fl_str_mv Santiago Ferreira, Felype
dc.contributor.advisor1.fl_str_mv Henrique Monteiro Borba, Paulo
contributor_str_mv Henrique Monteiro Borba, Paulo
dc.subject.por.fl_str_mv Linhas de produtos de software
evolução de linha de produto
ferramentas de checagem
refatoração
refinamento
evolução segura
topic Linhas de produtos de software
evolução de linha de produto
ferramentas de checagem
refatoração
refinamento
evolução segura
description Desenvolvedores evoluem linhas de produtos de software (LPSs) manualmente ou usando Ferramentas típicas de refatoração de programas. No entanto, quando a evolução de uma Linha de produtos é feita para introduzir novas características, ou para melhorar o seu projeto, é importante ter a certeza de que o comportamento dos produtos existentes não é modificado. Programas típicos de refatoração de software não podem garantir isso porque o contexto de LPS vai além de código, e outros tipos de artefatos de código, e envolve artefatos adicionais, tais como modelos de feature e configuration knowledge. Além disso, em uma LPS, normalmente temos que lidar com um conjunto de possíveis artefatos de código-fonte alternativos que não constitui um programa bem formado. Como resultado, mudanças manuais e ferramentas de refatoração de software existentes podem introduzir mudanças comportamentais ou invalidar configurações de produtos existentes. Para evitar isso, propomos abordagens e implementamos ferramentas para tornar a evolução de linhas de produtos mais segura; essas ferramentas verificam se transformações em LPS são refinamentos no sentido de que preservam o comportamento dos produtos originais da LPS. Elas implementam aproximações diferentes e práticas de uma definição formal de refinamento de LPS. Avaliamos as abordagens em cenários concretos de evolução de LPS, onde o comportamento do produto existente deve ser preservado. No entanto, nossas ferramentas constataram que algumas transformações introduziram mudanças comportamentais. Além disso, avaliamos refinamentos defeituosos, e o conjunto de ferramentas detectou as mudanças de comportamento.
publishDate 2012
dc.date.issued.fl_str_mv 2012-01-31
dc.date.accessioned.fl_str_mv 2014-06-12T16:01:35Z
dc.date.available.fl_str_mv 2014-06-12T16:01:35Z
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 Santiago Ferreira, Felype; Henrique Monteiro Borba, Paulo. MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER. 2012. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2012.
dc.identifier.uri.fl_str_mv https://repositorio.ufpe.br/handle/123456789/2852
dc.identifier.dark.fl_str_mv ark:/64986/001300000svrw
identifier_str_mv Santiago Ferreira, Felype; Henrique Monteiro Borba, Paulo. MAKING SOFTWARE PRODUCT LINE EVOLUTION SAFER. 2012. Dissertação (Mestrado). Programa de Pós-Graduação em Ciência da Computação, Universidade Federal de Pernambuco, Recife, 2012.
ark:/64986/001300000svrw
url https://repositorio.ufpe.br/handle/123456789/2852
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/2852/1/license.txt
bitstream.checksum.fl_str_mv 8a4605be74aa9ea9d79846c1fba20a33
bitstream.checksumAlgorithm.fl_str_mv 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_ 1814448352123682816