Badanie empiryczne i replikacja ujawniają, że programiści często błędnie postrzegają skuteczność technik testowania i przeglądu kodu. Te błędne oceny—częstoBadanie empiryczne i replikacja ujawniają, że programiści często błędnie postrzegają skuteczność technik testowania i przeglądu kodu. Te błędne oceny—często

Dlaczego programiści wciąż wybierają niewłaściwe techniki testowania

2025/12/15 05:09

:::info Autorzy:

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

:::

Abstrakt

1 Wprowadzenie

2 Oryginalne badanie: Pytania badawcze i metodologia

3 Oryginalne badanie: Zagrożenia dla ważności

4 Oryginalne badanie: Wyniki

5 Badanie replikacyjne: Pytania badawcze i metodologia

6 Badanie replikacyjne: Zagrożenia dla ważności

7 Badanie replikacyjne: Wyniki

8 Dyskusja

9 Powiązane prace

10 Wnioski i odniesienia

Abstrakt

Powtarzającym się problemem w rozwoju oprogramowania jest nieprawidłowe podejmowanie decyzji dotyczących technik, metod i narzędzi, które mają być używane. Najczęściej decyzje te opierają się na percepcji deweloperów na ich temat. Czynnikiem wpływającym na percepcję ludzi jest wcześniejsze doświadczenie, ale nie jest to jedyny czynnik. W tym badaniu staramy się odkryć, jak dobrze percepcja skuteczności wykrywania defektów różnych technik odpowiada ich rzeczywistej skuteczności przy braku wcześniejszego doświadczenia.

\ Aby to zrobić, przeprowadzamy badanie empiryczne oraz replikację. Podczas oryginalnego badania przeprowadzamy kontrolowany eksperyment ze studentami stosującymi dwie techniki testowania i jedną technikę przeglądu kodu. Na koniec eksperymentu wypełniają ankietę, aby dowiedzieć się, którą technikę postrzegają jako najbardziej skuteczną. Wyniki pokazują, że percepcje uczestników są błędne i że ta niezgodność jest kosztowna pod względem jakości.

\ Aby uzyskać głębszy wgląd w wyniki, replikujemy kontrolowany eksperyment i rozszerzamy ankietę o pytania dotyczące opinii uczestników na temat technik i programów. Wyniki badania replikacyjnego potwierdzają ustalenia oryginalnego badania i sugerują, że percepcje uczestników mogą być oparte nie na ich opiniach o złożoności lub preferencjach dotyczących technik, ale na tym, jak dobrze ich zdaniem zastosowali te techniki.

1. Wprowadzenie

Coraz bardziej popularną praktyką w dzisiejszych czasach jest pozwalanie przez firmy zajmujące się rozwojem oprogramowania, aby deweloperzy wybierali własne środowisko technologiczne. Oznacza to, że różni deweloperzy mogą używać różnych narzędzi zwiększających produktywność (język programowania, IDE itp.). Jednak inżynieria oprogramowania (SE) jest dyscypliną intensywnie wykorzystującą czynnik ludzki, gdzie błędne decyzje mogą potencjalnie zagrozić jakości powstającego oprogramowania. W SE decyzje dotyczące tego, które metody, techniki i narzędzia stosować w rozwoju oprogramowania, zazwyczaj opierają się na percepcji i/lub opiniach deweloperów, a nie na dowodach, jak sugerują Dyb˚a i in. [19] oraz Zelkowitz i in. [55].

\ Jednak dowody empiryczne mogą nie być dostępne, ponieważ niektóre metody, techniki lub narzędzia mogły nie zostać zbadane w określonym kontekście lub w ogóle. Alternatywnie, deweloperzy mogą po prostu nie być zaznajomieni z takimi badaniami, według Vegas & Basili [49]. Na tej podstawie ważne jest, aby odkryć, jak dobrze percepcje deweloperów (przekonania) odpowiadają rzeczywistości, a jeśli nie, dowiedzieć się, co stoi za tą niezgodnością, jak zauważyli Devanbu i in. [14]. Według psychologii, doświadczenie odgrywa rolę w percepcji ludzi. Zostało to również zaobserwowane przez Devanbu i in. [14] w SE.

\ Jednak to badanie ma na celu odkrycie, jak dobrze percepcje są dopasowane do rzeczywistości przy braku wcześniejszego doświadczenia w używanej technologii. Ma to sens z kilku powodów: 1) doświadczenie nie jest jedynym czynnikiem wpływającym na percepcję deweloperów; 2) zespoły deweloperskie zwykle składają się z mieszanki osób z doświadczeniem i bez; oraz 3) nie jest jasne, jaki rodzaj doświadczenia wpływa na percepcję. Na przykład, Dieste i in. [17] dochodzą do wniosku, że doświadczenie akademickie, a nie zawodowe, może wpływać na zewnętrzną jakość kodu generowanego przez deweloperów przy stosowaniu Test-Driven Development.

\ Naszym celem jest zbadanie, czy percepcje dotyczące skuteczności trzech technik wykrywania defektów odpowiadają rzeczywistości, a jeśli nie, co za nimi stoi. Według naszej najlepszej wiedzy, jest to pierwszy artykuł empirycznie oceniający tę kwestię. W tym celu przeprowadziliśmy badanie empiryczne oraz replikację ze studentami. Podczas oryginalnego badania zmierzyliśmy (jako część kontrolowanego eksperymentu) skuteczność dwóch technik testowania i jednej techniki przeglądu kodu, gdy były stosowane przez uczestników. Następnie porównaliśmy postrzeganą najbardziej skuteczną technikę (zebraną za pomocą ankiety) z rzeczywistą.

\ Dodatkowo przeanalizowaliśmy koszt niezgodności między percepcją a rzeczywistością w kategoriach utraty skuteczności. Główne ustalenia obejmują:

– Różni ludzie postrzegają różne techniki jako bardziej skuteczne. Żadna technika nie jest postrzegana jako bardziej skuteczna niż inne. – Percepcje 50% uczestników (11 z 23) są błędne.

– Błędna percepcja technik może zmniejszyć skuteczność średnio o 31pp (punktów procentowych).

\ Te ustalenia skłoniły nas do rozszerzenia celu badania w replikacji, aby zbadać, co mogłoby stać za percepcjami uczestników. W tym celu zbadaliśmy ich opinie na temat technik, które zastosowali, i programów, które testowali w replikacji kontrolowanego eksperymentu. Główne ustalenia obejmują:

– Wyniki replikacji potwierdzają ustalenia oryginalnego badania.

– Uczestnicy uważają, że skuteczność techniki zależy wyłącznie od ich wydajności, a nie od możliwych słabości samej techniki. – Opinie na temat złożoności techniki i preferencje dotyczące technik nie wydają się odgrywać roli w postrzeganej skuteczności. Te wyniki są przydatne dla deweloperów i badaczy. Sugerują one:

– Deweloperzy powinni zdawać sobie sprawę z ograniczeń swojego osądu.

– Należy zaprojektować narzędzia, które dostarczają deweloperom informacji zwrotnych na temat skuteczności technik.

– Należy określić najlepszą kombinację technik do zastosowania, która jest jednocześnie łatwa w użyciu i skuteczna. – Należy opracować instrumenty, aby udostępnić deweloperom wyniki empiryczne.

\ Materiały związane z przedstawionymi tu badaniami można znaleźć na stronie https://github.com/GRISE-UPM/Misperceptions. Artykuł jest zorganizowany w następujący sposób. Sekcja 2 opisuje oryginalne badanie. Sekcja 3 przedstawia zagrożenia dla jego ważności. Sekcja 4 omawia wyniki. Sekcja 5 opisuje badanie replikacyjne oparte na modyfikacjach wprowadzonych do oryginalnego badania. Sekcja 6 przedstawia zagrożenia dla jego ważności. Sekcja 7 przedstawia wyniki tego badania replikacyjnego. Sekcja 8 omawia nasze ustalenia i ich implikacje. Sekcja 9 pokazuje powiązane prace. Na koniec, sekcja 10 przedstawia wnioski z tej pracy.

\ \

:::info Ten artykuł jest dostępny na arxiv na licencji CC BY-NC-ND 4.0.

:::

\

Okazja rynkowa
Logo WHY
Cena WHY(WHY)
$0.00000001527
$0.00000001527$0.00000001527
-11.58%
USD
WHY (WHY) Wykres Ceny na Żywo
Zastrzeżenie: Artykuły udostępnione na tej stronie pochodzą z platform publicznych i służą wyłącznie celom informacyjnym. Niekoniecznie odzwierciedlają poglądy MEXC. Wszystkie prawa pozostają przy pierwotnych autorach. Jeśli uważasz, że jakakolwiek treść narusza prawa stron trzecich, skontaktuj się z service@support.mexc.com w celu jej usunięcia. MEXC nie gwarantuje dokładności, kompletności ani aktualności treści i nie ponosi odpowiedzialności za jakiekolwiek działania podjęte na podstawie dostarczonych informacji. Treść nie stanowi porady finansowej, prawnej ani innej profesjonalnej porady, ani nie powinna być traktowana jako rekomendacja lub poparcie ze strony MEXC.