Ketterä metodologia ohjelmistotestauksessa

Ketterä menetelmä

Mikä on ketterä metodologia testauksessa?

Ketterä metodologia tarkoittaa käytäntöä, joka edistää jatkuva iterointi kehitystä ja testausta koko projektin ohjelmistokehityksen elinkaaren ajan. Ohjelmistotestauksen ketterässä mallissa sekä kehitys- että testaustoiminnot ovat samanaikaisia, toisin kuin Waterfall-mallissa.

Ketterä menetelmä
Ketterä menetelmä

Mitä on ketterä ohjelmistokehitys?

- Kattava ohjelmistokehitys metodologia on yksi yksinkertaisimmista ja tehokkaimmista prosesseista muuttaa visio liiketoiminnan tarpeesta ohjelmistoratkaisuiksi. Ketterä on termi, jota käytetään kuvaamaan ohjelmistokehityksen lähestymistapoja, jotka käyttävät jatkuvaa suunnittelua, oppimista, parantamista, tiimiyhteistyötä, kehityskehitystä ja varhaista toimitusta. Se rohkaisee joustaviin reagointiin muutoksiin.

Ketterä ohjelmistokehitys painottaa neljää ydinarvoa.

  1. Yksilö- ja tiimivuorovaikutus prosesseissa ja työkaluissa
  2. Toimiva ohjelmisto kattavan dokumentaation avulla
  3. Asiakasyhteistyö sopimusneuvotteluissa
  4. Vaihtoon vastaaminen suunnitelman mukaisesti

Ketterä malli vs vesiputousmalli

Ketterä ja vesiputousmalli ovat kaksi eri menetelmää ohjelmistokehitysprosessiin. Vaikka molemmat menetelmät eroavat lähestymistavastaan, ne ovat toisinaan hyödyllisiä tarpeista ja projektin tyypistä riippuen.

Ketterä malli Vesiputousmalli
Ketterä metodologia ohjelmistotestauksen määrittelyssä: Ketterät metodologiat ehdottavat inkrementaalista ja iteratiivista lähestymistapaa ohjelmistosuunnitteluun Vesiputousmalli: Ohjelmiston kehitys kulkee peräkkäin aloituspisteestä päätepisteeseen.
- Ketterä prosessi ohjelmistotestauksessa on jaettu yksittäisiin malleihin, joiden parissa suunnittelijat työskentelevät Suunnitteluprosessia ei ole jaettu yksittäisiin malleihin
Asiakkaalla on varhaisessa ja usein mahdollisuudet katsoa tuotetta ja tehdä päätöksiä ja muutoksia projektiin Asiakas näkee tuotteen vasta projektin lopussa
Ketterä malli testauksessa katsotaan vesiputousmalliin verrattuna rakenteettomana Vesiputousmallit ovat turvallisempia, koska ne ovat niin suunnitelmakeskeisiä
Pienet projektit voidaan toteuttaa erittäin nopeasti. Suurissa projekteissa kehitysaikaa on vaikea arvioida. Kaikenlaisia ​​projekteja voidaan arvioida ja toteuttaa.
Virhe voidaan korjata kesken projektin. Vasta lopussa koko tuote testataan. Jos vaatimusvirhe löytyy tai muutoksia on tehtävä, projekti on aloitettava alusta
Kehitysprosessi on iteratiivinen ja projekti toteutetaan lyhyissä (2-4) viikon iteraatioissa. Suunnittelu on hyvin vähäistä. Kehitysprosessi on vaiheittainen, ja vaihe on paljon suurempi kuin iteraatio. Jokainen vaihe päättyy seuraavan vaiheen yksityiskohtaiseen kuvaukseen.
Asiakirjat ovat vähemmän tärkeitä kuin ohjelmistokehitys Dokumentointi on etusijalla, ja sitä voidaan käyttää jopa henkilöstön kouluttamiseen ja ohjelmiston päivittämiseen toisen tiimin kanssa
Jokaisella iteraatiolla on oma testausvaiheensa. Se mahdollistaa regressiotestauksen toteuttamisen aina, kun uusia toimintoja tai logiikkaa julkaistaan. Vasta kehitysvaiheen jälkeen suoritetaan testausvaihe, koska erilliset osat eivät ole täysin toimivia.
Ketterissä testauksissa iteroinnin päätyttyä tuotteen toimitettavat ominaisuudet toimitetaan asiakkaalle. Uudet ominaisuudet ovat käytettävissä heti toimituksen jälkeen. Siitä on hyötyä, kun sinulla on hyvä kontakti asiakkaisiin. Kaikki kehitetyt ominaisuudet toimitetaan kerralla pitkän käyttöönottovaiheen jälkeen.
Testaajat ja kehittäjät työskentelevät yhdessä Testaajat työskentelevät erillään kehittäjistä
Jokaisen sprintin lopussa suoritetaan käyttäjän hyväksyntä Käyttäjän hyväksyntä on suoritettu projektin lopussa.
Se edellyttää tiivistä yhteydenpitoa kehittäjien kanssa ja yhdessä analysointia tarpeisiin ja suunnitteluun Kehittäjä ei osallistu vaatimus- ja suunnitteluprosessiin. Yleensä testien ja koodauksen välillä on viiveitä

Tarkista myös: - Ketterä vs vesiputous: Tunne menetelmien ero

Ketterä prosessi

Tarkista alla Ketterä menetelmä prosessi onnistuneiden järjestelmien toimittamiseksi nopeasti.

Ketterä prosessimalli
Ketterä prosessimalli

On olemassa erilaisia Ketterät menetelmät läsnä ketterässä testauksessa, ja ne on lueteltu alla:

Tungos

SCRUM on ketterä kehitysmenetelmä, joka keskittyy erityisesti tehtävien hallintaan tiimipohjaisessa kehitysympäristössä. Pohjimmiltaan Scrum on peräisin toiminnasta, joka tapahtuu rugby-ottelun aikana. Scrum uskoo kehitystiimin voimaannuttamiseen ja kannattaa pienryhmissä (esim. 7-9 jäsentä) työskentelyä. Agile ja Scrum koostuvat kolmesta roolista, ja niiden vastuut on selitetty seuraavasti:

Scrum-menetelmä
Scrum-menetelmä
  • Scrum Master
    • Scrum Master vastaa joukkueen perustamisesta, sprinttikokouksesta ja poistaa edistymisen esteitä
  • Tuotteen omistaja
    • Tuotteen omistaja luo tuotevaraston, priorisoi ruuhkat ja on vastuussa toiminnallisuuden toimittamisesta jokaisessa iteraatiossa
  • Scrum-tiimi
    • Tiimi hoitaa omat työnsä ja organisoi työt sprintin tai pyöräilyn suorittamiseksi

Tuote-arkisto

Tämä on arkisto, jossa seurataan vaatimuksia ja jokaista julkaisua varten täytettäviä vaatimuksia (käyttäjätarinoita). Tuotteen omistajan tulee ylläpitää ja priorisoida sitä, ja se tulee jakaa scrum-tiimille. Tiimi voi myös pyytää uuden vaatimuksen lisäystä tai muutosta tai poistamista

Scrum-käytännöt

Käytännöt on kuvattu yksityiskohtaisesti:

Scrum-käytännöt
Scrum-käytännöt

Scrum-metodologioiden prosessikulku:

Prosessin kulku scrum-testaus on seuraava:

  • Jokainen scrumin iteraatio tunnetaan nimellä Sprint
  • Tuotevaraus on luettelo, johon syötetään kaikki tiedot lopputuotteen saamiseksi
  • Jokaisen aikana Sprint, valitaan tuotekannan suosituimmat käyttäjätarinat ja muunnetaan niistä Sprint kasauma
  • Tiimi työskentelee määritellyn sprintin ruuhkan mukaisesti
  • Ryhmä tarkistaa päivittäisen työn
  • Sprintin lopussa tiimi toimittaa tuotteen toimivuuden

Extreme Programming (XP)

Extreme Programming -tekniikka on erittäin hyödyllinen, kun asiakkaiden vaatimukset tai vaatimukset muuttuvat jatkuvasti tai kun he eivät ole varmoja järjestelmän toimivuudesta. Se suosittelee tuotteen toistuvaa "julkaisua" lyhyissä kehityssykleissä, mikä parantaa luonnostaan ​​järjestelmän tuottavuutta ja ottaa käyttöön myös tarkistuspisteen, jossa asiakkaan vaatimukset voidaan helposti toteuttaa. XP kehittää ohjelmistoja, jotka pitävät asiakkaan tavoitteessa.

Äärimmäinen ohjelmointi
Äärimmäinen ohjelmointi

Liiketoiminnan vaatimukset on koottu tarinoihin. Kaikki nuo tarinat on tallennettu paikkaan, jota kutsutaan parkkipaikaksi.

Tämän tyyppisessä menetelmässä julkaisut perustuvat lyhyempiin jaksoihin, joita kutsutaan iteraatioiksi, joiden ajanjakso on 14 päivää. Jokainen iteraatio sisältää vaiheita, kuten koodauksen, yksikkötestauksen ja järjestelmätestauksen, joissa jokaisessa vaiheessa rakennetaan sovellukseen pieniä tai merkittäviä toimintoja.

eXtreme-ohjelmoinnin vaiheet:

Agile XP -menetelmässä on 6 vaihetta, ja ne selitetään seuraavasti:

Suunnittelu

  • Sidosryhmien ja sponsorien tunnistaminen
  • Infrastruktuurivaatimukset
  • Turvallisuus asiaan liittyvää tietoa ja keräämistä
  • Palvelutasosopimukset ja sen ehdot

analyysi

  • Tarinoiden taltiointi parkkipaikalla
  • Priorisoi tarinat parkkipaikalla
  • Tarinoiden pyyhkiminen arvioita varten
  • Määritä iteraatio SPAN (aika)
  • Resurssisuunnittelu sekä kehitys- että laadunvarmistustiimeille

Design

  • Erota tehtävät
  • Testiskenaarion valmistelu jokaiselle tehtävälle
  • Regression Automation Framework

Teloitus

  • Koodaus
  • Manuaalisten testiskenaarioiden suorittaminen
  • Vikaraportin luominen
  • Manuaalisten regressiotestitapausten muuntaminen automaatioon
  • Mid Iteration -katsaus
  • Iteraatiotarkistuksen loppu

Kääriminen

  • Pienet julkaisut
  • Demot ja arvostelut
  • Kehitä uusia tarinoita tarpeen mukaan
  • Prosessin parannukset iteroinnin lopun tarkistuskommenttien perusteella

Sulkeminen

  • Pilot Launch
  • koulutus
  • Tuotannon käynnistäminen
  • SLA-takuun vakuutus
  • RevSOA-strategia
  • Tuotantotuki

Saatavilla on kaksi kuvakäsikirjoitusta työn seuraamiseen päivittäin, ja ne on lueteltu alla viitteeksi.

  • Tarina pahvi
    • Tämä on perinteinen tapa kerätä kaikki tarinat taululle muistilappujen muodossa päivittäisten XP-toimintojen seuraamiseksi. Koska tämä manuaalinen toiminta vaatii enemmän vaivaa ja aikaa, on parempi vaihtaa verkkolomakkeeseen.
  • Online-käsikirjoitus
    • Tarinoiden tallentamiseen voidaan käyttää verkkotyökalua Storyboard. Useat joukkueet voivat käyttää sitä eri tarkoituksiin.

Crystal Methodologies

Crystal Methodology perustuu kolmeen käsitteeseen

  1. Rahtaus: Tämän vaiheen eri toimintoja ovat kehitystiimin luominen, alustavan toteutettavuusanalyysin tekeminen, alustavan suunnitelman laatiminen ja kehitysmetodologian hienosäätö
  2. Syklinen toimitus: Pääkehitysvaihe koostuu kahdesta tai useammasta toimitusjaksosta, joiden aikana
    1. Tiimi päivittää ja tarkentaa julkaisusuunnitelmaa
    2. Toteuttaa vaatimusten alijoukon yhden tai useamman ohjelman testiintegroinnin iteraatiolla
    3. Integroitu tuote toimitetaan todellisille käyttäjille
    4. Revhankesuunnitelman ja hyväksytyn kehittämismenetelmän
  3. Paketoida: Tässä vaiheessa suoritettavat toiminnot ovat käyttöönotto käyttäjäympäristössä, käyttöönoton jälkeiset tarkistukset ja pohdinnat.

Dynaaminen ohjelmistokehitysmenetelmä (DSDM)

DSDM on a Nopea sovelluskehitys (RAD) lähestymistapa ohjelmistokehitykseen ja tarjoaa ketterän projektin toimituskehyksen. Tärkeä näkökohta DSDM:ssä on, että käyttäjien on oltava aktiivisesti mukana ja tiimeille annetaan valta tehdä päätöksiä. Toistuvasta tuotteen toimituksesta tulee DSDM:n aktiivinen painopiste. DSDM:ssä käytetyt tekniikat ovat

  1. Aika: Boxta
  2. Moskovan säännöt
  3. Prototyypit

DSDM-projekti koostuu 7 vaiheesta

  1. Esiprojekti
  2. Toteutettavuustutkimus
  3. Liiketoimintaa koskeva tutkimus
  4. Toiminnallisen mallin iteraatio
  5. Suunnittele ja rakenna iteraatio
  6. Täytäntöönpano
  7. Projektin jälkeinen

Ominaisuuksiin perustuva kehitys (FDD)

Tämä menetelmä keskittyy "suunnitteluun ja rakentamiseen" liittyviin ominaisuuksiin. Toisin kuin muut ketterät menetelmät ohjelmistosuunnittelussa, FDD kuvaa hyvin erityisiä ja lyhyitä työvaiheita, jotka on suoritettava erikseen ominaisuuskohtaisesti. Se sisältää verkkotunnuksen läpikäynnin, suunnittelun tarkastuksen, rakentamisen edistämisen, kooditarkastuksen ja suunnittelun. FDD kehittää tuotteen pitämisen seuraavia asioita tavoitteessa

  1. Domain-objektien mallinnus
  2. Kehitys ominaisuuden mukaan
  3. Komponentin/luokan omistus
  4. Ominaisuusjoukkueet
  5. tarkastukset
  6. Configuration Management
  7. Tavalliset rakennukset
  8. Edistyksen ja tulosten näkyvyys

Lean-ohjelmistokehitys

Lean ohjelmistokehitysmenetelmä perustuu periaatteeseen ”Just in time production”. Sen tavoitteena on nopeuttaa ohjelmistokehitystä ja alentaa kustannuksia. Lean-kehitys voidaan tiivistää seitsemään vaiheeseen.

  1. Jätteiden poistaminen
  2. Oppimisen vahvistaminen
  3. Lykkää sitoumusta (päätä mahdollisimman myöhään)
  4. Varhainen toimitus
  5. Vahvistaa joukkuetta
  6. Rakentaminen Integrity
  7. Optimoi kokonaisuus

Kanban

Kanban syntyi alun perin japaninkielisestä sanasta, joka tarkoittaa korttia, joka sisältää kaikki tiedot, jotka on tehtävä tuotteelle sen valmistumispolun jokaisessa vaiheessa. Tämä viitekehys tai menetelmä on varsin omaksuttu ohjelmistojen testausmenetelmässä, erityisesti ketterissä konsepteissa.

Scrum vs Kanban

Tungos Kanban
Scrum-tekniikassa testit on jaettava niin, että ne voidaan suorittaa yhden sprintin aikana Mitään erityistä tavarakokoa ei ole määrätty
Määräää priorisoidun tuotekannan Priorisointi on valinnaista
Scrum-tiimi sitoutuu tiettyyn määrään työtä iteraatiota varten Sitoutuminen on vapaaehtoista
Palamiskaavio on määrätty Mitään erityistä tavarakokoa ei ole määrätty
Jokaisen sprintin välissä scrum board nollataan Kanban-levy on sitkeä. Se rajoittaa työnkulun tilassa olevien kohteiden määrää
Se ei voi lisätä kohteita käynnissä olevaan iteraatioon Se voi lisätä kohteita aina, kun kapasiteettia on käytettävissä
WIP rajoitettu epäsuorasti WIP rajoitettu suoraan
Timeboxed iteraatiot määrätty Timeboxed iteraatiot valinnaiset

Tarkista myös: - Kanban vs. Scrum: Mitä eroa on?

Ketterät mittarit

Mittarit, joita voidaan kerätä Agilen tehokkaaseen käyttöön, ovat:

  • Vetokerroin
    • Pyrkimys tunteina, jotka eivät edistä sprintin tavoitetta
    • Vetokerrointa voidaan parantaa vähentämällä jaettujen resurssien määrää ja vähentämällä ei-avustettavan työn määrää
    • Uusia arvioita voidaan korottaa vetokertoimella - Uusi arvio = (Vanha arvio+vastuskerroin)
  • Nopeus
    • Ruuhkan (käyttäjätarinoiden) määrä, joka on muunnettu sprintin toimitettaviksi toiminnoiksi
  • Yksikkötestien lukumäärä lisätty
  • Päivittäiseen rakentamiseen kuluva aikaväli
  • Iteraatiossa tai aiemmissa iteraatioissa havaitut viat
  • Tuotantovirheen vuoto