-
Data: 2019-09-01 22:55:40
Temat: Re: Jak to robią w NASA
Od: Maciej Sobczak <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]> > https://fossbytes.com/nasa-coding-programming-rules-
critical/
>
> Ot, bajeczki dla nastolatków.
Nie, po prostu ktoś sobie na blogu napisał. Najprostszy standard kodowania MISRA-C ma
230 stron, ostatnio opublikowany z AUTOSAR dla C++ ma 370 stron. Ten blog nie porusza
nawet wierzchołka zagadnienia.
Ogólnie, to nie są jakieś dziwne reguły, właśnie takich należy się spodziewać.
Warto też pamiętać, że pomimo wysokiej popularności NASA jako pop-kulturowego brandu,
to nie NASA jest frontem walki o jakość - wynika to z faktu, że w tej branży
(podobnie jak w wojsku) nie obowiązują reguły certyfikacji czy homologacji takie jak
w cywilnych branżach. Tzn. oni oczywiście dbają o pieniądze podatnika (w sensie -
szkoda stracić drogą rakietę) i o swoją reputację (w sensie - jak ją stracą, to
kolejnego projektu mogą nie mieć), ale poza tymi dwoma wartościami nie mają o co
dbać, bo w szczególności pilot rakiety jest w oczach opinii publicznej bardziej
żołnierzem, niż obywatelem, więc jego strata jest przez publiczność postrzegana jako
godna ofiara na ołtarzu postępu. Przecież wiedział, że może zginąć, nie?
Inaczej mówiąc 1: publiczna akceptacja fakapu w tej branży jest całkiem wysoka, w
odróżnieniu od dziedzin, gdzie się zabija niewinnych obywateli.
Inaczej mówiąc 2: pomimo tego, że te kilka reguł wygląda strasznie dla "normalnego"
programisty, to typowy projekt NASA mógłby nie przejść rygoru obowiązującego w
lotnictwie cywilnym. No, serio, nie wystarczy mieć funkcje krótsze niż 60 linijek,
żeby przejść przez proces certyfikacji[*].
[*] Który to proces właśnie traci reputację przez ostatnie lotnicze fakapy. Tak,
zgadza się. Trzeba być jeszcze bardziej (!) rygorystycznym.
> Ciekawe jest to czego w tym nie ma:
>
> 1. Architektura i wzorce projektowe.
> 2. Statyczna analiza kodu.
> 3. Testy jednostkowe i integracyjne.
> 4. Dokumentacja.
> 5. Audyt. XP
> 6. Metodyka (waterfall ?!?)
Ale chyba nie o tym był ten blog. Natomiast warto zauważyć, że standard kodowania
jest właśnie po to, żeby zrobić punkt 2 powyżej i żeby sobie ułatwić osiągnięcie
jeszcze kilku innych celów jakościowych. I tylko po to. Gorzej, że z powodu takich
blogów ludzie potem myślą, że standard kodowania jest jedyną rzeczą, która odróżnia
proces krytyczny od "normalnego" i tylko na nim się skupiają. Tymczasem te "straszne"
reguły to jest najmniejszy problem. Klepanie kodu to tylko kilka procent wysiłku,
nawet z tymi strasznymi regułami.
Więc bez przesady.
--
Maciej Sobczak * http://www.inspirel.com
Następne wpisy z tego wątku
- 02.09.19 08:30 AK
- 02.09.19 14:16 Maciej Sobczak
- 02.09.19 21:33 AK
- 03.09.19 09:42 M.M.
- 03.09.19 10:58 Maciej Sobczak
- 03.09.19 16:28 Roman Tyczka
- 03.09.19 18:34 AK
- 03.09.19 18:35 AK
- 03.09.19 18:43 AK
- 03.09.19 20:04 M.M.
- 03.09.19 20:26 AK
- 03.09.19 20:49 Maciej Sobczak
- 03.09.19 20:51 Maciej Sobczak
- 03.09.19 21:05 Maciej Sobczak
- 03.09.19 21:33 g...@g...com
Najnowsze wątki z tej grupy
- 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
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
- Ideologia Polskiego Programisty wer.3
Najnowsze wątki
- 2024-04-27 Nowy, "szybki "komputer AsRock nie posiada modułu TPM
- 2024-04-27 Nowy, "szybki "komputer AsRock nie posiada modułu TPM
- 2024-04-27 Warszawa => Inżynier DevOps (projekt JP) <=
- 2024-04-27 Warszawa => Senior Account Manager (on-site) <=
- 2024-04-27 Wrocław => Dyrektor Sprzedaży (branża usług/produktów IT) <=
- 2024-04-27 Warszawa => Sales Representative for Outsourcing Services <=
- 2024-04-27 Chrzanów => Administrator i wdrożeniowiec Lotus Notes/Domino <=
- 2024-04-27 Ja pierdolę...
- 2024-04-27 Ryby i kawitacja
- 2024-04-27 Zabrze => Junior HelpDesk <=
- 2024-04-27 Katowice => Administrator IT - Wirtualizacja i Konteneryzacja <=
- 2024-04-27 Bażanowice => Inżynier Industrializacji - Elektronik <=
- 2024-04-27 Warszawa => Full Stack web developer (obszar .Net Core, Angular6+) <=
- 2024-04-27 Zadaszenie tarasu, a wymagany spadek
- 2024-04-27 Warszawa => Senior Account Manager <=