Ketterä ohjelmointi

Ketterällä prosessilla on tärkeä rooli ohjelmistojen kehittämisessä ja hallinnassa. Ketterillä on joukko periaatteita, joissa keskitytään suoraan asiakasarvoon, iteratiiviseen ja vähittäiseen toimitukseen. Ketterät menetelmät keskittyvät kahteen eri osa-alueeseen, joista toinen on ketterät käytännöt, jotka ovat äärimmäistä ohjelmointia ja pariohjelmointia, toiset keskittyvät hankehallintaan, joka tapahtuu scrum-lähestymistavan kautta. Ketterää prosessia käytetään, kun yrityksellä tai organisaatiolla on selkeys tavoitteestaan, mutta polku ratkaisuun on epäselvä, käytetään ketterää prosessinhallintaa.

Ketterän käytännön äärimmäistä ohjelmointia pidetään parhaana käytäntönä hyödyntää ohjelmointijakson hyötyjä. Äärimmäinen ohjelmointi syntyi sen jälkeen, kun ongelmat syntyivät perinteisessä ohjelmistokehitysjaksomallissa. Sen käyttöönotto tehtiin vain keskittyä "yksinkertaisesti saada työ valmis" ja se todettiin tehokkaaksi kehityksessä. Äärimmäinen ohjelmointi on kokeiltu ketterä kehityskäytäntö; se keskittyy mahdollisimman paljon asiakasvuorovaikutukseen tietämään tarkka vaatimus ja päästä sitten vain tuotteen kehitykseen.

Ketterän ohjelmoinnin toiminta

Se jakaa koko syklin prosessoinnin pienemmiksi tai lyhyiksi jaksoiksi. Kehitysvaiheen aikana, tai jos voidaan sanoa vaihe ennen toimitusta (voi olla myös viimeinen vaihe), asiakas voi tehdä muutoksia vaatimuksensa perusteella. Se toimii viidessä vaiheessa-

  • Tutkimus - Äärimmäinen ohjelmointi aloittaa tuotekehitysjakson keräämällä vaatimukset käyttäjältä. Käyttäjä merkitsee ideansa tai vaatimuksensa tarinakortilla, jonka hän haluaa nähdä vapauttamisaikana. Tarinakorttipaikat määrittelevät tuotteeseen lisättävän määritteen. Samassa vaiheessa tiimi dokumentoi tuotekehitykseen tarvittavat käytännöt, työkalut ja tekniikan käyttäjän vaatimusten perusteella. Uuden tuotteen luomiseen tarvittava tekniikka testataan ja uusia mahdollisuuksia tutkitaan luomalla järjestelmän prototyyppi. Tutkimusvaiheen loppuun saattaminen voi viedä viikon tai muutaman kuukauden, täysin riippuu ohjelmoijasta, kuinka tuttu ohjelma on tekniikalle.
  • Suunnittelu - Kerätyt tiedot jaetaan sitten pieniin jaksoihin ymmärtää jokainen käyttäjän vaatimus. Tiedot priorisoidaan tuotteen ensimmäistä julkaisua varten, sitten kehitys tapahtuu. Ensimmäisen julkaisun arvio ja aikataulut lasketaan ja sovitaan sitten julkaisusta. Ensimmäinen julkaisuaika on alle kaksi kuukautta.
  • Iteraatiot - Tässä vaiheessa järjestelmien useita toistoja tapahtuu ennen tuotteen ensimmäistä julkaisua. Iteraatiot jaetaan useisiin pieniin iteraatioihin, ja niiden toteuttamiseen annetaan kaksi tai neljä viikkoa. Nyt iteraation suunnitteluvaihe on aktiivinen, mikä tarkoittaa päätöstä syklin jakautumisesta, prioriteettitarpeesta ja kehitystyöhön tarvittavasta työvoimasta. Iteraatiot luovat järjestelmän ääriviivat, jolloin järjestelmä saavutetaan valitsemalla kortit käyttäjän tekemistä tarina-korteista. Päätöksen tekee käyttäjä, jonka ensin valita. Asiakas suorittaa iteroinnin jokaisen aikavälin lopussa, jonka hän on päättänyt jokaisesta iterointiosasta.
  • Tuottaminen - Tätä vaihetta pidetään tärkeänä, koska viimeinen testaus suoritetaan tähän vaiheeseen ennen tuotteen toimittamista asiakkaalle, suorituskyky testataan. Tänä aikana todennäköisesti löytyy uusia muutoksia, joiden on oltava oikein tuotteessa ennen tuotteen ensimmäistä julkaisua. Joukkue on valmis hyväksymään muutokset missä tahansa kehitysvaiheessa, koska uudet vaatimukset voivat ilmetä missä tahansa vaiheessa. Korjauksia varten iterointiaika on lyhennettävä kolmesta viikkoon. Muut ideat ja ehdotukset tallennetaan myöhempää toteuttamista varten. Tuotantoa jatketaan sen jälkeen, kun tuote on julkaistu ensimmäistä kertaa samalle tuotteelle tai se voi tapahtua uusille iteraatioille. Huoltoryhmää pyydetään korjaamaan virheet tämän vaiheen aikana, tämä tehdään tuotteen ensimmäisen julkaisun jälkeen. Viestintä asiakkaan kanssa voi kysyä myös asiakastuen kautta. Uusien tiimin jäsenten lisääminen ja muutos joukkueessa, rakenne voidaan tarvita ylläpidon aikana.
  • Kuolemavaihe - Tässä vaiheessa asiakas ei suostu enää tarinakorttiin toteutusta varten. Tässä vaiheessa tuotteesta voidaan tehdä lopullinen dokumentointi, jonka uskotaan arkkitehtuuriin, suunnitteluun tai koodiin tekemättä muutoksia. On varmistettava, että tuote on toimittanut halutun tuotteen, muuten järjestelmää pidetään kuolemantapauksena. Sen pitäisi pitää kulut jatkokehityksen rajoissa.

Joukkue (rooli ja vastuu)

Ketterissä jaksoissa on useita jäseniä (joukkue) uuden tuotteen luomiseksi. Jokainen tehtävä on jaettu joukkueelle ja koottu loppuun saakka.

  • Ohjelmoija - Ohjelmoija on yksi pääelimistä, hän luo tuotteelle koodin ja pitää koodin yksinkertaisena ja selkeänä mahdollisuutena. Paras tapa koodata oikein on kommunikoida muiden ohjelmoijien ja joukkuetovereiden kanssa. Se voi olla tietyn tuotteen vaatimusten tuntemus.
  • Asiakas - Asiakas on pääelin, joka kirjoittaa tarina-kortit vaatimuksiaan varten ja päättää, mikä vaatimus tyydyttää hänen tarpeet. Toteutuksen prioriteetin asettaa asiakas.
  • Testeri - Testeri vastaa toiminnallisten testien suorittamisesta, hän auttaa asiakasta kirjoittamaan toiminnallisia testejä. Testaus suoritetaan kaikkialla (säännöllisesti) ja testaustyökalut ylläpidetään.
  • Tracker - Tracker antaa palautetta ja seuraa tiimin tekemää arviota ja tarjoaa myös parannusehdotuksia.
  • Valmentaja - Valmentaja on opas tiimin jäsenille koko kehitysprosessin ajan. Hän on kokenut, joka on työskennellyt monien vuosien ajan.
  • Konsultti - Konsultti on ulkopuolinen jäsen, joka ohjaa ryhmää erityisellä teknisellä tietämöllä, jota voidaan tarvita projektin kehittämiseen.
  • Johtaja - Hän on päättävä elin. Johtaja pitää tiimin radalla saadakseen työnsä päätökseen. Hän on avoin kommunikointiin ryhmän jäsenille asioista, joita joukkue kohtaa kehityksen aikana. Hän varmistaa, että työ etenee sujuvasti, kunnes projekti on toimitettu.

Suositellut artikkelit

Tämä on opas ketterään ohjelmointiin. Tässä keskustellaan ketterän ohjelmoinnin toiminnasta sekä ryhmäroolista ja vastuusta. Saatat myös katsoa seuraavia artikkeleita saadaksesi lisätietoja -

  1. Mikä on ketterä ohjelmistokehitys?
  2. Onko MySQL-ohjelmointikieli?
  3. Mikä on ketterä ja Scrum?
  4. Mikä on Kotlin-ohjelmointikieli?