Mob Programming for writing code with high complexity and remote work

Detalhes bibliográficos
Autor(a) principal: Kattan, Herez Moise
Data de Publicação: 2023
Tipo de documento: Tese
Idioma: eng
Título da fonte: Biblioteca Digital de Teses e Dissertações da USP
Texto Completo: https://www.teses.usp.br/teses/disponiveis/45/45134/tde-27032023-161552/
Resumo: Nowadays, the world relies on software, and the citizens of this modern world demand good quality software. Moreover, their needs change constantly. Hence, they require new software or new versions of existing ones that correctly solve their problems. Additionally, software development is not just about the cost or quality of software but also about the people who work to produce software. The motivation is to find better ways to organize the work of the programmers to develop quality software in a productive way suitable to their current context. The COVID-19 pandemic impacts the work environment and obligates people to work remotely. Furthermore, the software developed is increasingly complex. Thus, it emerges in society\'s need for software development techniques to create complex software with quality and permit software developers to work remotely. Creating reliable, stable, easy maintenance software is to its quality. This research is about an emerging, popular, and current practice to increase the quality of software development, learning, and programmer satisfaction: Mob Programming. The idea of Mob Programming is the entire team developing software as a group together around a computer and not as an isolated task. The research strategy is a Grounded Theory about Mob Programming. It is observed in practice its benefits in high complexity software development and remote work. Interviews, questionnaires, observations, and source code analysis produce raw data about these observations. Thence is analyzed these data using open code, constant comparison method, core category, selective coding, memoing, sorting, and theoretical coding following the Grounded Theory research method to serve as a recommendation for software developers with suggestions about team roles and practices related to how to use Mob Programming on complex tasks and remote work.
id USP_dd92e6db5b26d4ba5f9de2b3d50403e9
oai_identifier_str oai:teses.usp.br:tde-27032023-161552
network_acronym_str USP
network_name_str Biblioteca Digital de Teses e Dissertações da USP
repository_id_str 2721
spelling Mob Programming for writing code with high complexity and remote workMob Programming para escrever código com alta complexidade e trabalho remotoColaboraçãoCollaborationCollaborative problem solvingCollaborative programmingEngenharia de softwareMob ProgrammingPair programmingProgramação colaborativaProgramação e revisão simultânea em paresProgramação em grupoProgramação em parQualidade de softwareResolução colaborativa de problemasSimultaneous style pair programmingSoftware engineeringSoftware qualityNowadays, the world relies on software, and the citizens of this modern world demand good quality software. Moreover, their needs change constantly. Hence, they require new software or new versions of existing ones that correctly solve their problems. Additionally, software development is not just about the cost or quality of software but also about the people who work to produce software. The motivation is to find better ways to organize the work of the programmers to develop quality software in a productive way suitable to their current context. The COVID-19 pandemic impacts the work environment and obligates people to work remotely. Furthermore, the software developed is increasingly complex. Thus, it emerges in society\'s need for software development techniques to create complex software with quality and permit software developers to work remotely. Creating reliable, stable, easy maintenance software is to its quality. This research is about an emerging, popular, and current practice to increase the quality of software development, learning, and programmer satisfaction: Mob Programming. The idea of Mob Programming is the entire team developing software as a group together around a computer and not as an isolated task. The research strategy is a Grounded Theory about Mob Programming. It is observed in practice its benefits in high complexity software development and remote work. Interviews, questionnaires, observations, and source code analysis produce raw data about these observations. Thence is analyzed these data using open code, constant comparison method, core category, selective coding, memoing, sorting, and theoretical coding following the Grounded Theory research method to serve as a recommendation for software developers with suggestions about team roles and practices related to how to use Mob Programming on complex tasks and remote work.Hoje em dia, o mundo depende de software e os cidadãos deste mundo moderno exigem software de boa qualidade. Além disso, suas necessidades mudam constantemente. Assim, eles demandam um novo software ou novas versões dos existentes que resolvam corretamente seus problemas. Adicionalmente é correto afirmar que o desenvolvimento de software não envolve apenas o custo ou a qualidade do software, mas também as pessoas que trabalham para produzi-lo. A motivação é encontrar melhores formas de organizar o trabalho dos programadores para desenvolver software de qualidade de forma produtiva e adequada ao seu contexto atual. A pandemia COVID-19 impacta o ambiente de trabalho e obriga as pessoas a trabalharem remotamente. Ademais, o software desenvolvido está cada vez mais complexo. Consequentemente, surge na sociedade a necessidade de técnicas para o desenvolvimento de software complexo com qualidade e que permitam aos desenvolvedores de software trabalharem remotamente. A criação de um software confiável, estável e de fácil manutenção depende de sua qualidade. Esta pesquisa é sobre uma prática emergente, popular e atual para aumentar a qualidade no desenvolvimento de software, aprendizagem e satisfação dos programadores: Mob Programming. A ideia do Mob Programming é toda a equipe desenvolvendo software como um grupo em torno de um computador e não como uma tarefa isolada. A estratégia de pesquisa é produzir uma Teoria Fundamentada nos Dados observados sobre o Mob Programming. Foram observados na prática os benefícios do Mob Programming no desenvolvimento de software de alta complexidade e trabalho remoto. Entrevistas, questionários, observações e análise do código-fonte produzem dados brutos sobre essas observações. Então, esses dados foram analisados por meio da codificação aberta, análise comparativa constante, categorização, codificação seletiva, elaboração de memorandos, ordenação e, codificação teórica seguindo o método de pesquisa Teoria Fundamentada nos Dados para servir como recomendação para desenvolvedores de software com sugestões sobre funções dos membros da equipe e práticas relacionadas com a forma de usar o Mob Programming em tarefas complexas e trabalho remoto.Biblioteca Digitais de Teses e Dissertações da USPSilva, Flavio Soares Correa daKattan, Herez Moise2023-01-26info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfhttps://www.teses.usp.br/teses/disponiveis/45/45134/tde-27032023-161552/reponame:Biblioteca Digital de Teses e Dissertações da USPinstname:Universidade de São Paulo (USP)instacron:USPLiberar o conteúdo para acesso público.info:eu-repo/semantics/openAccesseng2023-03-29T15:19:27Zoai:teses.usp.br:tde-27032023-161552Biblioteca Digital de Teses e Dissertaçõeshttp://www.teses.usp.br/PUBhttp://www.teses.usp.br/cgi-bin/mtd2br.plvirginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.bropendoar:27212023-03-29T15:19:27Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)false
dc.title.none.fl_str_mv Mob Programming for writing code with high complexity and remote work
Mob Programming para escrever código com alta complexidade e trabalho remoto
title Mob Programming for writing code with high complexity and remote work
spellingShingle Mob Programming for writing code with high complexity and remote work
Kattan, Herez Moise
Colaboração
Collaboration
Collaborative problem solving
Collaborative programming
Engenharia de software
Mob Programming
Pair programming
Programação colaborativa
Programação e revisão simultânea em pares
Programação em grupo
Programação em par
Qualidade de software
Resolução colaborativa de problemas
Simultaneous style pair programming
Software engineering
Software quality
title_short Mob Programming for writing code with high complexity and remote work
title_full Mob Programming for writing code with high complexity and remote work
title_fullStr Mob Programming for writing code with high complexity and remote work
title_full_unstemmed Mob Programming for writing code with high complexity and remote work
title_sort Mob Programming for writing code with high complexity and remote work
author Kattan, Herez Moise
author_facet Kattan, Herez Moise
author_role author
dc.contributor.none.fl_str_mv Silva, Flavio Soares Correa da
dc.contributor.author.fl_str_mv Kattan, Herez Moise
dc.subject.por.fl_str_mv Colaboração
Collaboration
Collaborative problem solving
Collaborative programming
Engenharia de software
Mob Programming
Pair programming
Programação colaborativa
Programação e revisão simultânea em pares
Programação em grupo
Programação em par
Qualidade de software
Resolução colaborativa de problemas
Simultaneous style pair programming
Software engineering
Software quality
topic Colaboração
Collaboration
Collaborative problem solving
Collaborative programming
Engenharia de software
Mob Programming
Pair programming
Programação colaborativa
Programação e revisão simultânea em pares
Programação em grupo
Programação em par
Qualidade de software
Resolução colaborativa de problemas
Simultaneous style pair programming
Software engineering
Software quality
description Nowadays, the world relies on software, and the citizens of this modern world demand good quality software. Moreover, their needs change constantly. Hence, they require new software or new versions of existing ones that correctly solve their problems. Additionally, software development is not just about the cost or quality of software but also about the people who work to produce software. The motivation is to find better ways to organize the work of the programmers to develop quality software in a productive way suitable to their current context. The COVID-19 pandemic impacts the work environment and obligates people to work remotely. Furthermore, the software developed is increasingly complex. Thus, it emerges in society\'s need for software development techniques to create complex software with quality and permit software developers to work remotely. Creating reliable, stable, easy maintenance software is to its quality. This research is about an emerging, popular, and current practice to increase the quality of software development, learning, and programmer satisfaction: Mob Programming. The idea of Mob Programming is the entire team developing software as a group together around a computer and not as an isolated task. The research strategy is a Grounded Theory about Mob Programming. It is observed in practice its benefits in high complexity software development and remote work. Interviews, questionnaires, observations, and source code analysis produce raw data about these observations. Thence is analyzed these data using open code, constant comparison method, core category, selective coding, memoing, sorting, and theoretical coding following the Grounded Theory research method to serve as a recommendation for software developers with suggestions about team roles and practices related to how to use Mob Programming on complex tasks and remote work.
publishDate 2023
dc.date.none.fl_str_mv 2023-01-26
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 https://www.teses.usp.br/teses/disponiveis/45/45134/tde-27032023-161552/
url https://www.teses.usp.br/teses/disponiveis/45/45134/tde-27032023-161552/
dc.language.iso.fl_str_mv eng
language eng
dc.relation.none.fl_str_mv
dc.rights.driver.fl_str_mv Liberar o conteúdo para acesso público.
info:eu-repo/semantics/openAccess
rights_invalid_str_mv Liberar o conteúdo para acesso público.
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.coverage.none.fl_str_mv
dc.publisher.none.fl_str_mv Biblioteca Digitais de Teses e Dissertações da USP
publisher.none.fl_str_mv Biblioteca Digitais de Teses e Dissertações da USP
dc.source.none.fl_str_mv
reponame:Biblioteca Digital de Teses e Dissertações da USP
instname:Universidade de São Paulo (USP)
instacron:USP
instname_str Universidade de São Paulo (USP)
instacron_str USP
institution USP
reponame_str Biblioteca Digital de Teses e Dissertações da USP
collection Biblioteca Digital de Teses e Dissertações da USP
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da USP - Universidade de São Paulo (USP)
repository.mail.fl_str_mv virginia@if.usp.br|| atendimento@aguia.usp.br||virginia@if.usp.br
_version_ 1826319099011006464