Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä

Samanaikaisessa ohjelmointityöskentelyssä kehittäjät muuttavat usein koodin osia olematta täysin tietoisia muiden tekemistä muutoksista. Vaikka tämä lisää työn tehoa, voi tällaisista muutoksista seurata ristiriitoja kun koodia tuodaan yhteen. Ymmärtääksemme paremmin näitä ristiriitoja tarkastelemme...

Full description

Bibliographic Details
Main Author: Salonen, Jarno
Other Authors: Informaatioteknologian tiedekunta, Faculty of Information Technology, Informaatioteknologia, Information Technology, Jyväskylän yliopisto, University of Jyväskylä
Format: Bachelor's thesis
Language:fin
Published: 2023
Subjects:
Online Access: https://jyx.jyu.fi/handle/123456789/86782
_version_ 1828193198164410368
author Salonen, Jarno
author2 Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_facet Salonen, Jarno Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä Salonen, Jarno Informaatioteknologian tiedekunta Faculty of Information Technology Informaatioteknologia Information Technology Jyväskylän yliopisto University of Jyväskylä
author_sort Salonen, Jarno
datasource_str_mv jyx
description Samanaikaisessa ohjelmointityöskentelyssä kehittäjät muuttavat usein koodin osia olematta täysin tietoisia muiden tekemistä muutoksista. Vaikka tämä lisää työn tehoa, voi tällaisista muutoksista seurata ristiriitoja kun koodia tuodaan yhteen. Ymmärtääksemme paremmin näitä ristiriitoja tarkastelemme neljää niiden välttämiseen ja ratkaisemiseen kehitettyä työkalua. Tehokas ristiriitaisuuden ratkaisukeino näyttäisi olevan niiden välttäminen kokonaan, toisaalta taas pienien tarkkaan kohdistettujen muutoksien historian seuranta tuottaa tuloksia. Yleisesti yhdistämisen apuvälineistä on suuresti hyötyä. Ristiriitojen moninaisuuden takia yhtä parasta ratkaisua tuskin on. In collaborative software development, developers often change code without fully being aware of changes made by other people. While this increases productivity, it might result in conflicts when merging code. To better understand these conflicts, we study four tools developed to resolve and avoid them. Effective merge conflict resolution appears to be to completely dodge them, on the other hand having access to fine-grained change history is beneficial. In general using merge conflict tools lowers the risk of conflict. The spectrum of merge conflicts is quite wide so it is unlikely there is one ultimate answer or tool.
first_indexed 2023-05-08T20:00:54Z
format Kandityö
free_online_boolean 1
fullrecord [{"key": "dc.contributor.advisor", "value": "Tiihonen, Timo", "language": "", "element": "contributor", "qualifier": "advisor", "schema": "dc"}, {"key": "dc.contributor.author", "value": "Salonen, Jarno", "language": "", "element": "contributor", "qualifier": "author", "schema": "dc"}, {"key": "dc.date.accessioned", "value": "2023-05-08T06:01:52Z", "language": null, "element": "date", "qualifier": "accessioned", "schema": "dc"}, {"key": "dc.date.available", "value": "2023-05-08T06:01:52Z", "language": null, "element": "date", "qualifier": "available", "schema": "dc"}, {"key": "dc.date.issued", "value": "2023", "language": "", "element": "date", "qualifier": "issued", "schema": "dc"}, {"key": "dc.identifier.uri", "value": "https://jyx.jyu.fi/handle/123456789/86782", "language": null, "element": "identifier", "qualifier": "uri", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Samanaikaisessa ohjelmointity\u00f6skentelyss\u00e4 kehitt\u00e4j\u00e4t muuttavat usein koodin osia olematta t\u00e4ysin tietoisia muiden tekemist\u00e4 muutoksista. Vaikka t\u00e4m\u00e4 lis\u00e4\u00e4 ty\u00f6n tehoa, voi t\u00e4llaisista muutoksista seurata ristiriitoja kun koodia tuodaan yhteen. Ymm\u00e4rt\u00e4\u00e4ksemme paremmin n\u00e4it\u00e4 ristiriitoja tarkastelemme nelj\u00e4\u00e4 niiden v\u00e4ltt\u00e4miseen ja ratkaisemiseen kehitetty\u00e4 ty\u00f6kalua. Tehokas ristiriitaisuuden ratkaisukeino n\u00e4ytt\u00e4isi olevan niiden v\u00e4ltt\u00e4minen kokonaan, toisaalta taas pienien tarkkaan kohdistettujen muutoksien historian seuranta tuottaa tuloksia. Yleisesti yhdist\u00e4misen apuv\u00e4lineist\u00e4 on suuresti hy\u00f6ty\u00e4. Ristiriitojen moninaisuuden takia yht\u00e4 parasta ratkaisua tuskin on.", "language": "fi", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.abstract", "value": "In collaborative software development, developers often change code without fully being aware of changes made by other people. While this increases productivity, it might result in conflicts when merging code. To better understand these conflicts, we study four tools developed to resolve and avoid them. Effective merge conflict resolution appears to be to completely dodge them, on the other hand having access to fine-grained change history is beneficial. In general using merge conflict tools lowers the risk of conflict. The spectrum of merge conflicts is quite wide so it is unlikely there is one ultimate answer or tool.", "language": "en", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Submitted by Paivi Vuorio (paelvuor@jyu.fi) on 2023-05-08T06:01:52Z\nNo. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Made available in DSpace on 2023-05-08T06:01:52Z (GMT). No. of bitstreams: 0\n Previous issue date: 2023", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.format.extent", "value": "19", "language": "", "element": "format", "qualifier": "extent", "schema": "dc"}, {"key": "dc.language.iso", "value": "fin", "language": null, "element": "language", "qualifier": "iso", "schema": "dc"}, {"key": "dc.rights", "value": "In Copyright", "language": "en", "element": "rights", "qualifier": null, "schema": "dc"}, {"key": "dc.title", "value": "Samanaikaisen ty\u00f6skentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksess\u00e4", "language": "", "element": "title", "qualifier": null, "schema": "dc"}, {"key": "dc.type", "value": "bachelor thesis", "language": null, "element": "type", "qualifier": null, "schema": "dc"}, {"key": "dc.identifier.urn", "value": "URN:NBN:fi:jyu-202305082872", "language": "", "element": "identifier", "qualifier": "urn", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Bachelor's thesis", "language": "en", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.type.ontasot", "value": "Kandidaatinty\u00f6", "language": "fi", "element": "type", "qualifier": "ontasot", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Informaatioteknologian tiedekunta", "language": "fi", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Faculty of Information Technology", "language": "en", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Informaatioteknologia", "language": "fi", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.department", "value": "Information Technology", "language": "en", "element": "contributor", "qualifier": "department", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "Jyv\u00e4skyl\u00e4n yliopisto", "language": "fi", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.contributor.organization", "value": "University of Jyv\u00e4skyl\u00e4", "language": "en", "element": "contributor", "qualifier": "organization", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Tietotekniikka", "language": "fi", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Mathematical Information Technology", "language": "en", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "yvv.contractresearch.funding", "value": "0", "language": "", "element": "contractresearch", "qualifier": "funding", "schema": "yvv"}, {"key": "dc.type.coar", "value": "http://purl.org/coar/resource_type/c_7a1f", "language": null, "element": "type", "qualifier": "coar", "schema": "dc"}, {"key": "dc.rights.accesslevel", "value": "openAccess", "language": null, "element": "rights", "qualifier": "accesslevel", "schema": "dc"}, {"key": "dc.type.publication", "value": "bachelorThesis", "language": null, "element": "type", "qualifier": "publication", "schema": "dc"}, {"key": "dc.subject.oppiainekoodi", "value": "602", "language": "", "element": "subject", "qualifier": "oppiainekoodi", "schema": "dc"}, {"key": "dc.subject.yso", "value": "ristiriidat", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "tietokoneohjelmat", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "tietotekniikka", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "tietoj\u00e4rjestelm\u00e4t", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.subject.yso", "value": "ohjelmointi", "language": null, "element": "subject", "qualifier": "yso", "schema": "dc"}, {"key": "dc.rights.url", "value": "https://rightsstatements.org/page/InC/1.0/", "language": null, "element": "rights", "qualifier": "url", "schema": "dc"}]
id jyx.123456789_86782
language fin
last_indexed 2025-03-31T20:01:00Z
main_date 2023-01-01T00:00:00Z
main_date_str 2023
online_boolean 1
online_urls_str_mv {"url":"https:\/\/jyx.jyu.fi\/bitstreams\/38f40ea7-4ee1-4b51-8176-a9106c3aa454\/download","text":"URN:NBN:fi:jyu-202305082872.pdf","source":"jyx","mediaType":"application\/pdf"}
publishDate 2023
record_format qdc
source_str_mv jyx
spellingShingle Salonen, Jarno Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä Tietotekniikka Mathematical Information Technology 602 ristiriidat tietokoneohjelmat tietotekniikka tietojärjestelmät ohjelmointi
title Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä
title_full Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä
title_fullStr Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä
title_full_unstemmed Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä
title_short Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä
title_sort samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä
title_txtP Samanaikaisen työskentelyn ristiriitojen ennustaminen ja ratkaiseminen ohjelmistokehityksessä
topic Tietotekniikka Mathematical Information Technology 602 ristiriidat tietokoneohjelmat tietotekniikka tietojärjestelmät ohjelmointi
topic_facet 602 Mathematical Information Technology Tietotekniikka ohjelmointi ristiriidat tietojärjestelmät tietokoneohjelmat tietotekniikka
url https://jyx.jyu.fi/handle/123456789/86782 http://www.urn.fi/URN:NBN:fi:jyu-202305082872
work_keys_str_mv AT salonenjarno samanaikaisentyöskentelynristiriitojenennustaminenjaratkaiseminenohjelmistokehityks