Amaliy ish 1 Mavzu: Loyixaviy takliflar va jamoalar. Biznes ilovalarni ulashish buyicha misollar. Ishdan maqsad: topshiriq



Download 2,24 Mb.
bet63/89
Sana11.04.2022
Hajmi2,24 Mb.
#542710
1   ...   59   60   61   62   63   64   65   66   ...   89
Bog'liq
Dasturiy injiniringga kirish

Qopqoqlik


Hammasi men Coverity bilan bog'langanimdan va ularning vositasi yordamida kodimizni sinov diagnostikasi uchun ro'yxatdan o'tganimdan boshlandi. Bu jiddiy dastur, litsenziyaning narxi kod satrlarining umumiy soniga bog'liq va biz besh raqamli narxga qaror qildik. Bizga tahlil natijalarini ko'rsatganda, Coverity mutaxassislari bizning ma'lumotlar bazasi "vazn toifasi" bo'yicha ular ko'rgan eng toza ma'lumotlardan biri ekanligini ta'kidladilar (ehtimol, ular buni barcha mijozlarga ularning kayfiyatini ko'tarish uchun aytishadi), ammo Ular bizga topshirilganligi haqida xabar berishadi, ularda yuzga yaqin muammoli joylar mavjud. Ushbu yondashuv mening PC-Lint bilan oldingi tajribamdan juda farq qildi. Bu holatda signal-shovqin nisbati juda yuqori bo'lib chiqdi: Coverity tomonidan berilgan ogohlantirishlarning aksariyati haqiqatan ham jiddiy oqibatlarga olib kelishi mumkin bo'lgan aniq noto'g'ri kod bo'limlarini ko'rsatdi.
Bu voqea tom ma'noda statik tahlil uchun ko'zlarimni ochdi, lekin barcha zavqning yuqori narxi meni bir muncha vaqt asbob sotib olishdan saqladi. Chiqarilishdan oldin qolgan kodda bizda unchalik ko'p xatolar bo'lmaydi deb o'ylagandik.

Microsoft / tahlil qilish


Ehtimol, men oxir-oqibat Coverity-ni sotib olishga qaror qilgan bo'lardim, lekin men bu haqda o'ylayotganimda, Microsoft shubhalarimga chek qo'ydi. yangi xususiyat/ 360 SDK da tahlil qiling. /Tahlil oldin Visual Studio'ning eng yuqori, aql bovar qilmaydigan qimmat versiyasining komponenti sifatida mavjud edi va keyin to'satdan xbox 360-dagi har bir dasturchiga bepul bo'ldi. Men tushunganimdek, Microsoft 360 platformasidagi o'yinlarning sifati ancha yuqori. Windows ostida dasturiy ta'minot sifatiga qaraganda. :-)
Texnik nuqtai nazardan, Microsoft analizatori faqat mahalliy tahlilni amalga oshiradi, ya'ni. bu Coverity global tahlilidan pastroq, ammo biz uni yoqganimizda u tushib ketdi tog'lar xabarlar - Coverity berganidan ko'proq. Ha, juda ko'p noto'g'ri pozitivlar bor edi, lekin ularsiz ham juda ko'p qo'rqinchli, haqiqatan ham dahshatli xatolar bor edi.
Men asta-sekin kodni tahrir qila boshladim - birinchi navbatda, men o'zimga, keyin tizimga va nihoyat o'yinga g'amxo'rlik qildim. Men bo'sh vaqtimda ishlashni boshlashim kerak edi, shuning uchun butun jarayon bir necha oyga cho'zildi. Biroq, bu kechikish ham foydali yon ta'sir ko'rsatdi: biz /analyze haqiqatan ham muhim kamchiliklarni aniqlaganiga ishonch hosil qildik. Gap shundaki, mening tahrirlarim bilan bir vaqtda bizning ishlab chiquvchilarimiz katta ko'p kunlik xatolarni qidirishni uyushtirishdi va ma'lum bo'lishicha, har safar ular allaqachon belgilab qo'yilgan/tahlil qilingan, ammo men tomonidan tuzatilgan biron bir xatoning iziga hujum qilishgan. Bundan tashqari, disk raskadrovka bizni /analyze bilan belgilangan kodga olib kelgan boshqa, unchalik dramatik bo'lmagan holatlar ham bor edi. Bularning barchasi haqiqiy xatolar edi.
Oxir-oqibat, men /analyze yoqilgan holda hech qanday ogohlantirishsiz 360 bajariladigan faylga kompilyatsiya qilish uchun ishlatgan barcha kodlarni oldim va ushbu kompilyatsiya rejimini 360 ta tuzilish uchun sukut bo'yicha o'rnatdim. Shundan so'ng, bitta platformada ishlaydigan har bir dasturchining kodi har kompilyatsiya qilinganda xatolar bor-yo'qligini tekshirib turdi, shunda u xatolarni dasturga kiritilganda darhol tuzatishi mumkin edi, men ularni keyinroq hal qilish o'rniga. Albatta, bu kompilyatsiyani biroz sekinlashtirdi, lekin /analyze men hozirgacha ishlatgan eng tezkor vositadir va menga ishoning, bunga arziydi.
Bir marta, ba'zi bir loyihada biz tasodifan statik tahlilni o'chirib qo'ydik. Bir necha oy o'tdi va men buni payqab, uni qayta yoqganimda, asbob o'sha vaqt ichida kodga kiritilgan bir qator yangi xato ogohlantirishlarini chiqardi. Xuddi shunday, faqat shaxsiy kompyuter yoki PS3 da ishlaydigan dasturchilar buggy kodini omborga qo'shadilar va "360 gradusli tuzilish muvaffaqiyatsizligi" hisoboti bilan elektron pochta xabarini olguncha qorong'ilikda qoladilar. Ushbu misollar aniq ko'rsatib turibdiki, ishlab chiquvchilar o'zlarining kundalik faoliyati davomida ma'lum turdagi xatolarga qayta-qayta yo'l qo'yishadi va / tahlil qilish bizni ularning aksariyatidan ishonchli tarzda qutqardi.

Download 2,24 Mb.

Do'stlaringiz bilan baham:
1   ...   59   60   61   62   63   64   65   66   ...   89




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish