The Solo First Pair Second Programming Model

Software is fundamental to life in modern society. We have come to depend on it for critical aspects such as managing bank transactions and medical records. However, code defects in software is a common issue, and software not working properly has the potential to cause major damage to both humans a...

Full description

Bibliographic Details
Main Authors: Wickström, Carina, Holmquist, Robin
Format: Others
Language:English
Published: KTH, Skolan för elektroteknik och datavetenskap (EECS) 2021
Subjects:
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-299589
id ndltd-UPSALLA1-oai-DiVA.org-kth-299589
record_format oai_dc
collection NDLTD
language English
format Others
sources NDLTD
topic Solo First Pair Second Programming
SFPSP
agile
modern software development
pair programming
solo programming
Solo First Pair Second Programming
SFPSP
agila metoder
modern mjukvaruutveckling
parprogrammering
soloprogrammering
Computer Sciences
Datavetenskap (datalogi)
spellingShingle Solo First Pair Second Programming
SFPSP
agile
modern software development
pair programming
solo programming
Solo First Pair Second Programming
SFPSP
agila metoder
modern mjukvaruutveckling
parprogrammering
soloprogrammering
Computer Sciences
Datavetenskap (datalogi)
Wickström, Carina
Holmquist, Robin
The Solo First Pair Second Programming Model
description Software is fundamental to life in modern society. We have come to depend on it for critical aspects such as managing bank transactions and medical records. However, code defects in software is a common issue, and software not working properly has the potential to cause major damage to both humans and the environment. Many attempts have been made in order to improve software development in order to reduce code defects, among other aspects. One such attempt is the invention of the practice pair programming, where two programmers share and work together on a single workstation. The more traditional way of developing software is solo programming, where each developer is assigned an individual workstation. However, the issue with code defects still remains. Hence, there is a need for better methods for reducing software defects. The purpose of this thesis is to create a software development model for reducing software defects. The model suggested in this thesis is a combined practice where coding with solo programming is followed by re-coding with pair programming called Solo First Pair Second Programming (SFPSP). The goal is to help software development teams to develop more reliable software. Our research was qualitative with support from quantitative data. The research included a literature study and an action study. The literature study was done in order to create a first version of SFPSP entirely based on literature, whereas the action study was done in order to evaluate as well as refine SFPSP based on practical experience. The results of this thesis is the practice SFPSP as well as an evaluation of said practice. Our evaluation shows that SFPSP leads to fewer code defects compared to solo programming. However, the cost with regard to development time and effort is significantly higher for SFPSP compared to solo programming. SFPSP is based on both theoretical and practical knowledge, and has therefore a solid foundation to build upon. Our literature study verified that no practice like SFPSP existed before this thesis.  === Programvara är grundläggande för livet i det moderna samhället. Vi är beroende av det för kritiska aspekter som att hantera banköverföringar och medicinska journaler. Kodfel i programvara är dock ett vanligt problem, och programvara som inte fungerar som den ska kan orsaka stora skador på både människor och miljön. Många försök har gjorts för att förbättra programvaruutveckling med målet att minska bland annat kodfel. Ett sådant försök är uppfinningen av praxisen parprogrammering, där två programmerare delar och arbetar tillsammans på en enda arbetsstation. Det mer traditionella sättet att utveckla programvara är soloprogrammering, där varje utvecklare tilldelas en individuell arbetsstation. Dock kvarstår problemet med kodfel. Därför finns det ett behov av bättre metoder för att minska kodfel. Syftet med denna avhandling är att skapa en programvaruutvecklingsmodell för att minska kodfel. Modellen som föreslås i denna avhandling är en kombinerad praxis där kodning med soloprogrammering följs av omkodning med parprogrammering, kallad Solo First Pair Second Programming (SFPSP). Målet är att hjälpa programvaruutvecklingsteam att utveckla mer pålitlig programvara. Vår forskning var kvalitativ med stöd av kvantitativ data. Forskningen omfattade en litteraturstudie och en aktionsstudie. Litteraturstudien gjordes för att skapa en första version av SFPSP helt baserad på litteraturen, medan aktionsstudien gjordes för att utvärdera och förfina SFPSP baserat på praktisk erfarenhet. Resultaten av denna avhandling är praxisen SFPSP samt en utvärdering av denna praxis. Vår utvärdering visar att SFPSP leder till färre kodfel jämfört med soloprogrammering. Dock visar den att kostnaden med avseende på utvecklingstid och ansträngning är betydligt högre för SFPSP jämfört med soloprogrammering. SFPSP bygger på både teoretisk och praktisk kunskap och har därför en stabil grund att bygga på. Vår litteraturstudie verifierade att det inte fanns någon praxis som SFPSP före denna avhandling.
author Wickström, Carina
Holmquist, Robin
author_facet Wickström, Carina
Holmquist, Robin
author_sort Wickström, Carina
title The Solo First Pair Second Programming Model
title_short The Solo First Pair Second Programming Model
title_full The Solo First Pair Second Programming Model
title_fullStr The Solo First Pair Second Programming Model
title_full_unstemmed The Solo First Pair Second Programming Model
title_sort solo first pair second programming model
publisher KTH, Skolan för elektroteknik och datavetenskap (EECS)
publishDate 2021
url http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-299589
work_keys_str_mv AT wickstromcarina thesolofirstpairsecondprogrammingmodel
AT holmquistrobin thesolofirstpairsecondprogrammingmodel
AT wickstromcarina solofirstpairsecondprogrammingmodel
AT holmquistrobin solofirstpairsecondprogrammingmodel
_version_ 1719460211188563968
spelling ndltd-UPSALLA1-oai-DiVA.org-kth-2995892021-08-17T05:24:29ZThe Solo First Pair Second Programming ModelengWickström, CarinaHolmquist, RobinKTH, Skolan för elektroteknik och datavetenskap (EECS)2021Solo First Pair Second ProgrammingSFPSPagilemodern software developmentpair programmingsolo programmingSolo First Pair Second ProgrammingSFPSPagila metodermodern mjukvaruutvecklingparprogrammeringsoloprogrammeringComputer SciencesDatavetenskap (datalogi)Software is fundamental to life in modern society. We have come to depend on it for critical aspects such as managing bank transactions and medical records. However, code defects in software is a common issue, and software not working properly has the potential to cause major damage to both humans and the environment. Many attempts have been made in order to improve software development in order to reduce code defects, among other aspects. One such attempt is the invention of the practice pair programming, where two programmers share and work together on a single workstation. The more traditional way of developing software is solo programming, where each developer is assigned an individual workstation. However, the issue with code defects still remains. Hence, there is a need for better methods for reducing software defects. The purpose of this thesis is to create a software development model for reducing software defects. The model suggested in this thesis is a combined practice where coding with solo programming is followed by re-coding with pair programming called Solo First Pair Second Programming (SFPSP). The goal is to help software development teams to develop more reliable software. Our research was qualitative with support from quantitative data. The research included a literature study and an action study. The literature study was done in order to create a first version of SFPSP entirely based on literature, whereas the action study was done in order to evaluate as well as refine SFPSP based on practical experience. The results of this thesis is the practice SFPSP as well as an evaluation of said practice. Our evaluation shows that SFPSP leads to fewer code defects compared to solo programming. However, the cost with regard to development time and effort is significantly higher for SFPSP compared to solo programming. SFPSP is based on both theoretical and practical knowledge, and has therefore a solid foundation to build upon. Our literature study verified that no practice like SFPSP existed before this thesis.  Programvara är grundläggande för livet i det moderna samhället. Vi är beroende av det för kritiska aspekter som att hantera banköverföringar och medicinska journaler. Kodfel i programvara är dock ett vanligt problem, och programvara som inte fungerar som den ska kan orsaka stora skador på både människor och miljön. Många försök har gjorts för att förbättra programvaruutveckling med målet att minska bland annat kodfel. Ett sådant försök är uppfinningen av praxisen parprogrammering, där två programmerare delar och arbetar tillsammans på en enda arbetsstation. Det mer traditionella sättet att utveckla programvara är soloprogrammering, där varje utvecklare tilldelas en individuell arbetsstation. Dock kvarstår problemet med kodfel. Därför finns det ett behov av bättre metoder för att minska kodfel. Syftet med denna avhandling är att skapa en programvaruutvecklingsmodell för att minska kodfel. Modellen som föreslås i denna avhandling är en kombinerad praxis där kodning med soloprogrammering följs av omkodning med parprogrammering, kallad Solo First Pair Second Programming (SFPSP). Målet är att hjälpa programvaruutvecklingsteam att utveckla mer pålitlig programvara. Vår forskning var kvalitativ med stöd av kvantitativ data. Forskningen omfattade en litteraturstudie och en aktionsstudie. Litteraturstudien gjordes för att skapa en första version av SFPSP helt baserad på litteraturen, medan aktionsstudien gjordes för att utvärdera och förfina SFPSP baserat på praktisk erfarenhet. Resultaten av denna avhandling är praxisen SFPSP samt en utvärdering av denna praxis. Vår utvärdering visar att SFPSP leder till färre kodfel jämfört med soloprogrammering. Dock visar den att kostnaden med avseende på utvecklingstid och ansträngning är betydligt högre för SFPSP jämfört med soloprogrammering. SFPSP bygger på både teoretisk och praktisk kunskap och har därför en stabil grund att bygga på. Vår litteraturstudie verifierade att det inte fanns någon praxis som SFPSP före denna avhandling. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-299589TRITA-EECS-EX ; 2021:247application/pdfinfo:eu-repo/semantics/openAccess