Главная Теоретический материал Лабораторные работы Задачи Тесты Контакты

Узбекское Агентство
Связи и Информатизации



Ташкентский Университет Информационных Технологий


Кафедра
«Программное обеспечение информационных технологий»

Направления:

5521900Информатика и
информационные технологии,
5523500Защита информации,
5523600Электронная коммерция,
5811200Сервис (информационный сервис),
5811300Сервис (электронные и
компьютерные технологии),
5320200Информатика и
библиотековедение,
5140900Профессиональное образование
(по направлению
информатика и
информационные технологии).


Преподаватель дисциплины



Доцент
Чернев Дмитрий Алексеевич

Модификация программы

В процессе функционирования отлаженного программного обеспечения возможно обнаружение в нем ошибок (так назы­ваемые подводные камни) и появление необходимости моди­фикации и расширения его функций.

Под модификацией понимается внесение изменений в уже отлаженную и правильно функционирующую программу. Такие изменения связаны в основном с изменением алгоритма решения задачи, а также с созданием любого достаточно сложного комп­лекса программ.

Внесение даже простых изменений в программу большого объема и сложной структуры — это далеко не тривиальная задача, так как они затрагивают большое число управляющих и инфор­мационных связей, что может вызвать появление нежелательных эффектов.

Как правило, программист не в состоянии предвидеть все подобные эффекты, и для того, чтобы быть уверенным в рабо­тоспособности модифицированной программы, повторно осу­ществляет процесс отладки и верификации модифицированной программы.

Однако задача модификации программ существенно упро­щается, если программисту будут автоматически сообщаться возможные эффекты необходимого изменения и связанные с данным изменением потенциальные места появления ошибок.

Для такой автоматизации можно использовать технику, при­меняемую при оптимизации программ, а именно, методы и алгоритмы, осуществляющие глобальный анализ управляющих и информационных связей программы.

Методы, используемые при оптимизации программ, поз­-воляют более целенаправленно модифицировать программу за счет явного проявления изменений, вносимых в управляющий и информационный графы программы.

Автоматизация процесса модификации программ (помимо своего прямого назначения) облегчит выполнение отладки и верификации программ, так как эти процессы тесно связаны между собой.

Опыт построения систем, являющихся прообразом систем модификации программ, позволяет говорить о некотором стан­дартном наборе моди-фикационных процедур, аналогичных опти­мизационным процедурам. Выделение набора модификационных процедур позволяет строить системы модификации программ так же, как системы оптимизации программ.

Здесь также следует подчеркнуть, что в связи со сложностью управляющих и информационных связей программы, управ-ляемая модификация, в частности, диалог человек—ЭВМ, имеет особое значение в системах модификации программ (так же, как и в системах оптимизации программ и в других рассмотренных системах).


Назад


Главная Теоретический материал Лабораторные работы Тесты Контакты