Ketterä Ohjelmistokehitys

Ketterä ohjelmistokehitys (engl.

Ketteriä menetelmiä on useita, mm. Extreme Programming (XP), Scrum, DSDM, Crystal Methods, Agile modeling, Adaptive software development, Pragmatic Programming, Feature driven development ja Gilb-EVO.

Ketterien menetelmien yhteiset piirteet

Useimmat ketterät menetelmät pyrkivät minimoimaan riskejä jakamalla ohjelmistokehityksen lyhyisiin iteraatioihin, jotka kestävät tyypillisesti yhdestä neljään viikkoa. Kukin iteraatio on kuin pieni ohjelmistoprojekti ja sisältää kaikki uusien toimintojen julkaisemiseen tarvittavat tehtävät: projektisuunnittelun, vaatimusanalyysin, ohjelmistosuunnittelun, koodauksen, testauksen ja dokumentoinnin. Vaikka iteraatio ei välttämättä lisää niin paljon toiminnallisuutta, että tuotteen julkaisu olisi järkevää, ketterä ohjelmistokehitysprojekti pyrkii periaatteessa julkaisukelpoiseen ohjelmistoon jokaisen iteraation lopussa. Iteraation lopussa projekti arvioi uudelleen projektin prioriteetit ja päättää seuraavan iteraation sisällöstä.

Ketterät menetelmät pitävät suoraa viestintää (mieluiten kasvokkain) tärkeämpänä kuin kirjoitettuja dokumentteja. Useimmat ketterät tiimit työskentelevät samassa työtilassa, ja tiimiin kuuluvat kaikki, joita tarvitaan ohjelmiston saamiseen valmiiksi. Tämä tarkoittaa vähintään ohjelmoijia ja heidän ”asiakkaitaan”. (Asiakkaat määrittelevät tuotteen ja voivat olla tuotepäälliköitä, liiketoiminta-analyytikkoja tai varsinaisia käyttäjiä.) Tiimiin voi kuulua myös testaajia, käyttöliittymäsuunnittelijoita, teknisiä kirjoittajia ja päälliköitä.

Ketterät menetelmät korostavat toimivan ohjelmiston olevan ensisijainen edistyksen mittari eikä dokumentaatiolla ole samaa itseisarvoa kuin useissa perinteisemmissä malleissa. Tästä seuraa yleinen harhaluulo, että ketterä kehitys olisi kuritonta ohjelmointia tai että suunnittelua ei tehtäisi lainkaan. Suunnittelua tehdään päinvastoin jatkuvasti, koko projektin ajan. Suunnitelmia vain ollaan halukkaampia muuttamaan kuin perinteisissä malleissa.

Agile Manifesto ja Agile Alliance

Vuonna 2001 17 merkittävää ketterän kehityksen (jota silloin kutsuttiin ”kevyiksi menetelmiksi”) puolestapuhujaa kokoontui Snowbirdin hiihtokeskukseen Utahissa keskustelemaan menetelmiensä yhteisestä perustasta. Tarkoitus oli luoda yhteistä pohjaa ketterille menetelmille ja edistää näin ketterän ajattelun leviämistä. Tuon kokoontumisen tuloksena he julkaisivat julistuksen nimeltä Agile Manifesto (’Ketterä manifesti’), jota pidetään ketterän kehityksen perusmääritelmänä. Manifestissa määritellään ketterille menetelmille neljä tyypillistä arvoa, sekä 12 periaatetta, joita menetelmät noudattavat.

Manifestin sisältö on seuraava:

    Me etsimme parempia keinoja ohjelmistojen kehittämiseen tekemällä sitä itse ja auttamalla siinä muita.
    Tässä työssämme olemme päätyneet arvostamaan
    Yksilöitä ja vuorovaikutusta enemmän kuin prosesseja ja työkaluja
    Toimivaa sovellusta enemmän kuin kokonaisvaltaista dokumentaatiota
    Asiakasyhteistyötä enemmän kuin sopimusneuvotteluita
    Muutokseen reagoimista enemmän kuin suunnitelman noudattamista
    Vaikka oikeallakin puolella on arvoa, me arvostamme vasemmalla olevia asioita enemmän.

Ketterien menetelmien käyttöä Suomessa edistää Agile Finland ry, ja maailmanlaajuisesti Agile Alliance -niminen voittoa tavoittelematon järjestö.

Katso myös

Kirjallisuutta

  • Abrahamsson, P., Salo, O., Ronkainen, J. & Warsta, J.: Agile software development methods. Review and analysis. VTT Publications, 2002, nro 478, s. 9–17. (englanniksi)
  • Abrahamsson, P., Warsta, J., Siponen M. T. & Ronkainen, J.: New directions on agile methods: A comparative analysis. Proceedings of the 25th International Conference on Software Engineering Portland, Oregon, May 3–10, 2003, s. 244–254. Washington, DC: IEEE Computer Society. (englanniksi)
  • Cohen D., Lindvall M. & Costa P.: An Introduction to Agile Methods. Advances in Computers, 2004, nro 62, s. 1–66. (englanniksi)
  • Shore, James: The Art of Agile Development. Sebastopol: O'Reilly, 2007. (englanniksi)

Lähteet

Aiheesta muualla

Ketterä Ohjelmistokehitys 
Commons
Wiki Commonsissa on kuvia tai muita tiedostoja aiheesta Ketterä ohjelmistokehitys.

Tags:

Ketterä Ohjelmistokehitys Ketterien menetelmien yhteiset piirteetKetterä Ohjelmistokehitys Agile Manifesto ja Agile AllianceKetterä Ohjelmistokehitys Katso myösKetterä Ohjelmistokehitys KirjallisuuttaKetterä Ohjelmistokehitys LähteetKetterä Ohjelmistokehitys Aiheesta muuallaKetterä OhjelmistokehitysDynamic Systems Development MethodEnglannin kieliExtreme ProgrammingOhjelmistoOhjelmistotuotantoScrum

🔥 Trending searches on Wiki Suomi:

TonavaKorppiNHLNoora LouhimoUltra BraLahtiMikko RasilaMikkeliKajaaniNiina BackmanPariisin Notre-Damen katedraalin tulipalo 2019LapualaisoopperaMatti MörttinenOsmanien valtakuntaIsraelin–Palestiinan konfliktiKOM-teatteriMetyylifenidaattiDNASuuri seikkailu (vuoden 2024 suomalainen televisiosarja)ÄngelholmVetyJanne LehtonenRuutiLuettelo Ruotsin hallitsijoistaRanskaEppu NormaaliMinja KoskelaAlexander StubbPahanhautojaTikkurilan jäähalliJuho MilonoffNightwishPortugaliUrpiainenRisto RytiRomaniaJeesusAlbert EinsteinSeppo Koskinen (työoikeuden professori)Samae KoskinenVäinö LinnaEmil RuusuvuoriJuno (artisti)BelgiaHarry PotterPeaky Blinders – gangsteriklaaniReijo RuotsalainenTabula Rasa (yhtye)KuubaSleepy SleepersMGM-140 ATACMSNotre-Damen katedraaliLehtokurppaVihreä liittoKrista KiuruKesäolympialaiset 2024TriathlonÅke LindmanSanni SeppoK. J. StåhlbergAlaskaGöran StubbHämeenlinnaBitcoinInstagramHindulaisuusDyyni (vuoden 2021 elokuva)BauhausLuettelo Suomen puolueistaKari RydmanTekoälyMyrskyluodon MaijaHarvey WeinsteinPieksämäkiKristina IsolaLuterilaisuusKorean demokraattinen kansantasavaltaSuomen europarlamenttivaalit 2024🡆 More