Programska oprema ali Borg: velika grožnja za vesoljsko ladjo?

Programska oprema ali Borg: velika grožnja za vesoljsko ladjo?

Vaša ladja izvede nepričakovano trčenje - kako zanesljiva je programska oprema za obvladovanje tega?

Članek je bil pripravljen na gradivu Icarusovega medzvezdnega strokovnjaka Donne A. Dulo, vodilnega matematika, programskega znanstvenika, sistemskega inženirja ameriškega ministrstva za obrambo. Preberite več o Icarusovem medzvezdniku v članku Discovery News.

Ko vaša vesoljska ladja galopira v galaksiji s hitrostjo svetlobe, boste našli komaj viden val v senzorjih na krovu. Bolj ko se približujete viru, tem močnejši so njegovi tokovi, vsak od njih v gostem oblikovanju se pošlje v vašo smer. V strahu vas in vašo ekipo zavzamete na ladji in spoznate najhujše: soočiti se morate z veliko armado kock Borg in njihovimi sferami.

Na srečo ste lahko ladjo pripeljali stran od resnega trka, in sicer z manevriranjem skozi majhno, komaj opazno luknjo, ki je bila odkrita med predhodno pripravo navigacijskega načrta, in ladja zapusti nepoškodovana. Morali ste malo odstopiti od poti, vendar je ladja varna in vaša posadka je zdaj varna.

Takoj, ko začnete znova izračunati pot, odkrijete drug signal. Modul ladijskega sistema za podporo življenju ni uspel zaradi programske napake, do katere je prišlo med manevrom preprečevanja trčenja. Programska oprema je poškodovala sisteme za podporo življenja skupine in razumete, da ladja v naslednjih 24 urah ne more več vleči zraka za dihanje. Rezervni sistem je bil nemočen in strojna komponenta varnostne kopije uporablja iste postopke programske opreme. Reševalne naprave omogočajo dihanje zraka za 48 ur, mobilne enote na krovu pa so opremljene z zračnimi kompleti za 8 ur dihanja.

Svoje najboljše računalniške znanstvenike in inženirje programske opreme pošljete v strojnico, da diagnosticirajo težavo. Obveščajo vas, da bo za reševanje problema potrebnih vsaj štiri dni, da se izolirajo in odpravijo napake v več sto milijonskih vrsticah kod, ki nadzorujejo sisteme za vzdrževanje življenja na ladji.

Vaše stanje je zdaj še posebej težavno. Zahtevate poročilo iz nekritičnih sistemov in nemudoma pošljete ekipo programerjev. Sedaj boste čakali, vedoč, da je življenje vseh prisotnih članov posadke zdaj v rokah ekipe za razvoj programske opreme.

Zgoraj opisani scenarij dokazuje bistveno naravo programske opreme na poti dolge ladje. Postavlja se naravno vprašanje: kaj je velik sovražnik: flotila vesoljskih zločincev ali slabost v sistemu programske opreme ladijskih sistemov?

Za tiste, ki poznajo zelo zapleteno naravo sistema programske opreme, je odgovor očiten; to je programska oprema, ki predstavlja največjo nevarnost.

Potovanje v medzvezdnih prostorih zahteva samozadostno ladjo in posadko, kar pomeni hitre odločitve za reševanje najhujših inženirskih problemov. Eksponentna kompleksnost in krhkost, ki je del končne programske opreme, je ena najšibkejših členov v potrebi po dolgoročnem preživetju na medzvezdni ladji. Predstavljajte si popolnoma delujoče vesoljsko plovilo, ki ima na stotine milijonov vrstic kode in več deset ali celo sto tisoč njihovih spremenljivk in stanj. Diagnosticiranje posamezne napake v vrstici kode je skoraj nemogoče v nujnih primerih, tudi pri najsodobnejših avtomatiziranih postopkih testiranja. Napetost razmer v kombinaciji z inherentnimi težavami matematične logike in veliko količino kode bo ustvarila napetost v delu celo najboljših ekip inženirjev, ki trenutno opravljajo delo.

Kot v situaciji z Borgom, kjer ste vnaprej premislili o vsem, izdelali načrte za izredne razmere in načrtovane evakuacijske poti, je možno načrtovanje varnosti dolgoročne programske opreme vesoljskega plovila. Vendar pa se mora to načrtovanje zgoditi med razvojem ladje, pa tudi med njenimi medzveznimi operacijami. Ključ za novo inženirsko paradigmo se imenuje »trajnost«, kar se lahko zlahka uporabi za razvoj in razvoj programske opreme.

V dolgoročni vesoljski misiji bodo možne omejitve programske opreme izpodbijane, vendar možnost neuspeha ne bo ustrezala nikomur.

Programska oprema, kot tudi člani posadke, ki jo uporabljajo, morajo biti stabilni, da se lahko spopadejo z vsemi kritičnimi situacijami pri ohranjanju varnosti. Koncept vzdržnosti kot discipline v inženirstvu se je pojavil sredi dvajsetega stoletja kot način za zmanjšanje neuspehov v kompleksnih sistemih v luči dobrih inženirskih prizadevanj. Trajnost inženirstva, kot koncept programske opreme, je zajeta v tem, kako se ljudje spopadajo s kompleksnostjo sistema programske opreme, da bi v kratkem času uspeli tudi v najtežjih situacijah. Inženirska odpornost se osredotoča na sposobnost sistema, da se prilagodi nenehno spreminjajočim se razmeram in pogojem, tako da se ohrani pozitivno stanje nadzora nad sistemom, da bi se izognili neuspehu. V povezavi s sposobnostjo sistema, da se prilagodi, so zmožnosti človeškega faktorja v sistemu potrebne za večjo prilagodljivost spreminjajočim se razmeram. Kombinacija sistemov človek-stroj prinaša nov pristop k varnosti, ki ljudem zagotavlja elemente za pridobivanje znanja in predvidevanje procesov v sistemu, kar jim omogoča, da postanejo proaktivni del varnostnega delovanja samega sistema.

Obstajata dva vidika inženirstva prožnosti programske opreme: odpornost programske opreme s pomočjo dobrega procesa usmerjenega varnostnega razvoja in trenutnega delovanja programske opreme v realnem času s pozitivnim človeškim odzivom v cikličnih operacijah. Celoten program deluje v skladu s konceptom, da je varnost temeljna vrednota in nenehno pričakovanje morebitne napake programske opreme.

Torej, oseba, z usmerjanjem varnostne pozornosti, pomaga spremeniti enačbo tveganja v sistemu podpore ukrepov, da bi prekinil verigo kaskade programske odpovedi vzročnosti, obenem pa zmanjšal krhkost sistema. Rezultat je varnejša, uspešnejša in predvidljivejša zmogljivost programske opreme v sodelovanju z uporabniki, ki sodelujejo v celotnem obsegu procesov programske opreme in razvoja.

Stabilnost inženirskih metod se še naprej manifestira in se osredotoča na redundanco logične programske opreme, adaptivne intervencijske metode, intelektualno analizo, med mnogimi drugimi zvočnimi tehnikami. Med inženirskimi strukturami obstaja zvok, ki je upravičen s človeškimi viri, in operativni protokoli upravljanja so zasnovani tako, da se osredotočajo na zmožnosti posadke, da se prilagodijo spreminjajočim se razmeram in ublažijo tudi najbolj zapletene programske rešitve. Skozi sklopi prožnih metod razvoja programske opreme in izvedljivosti tehničnega vodstva organizacije in ekipe, ki se osredotoča na upravljanje programske opreme za nujne primere, ima kompleksen sistem sposobnost preživetja katastrofalne napake, ki pomaga preprečiti popoln neuspeh posadke.

V našem primeru je podporni sistem za varnostno kopiranje neuspešen, ker je bilo isto programiranje kot glavni sistem in zato v isti situaciji tudi varnostna kopija ni uspela. Robustnejši sistem bo uporabil drug program iz programskega paketa in niz algoritmov za varnostno kopiranje sistema, da bo opravil isto delo, s čimer bo sistem postal stabilnejši.

Sistem, ki je odporen na napake, kot je programska oprema, je bolj modularen in matematično dokazljiv, s čimer zagotavlja bolj in bolj izvedljive načine prilagajanja, preoblikovanja in popravila. Zmanjšana kompleksnost in bolj standardizirana programska oprema ter algoritemske strukture bodo zagotovili dodatna jamstva za izboljšanje stabilnosti.

Potem človek kot element trajnostnega sistema vstopi v igro. Po izpadu sistema za vzdrževanje življenjske dobe je posadka v službi, takoj preklopi sistem na rezervne komponente, v katerih teče drugačen nabor postopkov programske opreme, vključno s popolnoma drugačnim nizom matematične logike.

Vsi člani posadke so usposobljeni za nianse ladijske strojne in programske opreme ter odgovornosti za razumevanje vseh vrst računalniških napak in kako se z njimi spopasti. Precej kasneje, programski sistem inženirskega tima nadaljuje z delom, da bi popravil napako v logični verigi primarnega sklopa postopkov programske opreme, saj varnostni sistem deluje brezhibno.

Programska oprema ali Borg: velika grožnja za vesoljsko ladjo?

Naloga popravila je enostavnejša, saj je programska oprema bolj modularna, hierarhično razčlenjena in skrbno dokumentirana v obliki, arhitekturi in tudi v matematično dokazanih strukturah. Ekipa je dopolnjena z nizom programskih inženirjev drugega reda, ki imajo potreben razvoj in opravljajo sekundarne funkcije posadke in visoko kvalificirano primarno ekipo programske opreme.

Scenarij je bil dobro vaden vnaprej, med treningom, igralec vsake ekipe pa je seznanjen s svojo funkcijo: kodirnikom, preveriteljem, matematikom, preizkuševalcem in izvajalcem. V sistematično organizirani dejavnosti inženiringa je razvit nov logični sklop, ki se kodira za glavni sistem. V dveh dneh se preveri in končno gre na delo. Po izvedbi poskusa s polno udeležbo posadke se je ladja vrnila v prvotni bojni red.

S pomočjo vztrajnosti pri razvoju programske opreme in delovanju vesoljskega plovila v realnem času lahko posadka poveča preživetje ladje, tudi v času, ko se pojavijo resne težave s programsko opremo. Zahvaljujoč razvoju in uporabi najnovejših teorij in metodologij za razvoj programske opreme za trajnost, bo ladja imela orodja in usposobljeno ekipo za varno izvajanje poglobljenih operacij programske opreme.

Metode trajnosti se lahko uporabijo tudi za druge oblike tehnologije, pa tudi za delovanje na ladjah, s čimer se ustvari celostna varnostna kultura, ki bo izboljšala splošno preživetje ladje.

Zaradi tega bo trajnost postala ladja dolgo življenjsko obdobje, ki bo prešla skozi galaksijo z neskončnimi možnostmi za sedanje in prihodnje generacije. Tudi ko ni možnosti za Borg. Poslanstvo Icarus Interstellar je spodbujanje razvoja raziskav vesoljskih plovil, tako za vozila s posadko kot tudi za brezpilotna vozila. Programska oprema bo prevzela velik del teh prihodnjih sistemov in stabilnost študije bo pomagala doseči končne cilje, najprej priti do zvezd, nato pa se premakniti med njimi, kot v medzvezdni civilizaciji.

Komentarjev (0)
Iskanje