Uudissana ’ketterä’

Usein kuulee puhuttavan ketteryydestä, jopa uudissanakirja sanaiset kansiot tuntee sellaisen käsitteen. Monet kielitieteilijät ovat huolissaan niistä sanoista, koska niiden merkitys on usein erikoinen, eikä välttämättä enää vastaa sanan alkuperäisiä merkitystä. Samoin myös monet Internetissä liikkuvat muutkin sanat kuten vaikkapa eeppinen ärsyttää monia. Kyseisellä sanalla tarkoitetaan jotain fantasiakirjallisuuteen liittyvää Taru Sormusten Herrasta tasoista juttua. [yle]

Kuva 1. visuaalisesti havainnollistettuna ketterän menetelmän pääperiaatteet.

Alkujaan ohjelmistoprojekteja tehtiin hyvin samoin kuin mitä tahansa muitakin projekteja. Ajateltiin, että kun kyse on projektista kuin projektista, niin niihin voitaisiin käyttää samoja menetelmiä. Yksinkertaisesti otettiin oppikirja projektinhallinnasta ja sovellettiin sitä, ilman että kunnolla ymmärrettiin, että miksi jotain tehtiin. Hieman kuin alkemian toimimattomuutta perusteltiin sillä, että sitä ei noudateta riittävän kurinalaisesti, niin sama ongelma ajateltiin olevan myös ohjelmistoprojektien hallinnassa. Tilanne johti lopulta NATO:n ylläpitämään ohjelmistokriisiä käsittelevään kokoukseen, jossa ihmeteltiin, että voiko ohjelmistojen kehittäminen oikeasti olla sellaista paskaa. [computernotes]

Kuva 2. perinteisen projektimallin vaiheet humoristisesti.

Perinteistä projektimallia kutsutaan ohjelmistoalalla vesiputous-malliksi [tutorialPoint]. Syynä on mahdollisesti se, että kyseessä on näennäisesti nopea tapa tehdä asioita, mutta mahdolliset(todennäköiset) ongelmat projektin aikana johtavat suuriin ongelmiin projektin aikana tai lopussa. Cantin-kaaviona tämä ilmenee sellaisena, että oikeastaan lopulta projekti lähtee aluksi tosi nopeasti, mutta ei lopu koskaan. Tämä perinteinen tehokas toimintapa ei toimi ohjelistoprojekteissa, vaan ne tehdään enemmänkin puumaisesti, jossa aloitetaan ylemmältä tasolta, aina alemmalle osalle mentäessä lopulta palataan takaisin alkuun ja sovitetaan osa siihen. Hetken katselee Mandelbrotin joukkoja, niin ymmärtää syyn [Mandelbrot, Mandelbrot2]. Perinteisen projektin vaiheet toistuvat aina jokaisen osasen kohdalla, mutta perinteiseen malliin nähden asioiden yhteensovittamiseksi projekti pilkotaan pieniksi paloiksi, jotka kasataan kuin palapeli yhteen isommaksi kokonaisuudeksi.

Kuva 3. Tyypillinen tupakka-askin kansi -kuvaaja 1974 vuonna julkaistusta SQL-kyselykielestä. Esim. Accesilla voi käsitellä SQL-tietokantaa ilman ohjelmointitaitoa [Youtube/tutorial].
Ylipäätänsä projektit perinteisellä mallilla johtivat tilanteeseen, että mitä enemmän esim. rakennusteollisuuteen tarkoitettuja projektimenetelmiä noudatti, niin sitä huonommin projekti toteutui. Tämä johti jopa yleisesti parhaimmaksi todettuun tyyliin, että koodia vain lätkittiin kasaan [nyt koodataan,VBforDOS]. Tämän ohjelmoijien lätkyttelyn kautta kehittyneestä projektimallista on tullut oma ketterä menetelmänsä, jota on sovellettu myös muissa projekteissa. Vuonna 2001 monet merkittävät ohjelmistokehittäjät julkaisivat manifestinsa, jonka he allekirjoittivat kritisoidakseen perinteisen projektimallin tiettyjä ohjelmistoprojektiin soveltumattomia periaatteita [manifesto].

Kuva 3. Ohjelmoinnin opettelu ja oppien soveltaminen käytäntöön. Huom. ei koske C-kieltä, jota käytetään C++:n ohjella vielä erityisesti sulautetuissa järjestelmissä tulostinportin bittien ja kellokeskeytysten pyörittelyyn.

Miksi perinteinen malli ei toimi ohjelmistoprojekteissa? Hyvin tarkka suunnitelma ei toimi monimutkaisissa järjestelmissä, kuten esimerkiksi ohjelmistoprojekteissa ja yhteiskuntajärjestelmissä. Syynä on yksinkertaisesti se, että ei ole vielä keksitty mitään tapaa tunnistaa kaikki riskit ja ongelmat monimutkaisesta järjestelmästä. Samoin myös ohjelmistoprojekti on hieman kuin prototyyppimäinen Olkiluoto 3 -ydinvoimala tai hölmöläisten talonrakennus-projekti [hölmöläiset]. Ylipäätänsä projektien epäonnistumiset ovat hyvin samanlaisia, kuten kouluesimerkki Wasanlaivasta. [faulty]

Jos yksinkertaisen vastauksen haluaa: ketterä tarkoittaa vaihtoehtoista itseohjautuvaa projektimallia perinteisestä jäykästä mallista poiketen.

Bill Gates Praising Apple Computers (Win101)

Kuutionvalmistusprojekti IT-alan tyyliin

Ohjelmointi on erilaista kuin valokuvaus

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *