Sovellus ohjelmistojen turvallisuus elinkaaren vaatimukset


Huomautukset: Kun on rajoitettu valinta kieliä kuten IEC 61131-3 tikapuu kaavio tai toiminto lohkokaavio käytetään suunnitteluun, toteuttamiseen, tarkastukseen ja validointi sovellusohjelmiin, niin vain kahta tasoa vakio-ohjelmiston "V" malli

kuviosta tarvitsee soveltaa. Tällöin oletetaan, että käytetään toimilohkojen mukaisia IEC 61508-3 vaatimuksia kuten:

 

- "Sovellusohjelmat arkkitehtuurin suunnittelu" on sovellettu ohjelmisto jokaisen turvatoiminnon tavalla, joka varmistaa että ohjelmiston suunnittelu on sopusoinnussa laitearkkitehtuuriin.

- "Sovelluskehitys" tulkitaan turvallisuus logiikan suunnittelua ja toteuttamista käyttäen IEC 61508-3 ja IEC 61508-4 sopusoinnussa rajoitettujen kielten välillä.

- "Sovellus ohjelmistojen testaus" tulkitaan verifioinniksi jossa suoritetaan testaus ohjelmiston toimivuudelle.

- "Integrointi sovellusohjelman kanssa turvalaiteintegrointi osajärjestelmään" tulkitaan integraatiota ja verifioidaan, kunkin prosessin turvatoimintojen toteutuksia eri ohjelmointi kielillä.

 

Esimerkki sovelluksen ohjelmistokehityksen elinkaaresta, käyttäen IEC 61508-sarjan SIL 3 yhteensopivuutta annetun PLC:n kanssa.

Jos uutta "Function" tai "Function Block" käytetään on tarkoitus toteuttaa se käyttäen elementtejä IEC 61508-sarjasta. Esimerkiksi polttimen lukitus sekvenssin tai pumpun lukitus sekvenssin sitten että:

- "Sovellus moduulin kehittäminen" V-mallia tulkitaan suunnittelu ja täytäntöönpano vaiheissa.

- "Sovellus moduulitestaus" tehdään tarkastus ja testaus uudelle toiminnolle.

 

Siinä tapauksessa missä uusi toiminto on kirjoitettava kokonaisuudessaan alusta. Ohjelmiston koodi kehityksessä on tarpeen noudattaa V-mallia (kuvio 3). Kehittäjän tulisi noudattaa kaikkia elinkaaren IEC 61508-3 vaiheissa ja menettelyissä määriteltäviä asioita.

 

 

Kuva 3 - ohjelmistokehityksen elinkaari (V-malli)

 

Seuraavat seikat ovat menetelmien valintaa varten, tekniikoita ja välineitä:

Voit valita menetelmiä, tekniikoita ja työkaluja, jotka voivat edistää ohjelmistot, joilla on vaaditaan laatua, harkitse seuraavia keskeisiä laadun parametrit sovellusohjelma:

- Yksinkertaisuus.

- Sopiva selostus ja luonnollisen kielen tuki.

- Lokerointi.

- Testin kattavuus.

- Ymmärrettävyys prosessissa.

- Yhteisyys muiden siihen liittyvien sovellusohjelmien kanssa. Lähestymistavat selvittää tärkeitä parametreja.

- Keskustelut sidosryhmien kanssa, mukaan lukien käyttäjät ja huolto.

- Tarkistaa nykyisiä käytäntöjä ja alan standardeja.

- Katsaus valmistajan suosituksiin.

- Analyysi aikaisempaa kokemukseen.                 

- Keskustelut vertaisten kanssa.

 

Valitse menetelmiä, tekniikoita ja työkaluja optimoidaksesi tärkeät laatutekijät ottaen huomioon näkökohdat alla. Menetelmistä ja tekniikoista tulisi valita ne jotka aiheuttavat minimaalisemman riskin, ja näitä tulisi käyttää jo ohjelmiston suunnittelu vaiheessa. Tällaisia ovat:

- Hyvin määritelty syntaksi ja semantiikka.

- Soveltuvuus hakemiseen

- Ymmärrettävyyttä lisää sovelluskehittäjien toimesta.

- Takaus tärkeistä asetuksista turvallisuustoiminnoissa (esimerkiksi pahimmassa tapauksessa suoritusaika).

- Näyttöä onnistuneesta käytöstä vastaavissa sovelluksissa.

- Säännöt ja rajoitukset, joilla pyritään rajoittamaan "vaarallisten" ominaisuuksien käyttöä.

 

Työkalut tulisi valita toteuttamaan menetelmiä ja tekniikoita, siten että inhimillisten virheiden määrä jäisi mahdollisimman pieneksi. Tähän voi kuulua seuraavia:

- Perehtyneisyys työkaluihin joita ohjaatvat osaavat henkilöt.

- Näyttöä onnistuneesta käytöstä työkaluja vastaavissa sovelluksissa.

- Säännöt ja rajoitukset, joilla pyritään rajoittamaan ”vaarallisten” ominaisuuksien käyttöä työkaluina.

- Dokumentoitu luettelo, tarkat versio numerot, kaikki työkalut ja turvalaiteintegroinnit.

- Yhteensopivuus eri välineiden ja turvalaiteintegroinnin kanssa.

- Kyky tuottaa sovelluksesta dokumentti.

 

Tyypillisiä esimerkkejä työkaluista elinkaaren eri vaiheissa ovat:

- Hakemus koodigeneraattorit.

- Konfiguraation hallinta.

- Staattiset analysaattorit (esimerkiksi tunniste tarkistin, skannausaika tarkistin).

- Simulaattoreita.

- Testi työ kuten, ohjelmistojen testiohjelmat.

- Insinööri työasema.

 

Sen varmistamiseksi, että viat eivät aiheua ohjelmistolle haitallisia tuloksia. Tulisi seuraavat asiat harkita:

- On-line tarkkailu tekniikoita ja poikkeusten käsittelyä.

- Käytetään tietokantoja ja maailmanlaajuista vika raportointia.

- Seuranta turvalaiteintegroinnin epäonnistumisista  ja prosessin ongelmista ja niiden vaikutuksesta turvalaiteintegrointiin.

- Keskeisten turvalaiteintegrointi toimintojen tarkastelu muissa järjestelmissä;

- Käytetään kaksois varmistusta turvalaiteintegroinnin sovellusohjelman koulutusprosesseissa.

Sen varmistamiseksi, että ohjelmistoa voidaan ylläpitää koko elinikä. Seuraavat asiat voitaisiin harkita:

- Ohjelman muutoksen hallintaa.

- Jatkuva johdon tuki ja huolto koulutusta.

- Tuen saatavuus, koko eliniän.

- Hyvin dokumentoitu ja yleisesti käytetyt menetelmät, helpottamaan henkilöstö resursseja ja taitoja, koko eliniän.

- Käytetään kehittämisen ja dokumentoinnin sääntöjä, joiden tavoitteena on helpottaa ymmärtämistä ja rajoittaa muutosten vaikutusta ohjelmistoihin.

- Asiakirjat ajantasalla

- Kyky kehittää ja testata off-line.

  • No labels
You must log in to comment.