May 3, 2020

ҚОЛДАНУШЫ ИНТЕРФЕЙСТЕР ЖӘНЕ ВЕРИФИКАЦИЯ. КОМПИЛЯЦИЯ

5.1. Берілгендер жүйесі сұхбат режиміндегі жұмысын ұйымдастыру.

Бағдарламалау технологиясында, қолданушының компьютердің бағдарламалық және аппараттық жабдықтарымен жұмыс жасау үшін пайдаланатын әдістері мен құралдарының жиынтығын «қолданушының интерфейсі» деп атау келісілген.

Есептеу жүйелеріндегі интерфейстерді компьютерлік техникаға қатынас тұрғысынан келесі топтарға бөледі (8- сурет):

- аппараттық интерфейс;

- бағдарламалық интерфейс;

- қолданушының интерфейсі.

8-сурет. Есептеу жүйесінің интерфейстері

Қолданушы интерфейстерінің қазіргі көп тарағаны- графиктік интерфейс. Мысалы, Windows операциялық жүйесінің көп таралуының бір себебі, оның қолданушыға ыңғайлы графиктік интерфейсінің болуы деп айтылып жүр. Қолданушының графиктік интерфейсі (Graphical User Interface, GUI) 1970-ші жылдардың ортасында, Xerox Palo Alto Research Center-де (PARC), Smalltalk ортасында жұмыс істейтін Alto және Star машиналары үшін жасалған алғашқы жұмыстардан басталды. Кейде оны «визуальды интерфейс» немесе «терезелі графикалық орта» деп атайды. Қазіргі заманауи жүйелердің көпшілігінде, мысалы,  Microsoft Windows,  Mac OSSolarisGNU/LinuxNeXTSTEPOS/2, BeOSAndroid,  iOS,  Bada, MeeGoжүйелерінде қолданушының графиктік интерфейстері пайдаланылған.

Қолданушының графиктік интерфейсі графиканы растрлық экран дисплейінде қолдануға мүмкіндік береді. Графика экранда элементтердің нақты орнын көрсетеді, ақпаратты берудің визуальды ортасы және көрнекі графика және форматталған мәтіндер барлығы бірігіп «не көрсең соны аласың» (WYSIWYG - What you see is what you get) мүмкіндігін береді.

 

5.2.Графикалық пакеттерді қолдану

C және С++ тілдерінде графикалық режимге өтіп,түрлі фигуралық кескіндерді салуға арналған стандартты финциялар бар.Олар graphice.h файлында сақталып қойылған.Графиалық драйверлер (басқарушы программалар) BGI (Borland Graphise Intergose) кеңейтілуі бар файлдарда сақталған.Оны қосу арнайы initgraph () функциясы арқылы орындалады.

Графикалық режим EGA,VGA,SVGA адаптерінде түрлі-түрлі. Мысалы адаптер 640 Х 480 графикалық режимді пайдаланады.

Графикалық режимде жұмыс істеу функциялары:

1 Драйверлер мен графикалық режимді таңдау:

Detectgraph (&gd,&gm);

2 Драйверлерді жүктеу және графикалық жүйені инициалдау:

Initgraph (&gd,&gm,”BGI файлна жол”)

Мұндағы gd-қажетті драйвер номері,gd=GraphDriver;

Gm- пайдаланатын графикалық режім нөмері, (gd,gm айнымалылары программада int типі құрамы сипатталады.Программа драйверді таңдау операторының gd=DETECT;операторын пайдалануға да болады.DETECT-автоматты түрде анықталатын графикалық драйвер нөмері. Егер драйвер жадта дұрыс қарастырылған болса ,бұл функция жадтан 4кб көлемді графикалық буфер бөліп қояды.

Егер BGI файлдары ағымдық катологта бар болса, программада әр жолы функцияны толық жазбай,оның үшінші параметірінің орнына бос орын ( “ ’’)жолын енгізіп кету жеткілікті:

Initgraph (&gd,&gm,” ” );

3. Қате жағдайларды тексеру функциясы:

GRAPHRESULT () ;

Егер программа дұрыс қосылса , онда қате коды 0 деп есептеледі (жазылу түрі: grOK=0), ал түрлі қателер кодтары -0-ден басқа бүтін сандар.

Сонымен,графиктік режимді іске қосу үшін программа басын алғашқы кезде мынадай түрде жазу керек:

#include<conio.h>
#include <stdio.h>
#include<stdlib.h>
#include<graphics.h>
Main() {
    Int gd, gm, error;
    Defectgraph( & gd, & gm);
    Int gd, gm, error;
    Error = graphresult();
    If(error != grOK) {
      puts(“графика қатесі”);
      exit(1);
}

5.3 Программалық және құралдық жүйелердің сенімділік түсінігі.

Программалық жабдықтарды құжаттау оның өмірлік циклындағы маңызды процесстердің бірі болып есептеледі. Программалық жабдықтың құжаттарына баспа түрінде немесе цифрлық түрде дайындалған программаны құрушыға арналған құжаттар, қолданушыға арналған нұсқаулықтар, анықтамалықтар, диалог түріндегі электрондық нұсқаулықтар және т.б. жатады. Қазіргі уақытта программалық жабдықтың құжаттарын қолданылу саласына қарай келесі топтарға бөліп жүр:

- архитектуралық – жобалаушы құжаттар, негізінен программаны құрушыларға арналған. Мысалы, архитектура – жобалаушы құжаттарда программисттер деректер құрылымының не себепті класстар түрінде анықталғанын, немесе паттерннің не үшін таңдалғанын, немесе оларды жетілдіру үшін не істеу керек екенін баяндай алады, мұндай мәселелер программалық жабдықтың техникалық құжатына да, қолданушының құжатына да кірмейді;

- техникалық құжаттар программада қолданылған алгоритмдерді, қолданушының интерфейстерін, программаның кодын анықтайтын техникалық сипаттағы құжаттар болып табылады. Қазіргі уақытта программалық жабдықтың техникалық құжатын жасаудың автоматтандырылған жүйелері (мысалы, Doxygen, javadoc, NDoc сияқты құжаттандыру генераторлары) қолданылып жүр;

- қолданушының құжаттары программалық жабдықты кәсіби қызметтерінде пайдаланатын қолданушыларға арналады. Бұл құжатта программалық жабдықты қалай пайдалану қолданушыға түсінікті түрде дәл және толық берілуі тиіс;

- маркетингтік құжаттар программалық жабдықты нарықта насихаттау үшін жасалады. Мұнда көпшіліктің назарын аударатын реклама түріндегі материалдар, программалық жабдықтың артықшылықтары және т.б деректер қамтылады.

Программалық жабдықтарды құжаттаудың ортақ жүйесін Қазақстан Республикасының деңгейінде және халықаралық деңгейде қабылданған стандарттар құрайды. Программалық жабдықтарды құжаттандыруға байланысты Қазақстан Республикасы деңгейінде СТ РК ИСО/МЭК 6592-2002 – « Ақпараттық технологиялар. Компьютерлік қолданбалы жүйелерді құжаттандыру бойынша нұсқаулық», СТ РК ГОСТ Р ИСО/МЭК ТО 16326-2006 - «Бағдарламалық инженерия. Жобаны басқару кезіндегі  СТ РК 34.019 қолдануға нұсқаулық», СТ РК ГОСТ Р  ИСО/МЭК 15910-2006 (ГОСТ Р ИСО/МЭК 15910-2002, IDT)- « Ақпараттық технологиялар. Бағдарламалық құралдарды қолданушыға құжат дайындау процессі» және т.б. халықаралық деңгейдегі стандарттар қолданылып жүр.

 

5.4 Программалық жабдықтарды тестілеу. Программалық жабдықтардың сапасын тексерудің түрлері

 

Программалық жабдықтың өмірлік циклының бір кезеңін програмалық жабдықты тестілеу процесі құрайды. Программалық жабдықтарды тестілеу өте көп уақытты қажет ететін күрделі де ұзақ процесс.

Программалық жабдықты тестілеудің мақсаты бұл құрылған программаның бастапқы техникалық тапсырмаға сәйкес толық орындалуын тексеру және оны қолданысқа енгізгенге дейін мүмкін болатын қателерін табу болып есептеледі.

Тестілеу процесі программалық жабдыққа қатысты жасалатын валидация және верификация процесстерінің құрамына кіреді.

Халықаралық ISO 9000:2000 стандарты бойынша, валидация (validation)- программалық жабдықтың қолданушының немесе тапсырыс берушінің нақты талаптарын дәл және толық қанағаттандыратындығын объективті фактілер негізінде дәлелдеу үшін жүргізілетін процесс. Верификация (verification)- программалық жабдықтың сапасына қатысты ішкі ережелер мен стандарттарға спецификациялардың сақталған- сақталмағандығына тексеру үшін жасалады. Мысалы, программалық жабдықты орындауға жіберіп, белгілі бір мәндер үшін шыққан нәтиженің дұрыс-бұрыстығын тексеру валидация процесіне жатады, ал программаны орындауға жібермей-ақ, оның кодын рецензиялау, синтаксистік жазылуларын тексеру және т.б. верификациялау процесіне кіреді.

Қазіргі уақытта программалық жабдықтардың сапасын тексеру үшін жүргізілетін тестілеу процесстерін классификациялау бірнеше категориялар бойынша жасалған.

Программалық жабдықтың өзін тестілеу объектісі ретінде қарастыратын тестілеу процесстеріне келесілер жатады:

- функционалдық тестілеу (functional testing);

- өнімділікке тестілеу (performance testing);

- жүктемелерге тестілеу (load testing);

- стресс-тесілеу (stress testing);

- тұрақтылыққа тестілеу (stability / endurance / soak testing);

- юзабилити-тестілеу (usability testing);

- қолданушының интерфейсін тестілеу  (UI testing);

- қауіпсіздікке тестілеу (security testing);

- локализацияға тестілеу (localization testing);

- үйлесімділікке тестілеу (compatibility testing).

Тестілеу процесінің автоматтандырылу дәрежесіне байланысты келесі топтарға бөлінеді:

- қолмен тестілеу (manual testing);

- автоматтандырылған тестілеу (automated testing) ;

- жартылай автоматтандырылған тестілеу (semiautomated testing).

Тестілеу процесінде қолданылатын теориялық әдіс- тәсілдерге немесе механизмдерге байланысты төмендегідей түрлері анықталған :

- «қара жәшік» әдісі бойынша тестілеу (black box);

- «ақ жәшік» әдісі бойынша тестілеу (white box);

«сұры жәшік» (grey box).

Программалық жабдықтың құрамына кіретін компоненттерінің бір- біріне тәуелсіздігін немесе өзара байланыстарын тексеру мақсатында жүргізілетін тестілеу түрлері:

- компоненттік (модульдік) тестілеу (component/unit testing);

- интеграциялық тестілеу (integration testing);

- жүйелік тестілеу (system/end-to-end testing).

Программалық жабдықты уақытқа қатысты алғанда тестілеудің төмендегідей түрлері қолданылады:

- альфа-тестілеу  (alpha testing)

- қабылдау кезіндегі тестілеу (smoke testing)

- жаңа қызметтерге тестілеу (new feature testing)

- регресстік тестілеу  (regression testing)

- тапсыру кезіндегі тестілеу (acceptance testing)

- бета-тестілеу  (beta testing)

Программалық жабдықтардың сапасын көтеру мақсатында жыл өткен сайын тестілеу процестерінің қатары жаңа әдістермен, жабдықтармен толығып келе жатқанын байқауға болады.