-
Data: 2015-03-29 00:13:22
Temat: Re: poprawność algorytmu
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> > Czyli biznes typu "wicie rozumicie". Jedna wielka szara strefa.
>
> Nie rozumiem o co ci chodzi.
O świadomość. Tzn. o świadomość ograniczeń metod, którymi się posługujemy.
Ta świadomość zanika np. wtedy, gdy optymistycznie uznajemy, że coś przetestowaliśmy,
chociaż w rzeczywistości nie mamy nawet miary, która by ustaliła, w jakim stopniu to
zrobiliśmy i ostatecznie wiemy tylko jaki wysiłek w to włożylismy (np. ile godzin
poszło na testy) a nie ile przez to uzyskaliśmy.
Szukam metody, która byłaby bardziej obiektywna, niż "akceptowalność przez
konsensus".
> Przecież mierzymy - to właśnie testy są pomiarami.
Nie, chodzi mi o pomiar skuteczności testów. Tak naprawdę nie wiemy, w jakim stopniu
są skuteczne a przez to nie wiemy, kiedy przestać.
Spróbujmy tak: chcę, żeby system miał co najwyżej 1 buga na 10k linii kodu. Ile
dolarów mam wydać na pisanie testów? Ciemność.
To jest inny poziom myślenia, niż "akceptowalna jakość za akceptowalną cenę".
> No to policz taki wariant:
>
> Jeśli zrobisz tak, jak opisałem, to dostaniesz normalną pensję, której
> co nikt nie zabierze. Jeśli program zarobi pieniądze, dostaniesz jakąś
> premię, ale bez szału. Jeśli bugi spowodują, że program straci dużo
> kasy, nie dostaniesz premii, a może nawet wylecisz z pracy.
Podoba mi się słowo "może". Ale zgadza się.
> Jeśli wprowadzisz użyjesz metod formalnych i się nie powiedzie,
Co się nie powiedzie? Że program będzie poprawny ale jednak nie będzie?
> No i co? Jak sprzęt medyczny czy samochód kogoś zabije, to programista,
> etatowy pracownik producenta idzie siedzieć?
Dobre pytanie. Problem z odpowiedzią jest taki, że w tych branżach takich wypadków
jest zdumiewajaco mało, więc trudno mówić o powszechnie panujących regułach
postępowania. Sam napisałeś, że fakapy na kilka milionów w systemach finansowych nie
są niczym niezwykłym - rozumiem, że jest ich na tyle dużo, że istnieje jakiś
konsensus nt. tego, co należy wtedy zrobić. No i wychodzi na to, że niewiele się robi
("może nawet wylecisz z pracy" - z akcentem na "może"). Natomiast w branżach
krytycznych fakapów jest bardzo mało. Było kilka spektakularnych, ale powiedzmy, że
potrafimy znaleźć jeden przykład medyczny, jeden rakietowy, jeden yyy no nie wiem
jaki i właśnie z małej liczby takich przykładów wynika brak konsensusu, co dalej.
A teraz pytanie, z czego wynika mała liczba fakapów w takich branżach.
> Nie wyobrażam sobie zresztą, jak firma ubezpieczniowa miałaby szacować
> ryzyko dla takiego programu
No patrz, a w branżach krytycznych szacują.
I właśnie o tym piszę.
> > Widziałem też przypadek, kiedy skończyły się pieniądze na testy.
>
> No właśnie o to chodzi, że jeśli po zrobieniu np. 75% testów, które się
> zakładało zrobić, skończą się pieniądze, to te 75% testów nadal coś daje.
Ile daje? Tego właśnie nie wiemy. A czy lepiej by było zrobić wtedy inne testy, tzn.
inne 75%? Też nie wiemy. I nawet nie wiemy, co byśmy zyskali, gdybyśmy zrobili 100%
*założonych*. Intuicyjnie dałoby nam "coś" więcej, ale to jest taka sama intuicja,
jak to, że jak dam żebrakowi więcej, to spotka mnie większe szczęście.
Wiemy, ile nas to kosztowało ale nie wiemy, ile zyskaliśmy. Bo nie mamy jak zmierzyć.
I to jest ta szara strefa, która nie bardzo pasuje do inżynierskiego charakteru
naszej profesji. O tym właśnie piszę.
--
Maciej Sobczak
Następne wpisy z tego wątku
- 29.03.15 15:21 Andrzej Jarzabek
- 29.03.15 23:18 Maciej Sobczak
- 30.03.15 00:49 Andrzej Jarzabek
- 30.03.15 00:59 Andrzej Jarzabek
- 30.03.15 01:19 Roman W
- 30.03.15 09:38 slawek
- 30.03.15 09:45 slawek
- 30.03.15 09:49 slawek
- 30.03.15 10:18 Tomasz Kaczanowski
- 30.03.15 10:25 firr
- 30.03.15 11:15 Maciej Sobczak
- 30.03.15 12:15 g...@g...com
- 30.03.15 12:24 M.M.
- 30.03.15 20:08 Andrzej Jarzabek
- 31.03.15 02:07 Roman W
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-06 Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- 2025-01-06 Ostrów Wielkopolski => Area Sales Manager OZE <=
- 2025-01-06 Do IO i innych elektrooszolomow, tu macie prawdziwe smrody
- 2025-01-06 Białystok => Full Stack .Net Engineer <=
- 2025-01-06 Kraków => Business Development Manager - Network and Network Security
- 2025-01-06 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-01-06 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-06 Lublin => Programista Delphi <=
- 2025-01-06 Gdańsk => Specjalista ds. Sprzedaży <=
- 2025-01-06 śnieg
- 2025-01-05 Żarówka do lampy z czujnikiem ruchu
- 2025-01-05 Rozkręcają się
- 2025-01-04 pozew za naprawę sprzętu na youtube
- 2025-01-04 gasik
- 2025-01-04 13. Raport Totaliztyczny: Powszechna Deklaracja Praw Człowieka Nie Chroni Przed Wyzyskiem Ani Przed Eksploatacją