-
X-Received: by 2002:ac8:27fa:: with SMTP id x55mr15850845qtx.241.1567877721217; Sat,
07 Sep 2019 10:35:21 -0700 (PDT)
X-Received: by 2002:ac8:27fa:: with SMTP id x55mr15850845qtx.241.1567877721217; Sat,
07 Sep 2019 10:35:21 -0700 (PDT)
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!3.eu.feeder.erj
e.net!feeder.erje.net!news.unit0.net!newsreader4.netcologne.de!news.netcologne.
de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer02.am4!peer.am4.highwinds
-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!o24n
o9026629qtl.0!news-out.google.com!c11ni286qtp.0!nntp.google.com!o24no9026620qtl
.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail
Newsgroups: pl.comp.programming
Date: Sat, 7 Sep 2019 10:35:20 -0700 (PDT)
In-Reply-To: <1...@g...com>
Complaints-To: g...@g...com
Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=178.36.205.84;
posting-account=xjvq9QoAAAATMPC2X3btlHd_LkaJo_rj
NNTP-Posting-Host: 178.36.205.84
References: <1ua4wui506zbf$.dlg@tyczka.com>
<4...@g...com>
<qkjqqi$1b59$1@gioia.aioe.org>
<0...@g...com>
<r...@t...com>
<e...@g...com>
<1...@g...com>
<1...@g...com>
<a...@g...com>
<qkoqr3$1eec$1@gioia.aioe.org>
<a...@g...com>
<8...@n...net>
<1...@g...com>
<qksqus$1h0q$1@gioia.aioe.org>
<3...@g...com>
<5d7219bc$0$6446$426a74cc@news.free.fr>
<0...@g...com>
<8...@g...com>
<5d7267e0$0$15200$426a34cc@news.free.fr>
<5...@g...com>
<5d72afa6$0$3531$426a74cc@news.free.fr>
<3...@g...com>
<1...@g...com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9...@g...com>
Subject: Re: Jak to robią w NASA
From: "M.M." <m...@g...com>
Injection-Date: Sat, 07 Sep 2019 17:35:21 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 6260
X-Received-Body-CRC: 2360289507
Xref: news-archive.icm.edu.pl pl.comp.programming:213972
[ ukryj nagłówki ]On Saturday, September 7, 2019 at 5:04:15 PM UTC+2, Maciej Sobczak wrote:
> > Z tego co słyszałem testuje się na wyrywki.
>
> Można, ale to słaba metoda. "Wyrywki" zakładają, że jakiś zbiór jest jednakowo
czuły w swoich różnych punktach, co właściwie nigdy nie jest prawdą. Dotyczy to
dowolnej konstrukcji inżynierskiej, nie tylko w programowaniu.
> Dlatego testuje się równoważne klasy i ich brzegi. Jeśli np. coś ma zakres od 10 do
100, to zamiast zrobić 20 testów na wyrywki lepiej jest zrobić testy np. dla 9, 10,
11, 50, 99, 100, 101.
Tak, oczywiście. Dawanie danych całkowicie losowo to tak jakby
punkt wyjścia. Jeśli mamy procedurę która trywialnym algorytmem
traktuje duży przedział, to warto dla tej procedury zaprojektować
dane o specjalnym rozkładzie prawdopodobieństwa.
Np.:
int funkcja( int x, int y ) {
if( x >= 100 || x <= -100 || y >= 100 || y <= -100 ) {
return 0;
}
return trudne_obliczenia;
}
To warto częściej losować w 'trudny przedział'.
>
> > Napisanie oprogramowanie
> > do sterowania rakietą zlecano ośmiu kompletnie niezależnym zespołom.
>
> Był kiedyś taki pomysł, ale odchodzi się od niego,
Z tego co słyszałem z niezależnych źródeł, to tak się robiło. Natomiast
'sam dla siebie' robiłem tak często, czasami miałem trzy wersje jednej
procedury. Jedna wersja to wersja napisana na szybko po wstępnym
przemyśleniu, druga to po poprawieniu czytelności, a trzecia to po
optymalizacji - o ile optymalizacja była robiona. Wszystkie wersje
trzymałem w kodzie:
typ funkcja( argumenty ) {
#ifdef debug
old_value = old_funkcja( argumenty );
#endif
// nowy kod
#ifdef debug
assert( value == old_value );
#endif
return value;
}
> bo okazało się, że problemem wcale nie jest poprawność oprogramowania,
> tylko kompletność wymagań.
Nie wypowiem się, nie mam tylu danych i doświadczeń aby wyrobić sobie zdanie.
// Po co robić 8 tak samo złych programów?
Tak to oczywiście nie ma sensu.
> Stosuje się oczywiście redundancję, ale po to, żeby uchronić się przed zjawiskami
sprzętowymi. Czyli zobaczysz np. dwa identyczne komputery z *identycznym*
oprogramowaniem (czyli jest 1 projekt a nie 8), ale umieszczone w *różnych miejscach*
rakiety albo samolotu i to np. pozwala rozwiązać problemy powodowane przez
przypadkowe promieniowanie albo zpełnie normalne awarie sprzętu.
Tak, ale na awarie sprzętu taka metoda jest tak jakby standardowa i oczywista.
> Ale pomysł na różne wersje oprogramowania okazał się być
> nieużyteczny i niepotrzebnie kosztowny.
Czy ja wiem... Jakby od zera do końca projektu prowadzić niezależnie 8 zespołów
to faktycznie drogo i ciężko. Ale jak projekt mamy (prawie) ukończony, to
nie jest aż tak bardzo kosztowne, aby wybrać z niego kluczowe procedury,
dobrze udokumentować i zlecić napisanie innym zespołom tylko tych procedur.
Mnie się metoda wydaje ciekawa, gdy sam sobie pisałem różne wersje tych
samych procedur, to kilka upierdliwych błędów wychwyciłem, szczególnie na
etapie optymalizacji.
Pozdrawiam
Następne wpisy z tego wątku
- 08.09.19 00:18 g...@g...com
- 08.09.19 08:13 AK
- 08.09.19 08:58 g...@g...com
- 08.09.19 11:19 AK
- 08.09.19 11:36 M.M.
- 08.09.19 12:13 g...@g...com
- 08.09.19 17:32 Maciej Sobczak
- 08.09.19 22:17 Maciej Sobczak
- 09.09.19 17:56 AK
- 11.09.19 07:30 M.M.
- 11.09.19 09:21 Maciej Sobczak
- 11.09.19 20:09 AK
- 11.09.19 20:32 M.M.
- 12.09.19 09:21 Maciej Sobczak
- 12.09.19 12:05 M.M.
Najnowsze wątki z tej grupy
- A Szwajcarzy kombinują tak: FinalSpark grows human neurons from stem cells and connects them to electrode arrays
- Re: Najgorszy język programowania
- NOWY: 2025-09-29 Alg., Strukt. Danych i Tech. Prog. - komentarz.pdf
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
Najnowsze wątki
- 2025-12-29 Greta Thunberg aresztowana w Londynie za wsparcie zdelegalizowanej grupy [Palestine Action - przyp. JMJ]
- 2025-12-29 Sarkozy
- 2025-12-29 Czujnik
- 2025-12-29 Warszawa => Konsultant Microsoft Dynamics AX/365 SCM Consultant - Serv
- 2025-12-29 Warszawa => IT Recruiter <=
- 2025-12-29 Warszawa => Solution Architect (Workday) - Legal Systems <=
- 2025-12-29 Warszawa => Microsoft Dynamics 365 Finance Consultant <=
- 2025-12-29 Warszawa => Senior Java Developer <=
- 2025-12-29 Katowice => Key Account Manager <=
- 2025-12-29 MON nabyło Hutę Częstochowa. "Historyczne znaczenie"
- 2025-12-28 Czwarta doba strajku na głębokości 500 metrów. "Ministerstwo robi sobie z nas jaja"
- 2025-12-29 Kolejny kraj [WB - przyp. JMJ] zakazuje chowu klatkowego. W Polsce żyje tak 40 mln kur
- 2025-12-29 MON nabyło Hutę Częstochowa. "Historyczne znaczenie"
- 2025-12-28 Norwegia kontra media społecznościowe
- 2025-12-28 PREZENTY OD MINISTRA FINANSÓW. SKĄD PIENIĄDZE?




5 Najlepszych Programów do Księgowości w Chmurze - Ranking i Porównanie [2025]