Sharifjanova Nilufar Muratjanovna Nima haqida gaplashamiz


Kamchilikni tuzatish xarajatlari


Download 405.29 Kb.
bet2/3
Sana28.12.2022
Hajmi405.29 Kb.
#1015617
1   2   3
Bog'liq
1 практика (1)

Kamchilikni tuzatish xarajatlari


Development Build QA Release Phase
Dev Stage
Источник: https://www.nist.gov/sites/default/files/documents/director/planning/report02-3.pdf

Kod sifatini ta'minlash usullari


Dinamik kod tahlili
Statik kod tahlili
ishlab chiquvchining testi
test
Kodni qanday himoya qilish kerak

Code review

  • Yuqori darajani topishga yordam beradi xatolar va oyoqlaringizdan otmang
  • Tajriba almashish imkonini beradi
  • Birgalikda siz juda ko'p yangi va sirlarni o'rganasiz loyiha

Lekin...

  • Kodni tekshirish juda qimmat:
  • - Kutish: "1015 daqiqada tahrirni ko'ramiz"

    - Haqiqat - ba'zida soatlab o'tiramiz

  • Kodga qarashdan tez charchaysiz

STATIK KOD TAHLILI:

  • Statik kodni tahlil qilish-o'rganilayotgan dasturlarning haqiqiy bajarilishisiz ishlab chiqarilgan dasturiy ta'minotni tahlil qilish. Ko'pgina hollarda, tahlil manba kodining ba'zi versiyalari ustida amalga oshiriladi.

Statik kod tahlili yordamga keladi
Plyus
Minuslar
Kodni tekshirishni boshlashdan oldin nuqsonlarni aniqlaydi
Analizator charchamaydi va istalgan vaqtda ishlashga tayyor.
Bunday patterna (naqsh) haqida bilmasdan ham xatolarni topishingiz mumkin.
Ko'rib chiqish paytida siz sezish juda qiyin bo'lgan xatolarni topishingiz mumkin
Yuqori darajadagi xatolarni aniqlab bo'lmaydi. Noto'g'ri ishga tushirish
10

Statik tahlilda ishlatiladigan texnologiyalar

  • Shablon bilan mos kelish (pattern-based analysis)
  • Xulosa turlari (type inference)
  • Usullarni izohlash (method annotations)
  • Ma'lumotlar oqimini tahlil qilish (data-flow analysis)
  • Ramziy ijro (symbolic execution)

Statik analizator arxitekturasi haqida bir oz

Deyarli barcha statik analizatorlar qandaydir tarzda kompilyatorlar printsipi asosida qurilgan, ya'ni ularning ishlarida manba kodini o'zgartirish bosqichlari mavjud — kompilyator bajaradigan qadamlar bilan bir xil. Hammasi leksik tahlildan boshlanadi (tokenizatsiya), bu dastur matnini kirish uchun yuqori darajadagi tilda oladi va chiqish uchun leksemalar oqimini beradi(so'zlardagi harflarni guruhlash kabi). Bundan tashqari, olingan leksemalar oqimi kirish joyiga tahlil qiluvchi analizatorga (tahlil qilish) uzatiladi, u til konstruktsiyalarini tahlil qiladi va tahlil natijasini semantik analizatorga (sintaksis daraxti) uzatadi, u o'z ishi natijasida ichki tasvirni yaratish uchun tayyorgarlikni amalga oshiradi. Ushbu ichki ko'rinish har bir statik analizatorning o'ziga xos xususiyati. Analizatorning samaradorligi uning qanchalik muvaffaqiyatli bo'lishiga bog'liq.


1) leksik analizator
2) Sintaktik analizator
Masalan, quyidagi satrning manba kodi
quyidagi token oqimiga aylantirilishi mumkin:
uning tuzilishini chiziqli va ierarxik aylantirish bilan ifodani tahlil qilish misoli

Download 405.29 Kb.

Do'stlaringiz bilan baham:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling