Dyerin hypoteesi

Empiirinen ohjelmistotutkimus on tuottanut tukun lakeja ja hypoteeseja. Monet näistä ovat saaneet alkunsa havainnoista, joita tutkijat ovat tehneet ohjelmistoprojekteista. Eräs tärkeimmistä on niin sanottu Dyerin hypoteesi, joka toteaa: "Siirtyminen vaatimusmäärittelystä suunnitteluun kasvattaa vaatimusten määrän jopa 50-kertaiseksi." Hypoteesi ei vielä ole laki sen enempää kuin teoreemakaan, vaan alustavasti hyväksytty ehdotus. Se tarjoaa hyödyllisen näkökulman, joka tukee havaintoja, mutta jota ei kuitenkaan ole validoitu.

Robert Glass esittelee hypoteesin kirjassaan Facts and Fallacies of Software Engineering. Hypoteesi on peräisin tutkimuksesta, jonka Michael Dyer teki muutama vuosikymmen sitten. Vaikka vaatimusmäärittely pyritään tekemään mahdollisimman kattavasti eivät määrittelyssä löytyneet vaatimukset riitä suunnittelun pohjaksi. Siirtyminen vaatimusmäärittelystä suunnitteluvaiheeseen tietää samalla melkoista muutosta abstraktiotasoissa. Suunnittelun aikana löytyy lisää vaatimuksia, jotka on käytännöllisesti katsoen johdettu alkuperäisistä vaatimuksista. Määrittelyssä voi olla esimerkiksi vaatimus päivämäärästä. Tällainen vaatimus vastaa mitä-abstraktiota kun taas suunnittelussa tarvitaan vastauksia miten-abstraktiolle. Vaatimusmäärittely ei tässä tapauksessa kerro, miten päivämäärä annetaan. Siirtyminen abstraktiotasolta toiselle synnyttää siis johdettuja vaatimuksia, joita Glassin arvion mukaan voi olla jo 50 kertaa alkuperäisiä vaatimuksia enemmän.

Dyerin hypoteesia ei ole validoitu. Glass kertoo kirjassaan, että hypoteesi on tunnettu jo vuosikymmeniä. Hän on myös yrittänyt saada Dyerilta tarkempia viitteitä hypoteesille, mutta ei ole onnistunut yrityksissään. Hypoteesin validointi voitaisiin suorittaa tutkimalla ohjelmistoprojekteja ja laskemalla vaatimusten lukumäärän suhde johdettujen vaatimusten lukumäärään. Vaatimusmäärittelyjä ei ole mielekästä tehdä liian täydellisiksi, vaan niissä olisi keskityttävä ohjelmistoprojektin liiketoiminnan kannalta strategisiin vaatimuksiin. Johdetut vaatimukset eivät pääsääntöisesti kuulu suoraan tämänkaltaisiin strategisiin vaatimuksiin. Ne paremminkin täydentävät toteutusta ja tukevat osittain käytettävyysvaatimuksia. Kokemukseni mukaan Dyerin hypoteesi on kuitenkin osoittautunut oikeaksi moneen kertaan.

Julkaistu lauantaina 21.11.2009 klo 16:18 avainsanalla opiskelu.

Edellinen
Euroopan presidentti
Seuraava
Kanta-asiakaspäivä
Evästeiden käyttö

Käytän sivustollani evästeitä tarjotakseni parhaimman mahdollisen lukukokemuksen blogini lukijoille. Jos jatkat sivustoni käyttöä, oletan, että hyväksyt evästeiden käytön sivustollani.

Lisätietoja evästeiden käytöstä