10 steps improve software quality improving process
Testiranje programske opreme je ključnega pomena za izboljšanje kakovosti programske opreme. V tej vadnici so navedeni modeli procesov in 10 korakov za izboljšanje postopka testiranja za zagotavljanje boljše kakovosti programske opreme:
Programski izdelek je razvit tako, da ustreza določenim zahtevam kupca, vendar se večkrat konča kot izdelek z napako zaradi več razlogov, kot so nepravilne zahteve, vrzel v komunikaciji, vrzel v razumevanju, težave s časovno premico, nepopolno tehnično znanje ali manj usposobljeni ljudje v sistem.
To programske izdelke izpostavlja napakam, napakam ali napakam. Testiranje programske opreme je zelo pomembno, da bi se izognili ali preprečili tovrstne težave in ohranili kakovost programskih izdelkov.
Ta članek vam bo predstavil različne modele in nekaj preprostih korakov za izboljšanje postopka testiranja programske opreme, ki jih lahko uporabite za izboljšanje kakovosti programske opreme.
Vemo, da je preizkušanje programske opreme postopek ocenjevanja, ali programska oprema izpolnjuje posebne zahteve. V tem postopku sledimo številnim tehnikam in modelom za zagotavljanje kakovostnega izdelka. Toda tudi takrat je malo področij, ki jih je mogoče izboljšati za boljšo kakovost programske opreme.
- Postopek bi se moral nenehno izboljševati. Te tehnike so izbrane in izvedene.
- Demingovo kolo (PDCA cikel) je najpogosteje uporabljena tehnika.
- Izboljšana kakovost testnega postopka zmanjšuje stroške vzdrževanja.
Kaj se boste naučili:
- Vrste modela
- Koraki za izboljšanje kakovosti programske opreme
- Izboljšanje procesa testiranja programske opreme
- # 1) Razpoložljivost dokumenta s specifikacijami zahtev
- # 2) Vključitev preskusne skupine v razprave o zahtevah
- # 3) Jasno določen obseg
- # 4) Načrtovanje in izvedba preskusov
- # 5) Pregled testnih primerov
- # 6) Zagotovite si dovolj časa za izvedbo testiranja
- # 7) Načrtovanje regresijskih testov
- # 8) Avtomatizacija preskusov
- # 9) Test upravljanje podatkov in poročanje
- # 10) Retrospekcija po vsakem šprintu
- Zaključek
Vrste modela
Obstajata 2 modela, kot sta navedena spodaj -
- Referenčni model procesa: Izvedite merjenje zrelosti kot del ocene in ocenite organizacijsko sposobnost.
- Vsebinski referenčni model: Izboljša poslovno vrednotenje organizacijskih priložnosti. Na primer, primerjalne tehnike.
Procesni modeli
Obstajajo 4 modeli procesov:
# 1) TMMI: testiranje zrelih modelov
V spodnjih modelih za testiranje je pet stopenj -
- 1. stopnja: začetna
- Brez formalnega ali dokumentiranega strukturiranega testiranja. Testiranje in razvoj se po kodiranju izvede v obliki Adhoc.
- Faza preskušanja in odpravljanja napak velja za isto.
- 2. raven: upravljana
- Testiranje se izvaja ločeno od odpravljanja napak.
- Politike in cilji testiranja so postavljeni.
- Izvajati osnovne tehnike testiranja.
- 3. stopnja: določeno
- Proces testiranja je vključen v razvojni proces in dokumentiran v formalne standarde, postopke in materiale.
- 4. stopnja: merjeno
- Proces testiranja se učinkovito meri in upravlja na organizacijski ravni.
- 5. stopnja: organizirano
- Podatke iz postopka testiranja lahko uporabimo za preprečevanje napak in optimizacijo postopka.
# 2) CTP: postopek kritičnega testiranja
- Ima 12 postopkov testiranja.
- Pri tem temelji na kontekstu, kjer se prepoznajo izzivi in prepoznajo lastnosti dobrega procesa.
- Je prilagodljiv
- Vključuje uporabo meritev za primerjalno analizo.
# 3) TPI Naprej
- Določa 16 procesnih področij in vsako pokriva določen vidik preskusnega procesa.
- Ima 4 stopnje zrelosti: začetno, nadzorovano, učinkovito in optimizacijsko.
- Za dostop do vsake stopnje so določene kontrolne točke.
- Ugotovitve so povzete in prikazane z metriko zrelosti.
- Lahko ga prilagodite.
# 4) KORAK
- Postopek sistematičnega testiranja in ocenjevanja.
- Kontekstni referenčni model.
- Ne zahteva izboljšanja, da bi se zgodilo v določenem vrstnem redu.
- Uporablja testiranje na podlagi zahtev.
- Testiranje je dejavnost življenjskega cikla, ki se začne v fazi zahtev in traja do upokojitve.
- Napake odkrijemo prej in jih analiziramo.
- Preizkuševalci in razvijalci sodelujejo.
- Preskusi se uporabljajo kot model zahtev in uporabe. Oblikovanje testne programske opreme vodi k oblikovanju programske opreme.
Koraki za izboljšanje kakovosti programske opreme
Korak # 1) Začnite postopek izboljšanja:
- Interesne skupine se dogovorijo za cilje, cilje, obseg in pokritost.
- Določiti je treba merila za uspeh.
- Za merjenje izboljšanja je treba vzpostaviti metodo.
2. korak) Diagnosticiranje trenutnega stanja:
ups koncepti v c # s primeri
- Uporabi se pristop brezplačnega ocenjevanja in sestavi poročilo o oceni preskusov.
- Vsebuje oceno trenutnih praks testiranja in seznam izboljšav postopkov.
3. korak) Ukrepi za izvajanje izboljšav:
- Usposabljanje in mentorstvo je opravljeno.
4. korak) Učenje iz načrta za izboljšanje:
- Ugotovite, katera ugodnost poleg pričakovane je bila prejeta.
- Monitor
Osredotočimo se na prvi zgoraj omenjeni korak, tj. Kako izboljšati kakovost programske opreme z izboljšanjem postopka.
Izboljšanje procesa testiranja programske opreme
Preizkušanje programske opreme ni samo preizkušanje izdelka, da bi preverili, ali so zahteve izpolnjene ali ne, ampak je postopek nadzora kakovosti in zagotovila.
- Nadzor kakovosti: Metoda odkrivanja in popravljanja napak.
- Zagotavljanje kakovosti : Metoda preprečevanja napak, ko je izdelek pod nadzorom.
Prednosti testiranja programske opreme so povzete spodaj:
- Preizkušanje programske opreme preverja, ali s preizkušanjem dejanskega izdelka gradimo pravi izdelek.
- Preveri, ali razvojni proces poteka po standardih kakovosti ali ne.
- Zagotavlja, da izdelek izpolnjuje vse določene zahteve kupca.
- Testiranje programske opreme se osredotoča na popolnost, pravilnost in doslednost končnega izdelka.
- S preverjanjem postopka preveri, ali izdelek gradimo prav.
- Odgovorna je za potrditev, da programski izdelek nima napak.
Zdaj bomo razpravljali o različnih korakih in tehnikah za izboljšanje postopka testiranja programske opreme za dosego kakovostnega programskega izdelka.
# 1) Razpoložljivost dokumenta s specifikacijami zahtev
Prvi cilj upravljanja zahtev je ustvariti medsebojno zaznavanje med stranko in ekipo za razvoj programske opreme, da se osredotoči na vse zahteve za določen projekt programske opreme. Primarni rezultat upravljanja zahtev je dokument o specifikacijah zahtev.
Dokument s specifikacijami zahtev pojasnjuje vse tehnične / netehnične zahteve poslovne potrebe, ki so potrebne za razvoj programskega izdelka.
Ti ključni dokumenti večino časa v življenjskem ciklu razvoja programske opreme manjkajo, so neustrezni ali pa niso na voljo na začetku načrtovanja sprinta, zato obstaja veliko neskladje med zahtevanim in dostavljenim.
Zato je za odpravo teh vrzeli prvi korak pridobiti te ključne dokumente od poslovnih uporabnikov, saj to preskuševalcu pomaga, da že od samega začetka razume popolno zahtevo.
Razvrstitev zahtev:
Zgodnja razpoložljivost teh dokumentov od stranke je zelo dobra praksa za izboljšanje postopka testiranja programske opreme, saj je celoten projekt odvisen samo od zahtev.
Nekateri ključni dokumenti o zahtevah vključujejo:
- SRS (specifikacija zahteve za programsko opremo): To pojasnjuje namen, obseg, funkcionalne in nefunkcionalne zahteve, vključno s programsko in strojno opremo projekta .
- HLD (zasnova na visoki ravni): Ta dokument naj bi specifikacije prevedel v logično ali grafično predstavitev programske opreme za izvajanje .
- RTM (matrika sledljivosti zahtev): Vključuje preslikavo matrice zahtev uporabniške zahteve in dokument za preverjanje veljavnosti testa ali dokument o testnem primeru .
# 2) Vključitev preskusne skupine v razprave o zahtevah
Eden temeljnih ključev za gradnjo uspešnega projekta je jasna in učinkovita komunikacija med vsemi člani ekipe za načrtovanje, razvoj in testiranje.
Skupina za testiranje bi morala biti vključena v vsa ključna srečanja in sestanke za oblikovanje, vključno z zasnovo aplikacij in sejami za določanje zahtev, zaradi česar lahko skupina za testiranje izboljša svojo nalogo na bolj natančen način.
- Priprava dokumenta o testni strategiji.
- Priprava dokumenta preskusnega načrta in ocena napora testiranja.
- Načrtovanje preskusne skupine za dejavnosti testiranja.
- Pisanje testnih primerov.
- Pisanje testnih skript za avtomatizirano testiranje.
- Priprava poročil o napakah.
- Upravljanje napak z orodji za poročanje o napakah (Jira, Bugzilla, QC itd.)
Med vsemi člani ekipe bi moralo obstajati medsebojno razumevanje in sodelovanje, tako da bi lahko upoštevali enake IT standarde in tehnike, na katerih delajo, in pričakovali sodelovalno vizualizacijo s spoštovanjem dela vsakega člana ekipe za izdelavo kakovostnega izdelka.
# 3) Jasno določen obseg
Za večino programske opreme IT-industrija sledi agilnemu modelu, zato stranka skorajda ne zagotavlja celovitega ali preprosto določenega obsega, ki nenehno spreminja zahteve med razvojnim ciklom.
To vodi do vrzeli v razumevanju med ekipo za razvoj in testiranje, rezultat pa ni vedno tak, kot je predviden.
Za izboljšanje postopka testiranja programske opreme mora biti vedno na voljo natančen obseg, ekipa za testiranje pa se mora zavedati celotnih zahtev in mora biti popolnoma seznanjena pred začetkom testiranja programske opreme. To bo dejansko vedno pomagalo doseči boljše rezultate.
Razumevanje celotnega obsega / namena projekta bo prav tako pomagalo presoditi raven / vrsto ali intenzivnost zahtevanega testiranja.
# 4) Načrtovanje in izvedba preskusov
V tej fazi določimo celoten postopek testiranja, vključno z opredelitvijo zahtev, tehnik, standardov podjetja, dokumentacije, opisov funkcionalnosti in tveganj, ki jih je mogoče vnesti med testiranjem.
Načrtovanje testov je celoten projekt, katerega namen je doseči kakovosten izdelek z razdelitvijo na naslednje pomembne naloge.
# 1) Testna strategija: Za izvajanje preskusnih potreb v okviru teh postopkov je treba ustvariti opis / dokument preskusnega postopka na visoki ravni. Skupina za testiranje sledi pristopu, ki ga določajo ti dokumenti. Dokument o preskusni strategiji pripravi vodja testa in je statičen dokument, ki se ne spreminja pogosto.
Spodaj so navedeni sestavni deli dokumenta o testni strategiji:
- Obseg testiranja
- Preskusni pristop
- Orodja in tehnike za testiranje.
- Konfiguracija
- Podrobnosti o okolju
- Programska oprema, IT standardi
- Urnik zaključka testiranja
- Izjeme
# 2) Načrt preskusa: Po pripravi dokumenta o strategiji preskusa mora vodja preizkusa pripraviti glavni in podroben načrt preskusa, ki izhaja iz dokumenta SRS.
brezplačna aplikacija za prenos pesmi mp3 za android
Testni načrt opisuje naslednje.
- Kaj testirati?
- Kako testirati?
- Kdaj testirati?
- Kdo bo testiral?
Če se zahteve hitro spreminjajo, je zelo priporočljivo, da imate natančno določen in podroben testni načrt. Napake pri testiranju so predvsem posledica neizvajanja revizije načrta preskusnega načrta.
Funkcije preskusnega načrta vključujejo:
- ID preskusnega načrta
- Uvod
- Preizkusni predmeti
- Lastnosti, ki jih je treba preizkusiti
- Predstavljeno ni za testiranje
- Preskusni pristop
- Merila za vstop
- Merila za prekinitev
- Merila izstopa
- Testno okolje
- Preskusni rezultati
- Potrebe po osebju in usposabljanju
- Odgovornosti
- Razpored
- Tveganje in ublažitev
# 3) Oblikovanje testnega primera: Oblikovanje testnih primerov je dejavnost, pri kateri se vse razprave o zahtevah pretvorijo v formalne dokumente, kot so testni primer, testni skript, testni scenarij.
Z drugimi besedami, testni primeri so niz korakov, skozi katere preizkuševalec s primerjavo dejanskega rezultata s pričakovanim rezultatom ugotovi, ali programski izdelek izpolnjuje vse zahteve ali ne.
Oblika testnega primera:
Gospod št. | Povzetek testa | Korak št. | Korak | pričakovani rezultati | Dejanski rezultat |
---|---|---|---|---|---|
Kaj je potrebno za pisanje testnih primerov?
Pisanje testnih primerov je praktično potrebno, da preizkuševalci natančno razumejo zahteve in jim zagotovijo, da pristopajo na pravi način.
Prednosti testnih primerov
- Testni primeri se prepričajte, da ste izpolnili testno pokritost.
- Pomaga pri odstranjevanju vrzeli v zahtevah.
- Pomaga pri izboljšanju postopka testiranja.
- Pomaga pri izboljšanju kakovosti izdelka.
- Povečanje zaupanja, da ravnamo pravilno.
- Pomaga preveriti pričakovanja.
- Preizkuševalcu omogoča celovito razmišljanje in pomaga pri pokrivanju vseh pozitivnih in negativnih scenarijev.
# 5) Pregled testnih primerov
Pregled testnih primerov igra pomembno vlogo v življenjskem ciklu razvoja programske opreme v kateri koli organizaciji, saj je končni cilj stranke pridobiti izdelek 'Brez napak' in mora izpolnjevati vse določene zahteve.
Glavni namen pregleda testnih primerov: oceniti popolnost, povečati pokritost s testom in pravilnost analiziranih zahtev, in kar je najpomembneje 'Brez vrzeli med razumevanjem zahtev' s čimer se izboljša kakovost izdelka.
Spodaj so navedene prednosti pregleda testnih primerov:
- Preprečevanje okvar.
- Zgodnje opozorilo o zasnovi in zahtevah.
- Vsi scenariji so zajeti ali ne.
- Celoten scenarij je pomemben ali ne.
- Pokritost testnih primerov je v skladu z zahtevami izdelka.
- Pomaga prihraniti čas testiranja.
# 6) Zagotovite si dovolj časa za izvedbo testiranja
Časovni stisk je za vsakega preizkuševalca eden najpogostejših izzivov, s katerim se običajno soočijo med preskusnimi dejavnostmi, kar drastično vpliva na kakovost izdelka. Značilno je, da je v sprintu prvi korak, da se zahteve zamrznejo, nato pa se izdelek razvije, kasneje pa pride v skupino QA pred UAT in uvedbo.
V UAT so datumi določeni, vendar se zaradi številnih znanih / neznanih težav razvojni cikli podaljšujejo, kar vodi do časovne stiske za dejavnost zagotavljanja kakovosti, kar sčasoma vpliva na lastnosti testiranja.
Zato je zelo pomembno, da si zagotovite dovolj časa za izvajanje preskusnih dejavnosti v spodnjih točkah, da zagotovite izdelek brez napak:
- Podrobno analizirajte vsako uporabniško zgodbo.
- Navedite oceno preizkusnega napora za vsako nalogo.
- Raziščite preskusne tehnologije za hitro delo.
- Načrtujte vire za testiranje.
- Zabeležite napake.
- Izogibajte se ponavljajočim se opravilom.
# 7) Načrtovanje regresijskih testov
Na splošno po izvedbi zahtevanih sprememb v kodiranju programske opreme za odpravo napak razvojna skupina preskusni skupini izda modificirano različico za preverjanje napak. Včasih lahko že majhna sprememba kodiranja resno vpliva na druga področja programske opreme, ki se jih ni dotaknilo.
Da bi izboljšali kakovost programske opreme, bi morali preizkuševalci vedno načrtovati regresijsko preskušanje, da bi vodstveni skupini, razvijalcem, preizkuševalcem in strankam zagotovili, da nova funkcija ne vpliva na obstoječo funkcionalnost, in tudi, da nova vprašanja niso izpostavljena v tiste funkcionalnosti, ki se ne spremenijo.
Pomen regresijskega testiranja
Vprašanja in odgovori mrežnega inženirja v podjetju cisco
- Koristno je odkriti težave / v začetni fazi.
- Zagotavlja, da je mogoče uporabiti programske izdelke.
- Potrjuje, da se nekatere nove izdaje zaradi novih sprememb ne odpirajo znova.
- Vzpostavite zaupanje strank, da imate izdelke brez napak.
Različni načini za izvajanje regresijskega testiranja:
Regresijsko testiranje je obvezno, kadar je na voljo nova funkcionalnost; napaka v obstoječem izdelku mora biti pravilna, spremeniti obstoječo funkcionalnost in izbrisati obstoječe funkcije. Te spremembe kode lahko povzročijo novo napako v sistemu in sistem začne delovati nepravilno.
Spodaj so navedeni različni načini izvajanja regresijskega testiranja.
- Ponovno testiranje celotne testne obleke.
- Izbira primerov regresijskih testov.
- Prednostno določanje testnih primerov.
# 8) Avtomatizacija preskusov
V današnjem svetu je preskušanje programske opreme ključni del procesa življenjskega cikla razvoja programske opreme. Da bi zmanjšali ročno trdo delo pri testiranju, se številna podjetja odločijo za avtomatizacijo testov za pametno delo.
Zmogljivosti avtomatizacije pa se preselijo, da skrajšajo čas za povečanje hitrosti in popolno pokritost s preizkusi in kar je najpomembneje, sčasoma optimizacija stroškov zagotavljanja kakovosti.
Zato je avtomatizacija preizkusov prednost pred ročnim preskušanjem, preden pa najdemo alternativo z stroškovno najučinkovitejšo ali najvišjo dosegljivo zmogljivost, da dosežemo največji rezultat ali rezultat z minimalnimi stroški ali stroški.
(slika vir )
Poleg tega testna avtomatizacija daje veliko razlogov za izboljšanje postopka testiranja v različnih fazah.
- Dolgoročno doseganje ciljev z minimalnimi stroški.
- Skrajšan čas izvedbe.
- Sposobnosti za povečanje pokritosti s testom.
- Povečana učinkovitost in produktivnost.
- Manjši ročni napor
- Zmanjšano ponavljajoče se delo
- Uporabno pri regresijskem testiranju
- Povečajte skriptne lastnosti
- Več zanesljivosti
# 9) Test upravljanje podatkov in poročanje
Upravljanje testov je postopek upravljanja testnih dejavnosti, kot so organiziranje testnih virov, ocenjevanje, načrtovanje, oblikovanje strategij testnih prizadevanj, spremljanje napredka, poročanje o testih in nadzor.
Upravljanje testov je način za zagotavljanje kakovostnega programskega izdelka in učinkovit način za izboljšanje postopka testiranja programske opreme. Test Management ni učinkovit le za avtomatizacijo, temveč tudi pri ročnem testiranju.
- Organizacija za testiranje : Ustvarjanje in prepoznavanje preizkusne skupine in naloga.
- Načrtovanje preskusov : Zapisi razprav in dogovorov med preizkuševalci in ostalo projektno skupino.
- Testna strategija : Določite obseg testiranja, postopek testiranja, tehnike in pristop testiranja, ocenite prizadevanja in stroške testiranja.
- Izvajanje testa : Dokumentacija o testnih primerih, ustvarjanje in izvajanje skriptov.
- Spremljanje in nadzor preskusov : Ocenite stanje dokončanja naloge.
- Poročanje o preskusih : Učinkovito sporočanje ugotovitev in statusa preskusne skupine drugim zainteresiranim stranem. Obstaja veliko načinov poročanja o stanju, na primer z ustvarjanjem poročila o povzetku preizkusa, neposrednim preizkusom stanja v e-pošti ali z ustvarjanjem nadzorne plošče in pošiljanjem povezave do nadzorne plošče.
# 10) Retrospekcija po vsakem šprintu
Retrospektivno srečanje je formalno srečanje, ki ga na koncu sprinta pripravi ekipa za razvoj programske opreme, da preveri in razpravlja o dosežkih in neuspehih ter pripravi nove načrte za prihodnje izboljšave prihajajočih sprintov.
Izvedba retrospektiv po vsakem sprintu daje ekipam priložnost za nenehno izboljševanje njihove uspešnosti in izboljšanje ne le postopka testiranja programske opreme, temveč tudi vseh ostalih vključenih dejavnosti.
Območja ostrenja v retrospekciji:
- Kaj je šlo dobro?
- Kaj ni šlo dobro?
- Kaj smo se naučili?
- Kako izboljšati?
- Kaj je šlo dobro ?: Najboljši način za razpravo o izboljšanju je najprej oceniti dobre stvari, ki so se zgodile, tako da se razprava začne s pozitivnostjo in proslaviti razlog za uspeh, ekipa pa tudi ohranja energijo in razpravlja naprej v srečnem okolju.
- Kaj ni šlo dobro? : Cilj tega vprašanja ne sme biti krivda posameznikov, temveč prepoznavanje razlogov za napake ali napake. Vsak član naj sodeluje pri odgovoru na to vprašanje, da bomo seznanjeni z obstoječo težavo in rešitvami za nadaljnje sprinte. Ključ do uspešnega projekta je sprejeti napako in delati na njej.
- Kaj smo se naučili? : Da ne ponavljamo napak in se osredotočamo na nove procese in orodja ali tehnike, jih lahko uvedemo ali uporabimo za boljše rezultate.
- Kako izboljšati? : S sprejemanjem vseh napak, storjenih v prejšnjem šprintu, za izboljšanje veščin v vseh oddelkih in za pozitivno dokumentiranje vseh povratnih informacij za veliko več in boljše delo v nadaljnjih šprintih
Zaključek
Za vsako uspešno dostavo izdelkov bi morale obstajati strategije za sledenje različnim postopkom testiranja programske opreme. Izvedite te preproste korake za izboljšanje postopka testiranja programske opreme, omenjene v tem članku, da zagotovite izdelek najboljše kakovosti.
V tej vadnici smo zajeli različne korake in tehnike za izboljšanje postopkov, ki jih je mogoče upoštevati v katerem koli modelu SDLC (življenjski cikel razvoja programske opreme) v celotnem ciklu sprinta, da v optimalnem časovnem okviru dostavimo izdelek najboljše kakovosti.
Očitno je, da je preizkušanje programske opreme sestavni del SDLC in da je njegov cilj ovrednotiti sistem kot celoto in zadovoljiti zahteve kupcev. Zato bi morali kot ekipa izvesti zgornje načine za izboljšanje postopka testiranja programske opreme, ki bo sčasoma privedel do boljše učinkovitosti in kakovosti programskega izdelka.
Priporočeno branje
- 9 najboljših preizkusnih orodij VoIP: Orodja za preizkus hitrosti in kakovosti VoIP (SEZNAM 2021)
- Razlika med zagotavljanjem kakovosti in nadzorom kakovosti (QA vs QC)
- Analiza napak in učinkov (FMEA) - Kako analizirati tveganja za boljšo kakovost programske opreme in zadovoljne stranke!
- Povečanje kakovosti s preseganjem in preseganjem preizkusov celotnega sklada
- Kako uporabiti tehniko Poka-Yoke (preverjanje napak) za izboljšanje kakovosti programske opreme
- 8 ključnih kazalnikov uspešnosti za objave kakovosti (Panaya Test Dynamix Review)
- Kako izboljšati postopek izdaje preizkusov za uspešno izdelavo programske opreme brez napak
- 4 koraki k razvoju agilnega miselnega načina testiranja za uspešen prehod na agilni postopek