Домашнее задания для ИТ-2.11 по определению качества программного обеспечения на 05.11.22
учебно-методический материал
Предварительный просмотр:
ЛЕКЦИЯ 5 Методы предотвращения угроз надежности
План.
1. Контрольный опрос
2. Автоматизация программирования
3. Введение избыточности
4. Типовые структуры данных
Большая трудоемкость и стоимость создания ПО систем управления заставляет уделять особое внимание обеспечению его надежной работы. Высокая стоимость ПО во многом обусловлена его низкой надежностью. Следует иметь в виду, что в настоящее время не разработаны методы проектирования программ с гарантированным отсутствием ошибок. Это объясняется рядом причин, и в том числе тем, что программное обеспечение значительно сложнее аппаратуры; характеризуется большей, чем аппаратура, зависимостью от применения; состоит из примитивных составляющих — машинных кодов, из которых синтезируются огромные программные структуры. Однако накопленный опыт позволяет сформулировать принципы и метода проектирования программ, обеспечивающих их надежную, устойчивую работу, основные из которых показаны на рис. 5.4.1. По образному выражению Ф.П. Брукса «программа — это сообщение, передаваемое человеком машине». Чтобы сделать это сообщение «понятным бессловесной машине», требуется предельная формализация как описания алгоритмов, так и программ. 1. Формализация позволяет в существенной степени исключить, а при наличии ошибок — облегчить их выявление и локализацию. 2. Мощным средством повышения надежности у ПО САПР является автоматизация программирования, заключающаяся в использовании ЭВМ для составления машинных программ, т. е. программ, выполненных на языке ЭВМ по исходной программе, составленной на языке высокого уровня. Системы автоматизированного программирования обеспечивают повышение производительности и облегчение труда программистов. Эти системы применяют для программирования языки высокого уровня, более близкие к естественному языку специалистов, и тем самым освобождают программиста от необходимости составлять программу на языке машинных команд. У нас в стране создан ряд систем автоматизированного программирования для ЭВМ. Эти системы обеспечивают автоматизацию создания программ и документов с минимальным расходом ручного труда как при основных, так и при вспомогательных работах, в том числе: .трансляцию текстов программ в машинные коды с семантическим и синтаксическим контролем, автономную отладку программ, диалоговое общение программистов со средствами автоматизации, выпуск эксплуатационных и технологических документов, а также их корректировку.
Рис. 5. 4. 1. Классификация методов обеспечения надежной работы программного обеспечения Эффективным методом повышения надежности ПО является введение избыточности, включающей программную, информационную и временную избыточность. 3. Программная избыточность применяет в комплексах ПО несколько вариантов программ, различающихся алгоритмами решения задачи или программной реализации одного и того же алгоритма. 3. 1. Временная избыточность использует часть производительности ЭВМ для контроля исполнения программ и восстановления вычислительного процесса. Как следствие при проектировании ПО необходимо предусматривать резерв производительности ЭВМ, обычно резерв составляет 5-10%. 3. 2. Информационная избыточность заключается в резервировании (дублировании) исходных и промежуточных данных, что обеспечивает как обнаружение искажения данных, так и устранение ошибок. 4. Структурное программирование позволяет облегчить проектирование и повысить надежность сложных программных комплексов. Структурное программирование развилось на основе технологии процедурного и модульного программирования, а также блочно-иерархического подхода; представляет собой технологию программирования, построенную на совокупности определенных принципов и правил, среди которых прежде всего можно выделить модульность структуры, иерархию модулей, нисходящее проектирование. 5. Структурирование данных позволяет уменьшить сложность комплекса программ и снизить вероятность появления ошибок из-за их неправильного использования. Совокупность данных можно разделить на два иерархических уровня: простые переменные и массивы. Простые переменные представляют собой минимальный компонент данных, имеющий имя и описание. Массивы образуются из нескольких простых переменных по определенным правилам объединения и имеют собственное имя, описание и структуру. С целью упорядочения создан ряд типовых структур данных, применение которых зависит от назначения и метода использования переменных. Структура массивов определяется на основе компромисса между объемом памяти для хранения массива и затратами производительности ЭВМ, необходимыми для выборочного поиска и обращения к данным в массиве. Так, простые структуры массивов экономны по затратам производительности ЭВМ для взаимодействия с данными, но требуют большого объема памяти. Для повышения надежности ПО целесообразно использовать простейшие структуры массивов данных, Следует иметь в виду, что, как правило, устранение ошибок, обнаруженных в ПО, приводит к внесению новых ошибок, трудно обнаруживаемых, так как их последствия не проявляются на тестах. При проведении корректировок в комплексах программ необходим дополнительный анализ возможных последствий внесенных изменений. Любая корректировка ПО может быть сведена к трем типовым операциям: исключение части или всей подпрограммы; вставка компонентов или новой целой подпрограммы на имеющееся свободное место; замена части или всей подпрограммы в пределах освобождающегося свободного места или с расширением программы и использованием дополнительной памяти.
По теме: методические разработки, презентации и конспекты
Домашнее задание для ПО 3.11 по технологии проектирования программного обеспечения от 23.10.20
Лекционное занятие 09.11.20...
Домашнее задание для ПО 3.11 по технологии проектирования программного обеспечения от 10.11.20
Лекционное занятие 10.11.20...
Домашнее задание для ПО 3.11 по технологии проектирования программного обеспечения от 11.11.20
Лекционное занятие 11.11.20...
Домашнее задание для ПО 3.11 по технологии проектирования программного обеспечения от 12.11.20
Лекционное занятие 12.11.20...
Домашнее задание для ПО 3.11 по технологии проектирования программного обеспечения от 13.11.20
лекционное занятие 13.11.20...
Домашнее задание для ПО 3.11 по технологии проектирования программного обеспечения от 14.11.20
лекционное занятие 14.11.20...
Домашнее задания для ИТ-2.11 по определению качества программного обеспечения на 05.11.22
Задание следующее: написать реферат по выбранной теме. Записаться, и сдать преподавателю тему реферата.Реферат должен быть оформлен по классическому ГОСТу оформления деловой/технической литературы...