ФЭА / АИТ / ОСОБЕННОСТИ ОЦЕНКИ НАДЕЖНОСТИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АВТОМАТИЗИРОВАННЫХ СИСТЕМ
(автор - student, добавлено - 26-05-2014, 20:29)
ОСОБЕННОСТИ ОЦЕНКИ НАДЕЖНОСТИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ АВТОМАТИЗИРОВАННЫХ СИСТЕМ
В современных ТС, использующих цифровые ЭВМ, очень велико значение не только безотказной работы технических средств, но и наличия программ, не имеющих скрытых ошибок. В настоящее время в связи с ростом сложности программ существует тенденция к снижению их качества, увеличению количества ошибок в программах. Проверка программы часто возможна лишь после объединения ее частей, когда изменения в программе связаны со значительными затратами времени и средств. Кроме того, часто используются ранее составленные блоки программ, что также затрудняет совершенствование данной программы. Не все блоки программируются одинаково тщательно и подробно, иногда теряется однородность написания различных блоков. Это обнаруживается обычно' слишком поздно-. Часто встречается ситуация, когда безошибочно работавшая программа применяется в новой задаче и на других исходных данных дает неприемлемые по точности, или по времени счета результаты. Имеется ряд других факторов, способствующих появлению в программах ошибок. По сложности программы можно разделить на несколько типов. Длина стандартных программ для вычисления элементарных функций не превышает сотни команд. Эти программы проверяются очень тщательно, но иногда в них обнаруживаются ошибки, обычно при специфических значениях аргумента. Более сложными программами являются трансляторы, которые применяются для преобразования алгоритмов, записанных на языке программирования, в последовательность машинных команд. Трансляторы содержат 1000,0— 50 000 команд. Полную проверку транслятора обычно не удается осуществить, поэтому в процессе эксплуатации продолжается выявление ошибок. Наиболее сложными являются программы управления в реальном масштабе времени, реализуемые на мультипроцессорных вычислительных машинах (содержат сотни тысяч команд). Полная проверка таких программ в процессе отладки невозможна. Функционирование программ может быть полностью оценено лишь в процессе применения. Ошибки программ обычно проявляются только при действии определенных входных сигналов, которые в данном случае играют роль условий работы программ. При рассмотрении множества значений входных сигналов ошибки программ могут считаться случайными. Возможны различные подходы к статистическому исследованию ошибок в программах. Во-первых, можно рассматривать программы как конечный продукт технологического процесса их создания-, находить значения показателей качества программ при различных характеристиках процесса проектирования программ. При этом может быть рассмотрена также надежность технологической системы или процесса прсектирования программ с учетом отказов по качеству выходного продукта — программ. Этот путь пока еще разработан недостаточно. Во-вторых, можно проводить аналогии между программами и техническими объектами и рассматривать надежность программного обеспечения в процессе его применения. Такой подход пока еще привлекает большее внимание специалистов. Рассмотрим его подробнее. Понятие «ошибка программы» можно определить как несоответствие между данной и некоторой идеальной программами. Однако, если .бы идеальная программа существовала, не было бы проблемы. Поэтому, чтобы использовать математический аппарат теории надежности, рассматривают отказы программы —события, состоящие в переходе к неверной работе или остановке программы. После появления отказа программисты исследуют программу с целью поиска (локализации) ошибки'и усовершенствования программы. Можно выделить две группы моделей надежности программного обеспечения. В моделях первой группы программы считаются аналогами невосстанавливаемых объектов и находятся значения соответствующих показателей надежности: вероятность безотказной работы (т. е. отсутствия проявлений ошибок) программ в течение определенного интервала наработки или числа прогонов при эксплуаатации программы в расчетном режиме на соответствующей вычислительной машине, средняя наработка до отказа и Др. Ниже рассмотрены соответствующие примеры. В моделях второй группы работа программы рассматривается как функционирование восстанавливаемого объекта и находятся характеристики потока отказов программ. Такие модели являются более сложными и менее разработанными.
|
|