Managing and prioritizing requirements risks in information systems development
Tietojärjestelmien suunnittelussa ja toteutuksessa järjestelmän tavoite ja ominaisuudet kuvataan tietojärjestelmän vaatimuksina. Tietojärjestelmävaatimusten keräämisen, kehittämisen ja hallinnan prosessit tietojärjestelmien kehityksessä tähtäävät siihen, että järjestelmän vaatimukset saadaan koottua sidosryhmiltä, ne analysoidaan huolellisesti ja ilmaistaan vaatimukset järjestelmän kehittäjille asianmukaisessa muodossa. Tämä menettely mahdollistaa käyttötarkoitusta vastaava järjestelmän toteuttamisen.
Tämän päivän tietojärjestelmäkehityksessä erilaisten ketterien kehitysmallien merkitys on kasvanut, ja voidaankin perustellusti väittää, että erilaiset ketterien menetelmien sovellutukset ovat tällä hetkellä tietojärjestelmäkehityksen de facto -menetelmä. Vuosien mittaan sekä tutkijat että käytännön tietojärjestelmäkehittäjät ovat kehittäneet laajan valikoiman erilaisia menetelmiä tietojärjestelmien vaatimuksia kokoamiseen, analysointiin ja hallintaan nykyaikaisten tietojärjestelmien kehitysmallien yhteydessä.
Tästä huolimatta sekä tutkimuskirjallisuus että käytännön projektikokemukset kertovat, että merkittävä osa epäonnistuneista tietojärjestelmähankkeista epäonnistuu juuri vaatimushallinnan puutteiden takia. Kelvottomasti toteutettu vaatimusten kokoaminen, analysointi ja hallinta aiheuttavat riskejä tietojärjestelmäprojekteille. Nämä niin sanotut vaatimusriskit ovat tyypillisesti seurausta vaatimuksista, jota ovat väärin tunnistettuja, epäselvästi kuvattuja, teknisesti monimutkaisia, riittämättömästi määriteltyjä tai helposti muuttuvia. Jos vaatimuksiin liittyviä riskejä ei hallita tietojärjestelmän kehitysprosessin aikana, kasvaa riski sille, että hanke epäonnistuu saavuttamaan tavoitteitaan.
Tietojärjestelmäkehityksen riskejä on käsitelty lukuisissa tutkimuksissa, mutta näyttää siltä, että tämän päivän tietojärjestelmätieteen tutkimus ei tarjoa paljoa vaihtoehtoja metodeiksi, joiden avulla on mahdollista analysoida ja priorisoida vaatimusriskejä. Tässä pro gradu -työssä tutkitaan, kuinka nykyiset tietojärjestelmien kehitysmenetelmät lähestyvät vaatimusriskejä ja niiden priorisointia.
Kirjallisuuskatsauksessa keskustellaan siitä, miten vaatimusten hankinta, kehittäminen ja hallinta nähdään ketterissä kehitysmenetelmissä ja kuinka vaatimusriskien priorisointi ja hallinta toteutuvat menetelmissä. Työ kuvaa myös vaatimusten sekä vaatimuksiin liittyvien artefaktien laatukriteerien kategorisoinnin, vaatimusten laadun parantamiseen tähtäävien tekniikoiden katsauksen sekä toimenpiteitä, joilla vaatimusten laadun kehittämistä tietojärjestelmäkehityksessä voi parantaa.
Työssä tarkastellaan myös vaatimusriskien hallintaa yleisen ketterän kehitysmallin kehyksessä ja kuvataan, miten vaatimuksiin liittyviä riskejä käsitellään ketterissä menetelmissä. Nykyaikaisissa tietojärjestelmien kehitysmenetelmissä, kuten ketterissä menetelmissä, on useita sisäänrakennettuja piirteitä, jotka auttavat vaatimusriskien hallinnassa.
Kirjallisuuskatsaus vaatimushallinnan ja –analyysin menetelmiin osoittaa, että vaatimusriskejä hallitaan pääsääntöisesti siten, että pyritään tuottamaan mahdollisimman korkealaatuisia tietojärjestelmävaatimuksia. Tämä toteutuu siten, että kehittäjät soveltavat parhaita käytäntöjä vaatimusten hankinnassa, kehittämisessä ja hallinnassa koko järjestelmän elinkaaren ajan. Tämän päivän kehitysmenetelmät korostavat käyttäjäkeskeistä ajattelua, sidosryhmäyhteistyön merkitystä sekä asiakkaan arvontuotannon ymmärtämistä. Taustaoletus on, että käyttäjäkeskeisten kehitysmenetelmien avulla sekä asiakkaan arvontuotantoa ymmärtämällä saavutetaan parempi vaatimusten oikeellisuuden taso sekä siten parempi luottamus siihen, että kehitetään oikean-laista järjestelmää.
On huomionarvoista, että vaikka alan kirjallisuudessa melko yksimielisesti todetaan vaatimusten hallinnan epäkohtien olevan merkittävä tietojärjestelmäprojektien epäonnistumiseen vaikuttava tekijä, niin silti vaatimuksiin liittyviä riskejä lähestytään harvoin riskienhallinnan näkökulmasta. Riskienhallinnallisessa lähestymistavassa vaatimuksiin liittyvät riskit ensin tunnistetaan, sitten niiden sekä valitaan toimenpiteet riskien hallitsemiseksi.
Tuunanen & Vartiainen (2016) esittelevät tutkimuksessaan vaatimusriskien analysoinnin ja priorisoinnin menetelmän. Tässä työssä tutkitaan sitä, kyseinen menetelmä (Tuunanen & Vartiainen, 2016) käsittelee vaatimusriskejä sekä niiden hallintaa ja pienentämistä. Työssä tutkitaan erityisesti menetelmän sovellettavuutta ja hyödyllisyyttä tapaustutkimuksen keinoin esimerkkiprojektissa. Tutkimuksessa data kerättiin käytännön sovelluskehitysprojektin yhteydessä viidellä puolistrukturoidulla asiantuntijahaastattelulla sekä projektin määrittelytyöpajassa pidetyllä observoinnilla. Esimerkkiprojekti oli asiakas, jossa kehitettiin jo käytössä olevaan ohjelmistoon uusia ominaisuuksia ketterin menetelmin ohjatussa projektissa.
Tapaustutkimus osoittaa, että vaatimusriskien analysointimenetelmä nähtiin uutena lähestymistapana tutkimuksen osallistujien näkökulmasta. Menetelmää pidettiin tarpeeseen sopivana ja sen koettiin antavan arvokasta tietoa projektin vaatimuksiin liittyvistä riskeistä. Menetelmässä oli kuitenkin vaiheita, joita ei pidetty soveltuvana projektissa. Tähän liittyen kirjattiin menetelmän kehitysideoita ja jatkotutkimuskohteita. Erityisenä havaintona tapaustutkimuksessa nousi tarve menetelmän soveltamiseen projektin kontekstin mukaisena. Tapaustutkimuksen perusteella näyttää siltä, että kyseisessä projektissa menetelmä on erityisen arvokas projektissa sovelluskehityspalvelua ostavan asiakkaan projektijohdolle, sillä se tarjoaa uuden tavan hallita projektiin liittyviä riskejä.
...
In design and implementation of information systems (IS), the purpose and goals of the IS under development are commonly expressed as IS requirements. The requirements acquisition, development and management processes in IS development (ISD) aim at acquiring the IS requirements from relevant stakeholders, analyzing them properly, and expressing the requirements to the IS developers in appropriate format to allow implementation of an IS that fits the purpose. Concurrently, various agile approaches in IS development have grown in importance. One can justifiably argue various agile adaptations constituting the de-facto IS development approach of today. Over the years, a wide variety of methods and techniques have been developed both by practitioners and researchers to systematically acquire, analyze and manage stakeholder requirements with concurrent ISD approaches.
However, both research literature and practical experience tell that remarkable share of unsuccessful IS development projects fail because of shortcomings in requirements engineering and management. Improperly executed requirements analysis and requirements management therefore poses risks to success of IS projects. These so-called requirement risks typically result from IS requirements that are incorrectly identified, unclearly described, technically complicated, inadequately specified, ambiguously expressed, or highly volatile. If the requirements and their risks are not properly handled throughout the IS development process, the risk of project failure increases.
The risks in IS development have been considered in numerous studies, but it still appears that the contemporary information science does not provide many methods for prioritizing requirement risks. In this thesis study, we study how the contemporary information system design methodologies consider requirement risks and their prioritization.
In the literature review, we discuss how requirements acquisition and management is approached in agile and continuous delivery, and how requirement risk management and prioritization realize in these methods. This thesis also provides the reader with a categorization of characteristics of high quality requirements, techniques to improve requirement quality, discussion on quality criteria for requirements artefacts, and measures to help in implementing requirements development practices.
In this thesis an analysis of a generic agile model’s requirement risk mitigating characteristics is presented. The concurrent ISD approaches, such as agile frameworks, have many characteristics which help IS developers in requirements risk mitigation.
The review on requirements engineering and requirements management literature propose that requirements risks in IS development are managed by trying to produce high quality requirements by applying best practices in requirements elicitation, requirements development and requirements management throughout the life-cycle of the IS. The concurrent ISD approaches emphasize user-centric thinking, stakeholder collaboration and the importance of understanding the customer value creation. The assumption is that by applying user-centric requirements acquisition and development approaches, and by understanding IS customer value creation, correctness of the IS requirements can be improved and therefore confidence in building a right IS improved.
It is remarkable that even though the literature states fairly unanimously states that unsuccessful requirements engineering processes are remarkable contributor in failed IS projects, the requirements risks are seldom approached from the risk management perspective, i.e. by identifying risks the risks associated with requirements, prioritizing them and deciding on the means to mitigate them.
Tuunanen and Vartiainen (2016) represent a requirements risk prioritization method presented, which considers requirement risks, their prioritization and mitigation. In this thesis work we also study the method in a case study, to evaluate its applicability and usefulness in a case project. The empirical part of the study was conducted as an interpretive case study. The data is collected from project specification workshop observations and five semi-structured interviews for project team members of an IS development industry project applying agile development approach.
The case study results suggest that the requirement risk analysis approach was found novel by the case study participants, the method gives was considered applicable in the case project and provided valuable information about the requirements risks. However, usefulness of certain parts of the method were challenged, and improvement suggestions made. Context-specific adaptation method, and remarks on applying the method in ISD pro-jects are presented. The results of the case project interviews suggest that the method would provide most value for the customer-side project management, because it provides them with a new tool for estimating project risk elements associated with requirements. The thesis also represents several items for further research.
...
Keywords
Metadata
Show full item recordCollections
- Pro gradu -tutkielmat [29105]
Related items
Showing items with similar title or keywords.
-
Development of an Agile Requirements Risk Prioritization Method : A Design Science Research Study
Tuunanen, Tuure; Vartiainen, Tero; Kainulainen, Sanna; Ebrahim, Mehdi (Association for Information Systems, 2023)The practice of information systems development (ISD) has changed during the past two decades from very structured approaches to agile ISD methods. However, many methods available for managing requirements-related risks ... -
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 ... -
User-centered development and maintenance method for software teams
Laitila, Tero (2017)Tämä tutkimus pyrkii löytämään sopivan metodin jatkuvaan ohjelmistokehitykseen (tuotekehitys ja ylläpito). Se yhdistää ketterän ohjelmistokehitysmenetelmän uusimpiin operatiivisiin metodeihin sekä käyttäjäläheiseen ... -
Requirements Risk Management for Continuous Development : Organisational Needs
Kainulainen, Sanna; Tuunanen, Tuure; Vartiainen, Tero (Australasian Association for Information Systems, 2024)Information systems development has recently evolved from traditional to agile and continuous forms. Continuous development (CD) methods, such as development and operations (DevOps), integrate many well-regarded parts of ...