1.3 Ketterä projektinhallinta ja käytännöt
Last updated
Last updated
1990-luvulla ohjelmistoala kohtasi merkittäviä haasteita. Ensinnäkin se oli suhteellisen nuori, eikä päteviä ohjelmistokehittäjiä ollut tarpeeksi saatavilla. Toiseksi, ala luotti tiukkaan projektinhallintatapaan, jota kutsuttiin "vesiputous"-menetelmäksi. Tämä menetelmä painotti laajojen vaatimuslistojen luomista, usein enemmän laillisten sopimusten vuoksi kuin yhteistyöhön asiakkaiden kanssa. Tämä yhteistyön puute johti laajaan epäluottamukseen.
Lisäksi ohjelmistokehitys poikkesi nykyään käytetystä inkrementaalisesta lähestymistavasta. Sen sijaan, että ohjelmistoja parannettaisiin vähitellen, ohjelmistot luotiin suurina paketteina. Ajattele ohjelmistoa kuten vanhaa Office 95:ttä, joka sisälsi lukuisia ominaisuuksia, joita useimmat ihmiset eivät käyttäneet. Näin laajojen pakettien kehittäminen vei vuosia ja johti usein ohjelmistovirheisiin. Pareton laki osoitti, että vain noin 20% ohjelmistosta käytettiin, jättäen 80% resursseista hukkaan.
Perinteisessä "vesiputous"-menetelmässä ohjelmistoprojekti saattoi kestää kokonaisen vuoden ilman minkäänlaista asiakkaan panosta. Ketterällä lähestymistavalla sama ohjelmisto toimitetaan asiakkaalle joka kuukausi tai "sprintin" aikana, mikä mahdollistaa varhaisen palautteen ja asteittaiset parannukset. Näin ollen vuoden lopussa sinulla on onnistunut lopputuote.
Ketterän kehitysprosessin sisältää useita keskeisiä käytäntöjä. Ensinnäkin on "tuotejonon" eli vuoden aikana haluttujen ominaisuuksien ja tehtävien luettelo. Sitten joka kuukausi sinulla on "sprintin jonon", joka on tehtävälista kyseisen kuukauden aikana työstettäväksi. Ketterä sykli tapahtuu säännöllisesti, yleensä joka toinen viikko tai kerran kuukaudessa, tiimin päätöksen mukaan, ja se sisältää vaiheet kuten suunnittelu, suunnitelma, kehittäminen, testaaminen ja ohjelmiston julkaisu. Tämä sykli toistuu, jossa jokainen sprintti ammentaa sprintin jonosta, ja se johtaa lopputuotteen toimittamiseen.
Erilaisia menetelmiä ja lähestymistapoja voidaan käyttää työskentelyyn ketterällä tavalla. Kaikki ne noudattavat aikaisemmin puhuttuja periaatteita ja arvoja.
Jotkin tunnetut ketterät kehykset ohjelmistokehityksessä sisältävät Scrum, Kanban, Hybrid, Lean, Bimodal, XP ja Crystal. Näistä Scrum on laajimmin käytetty.