Security Model for Agile Software Development
Koistinen, Pasi (2013)
Koistinen, Pasi
Laurea-ammattikorkeakoulu
2013
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2013111116849
https://urn.fi/URN:NBN:fi:amk-2013111116849
Tiivistelmä
Agiilin sovelluskehityksen tietoturvallisuuden hallintamalli
Tietojärjestelmät, sovellukset ja niiden arkkitehtuurit elävät nykyään muuttuvissa ympäristöissä, jossa liiketoimintavaatimukset ja uhkakuvat muuttuvat nopeasti. Agiilin, eli ketterän sovelluskehityksen menetelmät ovat tulleet suosituiksi, koska niiden avulla kyetään vastaamaan muuttuviin vaatimuksiin perinteisiä staattisia menetelmiä paremmin.
Sovelluskehityksen perinteinen tietoturvallisuuden hallinta ja menetelmät ovat perustuneet deterministisiin malleihin, kuten vesiputousmalliin, jossa tietoturvavaatimukset määritellään ennalta ja toteutetaan suunnitelman mukaisesti. Staattiset tietoturvamallit eivät kykene vastaamaan nopeasti muuttuviin vaatimuksiin ja uhkakuviin nykyajan muuttuvassa ympäristössä mielekkäästi. Staattisten tietoturvamallien soveltaminen notkeaan sovelluskehitykseen on myös osoittautunut ongelmalliseksi, koska perinteisiä tietoturvamenetelmiä ei ole kehitetty käytettäväksi sovelluskehitysprosessissa, jossa kehitys etenee sykleissä kuten agiilissa sovelluskehityksessä. Sovelluskehityksen tietoturvamallien tehokkuus on osoittautunut kyseenalaiseksi, koska useimmat verkkosovellukset ovat myös osoittautuneet erittäin haavoittuviksi. Sovelluksia ei ole lähtökohtaisesti suunniteltu ja tehty tietoturvallisiksi.
Tässä työssä esitellään notkean sovelluskehityksen tietoturvamalli, joka perustuu notkean sovelluskehityksen perusteoriaan, Agile Manifesto:on. Tietoturvamallissa käytetään menetelmiä, jotka soveltuvat agiiliin sovelluskehitykseen ja integroituvat osaksi sovelluskehitysprosessia sen sijaan että tietoturvallisuus olisi irrallinen tai ulkoinen osa kehitystyötä. Tietoturvamallin avulla agiilia sovelluskehitysmenetelmää käyttävät organisaatiot voivat tuottaa asiakkailleen turvallisempia sovelluksia sekä osoittaa, että asiakkaiden tietoturvavaatimukset on huomioitu ja toteutettu kehityksessä toivotulla tavalla.
Tietojärjestelmät, sovellukset ja niiden arkkitehtuurit elävät nykyään muuttuvissa ympäristöissä, jossa liiketoimintavaatimukset ja uhkakuvat muuttuvat nopeasti. Agiilin, eli ketterän sovelluskehityksen menetelmät ovat tulleet suosituiksi, koska niiden avulla kyetään vastaamaan muuttuviin vaatimuksiin perinteisiä staattisia menetelmiä paremmin.
Sovelluskehityksen perinteinen tietoturvallisuuden hallinta ja menetelmät ovat perustuneet deterministisiin malleihin, kuten vesiputousmalliin, jossa tietoturvavaatimukset määritellään ennalta ja toteutetaan suunnitelman mukaisesti. Staattiset tietoturvamallit eivät kykene vastaamaan nopeasti muuttuviin vaatimuksiin ja uhkakuviin nykyajan muuttuvassa ympäristössä mielekkäästi. Staattisten tietoturvamallien soveltaminen notkeaan sovelluskehitykseen on myös osoittautunut ongelmalliseksi, koska perinteisiä tietoturvamenetelmiä ei ole kehitetty käytettäväksi sovelluskehitysprosessissa, jossa kehitys etenee sykleissä kuten agiilissa sovelluskehityksessä. Sovelluskehityksen tietoturvamallien tehokkuus on osoittautunut kyseenalaiseksi, koska useimmat verkkosovellukset ovat myös osoittautuneet erittäin haavoittuviksi. Sovelluksia ei ole lähtökohtaisesti suunniteltu ja tehty tietoturvallisiksi.
Tässä työssä esitellään notkean sovelluskehityksen tietoturvamalli, joka perustuu notkean sovelluskehityksen perusteoriaan, Agile Manifesto:on. Tietoturvamallissa käytetään menetelmiä, jotka soveltuvat agiiliin sovelluskehitykseen ja integroituvat osaksi sovelluskehitysprosessia sen sijaan että tietoturvallisuus olisi irrallinen tai ulkoinen osa kehitystyötä. Tietoturvamallin avulla agiilia sovelluskehitysmenetelmää käyttävät organisaatiot voivat tuottaa asiakkailleen turvallisempia sovelluksia sekä osoittaa, että asiakkaiden tietoturvavaatimukset on huomioitu ja toteutettu kehityksessä toivotulla tavalla.