Trikio aprašymas

Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Jump to navigation Jump to search
 NoFonti.svg  Šiam straipsniui ar jo daliai trūksta šaltinių ar nuorodų į juos.
Jūs galite padėti Vikipedijai įrašydami tinkamas išnašas ar nuorodas į šaltinius.
Tipiška trikio aprašymų istorija (unconfirmed – nepatvirtinti, confirmed – patvirtinti, fixed – pataisyti). Kiti trikių tipai paprastai sudaro tik mažą dalį visų trikių. Vertikali ašis – trikių skaičius, horizontali – laikas. GNU Classpath projekto duomenys.

Trikio aprašymas (angl. bug report) – turimas pranešimas apie netinkamą programos darbą, kuriam taikoma standartinė sutarta tokių panešimų tvarkymo sistema.

Absoliučiai bet kuri rimta programa gal turėti klaidų, ir sudėtingesnėse sistemos įvairios smulkios klaidos neretai skaičiuojamos dešimtimis ir šimtais. Apie netinkamą darbą gali pareikšti vartotojas arba aptikti ir patys programą rašantys programuotojai. Nesuteikiant vartotojui tokios galimybės, kartais bandoma sukurti įvaizdį jog ta ar kita sistema yra itin patikima ir klaidų neturi (tobulo sprendimo klaida). Kadangi klaidų būna net ten kur jų jokiu būdu neturėtų būti (kosminių laivų valdymas, medicininiai prietaisai, karinė įranga, masinės gamybos procesorių komandų sistemos ir pan.), toks elgesys labiausiai kenkia pačiai firmai, nes pastebėta klaida tiesiog ištaisoma daug vėliau.

Ne kiekvienas net ir pagrįstas nepasitenkinimo reiškimas yra trikio aprašymas. Tokiu jis gali tapti, jei:

  1. Aiškiai nurodyti skirtumai tarp vartotojo laukiamo sistemos elgesio ir to, kas vyksta iš tikrųjų.
  2. Nurodyta pakankamai informacijos kad netikamą elgesį programuotojas galėtų atkurti.

Pavyzdžiui, teiginiai „Nestabilus darbas“, „Dialogas neteisingas“ ar „Vienąkart bandžiau – veikė, antrąkart bandžiau – ne“, net ir būdami teisingi, nedaug tepadeda aptikti esamas klaidas. Tuo tarpu pasakius ką nors panašaus į „Sistema neskaito failo, didesnio už 8 gigabaitus“, „Režimas A dialogo lange rodomas kaip negalimas, nors turėtų būti galima jį įjugti“ ar „Programa A negali dirbti jei tuo pat metu veikia programa B“ gali padėti gerokai daugiau. Paprastai labai svarbu nurodyti programos versiją, operacinę sistemą ir kitus panašius dalykus. Idealus raportas turi aiškias instrukcijas, kaip atkurti netinkamą elgesį arba (jei tai raportas apie netinkamą programinės bibliotekos darbą) klaidą demonstruojantį testą.

Naujai sužinotam trikiui pirmiausia nustatomas „žalos rimtumas“ (angl. severity). Tipiški rimtumo lygiai paprastai buna tokie:

  • Trivialus Vartotojui nepatrauklus elgesys (tarkim, gramatinės klaidos pranešimuose).
  • Menkas Vartotojas vis dar gali atlikti trikį kompensuojančius veiksmus (angl. workaround).
  • Rimtas Dalis programos funkcijų vartotojui neprieinamos.
  • Kritinis Nenormalus programos užbaigimas, vartotojo duomenų praradimas, atminties nutekėjimas.
  • Užkarda Trikis trukdo kurti arba tikrinti kitas, su juo tiesiogiai nesusijusias programos dalis.

Trikio aprašymui paprastai priskiriamos sutartinės būsenos, kurios dažniausiai būna tokios:

  • Nepatvirtintas. Kažkas kažkuo nepatenkintas, tačiau dar reikia išsiaiškinti, ar tai nėra tiesiog nepakankamos vartotojo kvalifikacijos rezultatas.
  • Patvirtintas. Įsitikinta jog, atrodo, iš tiesų ne viskas dirba kaip pridera.
  • Neatkuriamas. Nepavyksta atkartoti netinkamo sistemos elgesio. Paprastai tokie pranešimai tik gadina nuotaiką: nėra kaip taisyti jei nematoma, kas vyksta ne taip.
  • Ne klaida. Programa dirba teisingai, vartotojas tiesiog nepakankamai susipažinęs su dokumentacija.
  • Priskirtas. Konkretus programuotojas ar jų grupė imasi darbo klaidą ištaisyti.
  • Uždarytas. Klaida ištaisyta, sistemos elgesys atitinka planuojamą.
  • Atidarytas pakartotinai. Paaiškėjo, jog klaida ištaisyta tik iš dalies ir būtinas tolesnis darbas.
  • Netaisomas. Dėl kokių nors svarbių priežasčių (tarkim, teisingas sisteminės bibiliotekos darbas sutrikdytų ja besiremiančių jau parašytų programų veiklą) formaliai neteisingas elgesys gali būti tokiu ir paliktas.

Bugzilla – atviro kodo klaidų raportų tvarkymo serveris