Домашнее задания для ИТ-2.11 по определению качества программного обеспечения на 05.11.22
учебно-методический материал

Склемин Алексей Анатольевич

ЛЕКЦИЯ  Методы предотвращения угроз надежности

 

Скачать:

ВложениеРазмер
Microsoft Office document icon lektsiya_5.doc71.5 КБ

Предварительный просмотр:

ЛЕКЦИЯ 5 Методы предотвращения угроз надежности

План.

1. Контрольный опрос

2. Автоматизация программирования

3. Введение избыточности

4. Типовые структуры данных

Большая трудоемкость и стоимость создания ПО систем управления заставляет уделять особое внимание обеспечению его надежной работы. Высокая стоимость ПО во многом обусловлена его низкой надежностью. Следует иметь в виду, что в настоящее время не разработаны методы проектирования программ с гарантированным отсутствием ошибок. Это объясняется рядом причин, и в том числе тем, что программное обеспечение значительно сложнее аппаратуры; характеризуется большей, чем аппаратура, зависимостью от применения; состоит из примитивных составляющих — машинных кодов, из которых синтезируются огромные программные структуры. Однако накопленный опыт позволяет сформулировать принципы и метода проектирования программ, обеспечивающих их надежную, устойчивую работу, основные из которых показаны на рис. 5.4.1. По образному выражению Ф.П. Брукса «программа — это сообщение, передаваемое человеком машине». Чтобы сделать это сообщение «понятным бессловесной машине», требуется предельная формализация как описания алгоритмов, так и программ. 1. Формализация позволяет в существенной степени исключить, а при наличии ошибок — облегчить их выявление и локализацию. 2. Мощным средством повышения надежности у ПО САПР является автоматизация программирования, заключающаяся в использовании ЭВМ для составления машинных программ, т. е. программ, выполненных на языке ЭВМ по исходной программе, составленной на языке высокого уровня. Системы автоматизированного программирования обеспечивают повышение производительности и облегчение труда программистов. Эти системы применяют для программирования языки высокого уровня, более близкие к естественному языку специалистов, и тем самым освобождают программиста от необходимости составлять программу на языке машинных команд. У нас в стране создан ряд систем автоматизированного программирования для ЭВМ. Эти системы обеспечивают автоматизацию создания программ и документов с минимальным расходом ручного труда как при основных, так и при вспомогательных работах, в том числе: .трансляцию текстов программ в машинные коды с семантическим и синтаксическим контролем, автономную отладку программ, диалоговое общение программистов со средствами автоматизации, выпуск эксплуатационных и технологических документов, а также их корректировку.

Рис. 5. 4. 1. Классификация методов обеспечения надежной работы программного обеспечения Эффективным методом повышения надежности ПО является введение избыточности, включающей программную, информационную и временную избыточность. 3. Программная избыточность применяет в комплексах ПО несколько вариантов программ, различающихся алгоритмами решения задачи или программной реализации одного и того же алгоритма. 3. 1. Временная избыточность использует часть производительности ЭВМ для контроля исполнения программ и восстановления вычислительного процесса. Как следствие при проектировании ПО необходимо предусматривать резерв производительности ЭВМ, обычно резерв составляет 5-10%. 3. 2. Информационная избыточность заключается в резервировании (дублировании) исходных и промежуточных данных, что обеспечивает как обнаружение искажения данных, так и устранение ошибок. 4. Структурное программирование позволяет облегчить проектирование и повысить надежность сложных программных комплексов. Структурное программирование развилось на основе технологии процедурного и модульного программирования, а также блочно-иерархического подхода; представляет собой технологию программирования, построенную на совокупности определенных принципов и правил, среди которых прежде всего можно выделить модульность структуры, иерархию модулей, нисходящее проектирование. 5. Структурирование данных позволяет уменьшить сложность комплекса программ и снизить вероятность появления ошибок из-за их неправильного использования. Совокупность данных можно разделить на два иерархических уровня: простые переменные и массивы. Простые переменные представляют собой минимальный компонент данных, имеющий имя и описание. Массивы образуются из нескольких простых переменных по определенным правилам объединения и имеют собственное имя, описание и структуру. С целью упорядочения создан ряд типовых структур данных, применение которых зависит от назначения и метода использования переменных. Структура массивов определяется на основе компромисса между объемом памяти для хранения массива и затратами производительности ЭВМ, необходимыми для выборочного поиска и обращения к данным в массиве. Так, простые структуры массивов экономны по затратам производительности ЭВМ для взаимодействия с данными, но требуют большого объема памяти. Для повышения надежности ПО целесообразно использовать простейшие структуры массивов данных, Следует иметь в виду, что, как правило, устранение ошибок, обнаруженных в ПО, приводит к внесению новых ошибок, трудно обнаруживаемых, так как их последствия не проявляются на тестах. При проведении корректировок в комплексах программ необходим дополнительный анализ возможных последствий внесенных изменений. Любая корректировка ПО может быть сведена к трем типовым операциям: исключение части или всей подпрограммы; вставка компонентов или новой целой подпрограммы на имеющееся свободное место; замена части или всей подпрограммы в пределах освобождающегося свободного места или с расширением программы и использованием дополнительной памяти.


По теме: методические разработки, презентации и конспекты

Домашнее задания для ИТ-2.11 по определению качества программного обеспечения на 05.11.22

Задание следующее: написать реферат по выбранной теме. Записаться, и сдать преподавателю тему реферата.Реферат должен быть оформлен по классическому ГОСТу оформления деловой/технической литературы...