Бағдарламалық құралдардың сапасын анықтаудың теориялық негіздердің дамыту қажеттілігі қазіргі таңда өзекті мәселе екені айқын. Бірнеше себептерді атауға болады:
— құрылып жатқан БҚ күннен күнге күрделенуі бағдарлама мәтінінде қателердің көбеюіне әкеледі.
— функционалдық көрсеткіші бойынша бірі біріне ұқсас бағдарламалардың қазіргі нарықта өзара бәсекелестігі артуда. Бір топтағы бағдарламалардың саны жүзге жуық, ал бір бағдарламаның бірнеше версияларын есепке алатын болсақ мыңға жуық.
Тәжірибе көрсеткендей, бағдарламаның жаңа версияларының сапасы көп жағдайда төменірек болып келеді.
БҚ сапасын бағалау құрастырушыға да қолданушыға да маңызды. Құрастырушыға БҚ сапасын бағалау оның нарықта коммерциялық табыстарын жобалау үшін қажет, және де тестілеу барысында сапа көрсеткіші жобаны тоқтату туралы шешім қабылдауға мүмкіндік береді. Ал қолданушыларға БҚ сапасы дайын бағдарламалық өнімді нақты бір мақсатта қолданғанда қажет.
Түрлі материалдардың немесе өнімдердің сапасын анықтау саласында көптеген теориялық және практикалық жұмыстар жеткілікті. Алайда бағдарламалық құралдарды өндіру саласы бір қатар ерекшеліктерге ие, себебі БҚ көпфункционалды, яғни оның сапасын анықтауда екі жүзге жуық сапа критерийлерін атауға болады. Сонымен, БҚ сапасын анықтауда әмбебап әдіс жоқ десе болады.
БҚ сапасын бағалауға арналған мемлекеттік және халықаралық стандарттар көп, мысалы ГОСТ 28195-89 бойынша БҚ сапасын бағалау ол құрамында сапа көрсеткіштер номенклатурасын таңдау, сол көрсеткіштердің мәнін анықтау және базалық мәндермен оларды салыстыру амалдарының жиыны [1, 2].
БҚ сапасын бағалау тақырыбына арналған жұмыстарды талдау нәтижесінде БҚ сапасын бағалау бағыттарын ішкі көрсеткіштері бойынша, сыртқы көрсеткіштер бойынша және аралас көрсеткіштер бойынша деп топтауға болады.
БҚ сапасын ішкі көрсеткіштер бойынша бағалауға кейбір технологиялық көрсеткіштерге (бағдарлама күрделілігі, құрылымдығы және т.б.) сүйеніп бағдарламаның сапасын анықтау бағыттарын қарастырамыз. Ал сыртқы көрсеткіштері бойынша БҚ сапасын анықтауға БҚ тестілеу барысында анықталатын сапа көрсеткіштеріне сүйенетін бағыттарды айтамыз. Аралас бағыттар ішкі және сыртқы көрсеткіштерге сүйеніп БҚ сапасын анықтауға мүмкіндік береді.
Бірінші топқа жататын бағыттарды қарастырайық. жұмыста динамикалық жүйелер теориясына негізделген әдіс қолданылады. БҚ динамикалық жүйе ретінде қарастырылып спектралдық талдау әдістері қолданылады. Сапа көрсеткіштері ретінде бағдарлама күрделілігін есептейтін фракталдық өлшемі, ақпараттық энтропия көрсеткіштері алынады. Мұндай әдістердің бірден бір кемшілігі ол көрсеткіштер тек бірдей қызмет атқаратын бадарламалардың сапасын анықтауда қолданылуы [3].
жұмыста Холстед бағдарламалар теориясының дамуы келтірілген. БҚ сапа көрсеткіші ретінде Холстед метрикалары, ал бағдарламаның ұзындығын есептеу үшін Холстедтің өңделген формуласын қолдану ұсынылған. Бұл жұмысты БҚ сапасын бағалау тек бір көрсеткішін оңтайландыру әдісі деп қарастыруға болады. Және де бағдарлама ұзындығы тікелей нақты бағдарлама сапасына әсер етеді деп айту қиын [5].
Барлық ішкі көрсеткіштері бойынша бағдарлама сапасын анықтау әдістерінің ортақ бір кемшілігі бар, ол көрсеткіштер сапаға әсер еткенімен қаншалықты әсер ететініні бағалау өте қиын. Мысалы, БҚ қолданушының қызметін дәл және тез орындайтын болса қолданушыға бағдарламада қандай алгоритм қолданылғанына мән бермейді. Сондықтан, БҚ ішкі көрсеткіштері бойынша бағдарлама сапасын анықтайтын әдістер құрастырудың бастапқы кезеңдерінде қолданылу қажет. Ал дайын өнімнің сапасын бағалауда қолданушының көзқарасына сүйену керек. Және де бұл әдістерде бағдарлама сапасын анықтау үшін бағдарлама листингі қажет, ал БҚ қолданысқа енгізгенде ондай мүмкіндік жоқ.
Екінші топқа жататын әдістерді қарастырайық.
жұмыста бағдарлама сапасын анықтауда қолданушылық көрсеткіштер келтірілген, мысалы, функционалдық толықтық, құру толықтығы, жылдамдығы, техникалық құралдарға талап деңгейі, техникалық ортаға баптау деңгейі және қарапайымдылығы, желіде жұмыс істеу мүмкіндігі, анықтама беру сапасы, игеру және қолдану еңбекөлшемі, қолданушының кәсіптік деңгейіне талабы, ақпаратты көшіру және шығару ыңғайлылығы, өзгерту еңбек өлшемі, қолданушы интерфейсінің сапасы, рұқсатсыз қолжеткізуден деректерді қорғау құралдардың болуы және оның сапасы, құжаттамалардың сапасы. Бірақ бұл жұмыста автор ұсынған көрсеткіштердің мәнін анықтау әдістер мен модельдер ұсынылмаған. Функционалдық толықтық көсреткішін анықтау әдістемесі ғана келтірілген, ал бір критерий бойынша БҚ сапасын бағалау жеткіліксіз [6] .
жұмыста жобалау, құру және тестілеу кезеңдерінде қолдануға болатын әдістеме ұсынылған. Ол әдіс келесі сапа факторларын бағалауға мүмкіндік береді: iскерлiк, тұтастық, тиімділік, дұрыстық, қауiпсiздiк, сенiмдiлiк, қызмет көрсету ыңғайлылығы, бағалануы, иiлгiштiк, басқа жағдайда қолдану мүмкіндігі, мобильдігі, өзара әрекеттестігі [3].
Бұл факторларға 26 критерий сәйкестендіріледі: жұмыс істеу қабілеттілігі, үйрену мүмкіндігі, коммуникативтілігі, енгізу/шығару көлемі, қол жеткізуді реттеу, бақылау, жадыны тиімді қолдану, қызмет көрсету тиімділігі, трассирленуі, аяқталғандығы, дәлдігі, қателерге төзімділігі, келісілгендігі, қарапайымдылығы, қысқалығы, өлшеу құралдарының болуы, таратылуы, жалпылығы, ақпараттылығы, модульдігі, машинадан тәуелсіздігі, басқа бағдарламалардан тәуелсіздігі, байланыс процедураларының бірыңғайлылығы, деректердің бірыңғайлылығы.
Шешім қабылдайтын тұлға осы көрсеткіштердің ішінен маңыздыларын таңдайды. Сонымен, әр фактор Si критериймен анықталады. Сосын, шешім қабылдайтын тұлға критерийлерді маңыздылығы кему бойынша көршілес критерийлердің арасына үлкен немесе тең, үлкен және аса ұлкен деп салыстырып оларды тізімге орналастырады. Енгізілген қатынастарға байланысты әр сапа критерийінің Vj салмақ коэффициенттері анықталады.
Факторлар мәндері келесі формуламен есептеледі:
(1)
мұнда kj –эксперттік жолмен анықталатын j-ші сапа көрсеткішінің мәні, және kjÎ[0; 1].
БҚ жалпы сапа көрсеткішінің мәні сапа факторларының мәндерінің орта арифметикалық деп есептеледі.
Бұл әдістің артықшылығы ол оның қарапайымдылығы, ал кемшілігі – критерийлердің шкалаға салу аппаратының және салыстыруға тиісті сандық мәндерінің жоқтығы.
ISO 9126:1991 халықаралық стандартында алты сапа факторларынан тұратын әмбебап кез келген топтағы БҚ сапасын бағалау әдісі келтірілген. Олар — функционалдық, сенімділік, қолдану мүмкіндігі, тиімділік, ере жүрулік, тасымалдаулылық. Стандартта еш ұсынусыз және қолдануға түсініктемесіз факторлардың анықтамалары келтірілген. Және де, екінші деңгейдегі сапа сипаттамаларын қолдану ұсынылған, бірақ басқа деңгейдегі сипаттамалар келтірілмеген. Бұл әдістің мағынасы келесіде: БҚ сапа критерийлерінің иерархиялық жүйесін анықтау, иерархияның төмен деңгейіндегі сапа сипаттамаларын бағалау, олардың мәндерін абсолютты шкаладан салыстырмалы шкалаға ауыстыру, жеке сипаттамалардың мәндерін жалпыға келтіру [2] .
Нақты түрде бұл стандарт сапа сипаттама жүйесінің тек екі деңгейін ұсынады да бағалау әдістемесі жалпы түрде сипатталған. Сыртқы критерийлер маңызды екені ерекше аталған.
Сонымен екінші топтағы БҚ сапасын бағалау әдістерінде бірінші топтың кемшіліктері жоқ.
Аралас көрсеткіштері бойынша сапаны бағалау әдістері келесі.
МЕМСТ 28195-89 стандартында да иерархияның екі жоғары деңгейлерінің сапа сипаттамалары келтірілген. Олардың ішінде сыртқы да ішкі де сапа көрсеткіштері бар. Түрлі топтағы бағдарламаларға қай көрсеткішті қолдануы да анықталған [1] .
Бұл стандарт бойынша сапа сипаттамаларының жүйесі төрт иерархия деңгейлерінен тұрады: факторлар, критерийлер, метрикалар және бағалау элементтері. БҚ тіршілік циклының әр кезеңіне метрикалар жиыны ұсынылған. Барлық деңгейлердің сапа сипаттамалары үшін 0-ден 1-ге дейін бір шкала алынады.
БҚ сапа деңгейі сапа көрсеткіштерінің нақты мәндерін эталонды мәндермен салыстыру арқылы табылады. Сапа көрсеткіштері алдыңғы иерархия деңгейінің сипаттама мәндері бойынша есептеледі. Мысалы, k-ші метрика бағалау элементтері mkq арқылы келесі формуламен есептеледі
(2)
i-ші критерий келесі формуламен есептеледі:
(3)
мұнда
(4)
Pijбаз – берілген уақытт мерзімінде сапа көрсеткіштің эталонды деңгейі.
i-ші сапа факторының мәні келесі формуламен есептеледі:
(5)
Бұл әдістің негізгі артықшылығы ол сапа сипаттамалар жүйесінің моделінің аяқталғандығы.
Кемшіліктерің негізгісі ол бағалау элементтерінің (250-ге жүық) экспертті түрде анықталуы, ал ол бағалаудың субъективтілігіне әкеледі. Және де кешенді көрсеткіштердің эталонды мәндерін алдын ала анықтау қиынға соғады. БҚ жалпы сапасы анықталмайды.
жұмыста БҚ сапасын бағалау әдістемелерге шолау жасалған, және де олардың айрымашылығы мінездемелердің құрамы мен иерархиялық деңгейлердің санында екені көрсетілген[10].
Сол жұмыстың авторлары «БҚ сапасы — критерийлер — метрикалар» үшдеңгейлі иерархиялық құрылымды ұсынды. Барлық метрикаларды негізгі келесі критерийлер бойынша топтау ұсынылды: БҚ сенімділігін бағалау, БҚ құру күрделілігі және жұмыс көлемі, БҚ өнімділігі, тілдік және технологиялық құралдардың деңгейін бағалау, бағдарламалардың түсінуге және оқуға жарамдылығы, БҚ қателерінің айықндалуға тұрақтылығы. Бірнеше сапа метрикалары мен есептеу есматематикалық модельдер келтірілген.
БҚ сапасының нақты бағалаумен қатар (1) БҚ болжанатын деңгейін көрсететін эталондық .үлгісінің сапасын бағалау (2) келтіріледі. Сосын нақты бағалаудығ нормировкасы жасалады (3).
(6)
(7)
мұнда ai — мағыздылығының рангі, 1 және 2 тең деп қабылданады.
, (8)
Бұл әдістің негізгі кемшілігі метрикалардың мәндері нормаланған емес және түрлі деңгейлердің мәндері болуы мүмкін. Мысалы, мәні үлкен емес маңызды метрикалар маңызды емес бірақ мәндері үлкен метрикалардың қасында маңыздылыңын жоғалтады.
Сонымен, аралас әдістерде БҚ тіршілік циклының кез келген деңгейінде қолданыла алады және жоғарыда қарастырылған екі бағыттардың артықшылықтарын біріктіреді.
Әдебиет
1 ГОСТ 28195 – 89. Оценка качества программных средств. Общие положения.
2 ISO/IEC 9126:1991. Information technology – Software product evaluation – Quality characteristics and guidelines for their use.
3 Методы и модели оценивания качества программного обеспечения. Воробьев В. И., Копыльцов А. В., Пальчун Б. П., Юсупов Р. М. С-Пб.:СПИИРАН.1992.-33с.
4 Поттосин И. В. «Хорошая программа»: попытка точного определения понятия/ Программирование, 1997, №2, с. 3-17.
5 О программометрическом подходе к оценкам программного обеспечения. Апостолова Н. А., Гольдштейн Б. С., Зайдман Р. А./ Изв. Вузов. Программирование, 1995, №4, с. 38-44.
6 Хубаев Г. Н. Экономическая оценка потребительского качества программных средств: Текст лекций/ РГЭА. – Ростов н/Д., 1997 – 104с.
7 Чикишева Н. М., Проскурякова Л. А. Разработка методики выбора программного обеспечения бухгалтерского учета для строительных организаций. – С-Пб.:Изд-во СПбГУЭФ, 1999. –88с.
8 Елтаренко Е., Сергиевский М. Оценка аппаратных и программных средств по многоуровневой системе критериев./ Компьютер-пресс, №8, 1998, с. 268-272.
9 Общая методика оценки качества программных средств. Москва. 1988
10 Петров Б. Г., Шеремет В. П. Надежность и качество программного обеспечения судовых СУТС (по публикациям и опыту разработки) /ЦНИИ «Аврора», 1992, 120с.