Detalhes bibliográficos
Ano de defesa: |
2017 |
Autor(a) principal: |
Costa, Leandro Teodoro
|
Orientador(a): |
Zorzo, Avelino Francisco
|
Banca de defesa: |
Não Informado pela instituição |
Tipo de documento: |
Tese
|
Tipo de acesso: |
Acesso aberto |
Idioma: |
eng |
Instituição de defesa: |
Pontifícia Universidade Católica do Rio Grande do Sul
|
Programa de Pós-Graduação: |
Programa de Pós-Graduação em Ciência da Computação
|
Departamento: |
Escola Politécnica
|
País: |
Brasil
|
Palavras-chave em Português: |
|
Palavras-chave em Inglês: |
|
Área do conhecimento CNPq: |
|
Link de acesso: |
http://tede2.pucrs.br/tede2/handle/tede/8443
|
Resumo: |
Linhas de Produtos de Software (LPS) tem como objetivo auxiliar no desenvolvimento de sistemas com base na reutilização de componentes de software. Através deste conceito, é possível criar um conjunto de sistemas similares, reduzindo assim o tempo de comercialização e custo e, consequentemente, obter maior produtividade e melhorias na qualidade do software. Embora o reuso seja a base para o desenvolvimento de sistemas para LPS, a atividade de teste ainda não se beneficia totalmente desse conceito. Isto se deve a um importante fator inerente a LPS, i.e., Variabilidade. A variabilidade diz respeito a como os membros/componentes que compõem os produtos de uma LPS diferem entre si. Além disso, a variabilidade representa diferentes tipos de variação sob diferentes níveis com diferentes tipos de dependência. O problema de lidar com a variabilidade no contexto do teste não é uma tarefa trivial, uma vez que quando a variabilidade em LPSs cresce, a quantidade de testes necessários para avaliar a qualidade do produto pode aumentar exponencialmente. Portanto, esta tese apresenta um método chamado SPLiT-MBt para gerar casos de teste funcional e scripts para testar produtos derivados de LPSs. Assim, os casos de teste para testar funcionalidades comuns entre os produtos são gerados com base nesse reuso inerente às LPSs. Para fornecer esse reuso, o SPLiT-MBt é aplicado em duas etapas. Na primeira, as informações de variabilidade e teste anotadas em modelos de sistema são utilizadas para gerar seqüências de teste usando diferentes métodos, e.g., HSI, UIO, DS ou TT. Esses métodos são aplicados a modelos formais, e.g., Máquinas de Estado Finitos (FSMs), as quais são estendidas para lidar com informações de variabilidade. Na segunda etapa, os modelos de teste e as seqüências geradas são reutilizados para gerar scripts de teste, os quais podem ser executados por diferentes ferramentas de teste funcional com o objetivo de avaliar a qualidade dos produtos. Finalmente, para demonstrar a aplicabilidade deste trabalho, utilizamos nosso método para testar produtos de duas LPSs, i.e., uma LPS real chamada PLeTs e uma LPS acadêmica chamada AGM. Além disso, realizamos um estudo experimental com o intuito de avaliar o esforço de gerar casos de teste para produtos de uma LPS. O objetivo foi comparar o nosso SPLiT- MBt com outras duas metodologias/abordagens de teste de LPSs. Ao final, os resultados apontam que o esforço para gerar casos de teste usando nosso método foi reduzido consideravelmente quando comparado com as outras metodologias. |