General BA Matters
Ohjelmistokehityksessä tai missä tahansa muussa projektissa, jossa on useita vaatimuksia, budjettirajoituksia ja tiukkoja määräaikoja, on usein tarpeen priorisoida sidosryhmien vaatimukset. Jossain vaiheessa on yleensä tehtävä päätöksiä siitä, mitkä vaatimukset on toteutettava ensin ja mitkä voidaan lykätä myöhempään julkaisuun.
Vaatimusten priorisointiin on kehitetty lukuisia menetelmiä. Jotkin niistä toimivat parhaiten pienelle määrälle vaatimuksia, kun taas toiset soveltuvat paremmin hyvin monimutkaisiin projekteihin, joissa on monia päätöksentekijöitä ja muuttujia. Tämä luettelo vaatimusten priorisointitekniikoista antaa yleiskatsauksen yleisimmistä tekniikoista, joita voidaan käyttää vaatimusten priorisoinnissa.
Ranking
Kun vaatimukset asetetaan paremmuusjärjestykseen järjestysasteikolla, jokaiselle vaatimukselle annetaan erilainen numeerinen arvo sen tärkeyden perusteella. Esimerkiksi numero 1 voi tarkoittaa, että vaatimus on tärkein, ja numero n voidaan antaa vähiten tärkeälle vaatimukselle, jolloin n on vaatimusten kokonaismäärä. Tämä menetelmä toimii parhaiten silloin, kun on kyse yhdestä ainoasta sidosryhmästä, sillä voi olla vaikeaa sovittaa yhteen eri sidosryhmien näkemyksiä siitä, mikä vaatimuksen prioriteetin tulisi olla; keskiarvon ottaminen voi kuitenkin jossain määrin ratkaista tämän ongelman.
Numeerinen osoittaminen (ryhmittely)
Tämä menetelmä perustuu vaatimusten ryhmittelyyn erilaisiin prioriteettiryhmiin siten, että kukin ryhmä edustaa jotakin sellaista, johon sidosryhmät voivat suhtautua. Vaatimukset voidaan esimerkiksi ryhmitellä kriittiseen prioriteettiin, kohtalaiseen prioriteettiin ja valinnaiseen prioriteettiin. Sidosryhmät voivat myös luokitella vaatimukset pakollisiksi, erittäin tärkeiksi, melko tärkeiksi, ei tärkeiksi ja ei merkitystä kuvaamaan niiden tärkeyttä.
Nämä ryhmät olisi määriteltävä selkeästi, jotta sidosryhmät eivät ymmärrä niitä eri tavalla priorisointitehtävän aikana. Jotta sidosryhmät eivät sijoittaisi kaikkia vaatimuksia yhteen ryhmään, olisi rajoitettava kuhunkin ryhmään sijoitettavien vaatimusten prosenttiosuutta. Haittapuolena on kuitenkin se, että tällöin kussakin ryhmässä olevilla vaatimuksilla on sama prioriteetti, eikä kullekin vaatimukselle määritetä yksilöllistä prioriteettia.
MoScoW-tekniikka
Numeroiden sijasta tässä menetelmässä käytetään neljää prioriteettiryhmää: MUST have, SHOULD have, COULD have ja WON’T have. Tämän tekniikan avulla sidosryhmät voivat priorisoida vaatimuksia yhteistoiminnallisesti. Lyhenne edustaa seuraavaa:
- MUST (Pakollinen)
- SHOULD (Korkea prioriteetti)
- COULD (Suositeltava, mutta ei välttämätön)
- WOULD (Voidaan lykätä ja ehdotetaan myöhempää toteutusta varten)
Sidosryhmien päätökset vaatimusten prioriteeteista luokitellaan edellä esitetyllä tavalla. Katso tästä lisää MoSCoW : Requirements Prioritization Technique.
Kuplalajittelutekniikka
Vaatimusten priorisoimiseksi kuplalajittelun avulla otetaan kaksi vaatimusta ja verrataan niitä toisiinsa. Jos huomaat, että toisella vaatimuksella pitäisi olla suurempi prioriteetti kuin toisella, vaihdat niitä sen mukaisesti. Jatketaan näin, kunnes viimeinenkin vaatimus on lajiteltu oikein. Tuloksena on lista vaatimuksista, jotka on asetettu paremmuusjärjestykseen.
Sadan dollarin menetelmä
Tämä yksinkertainen menetelmä on käyttökelpoinen kaikkialla, missä useiden sidosryhmien on demokraattisesti äänestettävä siitä, mitkä vaatimukset ovat tärkeimpiä. Kaikki sidosryhmät saavat käsitteellisesti 100 dollaria, jotka he voivat jakaa vaatimusten kesken. Sidosryhmä voi sellaisenaan päättää antaa kaikki 100 dollaria yhdelle vaatimukselle, tai henkilö voi jakaa pisteet tasaisemmin. Mitä suurempi summa kullekin vaatimukselle jaetaan, sitä korkeampi on vaatimuksen prioriteetti. Lopuksi lasketaan yhteenlaskettu summa ja vaatimukset lajitellaan saatujen pisteiden perusteella.
Tätä tekniikkaa tulisi käyttää vain silloin, kun priorisoitavia vaatimuksia on pieni joukko ja kun vaatimukset ovat samat, jotta vastaajat eivät voisi vaikuttaa tuloksiinsa antamalla enemmän dollareita suosikkivaatimukselleen.
Tässä tekniikassa voi kuitenkin olla vaikea pitää kirjaa siitä, kuinka paljon on osoitettu ja kuinka paljon on jäljellä hävitettävää.
Analyyttinen hierarkiaprosessi (AHP)
Tämän kuuluisan vaatimusten priorisointimenetelmän on suunnitellut Thomas L. Saaty. Menetelmä kuvaa itse asiassa kokonaisen kehyksen, jonka avulla voidaan tehdä oikeita päätöksiä esimerkiksi liike-elämässä, terveydenhuollossa, julkishallinnossa ja monilla muilla aloilla. Pohjimmiltaan sidosryhmät purkavat tavoitteensa pienempiin osaongelmiin, jotka ovat helposti ymmärrettävissä ja analysoitavissa (hierarkian muodossa).
Kun hierarkia on rakennettu, päätöksentekijät arvioivat elementtejä vertailemalla pareja toisiinsa. AHP:n avulla suositeltujen vertailujen kokonaismäärä on n × (n-1)/2 (jossa n on vaatimusten lukumäärä) kullakin hierarkiatasolla. Osallistujat tekevät (joskus tietoihin perustuvia) arvioita kunkin elementin suhteellisesta tärkeydestä. Tämän jälkeen kullekin hierarkian elementille voidaan antaa numeerisia arvoja (jotka perustuvat tärkeysjärjestykseen).
Tämä menetelmä ei sovellu suurelle määrälle vaatimuksia, koska vaatimusten määrä määrittää suoritettavien vertailujen määrän.
Viisi syytä
Usein käy niin, että sidosryhmät haluavat ottaa käyttöön tietyn ominaisuuden syistä, jotka eivät perustu loogisiin perusteluihin tai yrityksen liiketoiminnallisiin etuihin. Viiden whysin avulla analyytikko kysyy sidosryhmältä toistuvasti (enintään viisi kertaa), miksi vaatimus on tarpeellinen, kunnes vaatimusten tärkeys on todettu. Vastaukset paljastavat, onko vaatimus todella välttämätön vai voidaanko se perua/lykätä, kun tärkeysjärjestys on määritetty.