Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы нэк.docx
Скачиваний:
67
Добавлен:
27.10.2018
Размер:
4.64 Mб
Скачать
  1. Основные факторы, определяющие надёжность работы программных средств. Методы обеспечения их надёжности на этапах проектирования и в процессе эксплуатации.

Одним из эффективных способов повышения надежности является системный принцип проектирования ПС и развитый на его основе метод структурного проектирования программ [3]. Согласно этого принципа программное обеспечение проектируется по модульно - иерархической структуре, в которой выделяются мало зависимые функциональные части, которые легко читать в отдельности. Программный модуль - набор нескольких операторов, имеющий собственное имя и набор данных. С помощью имени модуль вызывается другими модулями программы. При такой структуре ПС разработка модулей может проводиться независимо, и ошибки в модулях могут быть легче обнаружены и исправлены без последствия на другие модули.

Основные рекомендации по обеспечению надежности модульных ПС следующие [18]:

  1. Проектирование структуры ПС, структуры данных к которым обращается ПС и процедур контроля работы ПС должно быть закончено до начала кодирования и отладки. Вводить дополнительные средства контроля в написанную программу сложнее, чем предусмотреть их на этапе проектирования структуры. В спроектированной структуре ПС должны быть определены иерархические уровни, все модули на каждом уровне и их функций, а также возможные способы передачи управления информации между модулями. При проектировании структуры ПС методом сверху - вниз [3] процесс разработки начинается с самых верхних уровней управления, завершаясь программами низких уровней.

  2. Поскольку программы предназначены и для ЭВМ. и для человека, то они должны быть тщательно документированы. Разработчик должен составить описание всех компонент структуры и сформировать требования для контроля входной и внутренней информации. Необходимо, чтобы каждая программа имела свое описание. Схема алгоритма и текст программы должны быть снабжены достаточным количеством комментариев. В идеале текст программы должен быть понимаем только при обращениям к комментариям, а не к её описаниям.

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

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

  5. Наиболее ответственной с точки зрения надежности является отладка ПС - процесс выявления программных ошибок. Дтя оценки фактического уровня надежности ПС перед их внедрением должен быть проведен специальный контроль в виде - приемных или других видов испытаний. По результатам испытаний с помощью статистических и вероятностных моделей надежности ПС вычисляют возможное количество ошибок в программном изделии.

  1. Методы тестирования и диагностики программных и аппаратных средств.

Для выявления возможно большего количества ошибок рекомендуется разделить отладку на 4 этапа.

I - й этап отладки программы - её чтение за рабочим столом, включая проверку всех связей программы. Целесообразно предложить другому лицу прочитать написанную программу.

2-й этап - автономная отладка ПС, в результате которой должны быть подготовлены все программные модули, которые подлежат объединению

3-й этап - комплексная отладка, цель которой - проверка правильности взаимодействия программ между собой, возможность наращивания ПС. На этом этапе необходимо регистрировать выявленные ошибки.

4-й этап - предъявление ПС заказчику. Здесь проводится оценка поведения ПС при входных данных, отличных от тех, которые были в процессе комплексной отладки.

Одним из простых и достаточно точных методов оценки основан на статистической модели надежности Милса. Для этого в испытуемое ПС специально вводится случайным образом некоторое количество Nв известных ошибок. Предполагается, что темп обнаружения внесенных и собственных ошибок одинаковый. Если обозначить через N0 – первоначальное количество собственных ошибок в программном изделии, а через n0 и nв соответственно число обнаруженных собственных и внесенных ошибок, то условие одинаковой вероятности и обнаружения ошибок определится пропорцией:

n0/N0 ~ nв/Nв

отсюда находим, что первоначальное количество ошибок в разработанной программе:

N0 ~ n0Nв/nв

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