10.2. Nosozliklarni tuzatish tamoyillari va turlari.
Nosozliklarni tuzatishning muvaffaqiyati asosan testni oqilona tashkil etish bilan belgilanadi. Nosozliklarni tuzatish jarayonida, asosan, dasturiy ta'minot tizimida mavjudligi test paytida aniqlangan xatolar topiladi va yo'q qilinadi. Yuqorida ta'kidlab o'tilganidek, test SE ning to'g'riligini isbotlay olmaydi, eng yaxshi holatda unda xato mavjudligini ko'rsatishi mumkin. Boshqacha qilib aytganda, dasturiy ta'minot tizimini amalda mumkin bo'lgan testlar to'plami bilan sinab ko'rish orqali dasturiy ta'minot tizimida har bir xato mavjudligini aniqlash mumkinligiga kafolat bo'lmaydi. Shunday qilib, ikkita vazifa paydo bo'ladi. Birinchisi, bunday testlar to'plamini tayyorlash va unda iloji boricha ko'proq xatolarni topish uchun ularga dasturiy ta'minotni qo'llash. Biroq, sinov jarayoni (va umuman, disk raskadrovka) qancha uzoq davom etsa, dasturiy ta'minot narxi shunchalik yuqori bo'ladi. Demak, ikkinchi vazifa: dasturiy ta'minot tizimini (yoki uning alohida komponentini) disk raskadrovka qilish tugallanish momentini aniqlash. Nosozliklarni tuzatishni tugatish imkoniyatining belgisi PS dasturlarini bajarish jarayonida yuzaga keladigan ko'plab turli vaziyatlarning PS orqali o'tkazilgan testlarini (ya'ni, PS qo'llaniladigan testlarni) qamrab olishning to'liqligi va nisbatan kam uchraydigan namoyon bo'lishidir. sinov jarayonining oxirgi segmentida PSdagi xatolar. Ikkinchisi uning sifat spetsifikatsiyasida ko'rsatilgan PS ishonchliligining zarur darajasiga muvofiq belgilanadi.
Test to'plamini optimallashtirish uchun, ya'ni. ma'lum miqdordagi testlarni (yoki sinov uchun ajratilgan vaqt oralig'ida) aniqlashga imkon beradigan testlar to'plamini tayyorlash. Ko'proq xatolar uchun, birinchidan, ushbu to'plamni oldindan rejalashtirish va ikkinchidan, testlarni rejalashtirish (loyihalash) uchun oqilona strategiyadan foydalanish kerak. Sinov dizayni dasturiy ta'minotni tashqi tavsiflash bosqichi tugagandan so'ng darhol boshlanishi mumkin. Sinovni loyihalash strategiyasini ishlab chiqishda turli xil yondashuvlar mavjud bo'lib, ular quyidagi ikkita ekstremal yondashuvlar orasiga shartli ravishda grafik tarzda joylashtirilishi mumkin (9.1-rasmga qarang). Chap ekstremal yondashuv shundan iboratki, testlar faqat dasturiy ta'minot tizimining texnik xususiyatlarini (tashqi tavsif, arxitektura tavsifi va modullarning spetsifikatsiyasi) o'rganish asosida ishlab chiqilgan. Bunday holda, modullarning tuzilishi hech qanday tarzda hisobga olinmaydi, ya'ni. ular qora quti deb hisoblanadi. Aslida, bu yondashuv barcha kiritilgan ma'lumotlar to'plamlarini to'liq sanab o'tishni talab qiladi, chunki bu to'plamlarning faqat bir qismi test sifatida foydalanilganda, PS dasturlarining ba'zi qismlari hech qanday testda ishlamasligi mumkin va shuning uchun ulardagi xatolar yuzaga keladi. paydo bo'lmaydi. Biroq, dasturiy ta'minot tizimlarini kirish ma'lumotlar to'plamining to'liq to'plami bilan sinovdan o'tkazish amalda mumkin emas. To'g'ri ekstremal yondashuv shundaki, testlar har bir dasturiy ta'minot dasturini bajarishning barcha usullarini sinab ko'rish uchun dasturlarning matnlarini o'rganish asosida ishlab chiqilgan. Agar dasturlarda o'zgaruvchan sonli takroriy tsikllar mavjudligini hisobga olsak, SS dasturlarini bajarishning juda ko'p turli xil usullari bo'lishi mumkin, shuning uchun ularni sinab ko'rish ham amaliy bo'lmaydi.
Optimal sinovni loyihalash strategiyasi ushbu ekstremal yondashuvlar orasidagi intervalda, lekin chap chetiga yaqinroq joylashgan. U printsiplarga asoslanib, spetsifikatsiyalarga muvofiq sinovlarning muhim qismini loyihalashni o'z ichiga oladi: har bir funktsiya yoki foydalanilgan imkoniyat uchun - kamida bitta test, har bir mintaqa uchun va har qanday kirish qiymatining har bir o'zgarishi chegarasi uchun - kamida bitta test, har bir alohida holat uchun yoki spetsifikatsiyalarda ko'rsatilgan har bir istisno uchun kamida bitta sinov. Lekin u, shuningdek, (hech bo'lmaganda) printsipga asoslanib, ba'zi testlar va dasturlarning matnlarini loyihalashni talab qiladi: har bir dasturiy ta'minot dasturining har bir buyrug'i kamida bitta testdan o'tishi kerak.
Sinovni loyihalashning optimal strategiyasi quyidagi printsip asosida aniqlanishi mumkin: dasturiy ta'minot tizimiga kiritilgan har bir dasturiy hujjat (shu jumladan dastur matnlari) uchun undagi xatolarni aniqlash uchun o'z testlari ishlab chiqilishi kerak. Qanday bo'lmasin, bu tamoyil dasturiy ta'minot tizimlarining ta'rifiga va ishonchli dasturiy ta'minot tizimlarini ishlab chiqish texnologiyasi sifatida dasturlash texnologiyasi tushunchasining mazmuniga muvofiq kuzatilishi kerak (1-ma'ruzaga qarang). Shu munosabat bilan, Myers hatto belgilaydi turli xil turlari testlar tuziladigan dastur hujjati turiga qarab test o'tkazish. Mamlakatimizda disk raskadrovkaning ikkita asosiy turi (shu jumladan, test) mavjud: mustaqil va kompleks tuzatish. Avtonom disk raskadrovka dasturiy ta'minot tizimiga kiritilgan dasturning faqat bir qismini sinab ko'rish, sinov paytida aniqlangan xatolarni qidirish va tuzatishni anglatadi. Bu, aslida, har bir modulni disk raskadrovka va modullarning juftligini tuzatishni o'z ichiga oladi. Kompleks disk raskadrovka deganda yaxlit dasturiy tizimga taalluqli barcha hujjatlarda (shu jumladan dasturiy tizimlar dasturlari matnlarida) test o‘tkazishda qayd etilgan xatolarni topish va tuzatish bilan butun dasturiy ta’minot tizimini sinovdan o‘tkazish tushuniladi. Bunday hujjatlarga dasturiy ta'minotga qo'yiladigan talablarning ta'rifi, dasturiy ta'minotning sifati spetsifikatsiyasi, dasturiy ta'minotning funktsional spetsifikatsiyasi, dasturiy ta'minot arxitekturasining tavsifi va dasturiy ta'minot dasturlari matnlari kiradi.
Do'stlaringiz bilan baham: |