Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação
Autor(a) principal: | |
---|---|
Data de Publicação: | 2016 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) |
Texto Completo: | http://repositorio.utfpr.edu.br/jspui/handle/1/2566 |
Resumo: | Contexto: Estudantes de cursos da área de Ciência da Computação que estão iniciando em programação normalmente têm dificuldade de assimilar os conteúdos básicos. Alguns pesquisadores propõem a utilização do desenvolvimento baseado em testes (TDD) a fim de melhorar o ensino, mas sem o foco na qualidade do conjunto de casos de teste. Objetivo: Este trabalho tem o objetivo de propor uma estratégia baseada no desenvolvimento baseado por testes em conjunto com técnicas de teste de software, guiando o aluno a desempenhar suas atividades de programação com mais qualidade e, desta forma, obter melhores resultados acadêmicos. Método: Baseado em um mapeamento sistemático da literatura e na revisão de estudos que aplicam desenvolvimento baseado em testes (TDD) em âmbito educacional, foi definida uma estratégia para integrar critérios de teste ao TDD. Para avaliar os resultados, foram definidas medidas e instrumentos para a coleta de resultados. Foi executado um experimento científico com o público alvo para a obtenção das informações com a finalidade de avaliar a hipótese definida. Resultados: Foi definida uma estratégia de utilização de técnicas de teste de software em conjunto com o TDD para alunos que estão iniciando em programação em cursos de Computação. A estratégia consiste na melhoria do conjunto de casos de teste durante a refatoração no TDD, considerando critérios estruturais baseado em fluxo de controle. Além disso, foram elaboradas ferramentas para a coleta de dados durante o desenvolvimento de programas e para análise dos dados. A estratégia permitiu a melhora do programa e dos casos de teste e foi avaliada pelos estudantes como um guia no desenvolvimento dos casos de teste e como um atalho para descoberta de defeitos. Conclusões: Com a utilização da estratégia proposta, foi possível observar melhorias no conjunto de casos de teste e no software final. A estratégia definida pode ser replicada em outros contextos e com o emprego de outras técnicas e critérios de teste de software para a avaliação da hipótese definida e generalização dos resultados. |
id |
UTFPR-12_74d32b49ba29de41be3910f3035ddaad |
---|---|
oai_identifier_str |
oai:repositorio.utfpr.edu.br:1/2566 |
network_acronym_str |
UTFPR-12 |
network_name_str |
Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) |
repository_id_str |
|
spelling |
2017-11-05T14:08:20Z2017-11-05T14:08:20Z2016-07-01CAMARA, Bruno Henrique Pachulski. Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação. 2016. 130 f. Dissertação (Mestrado em Informática) - Universidade Tecnológica Federal do Paraná, Cornélio Procópio, 2016.http://repositorio.utfpr.edu.br/jspui/handle/1/2566Contexto: Estudantes de cursos da área de Ciência da Computação que estão iniciando em programação normalmente têm dificuldade de assimilar os conteúdos básicos. Alguns pesquisadores propõem a utilização do desenvolvimento baseado em testes (TDD) a fim de melhorar o ensino, mas sem o foco na qualidade do conjunto de casos de teste. Objetivo: Este trabalho tem o objetivo de propor uma estratégia baseada no desenvolvimento baseado por testes em conjunto com técnicas de teste de software, guiando o aluno a desempenhar suas atividades de programação com mais qualidade e, desta forma, obter melhores resultados acadêmicos. Método: Baseado em um mapeamento sistemático da literatura e na revisão de estudos que aplicam desenvolvimento baseado em testes (TDD) em âmbito educacional, foi definida uma estratégia para integrar critérios de teste ao TDD. Para avaliar os resultados, foram definidas medidas e instrumentos para a coleta de resultados. Foi executado um experimento científico com o público alvo para a obtenção das informações com a finalidade de avaliar a hipótese definida. Resultados: Foi definida uma estratégia de utilização de técnicas de teste de software em conjunto com o TDD para alunos que estão iniciando em programação em cursos de Computação. A estratégia consiste na melhoria do conjunto de casos de teste durante a refatoração no TDD, considerando critérios estruturais baseado em fluxo de controle. Além disso, foram elaboradas ferramentas para a coleta de dados durante o desenvolvimento de programas e para análise dos dados. A estratégia permitiu a melhora do programa e dos casos de teste e foi avaliada pelos estudantes como um guia no desenvolvimento dos casos de teste e como um atalho para descoberta de defeitos. Conclusões: Com a utilização da estratégia proposta, foi possível observar melhorias no conjunto de casos de teste e no software final. A estratégia definida pode ser replicada em outros contextos e com o emprego de outras técnicas e critérios de teste de software para a avaliação da hipótese definida e generalização dos resultados.Background: Students of Computer Science courses usually have difficulty assimilating the basic contents of introductory programming disciplines. Some researchers propose the use of Test-Driven Development (TDD) to improve teaching, but with no focus in the test set quality. Objective: The goal of this study is to define a strategy for test-driven development using software testing criteria, guiding students to improve the quality of their programming activities, and, consequently, academic results. Method: Initially, we performed a systematic mapping study on TDD in the Computing education context, and a literature review about the usage of test criteria with TDD. Considering the evidences collected, we defined a strategy to integrate the usage of test criteria into TDD. In order to evaluate this strategy, we defined measurements and instruments for data collection. An experimental study was conducted with students to evaluate the strategy and the objective satisfaction. Results: We defined a strategy to use software testing criteria with TDD for students that are learning how to program in Computing courses. The strategy consists into improving the test set while refactoring the code at TDD, considering control-flow-based structural testing criteria. Morever, we developed a set of tools to gather and analyze data produced by the students while using the strategy in the experimental study. The strategy lead to higher quality programs and test sets, and it was considered useful by the students, providing a guide for the creation of test cases, and helping them to discover errors. Conclusions: It was possible to observe improvements into the quality of programs and of test sets. The strategy can be replicated, considering different contexts and evaluting more testing criteria, fostering further evaluation of the objective and generalization of the results.porUniversidade Tecnológica Federal do ParanáCornelio ProcopioPrograma de Pós-Graduação em InformáticaUTFPRBrasilCNPQ::CIENCIAS EXATAS E DA TERRACiência da ComputaçãoSoftware - TestesEngenharia de softwareProgramação (Computadores)Computer software - TestingSoftware engineeringComputer programmingUma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programaçãoAn investigation on using testing criteria in test-driven development for programming educationinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisCornélio ProcópioSilva, Marco Aurélio Graciottohttp://lattes.cnpq.br/9383290036853173Silva, Marco Aurélio GraciottoBarbosa, Ellen FrancineEndo, André Takeshihttp://lattes.cnpq.br/1671471262863501Camara, Bruno Henrique Pachulskiinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))instname:Universidade Tecnológica Federal do Paraná (UTFPR)instacron:UTFPRORIGINALCP_PPGI_M_Camara, Bruno Henrique Pachulski_2016.pdfCP_PPGI_M_Camara, Bruno Henrique Pachulski_2016.pdfapplication/pdf2351762http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/1/CP_PPGI_M_Camara%2c%20Bruno%20Henrique%20Pachulski_2016.pdf97557d155fc09759f4d2eec1f736b130MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81748http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/2/license.txt8a4605be74aa9ea9d79846c1fba20a33MD52TEXTCP_PPGI_M_Camara, Bruno Henrique Pachulski_2016.pdf.txtCP_PPGI_M_Camara, Bruno Henrique Pachulski_2016.pdf.txtExtracted texttext/plain250597http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/3/CP_PPGI_M_Camara%2c%20Bruno%20Henrique%20Pachulski_2016.pdf.txt04d31b0a885986f1349614754fadb842MD53THUMBNAILCP_PPGI_M_Camara, Bruno Henrique Pachulski_2016.pdf.jpgCP_PPGI_M_Camara, Bruno Henrique Pachulski_2016.pdf.jpgGenerated Thumbnailimage/jpeg1402http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/4/CP_PPGI_M_Camara%2c%20Bruno%20Henrique%20Pachulski_2016.pdf.jpga49aa1bcdb27f067d9cda9aa7dea877aMD541/25662017-11-05 12:08:21.01oai:repositorio.utfpr.edu.br:1/2566Tk9URTogUExBQ0UgWU9VUiBPV04gTElDRU5TRSBIRVJFClRoaXMgc2FtcGxlIGxpY2Vuc2UgaXMgcHJvdmlkZWQgZm9yIGluZm9ybWF0aW9uYWwgcHVycG9zZXMgb25seS4KCk5PTi1FWENMVVNJVkUgRElTVFJJQlVUSU9OIExJQ0VOU0UKCkJ5IHNpZ25pbmcgYW5kIHN1Ym1pdHRpbmcgdGhpcyBsaWNlbnNlLCB5b3UgKHRoZSBhdXRob3Iocykgb3IgY29weXJpZ2h0Cm93bmVyKSBncmFudHMgdG8gRFNwYWNlIFVuaXZlcnNpdHkgKERTVSkgdGhlIG5vbi1leGNsdXNpdmUgcmlnaHQgdG8gcmVwcm9kdWNlLAp0cmFuc2xhdGUgKGFzIGRlZmluZWQgYmVsb3cpLCBhbmQvb3IgZGlzdHJpYnV0ZSB5b3VyIHN1Ym1pc3Npb24gKGluY2x1ZGluZwp0aGUgYWJzdHJhY3QpIHdvcmxkd2lkZSBpbiBwcmludCBhbmQgZWxlY3Ryb25pYyBmb3JtYXQgYW5kIGluIGFueSBtZWRpdW0sCmluY2x1ZGluZyBidXQgbm90IGxpbWl0ZWQgdG8gYXVkaW8gb3IgdmlkZW8uCgpZb3UgYWdyZWUgdGhhdCBEU1UgbWF5LCB3aXRob3V0IGNoYW5naW5nIHRoZSBjb250ZW50LCB0cmFuc2xhdGUgdGhlCnN1Ym1pc3Npb24gdG8gYW55IG1lZGl1bSBvciBmb3JtYXQgZm9yIHRoZSBwdXJwb3NlIG9mIHByZXNlcnZhdGlvbi4KCllvdSBhbHNvIGFncmVlIHRoYXQgRFNVIG1heSBrZWVwIG1vcmUgdGhhbiBvbmUgY29weSBvZiB0aGlzIHN1Ym1pc3Npb24gZm9yCnB1cnBvc2VzIG9mIHNlY3VyaXR5LCBiYWNrLXVwIGFuZCBwcmVzZXJ2YXRpb24uCgpZb3UgcmVwcmVzZW50IHRoYXQgdGhlIHN1Ym1pc3Npb24gaXMgeW91ciBvcmlnaW5hbCB3b3JrLCBhbmQgdGhhdCB5b3UgaGF2ZQp0aGUgcmlnaHQgdG8gZ3JhbnQgdGhlIHJpZ2h0cyBjb250YWluZWQgaW4gdGhpcyBsaWNlbnNlLiBZb3UgYWxzbyByZXByZXNlbnQKdGhhdCB5b3VyIHN1Ym1pc3Npb24gZG9lcyBub3QsIHRvIHRoZSBiZXN0IG9mIHlvdXIga25vd2xlZGdlLCBpbmZyaW5nZSB1cG9uCmFueW9uZSdzIGNvcHlyaWdodC4KCklmIHRoZSBzdWJtaXNzaW9uIGNvbnRhaW5zIG1hdGVyaWFsIGZvciB3aGljaCB5b3UgZG8gbm90IGhvbGQgY29weXJpZ2h0LAp5b3UgcmVwcmVzZW50IHRoYXQgeW91IGhhdmUgb2J0YWluZWQgdGhlIHVucmVzdHJpY3RlZCBwZXJtaXNzaW9uIG9mIHRoZQpjb3B5cmlnaHQgb3duZXIgdG8gZ3JhbnQgRFNVIHRoZSByaWdodHMgcmVxdWlyZWQgYnkgdGhpcyBsaWNlbnNlLCBhbmQgdGhhdApzdWNoIHRoaXJkLXBhcnR5IG93bmVkIG1hdGVyaWFsIGlzIGNsZWFybHkgaWRlbnRpZmllZCBhbmQgYWNrbm93bGVkZ2VkCndpdGhpbiB0aGUgdGV4dCBvciBjb250ZW50IG9mIHRoZSBzdWJtaXNzaW9uLgoKSUYgVEhFIFNVQk1JU1NJT04gSVMgQkFTRUQgVVBPTiBXT1JLIFRIQVQgSEFTIEJFRU4gU1BPTlNPUkVEIE9SIFNVUFBPUlRFRApCWSBBTiBBR0VOQ1kgT1IgT1JHQU5JWkFUSU9OIE9USEVSIFRIQU4gRFNVLCBZT1UgUkVQUkVTRU5UIFRIQVQgWU9VIEhBVkUKRlVMRklMTEVEIEFOWSBSSUdIVCBPRiBSRVZJRVcgT1IgT1RIRVIgT0JMSUdBVElPTlMgUkVRVUlSRUQgQlkgU1VDSApDT05UUkFDVCBPUiBBR1JFRU1FTlQuCgpEU1Ugd2lsbCBjbGVhcmx5IGlkZW50aWZ5IHlvdXIgbmFtZShzKSBhcyB0aGUgYXV0aG9yKHMpIG9yIG93bmVyKHMpIG9mIHRoZQpzdWJtaXNzaW9uLCBhbmQgd2lsbCBub3QgbWFrZSBhbnkgYWx0ZXJhdGlvbiwgb3RoZXIgdGhhbiBhcyBhbGxvd2VkIGJ5IHRoaXMKbGljZW5zZSwgdG8geW91ciBzdWJtaXNzaW9uLgo=Repositório de PublicaçõesPUBhttp://repositorio.utfpr.edu.br:8080/oai/requestopendoar:2017-11-05T14:08:21Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)false |
dc.title.pt_BR.fl_str_mv |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação |
dc.title.alternative.pt_BR.fl_str_mv |
An investigation on using testing criteria in test-driven development for programming education |
title |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação |
spellingShingle |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação Camara, Bruno Henrique Pachulski CNPQ::CIENCIAS EXATAS E DA TERRA Software - Testes Engenharia de software Programação (Computadores) Computer software - Testing Software engineering Computer programming Ciência da Computação |
title_short |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação |
title_full |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação |
title_fullStr |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação |
title_full_unstemmed |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação |
title_sort |
Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação |
author |
Camara, Bruno Henrique Pachulski |
author_facet |
Camara, Bruno Henrique Pachulski |
author_role |
author |
dc.contributor.advisor1.fl_str_mv |
Silva, Marco Aurélio Graciotto |
dc.contributor.advisor1Lattes.fl_str_mv |
http://lattes.cnpq.br/9383290036853173 |
dc.contributor.referee1.fl_str_mv |
Silva, Marco Aurélio Graciotto |
dc.contributor.referee2.fl_str_mv |
Barbosa, Ellen Francine |
dc.contributor.referee3.fl_str_mv |
Endo, André Takeshi |
dc.contributor.authorLattes.fl_str_mv |
http://lattes.cnpq.br/1671471262863501 |
dc.contributor.author.fl_str_mv |
Camara, Bruno Henrique Pachulski |
contributor_str_mv |
Silva, Marco Aurélio Graciotto Silva, Marco Aurélio Graciotto Barbosa, Ellen Francine Endo, André Takeshi |
dc.subject.cnpq.fl_str_mv |
CNPQ::CIENCIAS EXATAS E DA TERRA |
topic |
CNPQ::CIENCIAS EXATAS E DA TERRA Software - Testes Engenharia de software Programação (Computadores) Computer software - Testing Software engineering Computer programming Ciência da Computação |
dc.subject.por.fl_str_mv |
Software - Testes Engenharia de software Programação (Computadores) Computer software - Testing Software engineering Computer programming |
dc.subject.capes.pt_BR.fl_str_mv |
Ciência da Computação |
description |
Contexto: Estudantes de cursos da área de Ciência da Computação que estão iniciando em programação normalmente têm dificuldade de assimilar os conteúdos básicos. Alguns pesquisadores propõem a utilização do desenvolvimento baseado em testes (TDD) a fim de melhorar o ensino, mas sem o foco na qualidade do conjunto de casos de teste. Objetivo: Este trabalho tem o objetivo de propor uma estratégia baseada no desenvolvimento baseado por testes em conjunto com técnicas de teste de software, guiando o aluno a desempenhar suas atividades de programação com mais qualidade e, desta forma, obter melhores resultados acadêmicos. Método: Baseado em um mapeamento sistemático da literatura e na revisão de estudos que aplicam desenvolvimento baseado em testes (TDD) em âmbito educacional, foi definida uma estratégia para integrar critérios de teste ao TDD. Para avaliar os resultados, foram definidas medidas e instrumentos para a coleta de resultados. Foi executado um experimento científico com o público alvo para a obtenção das informações com a finalidade de avaliar a hipótese definida. Resultados: Foi definida uma estratégia de utilização de técnicas de teste de software em conjunto com o TDD para alunos que estão iniciando em programação em cursos de Computação. A estratégia consiste na melhoria do conjunto de casos de teste durante a refatoração no TDD, considerando critérios estruturais baseado em fluxo de controle. Além disso, foram elaboradas ferramentas para a coleta de dados durante o desenvolvimento de programas e para análise dos dados. A estratégia permitiu a melhora do programa e dos casos de teste e foi avaliada pelos estudantes como um guia no desenvolvimento dos casos de teste e como um atalho para descoberta de defeitos. Conclusões: Com a utilização da estratégia proposta, foi possível observar melhorias no conjunto de casos de teste e no software final. A estratégia definida pode ser replicada em outros contextos e com o emprego de outras técnicas e critérios de teste de software para a avaliação da hipótese definida e generalização dos resultados. |
publishDate |
2016 |
dc.date.issued.fl_str_mv |
2016-07-01 |
dc.date.accessioned.fl_str_mv |
2017-11-05T14:08:20Z |
dc.date.available.fl_str_mv |
2017-11-05T14:08:20Z |
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 |
CAMARA, Bruno Henrique Pachulski. Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação. 2016. 130 f. Dissertação (Mestrado em Informática) - Universidade Tecnológica Federal do Paraná, Cornélio Procópio, 2016. |
dc.identifier.uri.fl_str_mv |
http://repositorio.utfpr.edu.br/jspui/handle/1/2566 |
identifier_str_mv |
CAMARA, Bruno Henrique Pachulski. Uma investigação sobre o uso de critérios de teste no desenvolvimento baseado em testes para o ensino de programação. 2016. 130 f. Dissertação (Mestrado em Informática) - Universidade Tecnológica Federal do Paraná, Cornélio Procópio, 2016. |
url |
http://repositorio.utfpr.edu.br/jspui/handle/1/2566 |
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.none.fl_str_mv |
Universidade Tecnológica Federal do Paraná Cornelio Procopio |
dc.publisher.program.fl_str_mv |
Programa de Pós-Graduação em Informática |
dc.publisher.initials.fl_str_mv |
UTFPR |
dc.publisher.country.fl_str_mv |
Brasil |
publisher.none.fl_str_mv |
Universidade Tecnológica Federal do Paraná Cornelio Procopio |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) instname:Universidade Tecnológica Federal do Paraná (UTFPR) instacron:UTFPR |
instname_str |
Universidade Tecnológica Federal do Paraná (UTFPR) |
instacron_str |
UTFPR |
institution |
UTFPR |
reponame_str |
Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) |
collection |
Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) |
bitstream.url.fl_str_mv |
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/1/CP_PPGI_M_Camara%2c%20Bruno%20Henrique%20Pachulski_2016.pdf http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/2/license.txt http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/3/CP_PPGI_M_Camara%2c%20Bruno%20Henrique%20Pachulski_2016.pdf.txt http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/2566/4/CP_PPGI_M_Camara%2c%20Bruno%20Henrique%20Pachulski_2016.pdf.jpg |
bitstream.checksum.fl_str_mv |
97557d155fc09759f4d2eec1f736b130 8a4605be74aa9ea9d79846c1fba20a33 04d31b0a885986f1349614754fadb842 a49aa1bcdb27f067d9cda9aa7dea877a |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR) |
repository.mail.fl_str_mv |
|
_version_ |
1805923074282881024 |