|
Turvanõuete
analüüsimine tarkvara arendamisel Liina Kamm, Tartu Ülikool 2005 |
|||
|
Sisukord: Tiitel Sisukord Sissejuhatus Arendusprotsess Küsimustik Selgitused/näited Kokkuvõte English summary Allikad Lisad ![]() Tagasi kodulehele |
1. Turvalisuse analüüsi integreerimine tarkvara arendusprotsessiPaljudes protsessimudelites (näiteks Unified Process, Catalysis) käsitletakse turvaaspekte mittefunktsionaalsete nõuetena. Turvalisus on aga nõue, millega peab arvestama arenduse igal etapil ning mille korrektne esitamine vajab erilisi modelleerimistehnikaid. Tarvis on eraldada nõuded meetmetest, tagada turvanõuete jälitatavus, kasutatud meetmete korrektsus ning nõuete ja meetmete täielikkus. [BBH+04] Antud alampeatükis kirjeldatavas lähenemises [BBH+04] visandatakse arendusprotsessi mudel, mis toetab turvakriitiliste süsteemide metoodilist arendamist kasutuslugudel põhineva objekt-orienteeritud raamistiku sees. Lähenemise väga heaks küljeks on just üldine vaade kogu disainiprotsessile üle kõigi abstraktsioonitasemete ning karm nõuete jälitatavuse toetus. Kirjeldatud protsessimudel üritab integreerida turvalisuse arendust olemasolevate lähenemistega. Eesmärgiks on välja arendada tarkvara tootmises kasutatav protsess, mida toetaksid ka töövahendid. Muuhulgas tegeletakse protsessimudeli täiendamise ja mitmes erinevas suunas arendamisega, alates formaalsest pääsupoliitikate modelleerimisest ning tööriistade poolt toetatud nõuete, ohtude ja riskide hindamisest ja jälgimisest, lõpetades platvormist sõltumatute turvalahenduste arendamise ja komponent-raamistike (J2EE/.NET) turvalisusküsimuste uurimistega. Turvalisuse analüüsi eesmärgiks on spetsifitseerida erinevaid turvanõudeid ja -meetmeid sobival arenduse abstraktsioonitasemel: äriloogikast kuni tehnilise tasemeni. Turvanõuete ja -meetmete koondnimetusena kasutatakse terminit turvalisusaspektid. Analüüsiprotsess on üldine ning seetõttu on seda võimalik kohandada erinevatele olemasolevatele protsessimudelitele. Põhilisteks tehisteks, millesse turvalisust lisatakse, on ärimudel (kirjeldab tööprotsessi), süsteemi nõuete analüüs (kirjeldab süsteemi kasutuslugusid), rakenduse arhitektuuridokument (kirjeldab süsteemi loogilisi komponente ning põhilist sõnumivahetust) ja tarkvara arhitektuuridokument (kirjeldab tarkvarasüsteemi tehnilist struktuuri). Tehniline taseme ja rakenduse eraldamisega defineeritakse veel kaks tehist: tehnilised riskid ning rakenduse riskid, mis sisaldavad ohtude ja riskide kirjeldusi vastavatel abstraktsioonitasemetel. |
||