Gurux
|
F.I.O
|
650-18
|
Akramov Bahromjon
|
9 - Amaliy ish
Mavzu:Dasturiy ta’minot sifatining xususiyatlari
Reja:
Dasturiy ta’minotda sifati o’zi nima
Dasturiy ta’minotda sifatini baholash
Dastur boshqaruvi
Dasturiy ta'minot sifati mavzusi ko'pincha rus tilidagi adabiyotlarda va maqolalarda eslatib o'tiladi, lekin u kamdan-kam hollarda test haqida uzoq nutqlar yoki suhbatlardan tashqariga chiqadi. Ushbu maqolaning maqsadi dasturiy ta'minot sifati muammosini va dasturiy ta'minot sifatini boshqarishning asosiy tamoyillarini yaxlit ko'rib chiqishdir. Maqolada dasturiy ta'minot sifati tushunchasining ta'rifi berilgan, sifatni tahlil qilish muammosini soddalashtiradigan yondashuv tavsiflangan, sifatni yaxshilashning ma'lum usullari haqida qisqacha ma'lumot berilgan.
I. Dasturiy ta'minot sifati tushunchasi Dasturiy mahsulot sifatini aniqlash
GOST R ISO 9000-2001 ga muvofiq sifat - bu "o'ziga xos xususiyatlar (mahsulot) talablarga javob berish darajasi". Bu umumiy ta'rif. Agar u tom ma'noda dasturiy ta'minotni ishlab chiqish sohasiga o'tkazilsa, u to'liq to'g'ri talqin qilinmasligi mumkin. Gap shundaki, talablarni ishlab chiqish, bu atama dasturiy ta'minot sohasi uchun tushunilgan ma'noda, ushbu dasturiy ta'minotni ishlab chiqish jarayonining ajralmas qismi hisoblanadi. Dasturiy ta'minot mahsulotiga (PP) qo'yiladigan talablarning sifati ushbu dasturiy ta'minotning sifatiga bevosita ta'sir qiladi. Boshqacha qilib aytganda, agar PCBga qo'yiladigan talablar sifatsiz bo'lsa, unda ushbu talablarga muvofiq ishlab chiqilgan mahsulotning o'zi ham mukammal muvofiq bo'lgan taqdirda ham sifatsiz bo'ladi.
Agar GOST ta'rifidagi "talablar" so'zi "loyiha maqsadlari" so'zlari bilan almashtirilsa (bu erda loyiha ma'lum bir dasturiy mahsulotni ishlab chiqish yoki mavjud mahsulotning funksionalligini kengaytirish jarayonini anglatadi), keyin hamma narsa joyiga tushadi. Keyinchalik maqolada biz PP sifati deganda quyidagilarni nazarda tutamiz:
E'tibor bering, bu ta'rif xarajatlar bilan bog'liq muammolarni hal qilmaydi. Dasturiy ta'minotni ishlab chiqish loyihasining maqsadlari birinchi navbatda biznes maqsadlari va mavjud cheklovlar bilan belgilanadi.
PCB sifat mezonlari PP sifati murakkab va ko'p qirrali tushunchadir. Umuman olganda, sifat quyidagi o'zgaruvchilarning funktsiyasidir:
Funktsionallik (dasturiy ta'minot foydalanuvchi uchun qanchalik foydali);
Foydalanuvchi interfeysining sifati (foydalanish qulayligi, o'rganish qulayligi);
Ishonchlilik (PCBda nuqsonlarning yo'qligi, buzilishlarga qarshilik);
Ishlash, resurslarni iste'mol qilish, tashqi muhitga qo'yiladigan talablar;
Axborotni qo'llab-quvvatlash sifati (hujjatlar);
Xizmat ko'rsatish (arxitektura va kod sifati, ichki sifat);
+ ehtimol boshqa mezonlar.
Sifat mezonlari ro'yxatining boshqa variantlarini, masalan, ichida topish mumkin. Ishlab chiquvchi kompaniya har bir dasturiy ta'minot loyihasi uchun har bir mezon uchun o'z sifat standartlarini belgilaydi (aniqlashi kerak). Sifatni baholashda har bir mezonni miqdoriy baholay olish kerak.
Hayotiy tsikl faoliyatining shaxsiy kompyuter sifatiga ta'siri
Dasturiy ta'minot loyihasining hayot aylanish jarayonining odatiy faoliyatini va ularning yuqoridagi sifat mezonlariga ta'sirini ko'rib chiqing. Quyidagi jadvalda * belgisi ushbu faoliyat turi (chiziq) ushbu sifat mezoniga (ustun) aniq ta'sir qilishini anglatadi:
Bu erda men sizning e'tiboringizni qaratmoqchi bo'lgan asosiy nuqta quyidagilardir: yakuniy mahsulot sifatiga loyihaning barcha bosqichlari va faoliyati ta'sir qiladi, istisnosiz - eng ertasidan tortib to oxirgisigacha. Shunday qilib, loyihaning har bir bosqichida qanchalik yaxshi va sifatli ishlayotganimiz (va nafaqat, masalan, sinov bosqichida) ishlab chiqilayotgan mahsulot qanchalik sifatli bo'lishiga bog'liq. Yoki boshqacha aytganda, ishlab chiqish jarayonining sifati ishlab chiqilayotgan mahsulot sifatini belgilaydi, ya'ni. mahsulot sifati jarayon sifati bilan ajralmas va tenglikni sifatini yaxshilash uchun siz tenglikni ishlab chiqish jarayonining sifatini oshirishingiz kerak.
Kamchilik haqida umumiy tushuncha Bir nechta tarqoq mezonlar o'rniga sifatni tahlil qilish uchun umumlashtirilgan sifat mezonini joriy qilish va qo'llash qulay bo'ladi. Bu mezon nuqsonning umumlashtirilgan tushunchasidir:
Shunday qilib, biz yuqoridagi mezonlarning har biri uchun sifat standartidan har qanday og'ishlarni nuqson deb ataymiz. Misol uchun, funksionallikning yo'qligi yoki ortiqcha funksionallik nuqsondir. Noqulay interfeys - bu nuqson. Savdoga salbiy ta'sir ko'rsatadigan yomon ishlab chiqilgan yoki tartibsiz kod - bu nuqson. Qabul qilib bo'lmaydigan ishlash - bu nuqson. Dasturning noto'g'ri ishlashi ("bug", noto'g'ri xatti-harakatlar) nuqsonning alohida holatidir. Foydalanuvchi hujjatlaridagi imlo xatosi ham nuqson hisoblanadi.
Kamchiliklarni, masalan, quyidagi parametrlarga ko'ra tasniflash mumkin:
Kamchilik turi (rivojlanish bosqichi yoki u kiritilgan faoliyat bilan belgilanadi);
Kamchilikning tanqidiyligi (uning PCBda mavjudligi qanchalik muhim);
Kamchiliklarning ustuvorligi (uni tuzatish qanchalik muhim);
Kamchilikning murakkabligi (uni tuzatish qanchalik mashaqqatli);
Bunday umumlashtirilgan teskari sifat ko'rsatkichiga ega bo'lgan holda, ishlab chiqilayotgan dasturiy ta'minot sifatini, shuningdek, umuman bizning ishlab chiqish jarayonimiz sifatini baholash va tahlil qilish osonroq bo'ladi. Biz nuqsonlar sonini yoki ularning og'irliklarining yig'indisini (ba'zi parametrlar bo'yicha) hisoblashimiz mumkin, mahsulot hajmi birligiga to'g'ri keladigan nuqsonlar zichligini taxmin qilishimiz, jarayonning qaysi bosqichlari biz uchun eng muammoli ekanligini tahlil qilishimiz mumkin va hokazo. Endi sifat uchun kurash illatlar bilan kurashdan boshqa narsa emas.
II. Dasturiy ta'minot mahsuloti sifatini boshqarish
Dasturiy ta'minot sifatiga an'anaviy yondashuv Kamchilikning umumlashtirilgan tushunchasini kiritish orqali siz loyihadagi nuqsonlar sonining vaqt o'tishi bilan o'zgarishini ko'rsatadigan grafikni chizishingiz mumkin (1-rasm). Oddiylik uchun keling, loyihaning hayot aylanishining sharshara modelini ko'rib chiqaylik. PCB sifatiga an'anaviy yondashuv bilan, bu erda jiddiy sinovlarga e'tibor qaratiladi, bu grafik shunday ko'rinishi mumkin.
Guruch. 1. Vaqt o'tishi bilan loyihadagi nuqsonlar sonining sifat menejmentiga an'anaviy yondashuvi va sharshara hayot aylanishi bilan o'zgarishi.
Bu erda yuqori qizil chiziq hozirgi vaqtda kiritilgan nuqsonlar sonini ko'rsatadi (aniqlash kerakki, bu chiziq xayoliydir, chunki biz ularning barchasini topmagunimizcha, nuqsonlarning umumiy sonini aniq hisoblay olmaymiz). Pastki yashil chiziq hozirgacha topilgan va tuzatilgan nuqsonlar sonini ko'rsatadi (bu erda nuqsonlar topilganidan keyin deyarli darhol tuzatiladi deb taxmin qilamiz). Vaqtning har bir lahzasidagi qizil va yashil chiziqlar orasidagi farq hozirgi vaqtda nuqsonlar sonini ko'rsatadi. Bizni loyihaning oxirida bu farq nima bo'lishi qiziqtiradi. U qanchalik kichik bo'lsa, mahsulotimiz shunchalik yaxshi bo'ladi. Sifat nuqtai nazaridan, bu raqamdagi hayot aylanishi nuqsonlarni kiritish va tuzatish jarayonlari o'rtasidagi raqobat sifatida taqdim etiladi.
Qidiruv samaradorligini buzish Keling, kamchiliklarni topish va tuzatishga qaratilgan bosqichlardan birini, masalan, tizimni sinovdan o'tkazish bosqichini ko'rib chiqaylik. Bu fazada ma'lum miqdordagi nuqsonlar D topiladi, ma'lum miqdordagi nuqsonlar esa o'tkazib yuborilgan D fazasi oxirida topilmaydi (2-rasm). Fazadan o'tgan nuqsonlarning umumiy soni topilgan D + o'tkazib yuborilgan D ga teng bo'ladi.
Guruch. 2. Bir faza davomida nuqsonlar sonining o'zgarishi.
Topilgan nuqsonlarning ularning umumiy soniga nisbatini foizda ifodalangan nuqsonlarni qidirish samaradorligi (EPD%) deb ataymiz:
Kamchiliklar topilgan va ta'mirlanadigan har bir bosqich uchun, etuk jarayon va boshqa narsalar teng bo'lsa, bu qiymat taxminan doimiy bo'lishini kutish kerak. Bu fakt joriy loyiha va rejalashtirilgan loyihalar uchun sifat darajasini (topilmagan nuqsonlar sonida ifodalangan) miqdoriy baholash imkonini beradi.
Kamchiliklarni aniqlash samaradorligi alohida bosqichlar va faoliyatlar uchun ham, rivojlanishning butun hayoti uchun ham hisobga olinishi mumkin. Shu bilan birga, alohida bosqichlarning samaradorligi butun hayot tsikli uchun samaradorlikni belgilaydi. Kamchiliklarni qidirishning har bir bosqichi nuqsonlarning ma'lum bir qismini va butun hayot aylanishini filtrlar tizimi sifatida saqlaydigan filtr turi sifatida ko'rib chiqilishi mumkin. Agar hayot tsiklining dastlabki bosqichlarida ko'plab nuqsonlarni o'tkazishga imkon beradigan yomon filtrlar mavjud bo'lsa, unda bu nuqsonlar to'planadi va ularni yaxshi filtrlash uchun hayot tsiklining oxirida (sinov bosqichi) bizga juda yaxshi filtr kerak bo'ladi. .
Kamchiliklarni tuzatish narxi
Agar erta bartaraf etish choralari ko'rilmasa, nuqsonlar nafaqat vaqt o'tishi bilan to'planib qoladi. Ammo shunisi ham ma'lumki, loyihada nuqson qancha uzoq yashasa, uni tuzatish shunchalik qimmatga tushadi (ya'ni ko'proq vaqt talab etadi) va qaramlik ko'pincha eksponent bo'ladi. Sharsharaning hayot aylanishi modeli uchun bu munosabat quyidagi grafikda yaxshi ko'rsatilgan (3-rasm).
Guruch. 3. Vaqt o'tishi bilan nuqsonlarni tuzatish xarajatlarining o'zgarishi (palapartishlik hayot aylanishi).
Iterativ hayot tsikli modeli uchun rasm o'xshash bo'ladi (4-rasm), faqat yorliqlar o'zgaradi va har xil turdagi nuqsonlar uchun Y o'qi shkalasi (masalan, talablar va dizayn nuqsonlari uchun, masshtab avvalgisidan kattaroq bo'ladi. kodlash nuqsonlari).
Guruch. 4. Vaqt o'tishi bilan nuqsonlarni tuzatish xarajatlarining o'zgarishi (iterativ hayot aylanishi).
Sifatni boshqarishga kompleks yondashuv Shunday qilib, faqat bitta sinovga tayanib, sifat muammosini hal qilib bo'lmaydi. Agar siz sinov bosqichiga qadar kamchiliklarga qarshi kurashish uchun hech qanday choralar ko'rmasangiz, unda sinov boshlanishiga qadar loyihada shunchalik ko'p nuqsonlar to'planishi mumkinki, ularni tozalash juda qiyin vazifa bo'ladi.
Shuning uchun kamchiliklarni faqat sinov bosqichining oxirida emas, balki eng dastlabki bosqichlardan boshlab loyihaning butun hayoti davomida doimiy ravishda izlash va tuzatish kerak. Taxminan aytganda, loyihaning oxirida, sinov bosqichida, kamchiliklarni izlash juda kech: agar ular juda ko'p bo'lsa, unda hech qanday sinov sifatsiz mahsulotni yuqori sifatli mahsulotga aylantirishga yordam bermaydi. bitta.
Parallel ravishda qo'llanilishi mumkin bo'lgan va kerak bo'lgan ikkinchi yondashuv - bu nuqsonlarning oldini olish yoki oldini olish,,.
Sifatni boshqarishga kompleks yondashuv qo'llanilganda, nuqsonlar sonining vaqtga bog'liqligi grafigi qanday o'zgarishini ko'rib chiqaylik (5-rasm). Loyihaning butun hayoti davomida kamchiliklarni aniqlash usullaridan foydalanish topilgan nuqsonlar egri chizig'ini yuqoriga ko'taradi. Va nuqsonlarning oldini olish usullarini qo'llash, kiritish nuqsoni egri chizig'ini pastga suradi. Shunday qilib, butun hayot tsikli davomida topilmagan nuqsonlar soni kamayadi va natijada loyiha oxirida topilmagan nuqsonlar soni kamayadi.
Guruch. 5. Sifatni boshqarishga kompleks yondashuv bilan vaqt o'tishi bilan loyihadagi nuqsonlar sonining o'zgarishi.
Nosozliklarni qidirish usullari Kamchiliklarni qidirish usullarini quyidagi mezonlarga ko'ra tasniflash mumkin:
statik va dinamik;
qo'lda va avtomatlashtirilgan.
Shunday qilib, usullarning 4 toifasini ajratish mumkin:
Artefaktlarni qo'lda tahlil qilish:
Shaxsiy sharhlar;
Rasmiy tekshiruvlar,,;
Guruh sharhlari (ko'rib chiqish);
Juftlik dasturlash, guruh dizayni;
Avtomatik statik tekshirish:
Kompilyatsiya (aniq nuqsonlarga qo'shimcha ravishda, kompilyator yashirin (ogohlantirishlar) ni topishga qodir - ularni e'tiborsiz qoldirmaslik kerak);
Maxsus analizatorlar yordamida avtomatik statik kod tahlili;
Qabul qilingan kod-standart va uslubga muvofiqligini avtomatik tekshirish;
Avtomatlashtirilgan test:
Birlik sinovi (birlik sinovi),,;
Avtomatlashtirilgan funktsional (kompleks) test;
Grafik foydalanuvchi interfeysini avtomatlashtirilgan sinovdan o'tkazish;
Ishlash testi; stress testi;
Assertlardan foydalanish;
Qo'lda sinov:
Qo'lda integratsiya testi;
Tizimni qo'lda sinovdan o'tkazish;
Qiyosiy testlar;
Tekshirish;
Bosqichma-bosqich kuzatish;
Yuqoridagi usullarning har biri o'zining ijobiy va salbiy tomonlariga ega. Ba'zi turdagi nuqsonlar ba'zi usullar bilan yaxshiroq ushlanadi, boshqalari. Shu sababli, kamchiliklarni aniqlashning samarali strategiyasi bir nechta o'xshash bo'lmagan usullarning kombinatsiyasidan foydalanish bo'ladi. Har bir qidiruv usuli, ma'lum bir kontekstda qanchalik yaxshi amalga oshirilganligi va qo'llanilishiga qarab, o'z foizli samaradorlik darajasiga ega bo'ladi. S. McConnellning "Kod mukammal" kitobida siz turli usullar uchun nuqsonlarni qidirish samaradorligining taxminiy qiymatlari jadvalini topishingiz mumkin (quyida ushbu jadvalning nusxasiga qarang). E'tibor bering, ushbu ma'lumotlarga ko'ra, sinov kamchiliklarni qidirish samaradorligi nisbatan past (25% -40%) va uni yuqori qilish uchun sinov jarayonining narxini bir necha marta oshirish kerak (samaradorlik). 1000 dan ortiq testerlar bilan beta-sinovning taxminan 75% ni tashkil qiladi.
Qidiruv usuli
|
EPD%
|
Qidiruv usuli
|
EPD%
|
Dizaynni norasmiy ko'rib chiqish (texnik loyiha)
|
35%
|
Yangi funktsiyani sinab ko'rish (komponent)
|
30%
|
Rasmiy dizayn tekshiruvlari (texnik loyiha)
|
55%
|
Integratsiya testi
|
35%
|
Norasmiy kodni ko'rib chiqish
|
25%
|
Regressiya testi
|
25%
|
Rasmiy kod tekshiruvlari
|
60%
|
Tizim sinovi
|
40%
|
Modellashtirish va prototiplash
|
65%
|
Beta sinovi (<10 тестеров)
|
35%
|
Birlik sinovi
|
30%
|
Beta-sinov (> 1000 tester)
|
75%
|
Kamchiliklarning oldini olish usullari
Agar biz umuman nuqsonlarsiz dasturiy ta'minot ishlab chiqishni o'rgana olsak, kamchiliklarni aniqlashning yuqoridagi usullari bizga kerak bo'lmaydi. Bunga erishish qiyin, ammo kiritilgan nuqsonlar sonini kamaytirishga urinib ko'rishga arziydi. Kamchiliklarning oldini olish usullariga quyidagilar kiradi:
Prototiplash - ishlab chiqilayotgan tizimning xususiyatlarini sinab ko'rish va ishlab chiqish jarayonida jiddiy nuqsonlarga (va o'zgarishlarga) olib kelishi mumkin bo'lgan noto'g'ri taxminlar va qarorlarni aniqlash uchun uning arzon modelini yaratish va sinovdan o'tkazish.
Dasturiy ta'minotni ishlab chiqish jarayonida ishlab chiqarilgan barcha turdagi mahsulotlar uchun standartlardan foydalanish (talablar, arxitektura, kodlar, turli hujjatlar va boshqalar). Qattiq, umume'tirof etilgan standartlar ushbu mahsulotlar bilan ishlashda odamlar o'rtasida yuzaga kelishi mumkin bo'lgan tushunmovchiliklarni minimallashtiradi (mahsulot o'quvchisi mahsulotni yaratuvchisi nazarda tutganidan boshqacha narsani o'qiganida) va natijada mahsulot bilan bog'liq nuqsonlar paydo bo'lishining oldini oladi. bu.
Komponentli (yoki modulli) yondashuvni qo'llash. Dasturiy ta'minot tizimlarini qurishda komponentli yondashuvni malakali qo'llash ularning murakkabligini pasaytiradi va shuning uchun yuzaga kelishi mumkin bo'lgan nuqsonlar maydonini toraytiradi.
Biz yuqori sifatiga ishonchimiz komil bo'lgan tayyor tasdiqlangan echimlar va komponentlardan foydalanish (o'zimiz yoki sotib olingan). O'zimizning yangi echimlarni ishlab chiqishimiz qanchalik kam bo'lsa, shunchalik kam xatolarga yo'l qo'yamiz.
Kodni qayta ishlash - kodingizni to'g'ri ko'rinishga keltirish kelajakdagi texnik nuqsonlarning oldini olishning yaxshi usuli bo'lib, ular tushunarsiz, noto'g'ri ishlab chiqilgan kod qismlarini o'zgartirganda paydo bo'lishni yaxshi ko'radilar.
Test holatlarining dastlabki ishlab chiqilishi (kodlash bosqichidan oldin) ishlab chiqilayotgan tizimga qo'yiladigan talablarni yaxshiroq tushunish va uni yaxshiroq loyihalash imkonini beradi. Ushbu yondashuvning alohida holati Test-Driven Development bo'lib, unda birlik testlari kodlashdan keyin emas, balki kodlashdan oldin ishlab chiqiladi.
Eng jiddiy nuqsonlarning sabablarini muntazam tahlil qilish va bu sabablarni bartaraf etish yo'llarini izlash. Bu ishlab chiqish guruhining davriy yig'ilishlarida sodir bo'lishi mumkin yoki tizimni sinovdan o'tkazish paytida yoki amalga oshirilgandan so'ng aniqlangan har bir jiddiy nuqson uchun amalga oshirilishi mumkin. Ushbu tahlil natijasi nuqsonlarning sabablarini bartaraf etishga qaratilgan rivojlanish jarayoniga o'zgartirishlar kiritish yoki hech bo'lmaganda bunday nuqsonlarni erta aniqlashga yordam berishi kerak.
Sizning fikrlaringiz?
Shu o‘rinda inson omilini ham aytib o‘tish joiz. Hech qanday usul ishlab chiquvchilar va menejerlarning professionalligi va tajribasini almashtira olmaydi. Haqiqiy tajribali mutaxassislar, qoida tariqasida, kamroq xatolarga yo'l qo'yishadi va ularning tajribasidan foydalanish sifatli rivojlanish uchun yaxshi asos bo'ladi. Agar jamoa asosan yosh tajribasiz ishlab chiquvchilardan iborat bo'lsa, unda siz ular uchun maxsus treninglar o'tkazish imkoniyatini ko'rib chiqishingiz kerak.
Iterativ hayot tsiklida sifat menejmenti Misol uchun, 5 ta iteratsiyadan iborat iterativ hayot aylanishini ko'rib chiqaylik, ularning har birini kichik, ammo to'liq sharsharaning hayotiy tsikli deb hisoblash mumkin (6-rasm).
Faraz qilaylik, har bir palapartishlik tsiklidagi nuqsonlarni qidirish samaradorligi 50% ni tashkil qiladi va har bir iteratsiyada bir xil miqdordagi nuqsonlar kiritiladi. Keling, EPD formulasidan foydalangan holda hisoblab chiqamiz,%, bu ketma-ket beshta iteratsiyadan iborat iterativ tsiklda nuqsonlarni qidirish samaradorligiga teng bo'ladi. 1-iteratsiyadan keyin bu samaradorlik 50% ni tashkil qiladi; ikkinchidan keyin - 62,5%; uchinchidan keyin - 70,8%; 4-dan keyin - 76,6%; 5-dan keyin barcha 5 ta takroriy nuqsonlarni qidirish samaradorligi 80,6% ga teng bo'ladi.
Ushbu misol ideallashtirilgan va real hayotda turli iteratsiyalarda nuqsonlarni qidirish samaradorligi har xil bo'lishi mumkin. Bu turli iteratsiyalarda faoliyatning heterojenligi bilan bog'liq. Biroq, har qanday holatda, oddiy sharshara hayot aylanishidan oldin sifatda aniq taraqqiyot bor. Ushbu ta'sirni tushuntirish juda oddiy: har bir keyingi iteratsiyada biz nafaqat joriy iteratsiyaning kamchiliklarini, balki oldingi iteratsiyalarning qolgan nuqsonlarini ham topamiz. Natijada, nuqsonlarni qidirishning umumiy samaradorligi oshadi.
Shunday qilib, sifatni yaxshilashga nafaqat nuqsonlarni erta aniqlashning qo'shimcha usullarini (masalan, tekshirish, ko'rib chiqish va h.k.) joriy etish orqali, balki palapartishlikdan dasturiy ta'minotni ishlab chiqishning takroriy hayot aylanishiga o'tish orqali ham erishish mumkinligi ma'lum bo'ldi. Bundan tashqari, nazariy jihatdan, qancha ko'p iteratsiya bo'lsa, sifat shunchalik yaxshi bo'ladi. Erta iteratsiya testini hayot tsiklining boshida nuqsonlarni topish deb hisoblash mumkin.
Dasturiy ta'minot sifati narxi
Ko'rinishidan, dasturiy ta'minot sifatini yaxshilash uchun turli xil usullarni qo'llash dasturiy ta'minotni ishlab chiqish xarajatlarini oshiradi. Bu qisqa muddatda (ulardan foydalanish jarayoni barqarorlashgunga qadar) yoki usullardan savodsiz foydalanish bilan to'g'ri bo'lishi mumkin. Uzoq muddatda sifatni yaxshilash usullarini kompleks qo'llash nafaqat rivojlanish xarajatlarini oshirmaydi, balki uni arzonlashtirishi ham mumkin. Keling, bu qanday sodir bo'lishini ko'rib chiqaylik.
Birinchidan, yuqorida ta'kidlab o'tilganidek, avvalroq nuqson topilgan bo'lsa, uni tuzatish arzonroq bo'ladi. Shu bois kamchiliklarni barvaqt aniqlash usullarini samarali qo‘llash loyiha tannarxini kamaytirishga yordam beradi.
Ikkinchidan, yuqorida ko'rib chiqilgan nuqsonlarni qidirish usullari samaradorlikdan tashqari, nuqsonlarni topishning o'rtacha tezligi bilan ham tavsiflanadi. Statistik ma'lumotlarga ko'ra, masalan, sinov usullari uchun ushbu ko'rsatkich nuqsonlarni erta qidirish usullariga qaraganda bir necha baravar yomonroqdir. Bu shuni anglatadiki, dastlabki bosqichlarda nuqsonlarni qidirishga vaqt sarflab, biz kelgusi sinovlarga ko'proq vaqtni tejaymiz.
S.MakKonnell ta'kidlaydiki, "tizim sifatini oshirish uni ishlab chiqish xarajatlarini kamaytiradi", chunki "Keyinchiliklarni bartaraf etish (keyingi bosqichlarda) aslida dasturiy ta'minotni ishlab chiqishning eng qimmat va ko'p vaqt talab qiladigan bosqichidir."
Sifatni boshqarish jarayoni Sifatni boshqarish uchun uni yaxshilash uchun turli usullardan foydalanishning o'zi kifoya emas. Ularni ongli ravishda tizimli qo'llash zarur, bu esa sifatga yo'naltirilgan dasturiy ta'minotni ishlab chiqish jarayonining ajralmas qismiga aylanadi.
Sifat ko'rsatkichlari orqali ishlab chiqilayotgan dasturiy ta'minot sifatini doimiy ravishda kuzatib borish, shuningdek, integral rivojlanish jarayonini tashkil etuvchi alohida kichik jarayonlar sifatini nazorat qilish kerak.
Kecha yaxshi ishlagan usullar bugun vaqtni behuda sarflashi mumkin. Har bir loyiha o'ziga xos xususiyatlarga ega bo'lishi mumkin, bu sifatni yaxshilashning turli usullarini talab qiladi. Agar usullarning samaradorligi doimiy ravishda kuzatilmasa, vaqt o'tishi bilan u sezilarli darajada yomonlashishi mumkin.
Sifat menejmenti, shuningdek, kiritilgan nuqsonlar sonini kamaytirish va nuqsonlarni topish usullarining samaradorligini oshirish uchun rivojlanish jarayonini takomillashtirish yo'llarini doimiy izlashdir.
Xulosa
Keling, yuqoridagilarning barchasini umumlashtiramiz. Dasturiy ta'minotning sifati, birinchi navbatda, ushbu dasturiy ta'minotni ishlab chiqish jarayoni bilan belgilanadi. Faqat etuk, sifatga yo'naltirilgan, barqaror jarayon dasturiy mahsulotlarni prognoz qilinadigan, boshqariladigan sifat darajasi bilan etkazib berishga qodir. Bunday jarayon dasturiy ta'minot sifatini boshqarishning asosiy tamoyillariga asoslanishi dastlabki bosqichlardan boshlab rivojlanishning butun hayoti davomida doimiy izlanish va nuqsonlarni tuzatish;
nuqsonlarning oldini olish usullarini tizimli qo'llash;
ishlab chiqilgan dasturiy ta'minot va ishlab chiqish jarayoni sifatini doimiy nazorat qilish;
sifatni yaxshilash maqsadida rivojlanish jarayonini doimiy ravishda takomillashtirish.
Dasturiy ta'minot sifati- dasturiy ta'minot (dasturiy ta'minot) ning talablarga muvofiqlik darajasi sifatida tavsifi. Shu bilan birga, talablarni juda keng talqin qilish mumkin, bu esa kontseptsiyaning bir qator mustaqil ta'riflarini keltirib chiqaradi. Eng ko'p qo'llaniladigan ta'rif ISO 9001 bo'lib, unga ko'ra sifat - bu "o'ziga xos xususiyatlar talablarga javob berish darajasi".
Sifat omillari
Dasturiy ta'minot sifati omili dastur uchun funktsional bo'lmagan talab bo'lib, u odatda mijoz bilan tuzilgan shartnomada tavsiflanmaydi, lekin shunga qaramay, dastur sifatini oshiradigan kerakli talabdir.
Ba'zi sifat omillari:
Tushunarlilik Dasturiy ta'minotning maqsadi dasturning o'zidan va hujjatlardan aniq bo'lishi kerak. To'liqlik Dasturning barcha kerakli qismlari taqdim etilishi va to'liq amalga oshirilishi kerak. qisqalik Keraksiz, takroriy ma'lumotlarning yo'qligi. Kodning ikki nusxadagi qismlari umumiy protsedura chaqiruviga aylantirilishi kerak. Xuddi shu narsa hujjatlar uchun ham amal qiladi. portativlik Dasturni boshqa muhitga moslashtirish qulayligi: turli arxitektura, platforma, operatsion tizim yoki uning versiyasi. Muvofiqlik Bir xil konventsiyalar, formatlar va konventsiyalardan dastur davomida va butun hujjat davomida foydalanish kerak. Maintainability Dasturni yangi talablarga javob beradigan tarzda o'zgartirish qanchalik qiyin. Bu talab, shuningdek, dastur yaxshi hujjatlashtirilgan bo'lishi, haddan tashqari chalkashmasligi va resurslardan foydalanish (xotira, protsessor) o'sishi uchun joy bo'lishi kerakligini ko'rsatadi. sinovga yaroqlilik Dastur unumdorlik testini o'tkazishga ruxsat beradimi yoki ishlashni o'lchash imkoniyati qo'llab-quvvatlanadimi. foydalanish qulayligi Dasturdan foydalanishning soddaligi va qulayligi. Bu talab birinchi navbatda foydalanuvchi interfeysiga tegishli. ishonchlilik dasturlar ishida nosozliklar va nosozliklar yo'qligi, shuningdek, nuqsonlar va xatolarni tuzatish qulayligi: tizimli samaradorlik Dastur o'z vazifalarini bajarishda resurslarga (xotira, protsessor) qanchalik oqilona munosabatda bo'ladi. Xavfsizlik
Adabiyot
1. Humphrey, Watts S., A disipline for software engineering, ISBN 0-201-54610-8. Mualliflik huquqi 1995-yil Addison-Wesley tomonidan.
2. McConnell S., Code Perfect. Master-klass / Per. ingliz tilidan –M .: "Rus nashri" nashriyoti va savdo uyi; SPb .: Piter, 2005 yil.
3. Humphrey, Watts S., Team Software Processga kirish, ISBN 0-201-47719-X. Mualliflik huquqi 2005-yil Addison Wesley Longman, Inc.
4. Humphrey, Watts S., PSP: dasturiy ta'minot muhandislari uchun o'z-o'zini takomillashtirish jarayoni, ISBN 0-321-30549-3. Mualliflik huquqi 2005 Pearson Education, Inc.
5. Ambler S., Agile Technologies: ekstremal dasturlash va yagona rivojlanish jarayoni. Dasturchilar kutubxonasi. Per. ingliz tilidan -SPb .: Piter, 2005 yil.
6. Kroll P., Kratchen F., Ratsional birlashtirilgan jarayon oson. RUP bo'yicha amaliyotchi uchun qo'llanma. Per. ingliz tilidan -M .: KUDITS-OBRAZ, 2004 yil.
7. Torres RJ, foydalanuvchi interfeysini loyihalash va ishlab chiqish bo'yicha amaliy qo'llanma. Ingliz tilidan. -M .: Uilyams nashriyoti, 2002 yil.
8. Bobrovskiy S., Dasturiy ta'minot muhandisligi. Pentagon texnologiyalari rossiyalik dasturchilar xizmatida. -SPb .: Piter, 2003 yil.
9. Hunt E., Tomas D., Pragmatist dasturchi. Shogirddan ustagacha bo'lgan yo'l. Per. ingliz tilidan -M .: "Lori" nashriyoti, 2004 yil.
10. Fowler M., Refactoring: mavjud kodni takomillashtirish. Per. ingliz tilidan -SPb .: Symbol-Plus, 2005 yil.
11. Bek K., Ekstremal dasturlash. Per. ingliz tilidan - SPb .: Piter, 2002 yil.
12. Bek K., Ekstremal dasturlash: Sinovga asoslangan rivojlanish. Dasturchilar kutubxonasi. Per. ingliz tilidan -SPb .: Piter, 2003 yil.
13.GOST R ISO 9000-2001, http://bib-gost.narod.ru/kazestvo/_gost_r_iso_9000_2001.zip
14. Royce Walker, dasturiy ta'minotni ishlab chiqish jarayonini boshqarish. Per. ingliz tilidan -M .: "Lori" nashriyoti, 2007 yil.
15. Tian, Jeff, dasturiy ta'minot sifati muhandisligi, ISBN 0-471-71345-7. IEEE Kompyuter jamiyati tomonidan mualliflik huquqi 2005. Metodologiya Tegishli fanlar10>
Do'stlaringiz bilan baham: |