К ә с І би білім беру г. Н. Федорова бағдарламалық модульдерді біріктіруге қатысу



Pdf көрінісі
бет99/195
Дата28.11.2022
өлшемі4,31 Mb.
#53308
1   ...   95   96   97   98   99   100   101   102   ...   195
Байланысты:
foreign 745

6.3.
 


143 
бағдарламасына жүгінуі көзделген, ал модульдер біріктірілгенде бұл 
қосалқы бағдарлама табылмаған немесе параметрлер тізімімен 
түйіспейді. Көптеген жағдайда мұндай тектес қателерді оқшаулап, 
жоюға болады.
Орындау қателері ең болжап болмайтын болып табылады. Олардың 
табиғаты әр түрлі болуы мүмкін және тиісінше, әр түрлі шығады. 
Қателердің кейбіреуі анықталады және операциялық жүйемен 
құжатталады. Орындалу қателері келесі түрде шығуы мүмкін: 
■ 
машиналық командаларды орындалуын бақылау схемаларымен 
белгіленген қателер туралы хабарламалардың шығуы, мысалы, 
разрядтардың толтырылуы, нөлге бөлу, дербестенуді бұзу және 
т.с.с.; 
■ 
операциялық жүйемен анықталатын қате туралы хабарламаның 
пайда болуы, мысалы, жадыны қорғаудың бұзылуы, жазып алудан 
қорғалған құрылғыларға жазу талпынысы, берілген аты бар файлдың 
болмауы және т.с.с.; 
■ 
компьютердің «қатып қалуы» - кейде операциялық жүйені қайта 
жүктеусіз бағдарламаны аяқтау мүмкін, жұмысты жалғастыру үшін 
қайта жүктеу қажет болады; 
■ 
алынған нәтижелердің күтілген нәтижелермен сәйкес келуі.
Орындау қателерінің себептері тым әртүрлі, ал оқшаулау да тым 
күрделі болуы мүмкін. Қателердің барлық мүмкін себептерін келесі 
топтарға бөлуге болады: 
■ 
алғашқы деректерді дұрыс анықтамау; 
■ 
логикалық қателер; 
■ 
есептеу нәтижелерінің қателерінің жиналуы. 
Алғашқы деректердің дұрыс анықталмауы, егер енгізу-шығару 
операцияларын орындаған кезде қандай да бір қателер шықса болады: 
беріліс қатесі, қайта түрлену қатесі, қайта жазу қатесі және деректер 
қатесі. Мұнда техникалық арнайы құралдарды қолдану және қателерден 
қорғап бағдарламалау осы қателердің тек бір бөлігін анықтауға және 
алдын алуға мүмкіндік береді, ол туралы ұмытуға болмайтындығы 
сөзсіз. 
Логикалық қателердің табиғаты әртүрлі. Олар жобалау кезінде 
жіберілген қателерден болуы мүмкін, мысалы, әдістерді таңдау кезінде, 
алгоритмдерді әзірлеген кезде немесе класс құрылымын анықтау, ал 
модульді кодтау кезінде тікелей енгізілуі мүмкін. 
Есептеу нәтижелерінің қателерін жинау қателеріне мыналар 
жатады: 
■ 
айнымалыларды дұрыс пайдаланбау қателері, мысалы, деректердің 
типтерін сәтсіз таңдау, айнымалыларды оларды бастауға дейін 
пайдалану, массивтерді анықтау шекарасынан шығатын индекстерді 
пайдалану, деректер типін анық немесе анық емес деректер типін 


144 
қолданған кездегі деректер типтерінің сәйкестілігінің бұзылуы, олар 
айнымалы, ашық массивтер, бірлестіктер, динамикалық жады, 
мекенжайлік арифметика және т.с.с. типтендірілгендерін қолданған 
кезде жадыда орналасқан деректер типін анықтау;
■ 
есептеу қателері, мысалы, арифметикалық емес айнымалыларды 
дұрыс пайдаланбау, бүтін сандармен дұрыс жұмыс істемеу, есептеу 
процесінде деректер типтерін дұрыс қайта түрлендіру және т.с.с.; 
■ 
модульдердің өзара әрекет қателері, яғни, модульаралық интерфейс, 
мысалы, параметрердің берілісі кезінде типтер мен бірізділіктің 
бұзылуы, формалды және нақты параметрлерді өлшем бірлігінің 
бірлігін сақтамау, оқшаулар және өзекті айнымалылардың 
әрекеттерінің саласын бұзу; 
■ 
кодтаудың өзге қателері, мысалы, бағдарламалаудың нақты тілінің 
шектеулері немесе ерекшеліктерін ескермеу, кодтау кезіндегі 
бағдарлама логикасын дұрыс іске асырмау.
Ретке келтіру процесі бағдарламашыдан техникалық құралдар, 
операциялық жүйелер, бағдарламалау аясы мен тілі қолданатын басқару 
сипаттаманы, түрлі қателердің табиғаты мен сипаттамаларын, тиісті 
бағдарламалық құралдарды және ретке келтіру әдістемесін терең білуді 
талап ететін күрделі процесс болып табылады.
Ретке келтірудің күрделілігі келесі факторлардың әсерінің 
салдарынан артуы мүмкін: 
■ 
қателердің жанама білінуі; 
■ 
қателердің өзара әсерінің мүмкіндігі; 
■ 
түрлі қателердің сыртынан бірдей білінуін алу мүмкіндіктері; 
■ 
кейбір қателердің іске қосудан іске қосуға көрінуінің қайталануы 
(стохастикалық қателер); 
■ 
бағдарламаға кейбір өзгертулерді енгізу кезінде зерттеліп отырған 
жағдайда сыртқы қателерінің білінуін жою мүмкіндігі, мысалы, 
бағдарламаға диагностикалық үзінділер қосылғанда жойылуы 
мүмкін немесе қателердің сыртынан көрінуі өзгертілу мүмкін; 
■ 
әртүрлі бағдарламашылардың бағдарламаның жеке бөліктерін 
жазуы.
Бағдарламаны ретке келтіру кез келген жағдайда қате туралы барлық 
бар ақпараттың ойланып, логикалық түсіндірілуін болжайды. Қателер 
көбінесе қосымша ақпарат алусыз тестілеу нәтижелерін және 
бағдарлама мәтіндерін мұқият талдаудың жанама белгілері бойынша 
анықтауға болады. Бұл ретте түрлі әдістерді қолданады: 
■ 
қолмен тестілеу; 
■ 
индукция 
■ 
дедукция; 
■ 
кері бақылау. 


Достарыңызбен бөлісу:
1   ...   95   96   97   98   99   100   101   102   ...   195




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет