Foydalanilgan adabiyotlar
1.
“Software Engineering”, by Ian Sommerville, 2015, pages – 790.
2.
Holdener, A. T. (2008). Ajax: The Definitive Guide. Sebastopol, Ca.:
O’Reilly and Associates.
3.
Abrial, J. R. (2005). The B Book: Assigning Programs to Meanings.
Cambridge, UK: Cambridge University Press.
4.
http://www.SoftwareEngineering-9.com
5.
http://www.pearsonhighered.com/sommerville
III. NAZARIY MATERIALLAR
43
3 - ma’ruza
.
Dasturiy ta’minot ishonchliligi va xavfsizligi
Reja:
3.1. Dasturiy ta’minot ishonchliligi.
3.2. Dasturiy ta’minot xavfsizligi.
3.3. Dasturiy ta’minot ishonchliligi va xavfsizligining xususiyatlari.
3.4. Dasturiy ta’minot xavfsizligining ehtimolligini boshqarish.
Kalit so’zlar:
Ishonchlilik, xavfsizlik, xususiyat, ehtimollik, boshqarish,
mustahkamlik, himoyalanganlik, barqarorlik, xavf.
3.1. Dasturiy ta’minot ishonchliligi
9
Dasturiy ta'minot tizimlarining hajmi va murakkabligi oshib borgani sari,
dasturiy injiniring sohasida uchraydigan eng muhim talab bu - biz tizimga
ishonishimiz mumkinligini ta'milash ekanligi oydinlashmoqda. Biz biror tizimga
ishonishimiz uchun bu tizim talab qilingan ishga mos kelishi va bu ishni to'g'ri
bajarishi kafolatlanmog'i lozim. Buning ustiga tizim xavfsiz bo'lsin, ya'ni bizning
PC larimiz yoki ma'lumotlarimiz bu tizim orqali xavf ostida qolmasin. Bizning
ushbu ma'ruzamiz ishonchlilik va xavfsizlik borasidagi muhim ma'lumotlarni o'z
ichiga oladi.
Hisoblash tizimlari shaxsiy hayotimiz hamda ishlarimizga chuqur kirib
borgani sari tizim va dasturiy ta'minot nosozligi oqibatida kelib chiqadigan
muammolar ham ortib bormoqda. Masalan, elektron tijorat bilan shug'ullanuvchi
kompaniyaning serveri dasturiy ta'minotida paydo bo'lgan nosozlik ko'p miqdorda
yillik daromad boy berilishi, mijozlarning yo'qotilishiga sabab bo'ladi.
Hozirda dasturiy ta'minot intensiv tizimlari hukumat, kompaniyalar va
jismoniy shaxslar uchun juda ham zarur, shuning uchun keng qo'llanadigan dasturiy
ta'minotlarga qo'yiladigan eng muhim talablardan biri bu ishonchlilik bo'ladi.
Dasturiy ta'minot talab qilingan vaqtda javob berishi , vazifani to'g'ri bajarishi hamda
autorizatsiyalanmagan ma'lumotlarni oshkor etilishi kabi ishning maqsadiga to'g'ri
kelmaydigan ta'sirlardan yiroq bo'lishi kerak. 'dependability' ya'ni 'ishonchlilik'
termini 1995 - yilda Lepray tomonidan tizimining tayyorlik, mustahkamlik,
xavfsizlik va himoyalanganlik xususiyatlarini qamrab oluvchi atama sifatida taklif
etilgan edi.
Quyidagi sabablarda ko'ra tizimlar ishonchliligi hozirda ularning barcha
funsionalligidan ko'ra muhimdir:
9
“Software Engineering”, by Ian Sommerville, pages 290-295
III. NAZARIY MATERIALLAR
44
1.
Tizim nosozligi ko'p sondagi insonlarga zarar keltiradi.
Ko'pgina tizimlarning
ichki funksionalligi kam ishlatiladi. Agar bu funksionalliklar ya'ni xizmatlardan biri
tizimdan olib tashlansa oz miqdordagi foydaanuvchilar zarar ko'radi. Tizim
yaroqliligiga zarar yetkazuvchi nosozlik esa bu tizimdan foydalanayotgan barcha
iste'molchilarga zarar ketirishi mumkin. Nosozlik vaqtida normal ish yuritib bo'lmay
qoladi.
2.
Foydalanuvchilar odatda mustahkam bo'lmagan, himoyalanmagan yoki
xavfsiz bo'lmagan tizimlarni rad etadilar.
Agar foydalanuvchilar tizimni ishonchsiz
va himoyalanmagan deb topsalar, uni ishlatishdan bosh tortadilar. Bu narsa esa
keyinchalik ushbu tizimni ishlab chiqargan kompaniyaning boshqa mahsulotlariga
nisbatan ham foydalanuvchilar ishonchining so'nishiga olib keladi.
3.
Tizim nosozligi juda qimmatga tushishi mumkin.
Yadro reaktorini nazorat
qilish yoki airoplanlarni boshqaruvchi tizimlarga o'xshash tizimlarda paydo
bo'ladigan nosozliklardan keladiga zarar, ularni boshqarishga sarflangan xarajatlar
qiymatidan ham o'tib tushadi.
4.
Ishonchsiz tizimlar axborot yo'qotilishiga sabab bo'lishi mumkin.
Gohida
hisoblash tizimiga joylashtirilgan ma'lumotlar shu tizimning o'zidan-da qimmat
bo'ladi. Yo'qotilgan ma'lumotlarni qayta tiklash esa yanada qimmat turadi.
Ishonchli tizimni loyihalashda quyidagilarni e'tiborga olmoq lozim:
1.
Apparat ta'minotidagi nosozliklar.
Tizim apparat ta'minoti o'zining
qurilishidagi xatolar yoki biror ehtiyot qismning o'z vazifasini o'tab bo'lgani
sababidan nosozlikka duchor bo'ladi.
2.
Dasturiy ta'minot nosozligi.
Tizim dasturiy ta'minoti uning tavsifidagi,
loyihasidagi yoki realizatsiyasidagi xatoliklar tufayli nosoz bo'lib qolishi
mumkin.
3.
Faoliyatdagi nosozlklar.
Insonlar tizimdan to'g'ri foydalanishda va uni
to'g'ri qo'llashda xato qilishlari mumkin. Apparat va dasturiy ta'minotlar ancha
mustahka bo'lgan hozirgi davrda faoliyatdagi nosozliklar tizim nosozlilarining
ko'pchiligini tashkil etadi deyish mumkin.
Bu nosozliklar ko'pincha bir-biriga bo'g'langan bo'ladi: nosoz apparat ta'minoti
tizim operatorlariga qo'shimcha ishlar yuklashi ularni qiyin ahvolga tushirib qo'yishi
mumkin. Bu narsa esa ulani asabiylashishiga sabab bo'ladi, insonning
asabiylashganida xato qilishi esa tabiiy holdir. Nosoz dasturiy ta'minot bilan ham
III. NAZARIY MATERIALLAR
45
shunday holatni kuzatish mumkin.
Hisoblash tizimi ishonchliligi - bu tizimga qanchalik ishonish mumkinligini
o'zida aks ettiruvchi xususiyatdir. Bu bilan ishonchlilikni raqamlarda ifodalashni
ko'zda tutmayapmiz. Balki nu o'rinda "ishonchsiz", "ishonchli", "juda ishonchli"
kabi atamalar tzizm ishonchliligini aks ettirish uchun qo'llaniladi.
Ishonchlilikning to'rtta asosiy qismi bor:
1.
Tayyorlik.
Bu xususiyat tizim foydalanuvchi talab qilgan har qanday
vaqtda oz' xizmatlarini taqdim eta olishidir.
2.
Mustahkamlik.
Bu xususiyat tizim o'ziga berilgan vazifani bexato,
tavsiflarda keltirilganidek bajarishidir.
3.
Himoyalanganlik.
Bu tizim kishilarga yoki o'z muhitiga qanchalik
ziyon yekazishi mumkinligini ko'rsatadigan xususiyat.
4.
Xavfsizlik.
Bu tizimning qasddan qilingan yoki tasodifiy tahdidlarga
qanchalik qarshilik ko'rsata olishini aks ettiradigan xususiyatdir.
Bu asosiy qismlarga qo'shimcha ravishda quyidagi xususiyatlarni ham
ishonchlilikning tarkibiga kiritish mumkin:
1.
Tuzatilish.
Tizim nosozliklari muqarrar hodisadir, lekin nosozlik natijasida
kelib chiqqan buzilish agar tizimni tezda tuzatish imkoniyati bo'lsa
minimallashtirilishi mumkin. Ochiq kodli dasturiy ta'minotlarda bu ish ancha oson,
lekin komponentalarni qayta qo'llayverish buni qiyinlashtirishi mumkin.
2.
Qo'llab - quvvatlanish.
Tizim ishlatilgani sari unga yangi talablar qo'tib
boriladi, shuning uchun talablar asosida tizimning yangi versiyalari ishlab
chiqarilishi orqali uni qo'llab-quvvatlash muhimdir.
3.
Saqlanib qolish.
Bu Internetga asoslangan tizimlar uchun muhim xossadir.
Saqlanib qolish bu - tizimning biror hujum ostida, hatto biror qismi o'chirib
qo'yilganda ham ishda davom eta olish xususiyatidir. Albatta bunda minimal xizmat
ko'rsata olish nazarda tutilmoqda. Saqlanib qolishni kuchaytirish uchun 3 ta
strategiya qo'llaniladi - hujumga qarshilik qilish, hujumni aniqlash va hujum
natijasida ko'rilgan ziyondan qayta tiklanish.
4.
Xatolarga chidamlilik.
Bunda ko'pincha foydalanuvchi xato ma'lumotlar
kiritganida, iloji bo'lsa ularni tuzatish yo'qsa foydalanuvchiga bu haqdagi xabarni
yetkazish tushiniladi.
|