Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas

Detalhes bibliográficos
Autor(a) principal: Krug, Douglas Lusa
Data de Publicação: 2018
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/3470
Resumo: A atividade de programação para computadores, pertinente ao domínio da Engenharia de Software, é um elemento fundamental do processo de desenvolvimento de software. A programação para computadores é inicialmente ensinada em cursos relativos à área de Ciência da Computação em disciplinas de base nomeadas como Fundamentos de Programação, Lógica de Programação e afins. Estas disciplinas são tidas como difíceis e apresentam elevado número de desistência e reprovação. Assim sendo, métodos e ferramentas que auxiliem no processo de ensino-aprendizagem são necessários. Este trabalho relata a proposição de um método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas, podendo ser utilizado como auxílio no processo de ensino-aprendizagem da programação para computadores. O método proposto orienta a realização da coleta e análise dos dados oriundos de eventos gerados durante a programação para computadores e, por sua vez, as ferramentas desenvolvidas permitem realizar a coleta e a consolidação dos dados para a análise do instrutor/docente. Utilizando o método e as ferramentas desenvolvidas foi possível realizar 5 experimentos com alunos de cursos técnicos e de graduação da área de Ciência da Computação e Engenharias de 3 instituições de ensino distintas. Através dos dados coletados nestes experimentos foi possível observar que o número de compilações com falha, a média de erros de compilação e o número total de erros de compilação estão relacionados com a nota atribuída ao exercício resolvido, sendo que quanto maior estes números, menor a nota obtida no exercício. Ainda, referente aos dados coletados nos experimentos, é possível realizar um agrupamento dos erros cometidos durante o desenvolvimento dos programas pelos alunos, fornecendo ao instrutor/docente um panorama do indivíduo e da turma quanto às dificuldades destes. Adicionalmente, também foi observado um impacto positivo quanto ao retorno detalhado aos alunos sobre os dados coletados durante o desenvolvimento de programas, pois na segunda coleta de dados, em comparação com a primeira, é possível observar uma menor incidência de erros de compilação cometidos durante o processo de desenvolvimento do programa.
id UTFPR-12_b82a8f268d3d8ed0c5c7b6af8a4ebd43
oai_identifier_str oai:repositorio.utfpr.edu.br:1/3470
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 2018-09-28T19:21:43Z2018-09-28T19:21:43Z2018-08-24KRUG, Douglas Lusa. Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas. 2018. 153 f. Dissertação (Mestrado em Computação Aplicada) - Universidade Tecnológica Federal do Paraná, Curitiba, 2018.http://repositorio.utfpr.edu.br/jspui/handle/1/3470A atividade de programação para computadores, pertinente ao domínio da Engenharia de Software, é um elemento fundamental do processo de desenvolvimento de software. A programação para computadores é inicialmente ensinada em cursos relativos à área de Ciência da Computação em disciplinas de base nomeadas como Fundamentos de Programação, Lógica de Programação e afins. Estas disciplinas são tidas como difíceis e apresentam elevado número de desistência e reprovação. Assim sendo, métodos e ferramentas que auxiliem no processo de ensino-aprendizagem são necessários. Este trabalho relata a proposição de um método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas, podendo ser utilizado como auxílio no processo de ensino-aprendizagem da programação para computadores. O método proposto orienta a realização da coleta e análise dos dados oriundos de eventos gerados durante a programação para computadores e, por sua vez, as ferramentas desenvolvidas permitem realizar a coleta e a consolidação dos dados para a análise do instrutor/docente. Utilizando o método e as ferramentas desenvolvidas foi possível realizar 5 experimentos com alunos de cursos técnicos e de graduação da área de Ciência da Computação e Engenharias de 3 instituições de ensino distintas. Através dos dados coletados nestes experimentos foi possível observar que o número de compilações com falha, a média de erros de compilação e o número total de erros de compilação estão relacionados com a nota atribuída ao exercício resolvido, sendo que quanto maior estes números, menor a nota obtida no exercício. Ainda, referente aos dados coletados nos experimentos, é possível realizar um agrupamento dos erros cometidos durante o desenvolvimento dos programas pelos alunos, fornecendo ao instrutor/docente um panorama do indivíduo e da turma quanto às dificuldades destes. Adicionalmente, também foi observado um impacto positivo quanto ao retorno detalhado aos alunos sobre os dados coletados durante o desenvolvimento de programas, pois na segunda coleta de dados, em comparação com a primeira, é possível observar uma menor incidência de erros de compilação cometidos durante o processo de desenvolvimento do programa.The activity of computer programming, pertaining to the Software Engineering domain, is a fundamental element of the software development process. Computer programming is initially taught in courses related to the area of Computer Science in basic subjects named Fundamentals of Programming, Logic of Programming and others. These subjects are considered difficult and present a high index of withdrawal and failure. Therefore, methods and tools that assist in the teaching-learning process are necessary. This work reports the proposition of a method and tools for mapping the evolution of programmers during the development of computer programs, and it can be used as an aid in the computer programming teaching-learning process. The proposed method guides the collection and data analysis from events generated during computer programming and, in turn, the tools developed allow the data collection and consolidation for the instructor/teacher's analysis. Using the method and tools developed it was possible to carry out 5 experiments with students from technical and undergraduate courses in the area of Computer Science and Engineering in 3 different institutions. Based on the data collected in these experiments it was possible to observe that the number of failed compilations, the average of compilation errors and the total number of compilation errors are related to the grade assigned to the solved exercise, the higher these numbers are, the lower the obtained grade is. Also, regarding the data collected in the experiments, it is possible to group the errors performed by students during the development of the programs, giving the instructor/teacher an individual and group overview regarding their difficulties. In addition, a positive impact was also observed regarding the detailed feedback to the students about the data collected during the program development, because in the second data collection, in comparison with the first, it is possible to observe a lower incidence of compilation errors performed during the program development process.porUniversidade Tecnológica Federal do ParanáCuritibaPrograma de Pós-Graduação em Computação AplicadaUTFPRBrasilCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARECiência da ComputaçãoSoftware - DesenvolvimentoGerenciamento de configurações de softwareComputadores - ProgramaçãoProgramação (Computadores)Programação (Computadores) - Estudo e ensinoCompiladores (Computadores)ComputaçãoComputer software - DevelopmentSoftware configuration managementComputers - ProgrammingComputer programmingComputer programming - Study and teachingCompiling (Electronic computers)Computer scienceMétodo e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programasMethod and toolkit for mapping the evolution of programmers during program developmentinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisCuritibaBastos, Laudelino Cordeirohttp://lattes.cnpq.br/1231141260610815Simão, Jean Marcelohttp://lattes.cnpq.br/3593420323268103Lugo, Gustavo Alberto GiménezAgner, Luciane Telinski WiedermannFabro, João AlbertoSeca Neto, Adolfo Gustavo Serrahttp://lattes.cnpq.br/1328994533985579Krug, Douglas Lusainfo: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:UTFPRORIGINALCT_PPGCA_M_Krug, Douglas Lusa_2018.pdfCT_PPGCA_M_Krug, Douglas Lusa_2018.pdfapplication/pdf5597247http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/3470/1/CT_PPGCA_M_Krug%2c%20Douglas%20Lusa_2018.pdf37316bbb09b34320fd09c78590159bd5MD51LICENSElicense.txtlicense.txttext/plain; charset=utf-81290http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/3470/2/license.txtb9d82215ab23456fa2d8b49c5df1b95bMD52TEXTCT_PPGCA_M_Krug, Douglas Lusa_2018.pdf.txtCT_PPGCA_M_Krug, Douglas Lusa_2018.pdf.txtExtracted texttext/plain561096http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/3470/3/CT_PPGCA_M_Krug%2c%20Douglas%20Lusa_2018.pdf.txt79b7f359bc3397f8de660ea7545687d9MD53THUMBNAILCT_PPGCA_M_Krug, Douglas Lusa_2018.pdf.jpgCT_PPGCA_M_Krug, Douglas Lusa_2018.pdf.jpgGenerated Thumbnailimage/jpeg1286http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/3470/4/CT_PPGCA_M_Krug%2c%20Douglas%20Lusa_2018.pdf.jpgb8ada9ce72677bd8ada569005edcbe63MD541/34702018-09-29 03:00:48.827oai:repositorio.utfpr.edu.br:1/3470TmEgcXVhbGlkYWRlIGRlIHRpdHVsYXIgZG9zIGRpcmVpdG9zIGRlIGF1dG9yIGRhIHB1YmxpY2HDp8OjbywgYXV0b3Jpem8gYSBVVEZQUiBhIHZlaWN1bGFyLCAKYXRyYXbDqXMgZG8gUG9ydGFsIGRlIEluZm9ybWHDp8OjbyBlbSBBY2Vzc28gQWJlcnRvIChQSUFBKSBlIGRvcyBDYXTDoWxvZ29zIGRhcyBCaWJsaW90ZWNhcyAKZGVzdGEgSW5zdGl0dWnDp8Ojbywgc2VtIHJlc3NhcmNpbWVudG8gZG9zIGRpcmVpdG9zIGF1dG9yYWlzLCBkZSBhY29yZG8gY29tIGEgTGVpIG5vIDkuNjEwLzk4LCAKbyB0ZXh0byBkZXN0YSBvYnJhLCBvYnNlcnZhbmRvIGFzIGNvbmRpw6fDtWVzIGRlIGRpc3BvbmliaWxpemHDp8OjbyByZWdpc3RyYWRhcyBubyBpdGVtIDQgZG8gCuKAnFRlcm1vIGRlIEF1dG9yaXphw6fDo28gcGFyYSBQdWJsaWNhw6fDo28gZGUgVHJhYmFsaG9zIGRlIENvbmNsdXPDo28gZGUgQ3Vyc28gZGUgR3JhZHVhw6fDo28gZSAKRXNwZWNpYWxpemHDp8OjbywgRGlzc2VydGHDp8O1ZXMgZSBUZXNlcyBubyBQb3J0YWwgZGUgSW5mb3JtYcOnw6NvIGUgbm9zIENhdMOhbG9nb3MgRWxldHLDtG5pY29zIGRvIApTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIGRhIFVURlBS4oCdLCBwYXJhIGZpbnMgZGUgbGVpdHVyYSwgaW1wcmVzc8OjbyBlL291IGRvd25sb2FkLCB2aXNhbmRvIGEgCmRpdnVsZ2HDp8OjbyBkYSBwcm9kdcOnw6NvIGNpZW50w61maWNhIGJyYXNpbGVpcmEuCgogIEFzIHZpYXMgb3JpZ2luYWlzIGUgYXNzaW5hZGFzIHBlbG8ocykgYXV0b3IoZXMpIGRvIOKAnFRlcm1vIGRlIEF1dG9yaXphw6fDo28gcGFyYSBQdWJsaWNhw6fDo28gZGUgClRyYWJhbGhvcyBkZSBDb25jbHVzw6NvIGRlIEN1cnNvIGRlIEdyYWR1YcOnw6NvIGUgRXNwZWNpYWxpemHDp8OjbywgRGlzc2VydGHDp8O1ZXMgZSBUZXNlcyBubyBQb3J0YWwgCmRlIEluZm9ybWHDp8OjbyBlIG5vcyBDYXTDoWxvZ29zIEVsZXRyw7RuaWNvcyBkbyBTaXN0ZW1hIGRlIEJpYmxpb3RlY2FzIGRhIFVURlBS4oCdIGUgZGEg4oCcRGVjbGFyYcOnw6NvIApkZSBBdXRvcmlh4oCdIGVuY29udHJhbS1zZSBhcnF1aXZhZGFzIG5hIEJpYmxpb3RlY2EgZG8gQ8OibXB1cyBubyBxdWFsIG8gdHJhYmFsaG8gZm9pIGRlZmVuZGlkby4gCk5vIGNhc28gZGUgcHVibGljYcOnw7VlcyBkZSBhdXRvcmlhIGNvbGV0aXZhIGUgbXVsdGljw6JtcHVzLCBvcyBkb2N1bWVudG9zIGZpY2Fyw6NvIHNvYiBndWFyZGEgZGEgCkJpYmxpb3RlY2EgY29tIGEgcXVhbCBvIOKAnHByaW1laXJvIGF1dG9y4oCdIHBvc3N1YSB2w61uY3Vsby4KRepositório de PublicaçõesPUBhttp://repositorio.utfpr.edu.br:8080/oai/requestopendoar:2018-09-29T06:00:48Repositó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 Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
dc.title.alternative.pt_BR.fl_str_mv Method and toolkit for mapping the evolution of programmers during program development
title Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
spellingShingle Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
Krug, Douglas Lusa
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
Software - Desenvolvimento
Gerenciamento de configurações de software
Computadores - Programação
Programação (Computadores)
Programação (Computadores) - Estudo e ensino
Compiladores (Computadores)
Computação
Computer software - Development
Software configuration management
Computers - Programming
Computer programming
Computer programming - Study and teaching
Compiling (Electronic computers)
Computer science
Ciência da Computação
title_short Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
title_full Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
title_fullStr Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
title_full_unstemmed Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
title_sort Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas
author Krug, Douglas Lusa
author_facet Krug, Douglas Lusa
author_role author
dc.contributor.advisor1.fl_str_mv Bastos, Laudelino Cordeiro
dc.contributor.advisor1Lattes.fl_str_mv http://lattes.cnpq.br/1231141260610815
dc.contributor.advisor-co1.fl_str_mv Simão, Jean Marcelo
dc.contributor.advisor-co1Lattes.fl_str_mv http://lattes.cnpq.br/3593420323268103
dc.contributor.referee1.fl_str_mv Lugo, Gustavo Alberto Giménez
dc.contributor.referee2.fl_str_mv Agner, Luciane Telinski Wiedermann
dc.contributor.referee3.fl_str_mv Fabro, João Alberto
dc.contributor.referee4.fl_str_mv Seca Neto, Adolfo Gustavo Serra
dc.contributor.authorLattes.fl_str_mv http://lattes.cnpq.br/1328994533985579
dc.contributor.author.fl_str_mv Krug, Douglas Lusa
contributor_str_mv Bastos, Laudelino Cordeiro
Simão, Jean Marcelo
Lugo, Gustavo Alberto Giménez
Agner, Luciane Telinski Wiedermann
Fabro, João Alberto
Seca Neto, Adolfo Gustavo Serra
dc.subject.cnpq.fl_str_mv CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
topic CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
Software - Desenvolvimento
Gerenciamento de configurações de software
Computadores - Programação
Programação (Computadores)
Programação (Computadores) - Estudo e ensino
Compiladores (Computadores)
Computação
Computer software - Development
Software configuration management
Computers - Programming
Computer programming
Computer programming - Study and teaching
Compiling (Electronic computers)
Computer science
Ciência da Computação
dc.subject.por.fl_str_mv Software - Desenvolvimento
Gerenciamento de configurações de software
Computadores - Programação
Programação (Computadores)
Programação (Computadores) - Estudo e ensino
Compiladores (Computadores)
Computação
Computer software - Development
Software configuration management
Computers - Programming
Computer programming
Computer programming - Study and teaching
Compiling (Electronic computers)
Computer science
dc.subject.capes.pt_BR.fl_str_mv Ciência da Computação
description A atividade de programação para computadores, pertinente ao domínio da Engenharia de Software, é um elemento fundamental do processo de desenvolvimento de software. A programação para computadores é inicialmente ensinada em cursos relativos à área de Ciência da Computação em disciplinas de base nomeadas como Fundamentos de Programação, Lógica de Programação e afins. Estas disciplinas são tidas como difíceis e apresentam elevado número de desistência e reprovação. Assim sendo, métodos e ferramentas que auxiliem no processo de ensino-aprendizagem são necessários. Este trabalho relata a proposição de um método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas, podendo ser utilizado como auxílio no processo de ensino-aprendizagem da programação para computadores. O método proposto orienta a realização da coleta e análise dos dados oriundos de eventos gerados durante a programação para computadores e, por sua vez, as ferramentas desenvolvidas permitem realizar a coleta e a consolidação dos dados para a análise do instrutor/docente. Utilizando o método e as ferramentas desenvolvidas foi possível realizar 5 experimentos com alunos de cursos técnicos e de graduação da área de Ciência da Computação e Engenharias de 3 instituições de ensino distintas. Através dos dados coletados nestes experimentos foi possível observar que o número de compilações com falha, a média de erros de compilação e o número total de erros de compilação estão relacionados com a nota atribuída ao exercício resolvido, sendo que quanto maior estes números, menor a nota obtida no exercício. Ainda, referente aos dados coletados nos experimentos, é possível realizar um agrupamento dos erros cometidos durante o desenvolvimento dos programas pelos alunos, fornecendo ao instrutor/docente um panorama do indivíduo e da turma quanto às dificuldades destes. Adicionalmente, também foi observado um impacto positivo quanto ao retorno detalhado aos alunos sobre os dados coletados durante o desenvolvimento de programas, pois na segunda coleta de dados, em comparação com a primeira, é possível observar uma menor incidência de erros de compilação cometidos durante o processo de desenvolvimento do programa.
publishDate 2018
dc.date.accessioned.fl_str_mv 2018-09-28T19:21:43Z
dc.date.available.fl_str_mv 2018-09-28T19:21:43Z
dc.date.issued.fl_str_mv 2018-08-24
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 KRUG, Douglas Lusa. Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas. 2018. 153 f. Dissertação (Mestrado em Computação Aplicada) - Universidade Tecnológica Federal do Paraná, Curitiba, 2018.
dc.identifier.uri.fl_str_mv http://repositorio.utfpr.edu.br/jspui/handle/1/3470
identifier_str_mv KRUG, Douglas Lusa. Método e ferramental para mapeamento da evolução de programadores durante o desenvolvimento de programas. 2018. 153 f. Dissertação (Mestrado em Computação Aplicada) - Universidade Tecnológica Federal do Paraná, Curitiba, 2018.
url http://repositorio.utfpr.edu.br/jspui/handle/1/3470
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á
Curitiba
dc.publisher.program.fl_str_mv Programa de Pós-Graduação em Computação Aplicada
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á
Curitiba
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/3470/1/CT_PPGCA_M_Krug%2c%20Douglas%20Lusa_2018.pdf
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/3470/2/license.txt
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/3470/3/CT_PPGCA_M_Krug%2c%20Douglas%20Lusa_2018.pdf.txt
http://repositorio.utfpr.edu.br:8080/jspui/bitstream/1/3470/4/CT_PPGCA_M_Krug%2c%20Douglas%20Lusa_2018.pdf.jpg
bitstream.checksum.fl_str_mv 37316bbb09b34320fd09c78590159bd5
b9d82215ab23456fa2d8b49c5df1b95b
79b7f359bc3397f8de660ea7545687d9
b8ada9ce72677bd8ada569005edcbe63
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_ 1805923181225050112