Maintainability in cloud-native architecture

Tutkielman tavoitteena on selvittää kuinka ylläpidettävyys huomioidaan pilvinatiivien sovellusten arkkitehtuurisuunnitteluvaiheessa. Tämän saavuttamiseksi toteutin kyselyn nykyisen työnantajani Nordcloudin pilviarkkitehtien keskuudessa. Kyselyn perusteella havaitsin, että ylläpidettävyys priorisoid...

Full description

Bibliographic Details
Main Author: Kettunen, Juho Petteri
Other Authors: Faculty of Information Technology, Informaatioteknologian tiedekunta, Jyväskylän yliopisto, University of Jyväskylä
Format: Master's thesis
Language:eng
Published: 2024
Subjects:
Online Access: https://jyx.jyu.fi/handle/123456789/95504
_version_ 1826225731036774401
author Kettunen, Juho Petteri
author2 Faculty of Information Technology Informaatioteknologian tiedekunta Jyväskylän yliopisto University of Jyväskylä
author_facet Kettunen, Juho Petteri Faculty of Information Technology Informaatioteknologian tiedekunta Jyväskylän yliopisto University of Jyväskylä Kettunen, Juho Petteri Faculty of Information Technology Informaatioteknologian tiedekunta Jyväskylän yliopisto University of Jyväskylä
author_sort Kettunen, Juho Petteri
datasource_str_mv jyx
description Tutkielman tavoitteena on selvittää kuinka ylläpidettävyys huomioidaan pilvinatiivien sovellusten arkkitehtuurisuunnitteluvaiheessa. Tämän saavuttamiseksi toteutin kyselyn nykyisen työnantajani Nordcloudin pilviarkkitehtien keskuudessa. Kyselyn perusteella havaitsin, että ylläpidettävyys priorisoidaan korkeammalle kuin skaalautuvuus ja suorituskyky, mutta alemmaksi kuin turvallisuus ja luotettavuus. Kategorisoin vastaajien antamat neuvot, jonka ansiosta näin että ylläpidettävyyden parantamiseksi he valitsevat vakiintuneita teknologioita, infrastructure-as-code -työkaluja, hallinnoituja palveluita, ja CD/CD-putkia. Yleisimmät arkkitehtuuriin liittyvät suositukset liittyivät löyhään kytkentään, mikropalveluarkkitehtuuriin, modulaarisuuteen, ja arkkitehtuuriseen yksinkertaisuuteen. Tulevaisuuden päivitysten helpottaminen nähtiin myös arvokkaaksi, ja usein yksittäisetkin ehdotukset olivat oleellisia. Vaikka vertailu kirjallisuuteen perustuu esimerkkeihin, niin tulokset vaikuttavat yleisesti ottaen noudattavan olemassaolevan kirjallisuuden ohjeistuksia. Goal of the thesis is to investigate how maintainability is addressed during the architectural design phase of cloud-native software development lifecycle. To this end, I conducted a survey among cloud architects at my current employer Nordcloud. Based on the survey, I found that maintainability is prioritized higher than scalability and performance, but lower than security and reliability. I categorized the advice given by the respondents, and saw that in order to increase maintainability, they prefer using established technologies, infrastructure-as-code, managed services, and CI/CD pipelines. To the same end, architectural considerations include loose coupling, microservices architecture, modularity, and architectural simplicity. Facilitating easy updates in the future is also seen valuable, and often even individual suggestions were relevant. Even if the comparison to literature is based on examples, the results generally appear to align with advice found in existing literature.
first_indexed 2024-06-05T21:00:04Z
format Pro gradu
free_online_boolean 1
fullrecord [{"key": "dc.contributor.advisor", "value": "Khriyenko, Oleksiy", "language": null, "element": "contributor", "qualifier": "advisor", "schema": "dc"}, {"key": "dc.contributor.author", "value": "Kettunen, Juho Petteri", "language": null, "element": "contributor", "qualifier": "author", "schema": "dc"}, {"key": "dc.date.accessioned", "value": "2024-06-05T05:27:52Z", "language": null, "element": "date", "qualifier": "accessioned", "schema": "dc"}, {"key": "dc.date.available", "value": "2024-06-05T05:27:52Z", "language": null, "element": "date", "qualifier": "available", "schema": "dc"}, {"key": "dc.date.issued", "value": "2024", "language": null, "element": "date", "qualifier": "issued", "schema": "dc"}, {"key": "dc.identifier.uri", "value": "https://jyx.jyu.fi/handle/123456789/95504", "language": null, "element": "identifier", "qualifier": "uri", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Tutkielman tavoitteena on selvitt\u00e4\u00e4 kuinka yll\u00e4pidett\u00e4vyys huomioidaan\npilvinatiivien sovellusten arkkitehtuurisuunnitteluvaiheessa. T\u00e4m\u00e4n\nsaavuttamiseksi toteutin kyselyn nykyisen ty\u00f6nantajani Nordcloudin\npilviarkkitehtien keskuudessa. Kyselyn perusteella havaitsin, ett\u00e4\nyll\u00e4pidett\u00e4vyys priorisoidaan korkeammalle kuin skaalautuvuus ja suorituskyky,\nmutta alemmaksi kuin turvallisuus ja luotettavuus. Kategorisoin vastaajien\nantamat neuvot, jonka ansiosta n\u00e4in ett\u00e4 yll\u00e4pidett\u00e4vyyden parantamiseksi he\nvalitsevat vakiintuneita teknologioita, infrastructure-as-code -ty\u00f6kaluja,\nhallinnoituja palveluita, ja CD/CD-putkia. Yleisimm\u00e4t arkkitehtuuriin\nliittyv\u00e4t suositukset liittyiv\u00e4t l\u00f6yh\u00e4\u00e4n kytkent\u00e4\u00e4n,\nmikropalveluarkkitehtuuriin, modulaarisuuteen, ja arkkitehtuuriseen\nyksinkertaisuuteen. Tulevaisuuden p\u00e4ivitysten helpottaminen n\u00e4htiin my\u00f6s\narvokkaaksi, ja usein yksitt\u00e4isetkin ehdotukset olivat oleellisia. Vaikka\nvertailu kirjallisuuteen perustuu esimerkkeihin, niin tulokset vaikuttavat\nyleisesti ottaen noudattavan olemassaolevan kirjallisuuden ohjeistuksia.", "language": "fi", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.abstract", "value": "Goal of the thesis is to investigate how maintainability is addressed during\nthe architectural design phase of cloud-native software development lifecycle.\nTo this end, I conducted a survey among cloud architects at my current\nemployer Nordcloud. Based on the survey, I found that\nmaintainability is prioritized higher than scalability and performance, but\nlower than security and reliability. I categorized the advice given by the\nrespondents, and saw that in order to increase maintainability, they prefer\nusing established technologies, infrastructure-as-code, managed services, and\nCI/CD pipelines. To the same end, architectural considerations include loose\ncoupling, microservices architecture, modularity, and architectural\nsimplicity. Facilitating easy updates in the future is also seen valuable,\nand often even individual suggestions were relevant. Even if the comparison to\nliterature is based on examples, the results generally appear to align with\nadvice found in existing literature.", "language": "en", "element": "description", "qualifier": "abstract", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Submitted by jyx lomake-julkaisija (jyx-julkaisija.group@korppi.jyu.fi) on 2024-06-05T05:27:52Z\nNo. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.description.provenance", "value": "Made available in DSpace on 2024-06-05T05:27:52Z (GMT). No. of bitstreams: 0", "language": "en", "element": "description", "qualifier": "provenance", "schema": "dc"}, {"key": "dc.format.extent", "value": "75", "language": null, "element": "format", "qualifier": "extent", "schema": "dc"}, {"key": "dc.format.mimetype", "value": "application/pdf", "language": null, "element": "format", "qualifier": "mimetype", "schema": "dc"}, {"key": "dc.language.iso", "value": "eng", "language": null, "element": "language", "qualifier": "iso", "schema": "dc"}, {"key": "dc.rights", "value": "CC BY-NC-ND 4.0", "language": "en", "element": "rights", "qualifier": null, "schema": "dc"}, {"key": "dc.title", "value": "Maintainability in cloud-native architecture", "language": null, "element": "title", "qualifier": null, "schema": "dc"}, {"key": "dc.type", "value": "master thesis", "language": null, "element": "type", "qualifier": null, "schema": "dc"}, {"key": "dc.identifier.urn", "value": "URN:NBN:fi:jyu-202406054265", "language": null, "element": "identifier", "qualifier": "urn", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Faculty of Information Technology", "language": "en", "element": "contributor", "qualifier": "faculty", "schema": "dc"}, {"key": "dc.contributor.faculty", "value": "Informaatioteknologian tiedekunta", "language": "fi", "element": "contributor", "qualifier": "faculty", "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": "Specialisation in Software Development", "language": "en", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.subject.discipline", "value": "Ohjelmistokehityksen opintosuunta", "language": "fi", "element": "subject", "qualifier": "discipline", "schema": "dc"}, {"key": "dc.type.coar", "value": "http://purl.org/coar/resource_type/c_bdcc", "language": null, "element": "type", "qualifier": "coar", "schema": "dc"}, {"key": "dc.rights.copyright", "value": "\u00a9 The Author(s)", "language": null, "element": "rights", "qualifier": "copyright", "schema": "dc"}, {"key": "dc.rights.accesslevel", "value": "openAccess", "language": null, "element": "rights", "qualifier": "accesslevel", "schema": "dc"}, {"key": "dc.type.publication", "value": "masterThesis", "language": null, "element": "type", "qualifier": "publication", "schema": "dc"}, {"key": "dc.format.content", "value": "fulltext", "language": null, "element": "format", "qualifier": "content", "schema": "dc"}, {"key": "dc.rights.url", "value": "https://creativecommons.org/licenses/by-nc-nd/4.0/", "language": null, "element": "rights", "qualifier": "url", "schema": "dc"}]
id jyx.123456789_95504
language eng
last_indexed 2025-02-18T10:56:07Z
main_date 2024-01-01T00:00:00Z
main_date_str 2024
online_boolean 1
online_urls_str_mv {"url":"https:\/\/jyx.jyu.fi\/bitstreams\/4560742c-50ac-4647-a98a-75ca00c4b95d\/download","text":"URN:NBN:fi:jyu-202406054265.pdf","source":"jyx","mediaType":"application\/pdf"}
publishDate 2024
record_format qdc
source_str_mv jyx
spellingShingle Kettunen, Juho Petteri Maintainability in cloud-native architecture Specialisation in Software Development Ohjelmistokehityksen opintosuunta
title Maintainability in cloud-native architecture
title_full Maintainability in cloud-native architecture
title_fullStr Maintainability in cloud-native architecture Maintainability in cloud-native architecture
title_full_unstemmed Maintainability in cloud-native architecture Maintainability in cloud-native architecture
title_short Maintainability in cloud-native architecture
title_sort maintainability in cloud native architecture
title_txtP Maintainability in cloud-native architecture
topic Specialisation in Software Development Ohjelmistokehityksen opintosuunta
topic_facet Ohjelmistokehityksen opintosuunta Specialisation in Software Development
url https://jyx.jyu.fi/handle/123456789/95504 http://www.urn.fi/URN:NBN:fi:jyu-202406054265
work_keys_str_mv AT kettunenjuhopetteri maintainabilityincloudnativearchitecture