Secure software design and development : towards practical models for implementing information security into the requirements engineering process
Date
2020Copyright
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Vaatimusmäärittelyprosessin tavoitteena on kerätä ja jalostaa ratkaisuiksi tuotteen tai palvelun sidosryhmiksi tunnistettujen osapuolten ajatuksia ja tarpeita. Näiden ratkaisujen avulla poistetaan asiakkaan liiketoiminnassa olevia ongelmia ja tuotetaan lisäarvoa. Ohjelmistokehityksessä on tällä hetkellä keskeistä erityisesti ohjelmistojen turvallisuus. Sitä on tutkittu paljon, mutta sen käytäntöön vieminen on usein ongelmallista ja puutteellista. Ohjelmistojen tietoturvallisuusuhkat ja -riskit lisääntyvät jatkuvasti ja ohjelmistojen kehityksessä muodostuneita haavoittuvuuksia paikallistetaan sekä hyväksi käytetään uusin tavoin. Ohjelmistokehityksen tulisi panostaa tietoturvallisuuden osalta vaatimusmäärittelyprosessin jatkuvaan kehittämiseen. Prosessin tulee kattaa koko tuotteen elinkaari, huomioiden myös lanseerauksen jälkeiset vaiheet, joissa markkinoilla olevaa tuotetta kehitetään. Vaatimuksia on kyettävä tarkentamaan iteratiivisesti, jolloin ne pysyvät ajantasaisina ja huomioivat muutokset ohjelmiston uhkissa ja riskeissä. Tutkimustehtävänä oli luoda toimeksiantajan (iso Suomalainen fyysisten turvallisuustuotteiden valmistaja) tarpeisiin sopiva malli, jonka avulla on mahdollista implementoida tietoturvallisuus kiinteäksi osaksi ohjelmistokehitystä ja turvallisempaa ohjelmiston tuottamista. Tutki-musongelman ratkaisussa hyödynnettiin käytännönläheisen toimintatutkimusmallin kahta ensimmäistä vaihetta. Tutkimuksen aluksi luotiin työn teoreettinen perusta vaatimusmäärittelystä ja tietoturvallisuudesta, sitten aloitettiin nykytila-analyysi. Siinä selvitettiin dokumentti analyysillä toimeksiantajan organisatorista toimintaympäristöä: keskittymällä vaatimusmäärittelyn prosessimalliin ja sitä hyödyntäviin sidosryhmiin. Saatujen tietojen pohjalta laadittiin suunnitelma haastatteluun, jonka avulla kartoitettiin vaatimusmäärittelyprosessin ongelmakohtia. Saadut tulokset analysoitiin codingilla ja teemoittelemalla. Toinen osa diagnoosia oli vertailututkimus, jota hyödynnettiin parhaiden käytänteiden selvittämiseen ja oikeiden elementtien muodostamiseen. Saadut muutosideat yhdistettiin kirjallisuuskatsauksesta nousseisiin, kohdeyrityksen liiketoimintaan sopiviin käytänteisiin. Tämä kombinaatio muodosti mallin tietoturvallisempaan vaatimusmäärittelyprosessiin, joka jalkautetaan kohdeorganisaatioon. Työn uutuusarvo on se, että malli yhdistää ketterää ohjelmistokehitystä riski- ja uhkamallinnus pohjaiseen ajatteluun, jota on tutkittu vielä vähän. Lisäksi molemmat komponentit toimivat lineaarisessa vaatimusmäärittelyprosessissa.
...
The aim of the Requirements Engineering (RE) process is to elicit and refine into a solution the ideas and needs from identified stakeholders of a product or a service. These solve problems in customer business while bringing added value. Software development’s central theme is software’s security. It has been studied abundantly but its usage and implementation are often problematic and deficient. Software threats and risks evolve continuously, and vulnerabilities from software’s development are discovered and exploited in new ways. Software development should invest into information security as a part of requirements engineering processes’ continuous development. This process should encompass the entire product lifecycle and consider post-launch phases where the on-market product is further developed. Requirements should be reviewed iteratively to keep current and adapt to the changing threats and risks in the software. The research objective was to create a suitable model for the commissioner (a large manufacturer of physical security products in Finland) which would adapt information security as an integral part of the software development and thus produce more secure software. Two stages of action re-search were applied to problem solving. The first step was to create the theoret-ical background for requirements engineering and information security. After that, the current situation analysis was initiated, and document analysis was used to map out the organizational operating environment with a focus on the requirements engineering process model and the stakeholders utilizing it. These results formed the foundation for the interviews, where the problems of the requirements engineering process were surveyed. Results were analyzed with coding and categorizing. A second part of the diagnosis was a comparative study, which was utilized to discover suitable practices to form the needed elements for the model. The resulting change recommendations from the interviews were combined with suitable practices from the field. This combination formed a model for information security in RE process and it will be later implemented by the commissioner. The model has a novelty value because it merges agile development practices with the idea of threat and risk modelling, which is still an understudied subject. Additionally, both components work as a part of a linear RE process.
...
Keywords
Metadata
Show full item recordCollections
- Pro gradu -tutkielmat [29624]
Related items
Showing items with similar title or keywords.
-
Requirements Engineering Failure Factors in Software Projects
Räsänen, Teemu (2021)Vaatimusmäärittely on olennainen osa sovellusprojekteja ja sen onnistumisella on merkittävä vaikutus kaikkiin muihin sovellusprojektin osa-alueisiin. Tässä tutkielmassa pyritään tuottamaan lisää tietoa vaatimusmäärittelyyn ... -
Requirements risk management in agile software development projects
Puttonen, Heidi (2018)Erilaisten ketterien järjestelmäkehitys menetelmien kasvanut suosio on vaikuttanut perinteiseen tapaan ymmärtää järjestelmävaatimusten hallintaa. Ketterissä järjestelmäkehitys projekteissa vaatimusmäärittely prosessin ... -
Continuous Requirements Risk Profiling in Information Systems Development
Tuunanen, Tuure; Vartiainen, Tero; Ebrahim, Mehdi; Liang, Murong (IEEE, 2015)With the increasing adoption of agile, lean, and iterative development methods, information systems development (ISD) has become continuous, meaning that system development moves rapidly from release to release. This means ... -
ISO 27001 information security management standard’s implementation in software development environment : a case study
Ojalainen, Anniina (2020)ISO 27001 -tietoturvastandardi ohjaa organisaatiot arvioimaan ja dokumentoimaan tietoturvaprosessejaan. Tietoturvastandardeja on kritisoitu pelkkien prosessien olemassaoloon keskittymiseen prosessien sisällöllisten seikkojen ... -
Selection of open-source web vulnerability scanner as testing tool in continuous software development
Riepponen, Mika (2024)Tietoturva on kriittinen osa web sovelluksia ja haavoittuvuudet tulisi ennaltaehkäistä tai tunnistaa sekä korjata mahdollisimman aikaisin ohjelmiston kehitysprosessissa. Tämän tutkimuksen tarkoitus on määrittää kuinka hyvin ...