eGospodarka.pl
eGospodarka.pl poleca

  • X-Received: by 2002:a05:6214:146:: with SMTP id x6mr24659068qvs.232.1570396914623;
    Sun, 06 Oct 2019 14:21:54 -0700 (PDT)
    X-Received: by 2002:a05:6214:146:: with SMTP id x6mr24659068qvs.232.1570396914623;
    Sun, 06 Oct 2019 14:21:54 -0700 (PDT)
    Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.n
    et!weretis.net!feeder7.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.
    160.216.MISMATCH!o24no3087042qtl.0!news-out.google.com!q23ni170qtl.1!nntp.googl
    e.com!o24no3087033qtl.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!
    not-for-mail
    Newsgroups: pl.comp.programming
    Date: Sun, 6 Oct 2019 14:21:54 -0700 (PDT)
    In-Reply-To: <qnb1gg$68i$1@dont-email.me>
    Complaints-To: g...@g...com
    Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=213.108.152.51;
    posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
    NNTP-Posting-Host: 213.108.152.51
    References: <ZFueF.189972$Jh2.55867@fx39.am4>
    <b...@g...com>
    <5d835054$0$525$65785112@news.neostrada.pl>
    <qm5o8c$6mr$1@news.icm.edu.pl>
    <5d867c27$0$17361$65785112@news.neostrada.pl>
    <qm5va9$c07$1@dont-email.me> <5d86b148$0$520$65785112@news.neostrada.pl>
    <qm7c3j$pl6$1@dont-email.me> <5d87968d$0$503$65785112@news.neostrada.pl>
    <qm875f$g8o$1@dont-email.me> <5d87b31a$0$522$65785112@news.neostrada.pl>
    <qm8e0j$s55$1@dont-email.me> <qmgven$som$1@z-news.wcss.wroc.pl>
    <f...@g...com>
    <qmnls7$tml$2@news.icm.edu.pl>
    <b...@g...com>
    <qmtap2$kfe$1@dont-email.me>
    <4...@g...com>
    <qn5dj9$qh9$3@dont-email.me>
    <b...@g...com>
    <qn82tb$4uq$1@dont-email.me>
    <0...@g...com>
    <qnb1gg$68i$1@dont-email.me>
    User-Agent: G2/1.0
    MIME-Version: 1.0
    Message-ID: <9...@g...com>
    Subject: Re: POpularno?? j?zyk?w programowania ??
    From: Maciej Sobczak <s...@g...com>
    Injection-Date: Sun, 06 Oct 2019 21:21:54 +0000
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: quoted-printable
    Xref: news-archive.icm.edu.pl pl.comp.programming:214357
    [ ukryj nagłówki ]

    > > No więc - skoro już poprawiliśmy tą naszą funkcję, to jaka jest wartość dodana z
    użycia kilku kolejnych kompilatorów?
    >
    > Bardzo prosta. Twój kompilator w poprawnej funkcji dodawania przypadkiem
    > zrobił mnożenie kiedy x=15 i y=90.

    To wychodzi w pokryciu kodu obiektowego.

    > Shit happens.

    Nie, nie happens.
    Tzn. może są firmy, gdzie happens i się nie bada pokrycia (tak, tak, teraz ja sobie
    dorabiam, dla równowagi do Twoich teorii, że w Ariane 5 nie było testów), ale tam
    gdzie widzę, bada się i nie happens.

    > Czasem to tylko mignie
    > szybciej diodą a czasem wyśle samolot w kierunku gruntowym.

    Nie było przypadku, żeby samolot poleciał w kierunku gruntowym przez to, że użyto
    jednego kompilatora a nie trzech. Dlatego ten pomysł byłby potraktowany jako koszt
    bez wartości dodanej.

    > A kod działa przypadkiem tylko dlatego że kompilator w jakimś miejscu
    > zamiast referencji użył wartości. W kodzie produkcyjnym użyje referencji

    Zaraz, zaraz... Testowałeś nieprodukcyjny kod a produkcyjny były jakiś inny?
    Tyle mądrości na temat weryfikacji a tu taki klops. Skup się.

    > Aby zweryfikować narzędzia do weryfikacji.

    O, tu, widzisz, poruszyłeś ciekawe zagadnienie.
    Ale kwalifikację narzędzia robi się przed projektem, bo projekt zaczyna się mając już
    zatwierdzone narzędzia. I jeśli do tej kwalifikacji chcesz sobie użyć materiału
    testowego pochodzącego z różnych kompilatorów, to właściwie może to mieć sens (ale
    nie musi). Tylko że nadal nie ma sensu używać więcej niż jednego kompilatora do
    robienia tego właściwego projektu.

    > > I tu jest cały trick. Kompilator nie jest celem ani centrum tego ćwiczenia.
    >
    > Jest narzędziem które odpowiada na pytanie czy kod działa czy nie.

    Kompilator? Nie, nie odpowiada na takie pytanie. Właściwie to mogłoby nie być żadnego
    kompilatora, można posadzić człowieka z zapasem kawy i herbatników i niech
    "kompiluje". I to nawet nie jest fikcja.

    > Czasami odpowiada źle.

    Nie pokazałeś niczego takiego.

    > Nie. Wykazałeś że w jakiś warunkach Twój kod działa. A czy to te same
    > warunki kiedy będzie używany produkcyjnie?

    I w jaki sposób trzy kompilatory mają coś tu zmienić? Ilość kompilatorów wpływa na
    to, jak bardzo zmieniają się warunki w użyciu produkcyjnym?

    > Może wyjaśnie na przykładzie. Znam człowieka pracujacego dla poważnej
    > instytucji związanej z lotnictwem. Aby ich kod przeszedł certyfikat
    > pozwalający na stosowanie w samolotach musieli, poza wykazaniem
    > testowania we wszystkich odmianach, zarządzania jakością, weryfikacji
    > formalnej również to czy zweryfikowali narzędzia. Ponieważ smutni
    > panowie od certyfikowania nie są z kosmosu i znają realia to zapytali w
    > ILU różnych symulatorach potwierdzono działanie kodu i czy ich
    > producenci sami są certyfikowani do użycia w takiej branży.

    Wszystko się zgadza.
    Ale nie ma tu ani słowa o użyciu wielu kompilatorów.

    I jeśli jesteśmy w temacie samolotów i smutnych panów - standardy lotnicze są tak
    napisane, że użycie wielu kompilatorów do kompilowania tego samego kodu w projekcie
    nie jest podstawą do dodatkowego uznania (tzw. certification credit) w czasie audytu
    certyfikacyjnego a weryfikacji kodu wynikowego nie robi się garścią kompilatorów, bo
    kod ma być jeden. Ten sam w testach, co na produkcji.

    Dlatego ten pomysł nie ma zastosowania w projektach krytycznych, w szczególności w
    lotniczych. Prawie byłeś blisko w temacie kwalifikacji narzędzi (np. narzędzie do
    badania pokrycia kodu testami można próbować kwalifikować przy użyciu materiału
    testowego z jakiegoś zestawu kompilatorów, ale to i tak niewiele wnosi w konteście
    danego projektu, gdzie jest jeden kompilator), ale generalnie mylisz pojęcia.

    No i fajnie, że znasz "człowieka pracujacego dla poważnej instytucji związanej z
    lotnictwem".

    > PS. A zupałnie na marginesie wszelkiej certyfikacji. Odpalam mój kod pod
    > trzema kompilatorami.

    Ja też - wtedy, gdy piszę biblioteki.

    Ale w projekcie krytycznym używa się jednego kompilatora. I testuje się kod
    produkcyjny.

    --
    Maciej Sobczak * http://www.inspirel.com

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: