Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte

Detalhes bibliográficos
Ano de defesa: 2017
Autor(a) principal: Müller , Luana
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Tese
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Pontifícia Universidade Católica do Rio Grande do Sul
Escola Politécnica
Brasil
PUCRS
Programa de Pós-Graduação em Ciência da Computação
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: http://tede2.pucrs.br/tede2/handle/tede/8757
Resumo: Durante o processo de desenvolvimento de software, a prática de reúso é comumente utilizada por diversos motivos e de diversas formas. Dentre estas formas, destaca-se a cópia de trechos de códigos-fonte, desenvolvidos por outros programadores, que são incorporados a um novo código-fonte e adaptados para se adequar ao novo contexto. No entanto, apesar de o programador conseguir atingir desta forma seus objetivos, muitas vezes ele realiza este reúso sem compreender o código-fonte reusado, e, por consequência, sem compreender seu próprio código-fonte, criado com reúso. Embasando-nos na teoria da Engenharia Semiótica, sob a perspectiva da área de Human Centered Computing, observamos este código-fonte como uma interface que entrega ao seu usuário (neste caso, o programador que está reusando um código-fonte) uma mensagem implícita do designer (neste caso, o programador que escreveu o código-fonte sendo reusado) e observamos que podem haver diversas implicações comunicativas decorrentes da falta de compreensão do designer sobre a mensagem que está sendo emitida. Essas implicações fazem-se ainda mais presentes no caso dos programadores iniciantes, que ainda estão construindo seu pensamento computacional. Nesta tese, conduzimos uma investigação sobre como e porque programadores iniciantes reusam códigos-fonte e como interpretam seus códigos-fonte quando estes foram construídos reusando outros códigos-fonte. Além disso, oferecemos uma ferramenta conceitual baseada no template de metacomunicação da Engenharia Semiótica para apoiar estes programadores na compreensão e apropriação de trechos de códigos-fonte para reúso. Observamos, através dos estudos para análise da ferramenta, que ela pode não apenas apoiar os programadores na compreensão dos códigos-fonte, mas, também, em sua reflexão sobre questões não comumente pensadas, relacionadas a aspectos comunicativos destes códigos. Esperamos que esta reflexão os conscientize da importância destes aspectos, em um cenário em que seus códigos podem ser, em algum momento, reusados por outros programadores, em um ciclo contínuo de desenvolvimento e comunicação.
id P_RS_5565313813e6ad8ef4f4373e04cbd309
oai_identifier_str oai:tede2.pucrs.br:tede/8757
network_acronym_str P_RS
network_name_str Biblioteca Digital de Teses e Dissertações da PUC_RS
repository_id_str
spelling Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonteReúso de Código-FonteProgramadores IniciantesApropriaçãoEngenharia SemióticaSource Code ReuseNovice ProgrammersAppropriationSemiotic EngineeringCIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAODurante o processo de desenvolvimento de software, a prática de reúso é comumente utilizada por diversos motivos e de diversas formas. Dentre estas formas, destaca-se a cópia de trechos de códigos-fonte, desenvolvidos por outros programadores, que são incorporados a um novo código-fonte e adaptados para se adequar ao novo contexto. No entanto, apesar de o programador conseguir atingir desta forma seus objetivos, muitas vezes ele realiza este reúso sem compreender o código-fonte reusado, e, por consequência, sem compreender seu próprio código-fonte, criado com reúso. Embasando-nos na teoria da Engenharia Semiótica, sob a perspectiva da área de Human Centered Computing, observamos este código-fonte como uma interface que entrega ao seu usuário (neste caso, o programador que está reusando um código-fonte) uma mensagem implícita do designer (neste caso, o programador que escreveu o código-fonte sendo reusado) e observamos que podem haver diversas implicações comunicativas decorrentes da falta de compreensão do designer sobre a mensagem que está sendo emitida. Essas implicações fazem-se ainda mais presentes no caso dos programadores iniciantes, que ainda estão construindo seu pensamento computacional. Nesta tese, conduzimos uma investigação sobre como e porque programadores iniciantes reusam códigos-fonte e como interpretam seus códigos-fonte quando estes foram construídos reusando outros códigos-fonte. Além disso, oferecemos uma ferramenta conceitual baseada no template de metacomunicação da Engenharia Semiótica para apoiar estes programadores na compreensão e apropriação de trechos de códigos-fonte para reúso. Observamos, através dos estudos para análise da ferramenta, que ela pode não apenas apoiar os programadores na compreensão dos códigos-fonte, mas, também, em sua reflexão sobre questões não comumente pensadas, relacionadas a aspectos comunicativos destes códigos. Esperamos que esta reflexão os conscientize da importância destes aspectos, em um cenário em que seus códigos podem ser, em algum momento, reusados por outros programadores, em um ciclo contínuo de desenvolvimento e comunicação.During the process of software development, the reuse of materials is often performed in several ways and for different reasons. Among these ways, we highlight the reuse of source code developed by other programmer, which are embedded in a new source code and adapted in order to fit into this new context. However, even though programmers are able to achieve their goals by doing so, many times they reuse a source code without properly understand it, and, consequently, they do not understand their own source-code, generated through reuse. Based on Semiotic Engineering theory under the Human-Centered Computing perspective, we can see this source code as an interface which delivers to its user (in our case, the programmer who is reusing a source code) an encoded message from its designer (in our case, the programmer who developed the source code being reused), and, thus, we observe that there may have been several communicative implications resulting from the lack of the designer's understanding about the message he is delivering. Those implications are even more perceived when it comes to novice programmers, who are still building their computational thinking. In this thesis we investigated on how and why novice programmers reuse source codes and how they understand their own source codes while they build them by reusing other programmers' source codes. Furthermore, we offer a conceptual tool based on Semiotic Engineering's metacommunication template to support those programmers understanding and appropriating source codes. Besides that, we observe, through the studies conducted in order to analyze our tool, that not only can it support programmers understanding a source code, but also support them reflecting upon questions not usually addressed by them, related, for instance, to communicative aspects of their source codes. We hope this reflection makes programmers aware of the importance of those aspects, considering a scenario where their source codes may be reused by other programmers, in a continuous cycle of development and communication.Pontifícia Universidade Católica do Rio Grande do SulEscola PolitécnicaBrasilPUCRSPrograma de Pós-Graduação em Ciência da ComputaçãoSilveira, Milene Selbachhttp://lattes.cnpq.br/0483707899231728Souza, Clarisse Sieckenius dehttp://lattes.cnpq.br/4031565135568125Müller , Luana2019-06-26T11:39:24Z2017-12-08info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfhttp://tede2.pucrs.br/tede2/handle/tede/8757porinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da PUC_RSinstname:Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)instacron:PUC_RS2019-06-26T15:01:33Zoai:tede2.pucrs.br:tede/8757Biblioteca Digital de Teses e Dissertaçõeshttp://tede2.pucrs.br/tede2/PRIhttps://tede2.pucrs.br/oai/requestbiblioteca.central@pucrs.br||opendoar:2019-06-26T15:01:33Biblioteca Digital de Teses e Dissertações da PUC_RS - Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)false
dc.title.none.fl_str_mv Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
title Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
spellingShingle Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
Müller , Luana
Reúso de Código-Fonte
Programadores Iniciantes
Apropriação
Engenharia Semiótica
Source Code Reuse
Novice Programmers
Appropriation
Semiotic Engineering
CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO
title_short Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
title_full Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
title_fullStr Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
title_full_unstemmed Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
title_sort Uma abordagem semiótica para apoiar programadores iniciantes durante o processo de reúso e de apropriação de códigos-fonte
author Müller , Luana
author_facet Müller , Luana
author_role author
dc.contributor.none.fl_str_mv Silveira, Milene Selbach
http://lattes.cnpq.br/0483707899231728
Souza, Clarisse Sieckenius de
http://lattes.cnpq.br/4031565135568125
dc.contributor.author.fl_str_mv Müller , Luana
dc.subject.por.fl_str_mv Reúso de Código-Fonte
Programadores Iniciantes
Apropriação
Engenharia Semiótica
Source Code Reuse
Novice Programmers
Appropriation
Semiotic Engineering
CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO
topic Reúso de Código-Fonte
Programadores Iniciantes
Apropriação
Engenharia Semiótica
Source Code Reuse
Novice Programmers
Appropriation
Semiotic Engineering
CIENCIA DA COMPUTACAO::TEORIA DA COMPUTACAO
description Durante o processo de desenvolvimento de software, a prática de reúso é comumente utilizada por diversos motivos e de diversas formas. Dentre estas formas, destaca-se a cópia de trechos de códigos-fonte, desenvolvidos por outros programadores, que são incorporados a um novo código-fonte e adaptados para se adequar ao novo contexto. No entanto, apesar de o programador conseguir atingir desta forma seus objetivos, muitas vezes ele realiza este reúso sem compreender o código-fonte reusado, e, por consequência, sem compreender seu próprio código-fonte, criado com reúso. Embasando-nos na teoria da Engenharia Semiótica, sob a perspectiva da área de Human Centered Computing, observamos este código-fonte como uma interface que entrega ao seu usuário (neste caso, o programador que está reusando um código-fonte) uma mensagem implícita do designer (neste caso, o programador que escreveu o código-fonte sendo reusado) e observamos que podem haver diversas implicações comunicativas decorrentes da falta de compreensão do designer sobre a mensagem que está sendo emitida. Essas implicações fazem-se ainda mais presentes no caso dos programadores iniciantes, que ainda estão construindo seu pensamento computacional. Nesta tese, conduzimos uma investigação sobre como e porque programadores iniciantes reusam códigos-fonte e como interpretam seus códigos-fonte quando estes foram construídos reusando outros códigos-fonte. Além disso, oferecemos uma ferramenta conceitual baseada no template de metacomunicação da Engenharia Semiótica para apoiar estes programadores na compreensão e apropriação de trechos de códigos-fonte para reúso. Observamos, através dos estudos para análise da ferramenta, que ela pode não apenas apoiar os programadores na compreensão dos códigos-fonte, mas, também, em sua reflexão sobre questões não comumente pensadas, relacionadas a aspectos comunicativos destes códigos. Esperamos que esta reflexão os conscientize da importância destes aspectos, em um cenário em que seus códigos podem ser, em algum momento, reusados por outros programadores, em um ciclo contínuo de desenvolvimento e comunicação.
publishDate 2017
dc.date.none.fl_str_mv 2017-12-08
2019-06-26T11:39:24Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv http://tede2.pucrs.br/tede2/handle/tede/8757
url http://tede2.pucrs.br/tede2/handle/tede/8757
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.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Pontifícia Universidade Católica do Rio Grande do Sul
Escola Politécnica
Brasil
PUCRS
Programa de Pós-Graduação em Ciência da Computação
publisher.none.fl_str_mv Pontifícia Universidade Católica do Rio Grande do Sul
Escola Politécnica
Brasil
PUCRS
Programa de Pós-Graduação em Ciência da Computação
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da PUC_RS
instname:Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)
instacron:PUC_RS
instname_str Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)
instacron_str PUC_RS
institution PUC_RS
reponame_str Biblioteca Digital de Teses e Dissertações da PUC_RS
collection Biblioteca Digital de Teses e Dissertações da PUC_RS
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da PUC_RS - Pontifícia Universidade Católica do Rio Grande do Sul (PUCRS)
repository.mail.fl_str_mv biblioteca.central@pucrs.br||
_version_ 1850041295348695040