Pilvipalveluiden tuotekehitysprosessi
Herrala, Sanna (2021)
Herrala, Sanna
2021
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2021121526186
https://urn.fi/URN:NBN:fi:amk-2021121526186
Tiivistelmä
Erilaisten pilvipalveluiden määrä on kasvanut valtavasti, mutta niiden tuotekehitystä tarkastelevaa tutkimusta on vain vähän. Tässä opinnäytetyössä tutkittiin, miten pilvipalvelun tuotekehitys eroaa perinteisemmästä konesaliin kehittämisestä. Aihetta lähestyttiin case-esimerkin kautta tutustumalla sotealalle pilvipalveluna kehitetyn palvelun tarvearvioinnin (PATA) ratkaisun kehitykseen. Työssä haastateltiin kehitystyössä mukana olleita henkilöitä ja vastaukset analysoitiin pilvipalveluiden ja tuotekehityksen lähdekirjallisuuden perusteella. Vastauksissa kuvailtuja kehitysmetodeja verrattiin myös kirjallisuudessa pilvipalveluiden kehitykselle kuvailtuihin hyviin työtapoihin, niin kutsuttuihin pilvinatiiveihin kehitystapoihin. Työn on tarkoitus antaa selkeä kuvaus pilvipalveluiden kehityksen ominaispiirteistä, jota voidaan käyttää tulevaisuuden kehitystyössä. Työ keskittyy alustaratkaisun kehittämiseen Microsoftin pilvipalveluja käyttämällä sekä aihealueisiin, jotka saattavat olla erityisen haastavia pilvikehitystä vasta aloitteleville organisaatioille.
Työn lopputulos oli, että pilvi- ja konesalikehityksessä eri kehitysvaiheiden välillä ei ole suurta eroa. Pilvinatiivit kehitystavat tähtäävät kehitysprosessin automatisaatioon ja itsenäisiin ohjelmistomoduuleihin, jolloin pilvikehitys hyötyy erityisesti ketteristä kehitysmenetelmistä. PATA-ratkaisun kehityksessä on käytetty ketterää kehitystä, mutta pilvinatiivien työtapojen käyttöön ei ole vielä siirrytty. Pilvipalveluilla todettiin olevan erityisiä etuja skaalautuvuudessa ja infrastruktuurin hallinnoinnin tarpeen vähyydessä. Toisaalta pilvikehitykseen siirtymisen todettiin vaativan uusien asioiden opettelemista, ja määrittely sekä lisenssien hankinnan tarkka suunnittelu nousivat tärkeiksi aiheiksi. While the amount of different cloud services available has risen, there is a lack of studies on the product development process of these services. The objective of this thesis was to study how the product development of cloud services differs from that of on-premises ones. To achieve this objective, a case study of a cloud platform service called PATA for the healthcare and social welfare sector was studied. People involved in the development process of the service were interviewed and their answers were analysed in the light of literature on cloud services and product development. The development methods described in the interviews were also compared to cloud native design patterns, a set of development tools aimed at being especially suited for the development of cloud services. This thesis aims to give a clear description of the special features of cloud development that can be used to aid in future cloud product development.
The conclusion of this thesis is that cloud- and on-premises development do not significantly differ in the flow between different stages of the development process. Cloud native design pattens aim to automate much of the development process and to produce software composed of independent modules. Because of this, agile development is especially suited for the development of cloud products. Agile development has been used in the development of the PATA-platform, but the production team has not yet taken up cloud native design. Cloud services were found to be beneficial due to their scalability and reduced need for infrastructure management. On the other hand, the move into cloud development was found to require a steep learning curve. Crafting requirements and planning licencing were identified as especially important parts of the process.
Työn lopputulos oli, että pilvi- ja konesalikehityksessä eri kehitysvaiheiden välillä ei ole suurta eroa. Pilvinatiivit kehitystavat tähtäävät kehitysprosessin automatisaatioon ja itsenäisiin ohjelmistomoduuleihin, jolloin pilvikehitys hyötyy erityisesti ketteristä kehitysmenetelmistä. PATA-ratkaisun kehityksessä on käytetty ketterää kehitystä, mutta pilvinatiivien työtapojen käyttöön ei ole vielä siirrytty. Pilvipalveluilla todettiin olevan erityisiä etuja skaalautuvuudessa ja infrastruktuurin hallinnoinnin tarpeen vähyydessä. Toisaalta pilvikehitykseen siirtymisen todettiin vaativan uusien asioiden opettelemista, ja määrittely sekä lisenssien hankinnan tarkka suunnittelu nousivat tärkeiksi aiheiksi.
The conclusion of this thesis is that cloud- and on-premises development do not significantly differ in the flow between different stages of the development process. Cloud native design pattens aim to automate much of the development process and to produce software composed of independent modules. Because of this, agile development is especially suited for the development of cloud products. Agile development has been used in the development of the PATA-platform, but the production team has not yet taken up cloud native design. Cloud services were found to be beneficial due to their scalability and reduced need for infrastructure management. On the other hand, the move into cloud development was found to require a steep learning curve. Crafting requirements and planning licencing were identified as especially important parts of the process.