Määritys ja suunnittelu

Ketterä määritys ja suunnittelu suuntaa resurssit olennaiseen

Määrittelyn ja suunnittelun tehtävä on löytää ja jalostaa asiakkaan tarpeet ja tuottaa toimitukselle budjetti ja aikataulu.

Vaatimusten määrityksessä loppukäyttäjiä haastattelemalla ja toimintatapoja tutkimalla sekä kehittämällä luodaan dokumentaatio toteutettavasta järjestelmästä ja sen ominaisuuksista.

Määrityksen yhteydessä luodaan myös tekninen määritys, jossa kuvataan ratkaisut teknisellä tasolla lähtien liikkeelle käytettävästä ohjelmointikielestä, tietokantaratkaisuista, tarvittavista palvelimista ja testausratkaisuista. Tekninen määritys kuvaa millä tekniikoilla toiminnallisen määrittelyn mukainen järjestelmä toteutetaan.

Oikein tehtynä määritys tuottaa riittävän informaation myös järjestelmän testaamista varten. Näin saadaan jo määritys vaiheessa simuloitua tulevan järjestelmän testaaminen ja löydetään mahdollisia virheitä. Määritys vaiheessa virheen korjaaminen on useitakertoja edullisempaa kuin valmiista järjestelmästä.

Määrityksen ja suunnittelun päämäärä on kustannusarvio

Kun määrityksen ja suunnittelun päämääräksi asetetaan realistinen kustannusarvio tarvittavista ominaisuuksista, ohjeistetaan samalla henkilöt tekemään laadukasta työtä. Näin tehtynä työmääräarviot perustuvat asiantuntijoiden suunnitteluun eivätkä arvailuun.

Ketterässä kehityksessä myös määritys ja suunnittelutyö on jatkuvaa, kuten yrityksen toiminnan kehittäminen. Tällaisen määrityksen avulla ei tarvitse arvailla vuosia tulevaisuuteen, vaan voidaan reagoida yrityksen muutoksiin lähes reaaliajassa.

Puhtaalta pöydältä vai
valmiiden osien hyödyntäminen

Määrityksien aikana tehdään päätös, lähdetäänkö halutut toiminnallisuudet kehittämään puhtaalta alustalta, vai käytetäänkö esimerkiksi valmiita avoimen lähdekoodin komponentteja tai ohjelmistoja pohjana. Toteutustyönä voi myös olla valmiin avoimen lähdekoodin ohjelmiston tai kaupallisen ohjelmiston käyttöönotto.

Käytetyt avoimen lähdekoodin ratkaisut valitaan ottaen huomioon mm. laatu, luotettavuus, versio, kehittäjäyhteisön aktiivisuus, dokumentointi ja asennettujen järjestelmien määrä. Valitut komponentit vastaavat ominaisuuksiltaan parhaita kaupallisia vaihtoehtoja.