Dlaczego wyniki o niskiej ważności mówią więcej o audycie niż krytyczne błędy Wiele firm audytorskich skupia swoją ofertę sprzedaży na liczbie znalezionych szczytów, tak jakby ta liczba nie była tylko szumem bez podłączenia do kontekstu: wcześniejszych audytów, wzajemnej oceny, poziomów pokrycia testami, złożoności kodu, liczby linii i wielu innych wskaźników. Jest to najniższa forma sprzedaży, niczym nie różniąca się od porównywania np. jakości pendrive'ów przez ich długość w milimetrach. Aby pokazać alternatywę, musimy najpierw potwierdzić poprawność kilku twierdzeń wspierających: - Prawdopodobieństwo przypadkowego wstrzyknięcia błędu nie ma wpływu na większe skutki (programiści nie są bardziej lekkomyślni w kodzie o wysoką stawkę, zwykle jest odwrotnie). - Te same kompleksowe metodologie, które są używane do wykrywania wad o różnej wadze, wykrywają również problemy o wysokiej wadze (odwrotne nie ma miejsca). - Istnieją znacznie wyższe wymagania, aby losowy błąd kwalifikował się jako o wysokiej wadze (często byłby zablokowany za nieosiągalnymi warunkami lub dotykałby niekrytycznych funkcji). - Z podstawowych statystyk: wyższa częstotliwość próbkowania koreluje z niższym oczekiwanym odchyleniem/wariancją, a tym samym z dokładniejszym pomiarem. Zdefiniujmy raport z inspekcji jako wynik próbkowania jakości bazy kodu. Wnioskujemy, że oczekiwana rzeczywista liczba szczytów (bez chybień) jest znacznie niższa niż dołków, a oczekiwane odchylenie wokół niej jest znacznie wyższe (ze względu na mniejszą próbkę). Innymi słowy, liczba wzlotów mówi nam bardzo niewiele o liczbie pominiętych szczytów. Tak zaskakująco, raport 1 szczyt i 10 dołków jest bardziej uspokajający niż raport z 10 szczytami, przy czym wszystkie inne czynniki są równe. Chociaż w rzeczywistości zdecydowana większość sprzedawców wolałaby pokazywać to drugie jako wyznacznik jakości. Chodzi o to, że metryka o wysokiej częstotliwości jest lepszym narzędziem do mierzenia wyników o niskiej częstotliwości. Budowniczowie Web3, następnym razem, gdy firmy machają do was swoimi liczbami Crit/High i zabezpieczoną linią X miliardów dolarów, wiecie, na czym się skupić, aby poszukać prawdziwego sygnału. Audytorzy Web3 uznają, że nie ma spójnej tajnej formuły na znalezienie wszystkich szczytów bez jednoczesnego szukania dołków - każdy dołek, który nie został w pełni zbadany, jest potencjalnym szczytem - i poświęć najlepszą uwagę każdej linii. Twój klient Ci za to podziękuje. Niska istotność jest definiowana jako konkretne błędy w kodowaniu, które nie skutkują skutkami wyższego poziomu. Nie obejmuje formatowania, sprawdzonych metod i wyników wypełniania.
4,54K