Hyppää sisältöön
    • Suomeksi
    • In English
Trepo
  • Suomeksi
  • In English
  • Kirjaudu
Näytä viite 
  •   Etusivu
  • Trepo
  • Opinnäytteet - ylempi korkeakoulututkinto
  • Näytä viite
  •   Etusivu
  • Trepo
  • Opinnäytteet - ylempi korkeakoulututkinto
  • Näytä viite
JavaScript is disabled for your browser. Some features of this site may not work without it.

Isolating software development environments

Kaaretkoski, Mika (2018)

 
Avaa tiedosto
kaaretkoski.pdf (1.113Mt)
Lataukset: 



Kaaretkoski, Mika
2018

Tietotekniikka
Tieto- ja sähkötekniikan tiedekunta - Faculty of Computing and Electrical Engineering
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2018-11-07
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tty-201810242460
Tiivistelmä
Software development processes are evolving constantly, aiming to more agile and efficient approaches. Agility demands ability to adapt to quick changes in requirements, which can lead to modifications in development environments. Managing environments for developing and testing has become an essential part of efficient development work. Developers should be able to modify environments safely without having to worry about disrupting something else in the system. Working on multiple projects at the same time without conflicting dependencies should also be possible. The amount of software dependencies in a modern application using open-source components is typically very large, so conflicts between projects are rarely avoided without any isolation between environments.

Virtualization is at a key role providing not only the needed isolation, but also the tools for managing the environments. Virtual machines and containers utilizing modern tools and large ecosystems for open-source software make creating and managing isolated development environments efficient. There are also other means besides virtualization to avoid conflicting environments, one of which is using a functional package manager that allows installing software components in isolation from each other.

In this thesis, different ways of creating an isolated development environment are discussed. Three approaches achieving different levels of isolation are presented; full isolation using virtual machines, namespace isolation using containers and component isolation using a functional package manager. The focus is on introducing the technologies and tools for isolating a development environment using a simple practical example for each approach. The approaches are compared on a high level on few relevant categories which are level of isolation, reproducibility, resource overhead, usability and support and availability. The thesis is concluded with a quick summary and some discussion about choosing between the isolation solutions.
Kokoelmat
  • Opinnäytteet - ylempi korkeakoulututkinto [41809]
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste
 

 

Selaa kokoelmaa

TekijätNimekkeetTiedekunta (2019 -)Tiedekunta (- 2018)Tutkinto-ohjelmat ja opintosuunnatAvainsanatJulkaisuajatKokoelmat

Omat tiedot

Kirjaudu sisäänRekisteröidy
Kalevantie 5
PL 617
33014 Tampereen yliopisto
oa[@]tuni.fi | Tietosuoja | Saavutettavuusseloste