Ketterä malli ohjelmistosuunnittelussa

Mikä on ketterä malli?

Ketterä malli on inkrementaalinen ja iteratiivinen ohjelmistokehityksen prosessi. Se määrittää kunkin iteroinnin numeron, keston ja laajuuden etukäteen. Jokaista iteraatiota pidetään ketterässä prosessimallissa lyhyenä "kehyksenä", joka kestää enimmäkseen kahdesta neljään viikkoa.

Ketterä malli jakaa tehtävät aikalaatikoihin tarjotakseen erityisiä toimintoja julkaisulle. Jokainen koontiversio on toiminnallisesti inkrementaalinen, ja lopullinen koonti sisältää kaikki attribuutit. Koko projektin jakaminen pieniin osiin auttaa minimoimaan projektin riskin ja kokonaisprojektin toimitusajan.

Ketterä malli

Mitkä ovat tärkeät ketterän mallin manifestit?

Tässä on ketterän mallin olennainen manifesti:

  • Yksilöt ja vuorovaikutus ovat etusijalla prosesseihin ja työkaluihin nähden.
  • Mukautuva, voimakas, itseorganisoituva tiimi.
  • Keskittyy toimivaan ohjelmistoon kattavan dokumentaation sijaan.
  • Ohjelmistosuunnittelun ketterän mallin tavoitteena on tarjota täydellinen asiakastyytyväisyys toimittamalla nopeasti arvokkaita ohjelmistoja.
  • Muutokset vaatimuksissa ovat tervetulleita, jopa myöhäisessä kehitysvaiheessa.
  • Päivittäistä yhteistyötä yrittäjien ja kehittäjien välillä.
  • Etusijalla on asiakasyhteistyö sopimusneuvottelujen sijaan.
  • Sen avulla voit tyydyttää asiakkaita varhaisilla ja toistuvilla toimituksilla.
  • Kasvokkain tapahtuvaan viestintään panostetaan voimakkaasti.
  • Toimivien ohjelmistojen kehittäminen on edistyksen ensisijainen indikaattori.
  • Promokestävän kehityksen tahtiin.
  • Jatkuvasti panostetaan tekniseen huippuosaamiseen ja äänisuunnitteluun.
  • Parannusarviointi tehdään säännöllisesti tiimissä.

Ketterän mallin vaiheet

Tässä ovat Agilen eri vaiheet:

Ketterän mallin vaiheet

Tässä ovat tärkeät vaiheet, jotka liittyvät ketterän mallin prosessiin SDLC:n elinkaaren aikana:

  • Vaatimusten kokoaminen: Tässä ketterän mallin vaiheessa sinun on määriteltävä vaatimukset. Myös liiketoimintamahdollisuuksista sekä projektin vaatimasta ajasta ja vaivaa tulee keskustella. Analysoimalla näitä tietoja voit määrittää järjestelmän taloudellisen ja teknisen toteutettavuuden.
  • Suunnittele vaatimukset: Toteutettavuustutkimuksen jälkeen voit määritellä vaatimukset sidosryhmien kanssa. UFD-kaavion tai korkean tason UML-kaavion avulla voit määrittää, kuinka uusi järjestelmä sisällytetään olemassa olevaan ohjelmistojärjestelmääsi.
  • Kehitys/Iterointi: Varsinainen työ alkaa tässä vaiheessa, kun ohjelmistokehitystiimi määrittelee ja suunnittelee vaatimukset. Tuote-, suunnittelu- ja kehitystiimit alkavat työskennellä, ja tuote käy läpi eri parannusvaiheita yksinkertaisella ja minimaalisella toiminnallisuudella.
  • Testi: Tämä ketterän mallin vaihe sisältää testausryhmän. Esimerkiksi laadunvarmistustiimi tarkistaa järjestelmän suorituskyvyn ja raportoi virheistä tässä vaiheessa.
  • Asennus: Tässä vaiheessa alkuperäinen tuote luovutetaan käyttäjälle.
  • Palaute: Tuotteen julkaisun jälkeen ketterän mallin viimeinen vaihe on palaute. Tässä vaiheessa tiimi saa palautetta tuotteesta ja korjaa virheitä saadun palautteen perusteella.

Waterfalliin verrattuna ketterät syklit ovat lyhyitä. Projektissa voi olla monia tällaisia ​​syklejä. Vaiheita toistetaan, kunnes tuote on toimitettu.

Ketteryyden tyypit

Tässä on joitain tärkeitä ketteriä tyyppejä:

tungos: Tämä ketterä menetelmä keskittyy ensisijaisesti tehtävien hallintaan tiimipohjaisissa kehitysolosuhteissa. Vuonna Scrum Agile malli, tiimin tulee noudattaa tarkasti jokaisen työsuunnitelmaa Sprint. Lisäksi tämäntyyppisiin projekteihin osallistuvilla ihmisillä on ennalta määritellyt roolit.

Crystal: Crystal-metodologian käyttäminen on yksi yksinkertaisimmista ja joustavimmista lähestymistavoista ohjelmistojen kehittämiseen, sillä jokaisella projektilla on ainutlaatuiset ominaisuudet. Siksi politiikat ja käytännöt on räätälöitävä heille sopiviksi.

Crystal-metodologiat luokitellaan seuraavasti:

  • ASIA SELVÄ: Käyttäjä pieniin ja vähäisiin kriittisiin ponnistuksiin.
  • ORANSSI: Käyttäjä kohtalaisen suurempiin ja kriittisiin projekteihin.
  • ORANGE VERKKO: Yleensä sähköistä liiketoimintaa

Dynaaminen ohjelmistokehitysmenetelmä (DSDM): Tämä Rapid Application Development (RAD) -lähestymistapa edellyttää käyttäjien aktiivista osallistumista, ja tiimeillä on valtuudet tehdä päätöksiä, joiden tavoitteena on tuotteiden jatkuva toimitus.

Feature Driven Development (FDD): Tämä ketterä menetelmä keskittyy "suunnittelun ja rakentamisen" ominaisuuksiin. Se on jaettu useisiin lyhyisiin työvaiheisiin, jotka on suoritettava kunkin ominaisuuden osalta erikseen. Se sisältää verkkotunnuksen läpikäynnin, suunnittelun tarkastuksen, koodin tarkastuksen jne.

Lean ohjelmistokehitys: Tämä menetelmä perustuu "Just-In-Time Production" -periaatteeseen. Se auttaa nopeuttamaan ohjelmistokehitystä ja alentamaan kustannuksia.

Lean-kehitysmallin tuloksena jätetään pois, oppiminen vahvistuu, varhainen toimitus saavutetaan ja eheyttä rakennetaan.

Äärimmäinen ohjelmointi (XP): Äärimmäinen ohjelmointi on hyödyllinen ketterä malli, kun asiakkaiden vaatimukset tai vaatimukset muuttuvat jatkuvasti. Sitä käytetään myös silloin, kun ei ole varmaa järjestelmän toimivuudesta.

Milloin ketterää mallia kannattaa käyttää?

Tässä ovat yleiset skenaariot, joissa ketterää menetelmää käytetään:

  • Sitä käytetään, kun muutoksia on usein tehtävä.
  • Matalat sääntelyvaatimukset täyttävät hankkeet
  • Projektit, joiden olemassa oleva prosessi ei ole kovin tiukka
  • Projektit, joissa tuotteen omistaja on helposti tavoitettavissa
  • Projekteja joustavalla aikataululla ja budjetilla

Ketterän mallin edut

Tässä on joitain ketterän mallin yleisiä etuja/etuja:

  • Viestintä asiakkaiden kanssa on henkilökohtaista.
  • Tarjoaa erittäin realistisen lähestymistavan ohjelmistokehitykseen
  • Ohjelmistosuunnittelun ketterä malli mahdollistaa tehokkaan suunnittelun ja yrityksen tarpeiden täyttämisen.
  • Toimivista ohjelmistoista julkaistaan ​​päivitetyt versiot viikoittain.
  • Se tarjoaa varhaisia ​​osatoimivia ratkaisuja.
  • Muutokset ovat hyväksyttäviä milloin tahansa.
  • Voit lyhentää kokonaiskehitysaikaa käyttämällä tätä ketterää mallia.
  • Se mahdollistaa samanaikaisen kehittämisen ja toimituksen yleisessä suunnitellussa kontekstissa.
  • Lopullinen tuote kehitetään ja on käytettävissä muutaman viikon sisällä.

Ketterän mallin haitat

Tässä on joitain ketterän mallin yleisiä haittoja/haittoja:

  • Kestävyyden, ylläpidettävyyden ja laajennettavuuden riski on suurempi.
  • Joissakin yrityksissä itseorganisoituminen ja intensiivinen yhteistyö eivät välttämättä sovi yhteen niiden yrityskulttuurin kanssa.
  • Dokumentointiin ja suunnitteluun ei kiinnitetä paljon huomiota.
  • Ilman selkeää tietoa asiakkaalta kehitystiimi voidaan johtaa harhaan.
  • Ei sopiva menetelmä monimutkaisten riippuvuuksien käsittelyyn.

Ketterä malli vs. Vesiputous malli

Agile- ja Waterfall-mallit ovat kaksi eri menetelmää ohjelmistokehitysprosessissa. Lähestymistapaeroistaan ​​huolimatta molempia menetelmiä voidaan toisinaan käyttää projektista ja vaatimuksista riippuen.

Ketterä malli Vesiputousmalli
Ketterät metodologiat ehdottavat inkrementaalisia ja iteratiivisia lähestymistapoja ohjelmistosuunnitteluun Ohjelmistokehitys etenee peräkkäin aloituspisteestä päätepisteeseen.
Ohjelmistosuunnittelun ketterä malli on jaettu yksittäisiin malleihin, joiden parissa suunnittelijat työskentelevät Suunnitteluprosessia ei ole jaettu yksittäisiin malleihin
Asiakkaalla on varhain ja usein mahdollisuus katsoa tuotetta ja tehdä päätöksiä ja muutoksia. Asiakas näkee tuotteen vasta projektin lopussa.
Ketterä mallia pidetään rakenteettomana vesiputousmalliin verrattuna Vesiputousmallit ovat turvallisempia, koska ne ovat suunnitelmasuuntautuneita
Pienet hankkeet voidaan toteuttaa erittäin nopeasti. Suurissa projekteissa kehitysaikaa ei ole helppo arvioida. Kaikenlaisia ​​projekteja voidaan arvioida ja toteuttaa.
Testisuunnitelma tarkistetaan jokaisen jälkeen Sprint Testisuunnitelmasta ei juurikaan keskustella testivaiheen aikana.

Katso tarkemmat tiedot tästä linkistä Agile- ja Waterfall-mallin vertailu.

Yhteenveto

  • Ketterä malli on inkrementaalinen ja iteratiivinen ohjelmistokehityksen prosessi.
  • Se keskittyy toimivaan ohjelmistoon kattavan dokumentoinnin sijaan.
  • Ketterä malli on jaettu eri vaiheisiin, kuten 1) Vaatimusten kerääminen, 2) Vaatimusten suunnittelu, 3) Kehitys/Iterointi, 4) Testaus, 5) Käyttöönotto 6) Palaute.
  • Eri tyyppejä ketterät tyypit ovat: 1) Scrum, 2) Crystal, 3) Dynamic Software Development Method (DSDM): 4) Feature Driven Development (FDD), 5) Lean Software Development 6) Extreme Programming (XP).
  • Ketterä mallia käytetään, kun tarvitaan usein muutoksia.
  • Se tarjoaa erittäin realistisen lähestymistavan ohjelmistokehitykseen
  • Tällä mallilla on suurempi kestävyyden, ylläpidettävyyden ja laajennettavuuden riski.
  • Ketterät menetelmät ohjelmistotestauksessa ottavat käyttöön inkrementaalisia ja iteratiivisia lähestymistapoja ohjelmistosuunnitteluun, kun taas ohjelmistokehitys kulkee peräkkäin aloituspisteestä päätepisteeseen.