Un studiu empiric și o replicare relevă faptul că dezvoltatorii percep frecvent greșit eficacitatea tehnicilor de testare și de revizuire a codului. Aceste judecăți eronate—adeseaUn studiu empiric și o replicare relevă faptul că dezvoltatorii percep frecvent greșit eficacitatea tehnicilor de testare și de revizuire a codului. Aceste judecăți eronate—adesea

De ce dezvoltatorii continuă să aleagă tehnici de testare greșite

2025/12/15 05:09

:::info Autori:

  1. Sira Vegas
  2. Patricia Riofr´ıo
  3. Esperanza Marcos
  4. Natalia Juristo

:::

Rezumat

1 Introducere

2 Studiul original: Întrebări de cercetare și metodologie

3 Studiul original: Amenințări la validitate

4 Studiul original: Rezultate

5 Studiul replicat: Întrebări de cercetare și metodologie

6 Studiul replicat: Amenințări la validitate

7 Studiul replicat: Rezultate

8 Discuție

9 Lucrări conexe

10 Concluzii și referințe

Rezumat

O problemă recurentă în dezvoltarea software este luarea deciziilor incorecte privind tehnicile, metodele și instrumentele care trebuie utilizate. În mare parte, aceste decizii se bazează pe percepțiile dezvoltatorilor despre acestea. Un factor care influențează percepțiile oamenilor este experiența anterioară, dar nu este singurul. În această cercetare, ne propunem să descoperim cât de bine corespund percepțiile despre eficacitatea detectării defectelor a diferitelor tehnici cu eficacitatea lor reală în absența experienței anterioare.

\ Pentru a face acest lucru, realizăm un studiu empiric plus o replicare. În timpul studiului original, realizăm un experiment controlat cu studenți care aplică două tehnici de testare și o tehnică de revizuire a codului. La sfârșitul experimentului, aceștia completează un sondaj pentru a afla ce tehnică percep ca fiind cea mai eficientă. Rezultatele arată că percepțiile participanților sunt greșite și că această nepotrivire este costisitoare în termeni de calitate.

\ Pentru a obține o înțelegere mai profundă a rezultatelor, replicăm experimentul controlat și extindem sondajul pentru a include întrebări despre opiniile participanților cu privire la tehnici și programe. Rezultatele studiului replicat confirmă constatările studiului original și sugerează că percepțiile participanților s-ar putea baza nu pe opiniile lor despre complexitate sau preferințele pentru tehnici, ci pe cât de bine cred ei că au aplicat tehnicile.

1. Introducere

O practică din ce în ce mai populară în zilele noastre este ca firmele de dezvoltare software să permită dezvoltatorilor să își aleagă propriul mediu tehnologic. Aceasta înseamnă că diferiți dezvoltatori pot utiliza diferite instrumente de productivitate (limbaj de programare, IDE etc.). Cu toate acestea, ingineria software (SE) este o disciplină intensivă din punct de vedere uman, unde deciziile greșite pot compromite potențial calitatea software-ului rezultat. În SE, deciziile privind metodele, tehnicile și instrumentele care trebuie utilizate în dezvoltarea software se bazează de obicei pe percepțiile și/sau opiniile dezvoltatorilor, mai degrabă decât pe dovezi, așa cum sugerează Dyb˚a et al. [19] și Zelkowitz et al. [55].

\ Cu toate acestea, dovezile empirice ar putea să nu fie disponibile, deoarece anumite metode, tehnici sau instrumente ar putea să nu fi fost studiate într-un anumit context sau chiar deloc. Alternativ, dezvoltatorii ar putea să nu fie familiarizați cu astfel de studii, conform Vegas & Basili [49]. Pe acest temei, este important să descoperim cât de bine corespund percepțiile dezvoltatorilor (credințele) cu realitatea și, dacă nu corespund, să aflăm ce se află în spatele acestei nepotriviri, așa cum a remarcat Devanbu et al.[14]. Conform Psihologiei, experiența joacă un rol în percepțiile oamenilor. Acest lucru a fost observat și de Devanbu et al. [14] în SE.

\ Cu toate acestea, această cercetare își propune să descopere cât de bine se potrivesc percepțiile cu realitatea în absența experienței anterioare în tehnologia utilizată. Acest lucru are sens din mai multe motive: 1) experiența nu este singurul factor care afectează percepțiile dezvoltatorilor; 2) echipele de dezvoltare sunt de obicei compuse dintr-un amestec de persoane cu și fără experiență; și 3) nu este clar ce tip de experiență influențează percepțiile. De exemplu, Dieste et al. [17] concluzionează că experiența academică, mai degrabă decât cea profesională, ar putea afecta calitatea externă a codului generat de dezvoltatori atunci când aplică Dezvoltarea Dirijată de Teste.

\ Ne propunem să studiem dacă percepțiile despre eficacitatea a trei tehnici de detectare a defectelor corespund realității și, dacă nu, ce se află în spatele acestor percepții. Din câte știm, acesta este primul articol care evaluează empiric această problemă. În acest scop, am realizat un studiu empiric plus o replicare cu studenți. În timpul studiului original, am măsurat (ca parte a unui experiment controlat) eficacitatea a două tehnici de testare și a unei tehnici de revizuire a codului atunci când au fost aplicate de participanți. Am verificat apoi tehnica percepută ca fiind cea mai eficientă (colectată prin intermediul unui sondaj) în comparație cu cea reală.

\ În plus, am analizat costul nepotrivirii dintre percepții și realitate în termeni de pierdere a eficacității. Principalele constatări includ:

– Persoane diferite percep tehnici diferite ca fiind mai eficiente. Nicio tehnică nu este percepută ca fiind mai eficientă decât celelalte. – Percepțiile a 50% dintre participanți (11 din 23) sunt greșite.

– Percepția greșită a tehnicilor poate reduce eficacitatea cu 31pp (puncte procentuale) în medie.

\ Aceste constatări ne-au determinat să extindem obiectivul studiului într-o replicare pentru a investiga ce ar putea fi în spatele percepțiilor participanților. Pentru a face acest lucru, am examinat opiniile lor despre tehnicile pe care le-au aplicat și programele pe care le-au testat într-o replicare a experimentului controlat. Principalele constatări includ:

– Rezultatele replicării confirmă constatările studiului original.

– Participanții cred că eficacitatea tehnicii depinde exclusiv de performanța lor și nu de posibilele slăbiciuni ale tehnicii în sine. – Opiniile despre complexitatea tehnicii și preferințele pentru tehnici nu par să joace un rol în eficacitatea percepută. Aceste rezultate sunt utile pentru dezvoltatori și cercetători. Ele sugerează:

– Dezvoltatorii ar trebui să devină conștienți de limitările judecății lor.

– Ar trebui concepute instrumente care să ofere feedback dezvoltatorilor cu privire la cât de eficiente sunt tehnicile.

– Ar trebui determinată cea mai bună combinație de tehnici de aplicat care să fie în același timp ușor de aplicat și eficientă. – Ar trebui dezvoltate instrumente pentru a pune rezultatele empirice la dispoziția dezvoltatorilor.

\ Materialul asociat studiilor prezentate aici poate fi găsit la https://github.com/GRISE-UPM/Misperceptions. Articolul este organizat după cum urmează. Secțiunea 2 descrie studiul original. Secțiunea 3 prezintă amenințările la validitatea acestuia. Secțiunea 4 discută rezultatele. Secțiunea 5 descrie studiul replicat pe baza modificărilor aduse studiului original. Secțiunea 6 prezintă amenințările la validitatea acestuia. Secțiunea 7 raportează rezultatele acestui studiu replicat. Secțiunea 8 discută constatările noastre și implicațiile acestora. Secțiunea 9 prezintă lucrări conexe. În final, Secțiunea 10 prezintă concluziile acestei lucrări.

\ \

:::info Această lucrare este disponibilă pe arxiv sub licența CC BY-NC-ND 4.0.

:::

\

Declinarea responsabilității: Articolele publicate pe această platformă provin de pe platforme publice și sunt furnizate doar în scop informativ. Acestea nu reflectă în mod necesar punctele de vedere ale MEXC. Toate drepturile rămân la autorii originali. Dacă consideri că orice conținut încalcă drepturile terților, contactează [email protected] pentru eliminare. MEXC nu oferă nicio garanție cu privire la acuratețea, exhaustivitatea sau actualitatea conținutului și nu răspunde pentru nicio acțiune întreprinsă pe baza informațiilor furnizate. Conținutul nu constituie consiliere financiară, juridică sau profesională și nici nu trebuie considerat o recomandare sau o aprobare din partea MEXC.