Проблемы надежности программных комплексов

Представление об автоматизированных системах обработки информации и управления. Обеспечение надежности теории и практики проектирования, производства и эксплуатации АСОИУ. Причины отказов программного обеспечения. Методы программного восстановления.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 24.04.2010
Размер файла 32,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

25

Ташкентский Институт Инженеров Транспорта

Самостоятельная работа

По дисциплине: «Надежность информационных систем»

На тему: «Проблемы надежности программных комплексов»

Выполнил: Байназаров Р.

АТ-5

Принял: Гаюбов Т.Н.

Ташкент 2010

Содержание:

Введение

1. Основные понятия

1.1 Надежность

1.2 Работоспособность. Отказ. Неисправность. Восстановление

1.3 Безотказность. Ремонтопригодность. Сохраняемость. Долговечность

2. Качество и надежность программного обеспечения

2.1 Основные причины отказов программного обеспечения

2.2 Методы программного восстановления

2.3 Основные показатели надежности программного обеспечения

2.4 Методы испытаний программ на надежность

2.5 Подход к повышению надежности программного обеспечения

2.6 Методы обеспечения надежности комплексов программ при сопровождении

Заключение

Список литературы

Введение

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

Для того чтобы технические средства воспроизводили алгоритмы функционирования так, как это было предусмотрено разработчиками при проектировании, аппаратура должна быть достаточно надежной, приспособленной к своевременному обнаружению и устранению отказов. От того, насколько в АСОИУ удалось исключить отказы или уменьшить их количество и вероятность появления, устранить или уменьшить их влияние на процесс управления, зависит не только качество, но и безопасность управления.

Система управления принимает участие в предупреждении и устранении аварийных ситуаций в объекте управления и сама не должна провоцировать негативные процессы в автоматизированном технологическом комплексе (АТК), состоящем из двух тесно взаимодействующих составных частей: объекта управления и системы управления.

Поэтому задача обеспечения высокой надежности становится одной из ключевых задач теории и практики проектирования, производства и эксплуатации АСОИУ.

Современная теория надежности занимается в основном вопросами надежности техники, за более чем 50-летнюю историю своего развития она накопила большое количество полезных, проверенных на практике результатов. Казалось бы, это может служить залогом успешного и беспроблемного решения задачи обеспечения надежности АСОИУ. Однако это не так. В последние десятилетия проблема повышения надежности не только не ослабела, но, напротив, значительно обострилась. Это связано с действием ряда объективных причин, обусловленных бурным техническим прогрессом в новой области техники -- информатике и вычислительной технике. Одна из причин -- непрерывный рост сложности аппаратуры, который значительно опережает рост качества элементной базы, хотя последний, по абсолютным оценкам, тоже настолько велик, что производит большое впечатление при сравнении с некоторыми другими областями техники.

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

Говоря о другой составной части АСОИУ -- программном обеспечении, -- следует отметить, что оно также заметно влияет на надежность системы. Без правильно и эффективно работающего программного комплекса (ПК) АСОИУ превращаются просто в дорогую груду металла. Нарушение работоспособности ПК часто приводит к не менее тяжелым последствиям, чем отказы техники, но найти причину нарушения бывает крайне тяжело. Неправильная работа программ может провоцировать отказы технических устройств, устанавливая для них более тяжелые условия функционирования, поэтому вопросам обеспечения и поддержания надежности ПК всегда уделялось большое внимание. Однако методы оценки надежности ПК стали разрабатываться совсем недавно. До сих пор теория надежности не имеет методик расчета надежности ПО, исследованных столь же тщательно, как методики для оценки надежности технических средств. Вместе с тем отдельные результаты таких исследований вызывают определенное доверие разработчиков ПК и вполне могут быть использованы в проектной практике.

1. Основные понятия

1.1 Надежность

Надежность является фундаментальным понятием теории надежности, с помощью которого определяются другие понятия. Надежность есть свойство объекта сохранять во времени в установленных пределах значения всех параметров, характеризующих его способность выполнять требуемые функции в заданных режимах и условиях применения, технического обслуживания, хранения и транспортирования. Остановимся на некоторых особенностях этого понятия. Во-первых, как следует из определения, надежность есть внутреннее свойство объекта, заложенное в него при изготовлении и проявляющееся во время эксплуатации. Для количественной оценки надежности, как и любого другого свойства объекта, необходима та или иная мера, являющаяся ее характеристикой. Надежность нельзя свести ни к одной ее характеристике. Вторая особенность надежности состоит в том, что она проявляется во времени. Если нет наблюдения за объектом во времени, то нельзя сделать никаких заключений о его надежности. Этим она существенно отличается от таких свойств объекта, как дефектность, точность и пр. Дефектность можно установить специальными измерениями в течение сравнительно небольшого времени, определяемого количеством измеряемых параметров и временем каждого измерения и составляющего несколько минут или часов. Для того чтобы составить представление о надежности, необходимы наблюдения за группой объектов в течение тысяч или десятков тысяч часов. Можно сказать также, что дефектность и точность отражают начальное значение качества объекта, а надежность отражает устойчивость начального качества во времени. Третья особенность надежности заключается в том, что она по-разному проявляется при различных условиях эксплуатации и различных режимах применения объекта. При изменении режимов и условий эксплуатации изменяются и характеристики надежности. Нельзя оценить надежность объекта, не уточнив условия его эксплуатации и режимов применения.

При определении понятия «надежность» для обозначения обладателя этого свойства и предмета анализа используется понятие «объект». В технической литературе по надежности для этих же целей часто используют также понятие «изделие».

Однако эти понятия не являются синонимами и поэтому требуют пояснения. Объект (технический объект) -- это предмет определенного целевого назначения, рассматриваемый на этапах выработки требований, проектирования, производства и эксплуатации.

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

К техническим объектам относятся не любые промышленные изделия, а только такие, каждый экземпляр которых в процессе эксплуатации (применения по назначению) не подвергается постепенному расходованию. У данных изделий с течением времени расходуется только технический ресурс. С этой точки зрения не является объектом банка смазочного материала, хотя, несомненно, она является изделием.

Это не значит, что понятие «изделие» нельзя употреблять при анализе надежности. Далее под изделием будем понимать любую единицу промышленной продукции, количество которой может исчисляться в штуках или экземплярах.

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

1.2 Работоспособность. Отказ. Неисправность. Восстановление

Одно из основных требований теории надежности -- это необходимость установить принадлежность всех возможных состояний объекта к одному из двух противоположных классов: работоспособные и неработоспособные. Работоспособным называют такое состояние объекта, при котором значения всех параметров, характеризующих способность выполнять заданные функции, соответствуют требованиям нормативно-технической и/или конструкторской (проектной) документации. Неработоспособным будет такое состояние, при котором значение хотя бы одного из параметров не соответствует требованиям документации. У большинства технических объектов не существует четкой границы между этими классами состояний. Однако в теории надежности промежуточные состояния не рассматриваются. Чтобы оценить надежность, надо сделать эту границу четкой в рамках рассматриваемой модели надежности. Это весьма непростая задача, и решается она путем обсуждения с участием компетентных лиц со стороны разработчика и заказчика (пользователя) объекта. Однако далеко не всегда задача разбиения всех состояний по принципу «всё или ничего» может быть успешно решена. Тогда вводятся несколько уровней работоспособности и понятия полной и частичной работоспособности. Для многофункциональных систем возможна ситуация, когда при выполнении каждой функции удается разделить все состояния на работоспособные и неработоспособные, но возможны состояния, при которых одни функции выполняются, а другие -- нет. Тогда уровни работоспособности выделяют по способности выполнять все функции, группу функций, определенные функции. Для оценки надежности таких объектов могут применяться векторные показатели. Если же это неудобно, применяют свертку векторного показателя в скалярный, трактующийся как показатель эффективности. С переходом из работоспособного состояния в неработоспособное и обратно связаны особые события в процессе функционирования объекта, называемые, соответственно, отказом и восстановлением. Отказ -- это событие, состоящее в нарушении работоспособного состояния объекта. Восстановление -- это событие, заключающееся в переходе объекта из неработоспособного состояния в работоспособное в результате устранения отказа путем перестройки (реконфигурации) структуры, ремонта или замены отказавших частей. Этим же термином обозначают и процесс перевода объекта из неработоспособного состояния в работоспособное. Всякий отказ связан с нарушениями требований документации. Но не всякое нарушение требований приводит к отказу. Оно приводит к событию, называемому неисправностью, к возникновению неисправного состояния. Поэтому можно различать неисправности, не приводящие к отказам, и неисправности или их сочетания, вызывающие отказ. Отказы можно классифицировать по различным признакам [2], [5]. По скорости изменения параметров до возникновения отказа различают внезапные и постепенные отказы. Внезапный отказ -- это отказ, характеризующийся скачкообразным изменением значений одного или нескольких параметров объекта. Постепенный отказ -- это отказ, возникающий в результате постепенного изменения значений одного или нескольких параметров объекта. Такое деление весьма условно, так как большинство параметров изменяется с конечной скоростью, поэтому четкой границы между этими классами не существует. К постепенным отказы относят в тех случаях, когда изменения параметров легко прослеживаются, позволяя своевременно предпринять меры по предупреждению перехода объекта в неработоспособное состояние. По характеру устранения различают устойчивый, самоустраняющийся и перемежающийся отказы. Устойчивый отказ всегда требует проведения мероприятий по восстановлению работоспособности объекта. Самоустраняющийся отказ, или сбой, устраняется в результате естественного возвращения объекта в работоспособное состояние без участия или при незначительном вмешательстве оператора, причем время устранения отказа мало или близко к нулю. Перемежающийся отказ -- это многократно возникающий самоустраняющийся отказ одного и того же характера. Как правило, для его устранения требуется вмешательство оператора. По характеру проявления различают явные некрытые (латентные) отказы. Явный отказ обнаруживается визуально или штатными методами и средствами контроля и диагностирования при подготовке объекта к применению или в процессе его применения по назначению. Скрытый отказ выявляется при проведении технического обслуживания или специальными методами диагностирования. Задержка в обнаружении скрытого отказа может привести к неправильному срабатыванию алгоритмов, некорректной обработке информации, выработке ошибочных управляющих воздействий и другим неблагоприятным последствиям. При наличии нескольких уровней работоспособности различают полный и частичные отказы. Переход на уровень частичной работоспособности называют частичным отказом. Полная потеря работоспособности возникает при полном отказе. В многофункциональной системе полный отказ при выполнении одной из функционально самостоятельных операций может означать только частичный отказ для системы в целом, если потеряна одна или часть функций, а остальные могут выполняться. В некоторых устройствах и элементах возможны отказы двух типов. В резисторах, полупроводниковых диодах, транзисторах, реле и ряде других элементов могут возникать отказы типа обрыв и типа короткое замыкание. В первом случае падает до нуля проводимость, а во втором -- сопротивление в любых или в определенном направлении. В устройствах, назначение которых состоит в формировании определенного сигнала в ответ на определенные сочетания сигналов на входах, например в логических элементах, дискретных датчиках, устройствах контроля и диагностирования, регуляторах, также возможны отказы двух типов: отсутствие сигнала, когда он должен быть сформирован, и появление сигнала, когда его не должно быть (ложный сигнал). По первопричине возникновения различают конструктивный, производственный и эксплуатационный отказы. Конструктивный отказ возникает по причине, связанной с несовершенством или нарушением установленных правил и/или норм проектирования и конструирования. Производственный отказ связан с несовершенством или нарушением технологического процесса изготовления или ремонта (на ремонтном предприятии), а эксплуатационный отказ -- с нарушением правил и/или условий эксплуатации, при возникновении непредусмотренных внешних воздействий или воздействий высокой интенсивности.

1.3 Безотказность. Ремонтопригодность. Сохраняемость. Долговечность

Надежность как комплексное свойство включает в себя единичные свойства: безотказность, ремонтопригодность, сохраняемость, долговечность. Нельзя сводить надежность ни к одному из этих свойств. Только их совокупность правильно раскрывает содержание понятия «надежность». Безотказность -- это свойство объекта непрерывно сохранять работоспособное состояние в течение некоторого времени или наработки. Наработка -- это продолжительность или объем работы объекта. Наработка может измеряться в единицах времени или объема выполненной работы (длины, площади, массы, числа срабатываний и пр.), например: для автомобилей наработка может измеряться километражем пробега, для реле -- количеством переключений на некотором временном интервале. Если наработка измеряется в единицах времени, то в случае непрерывного применения объекта она может совпадать с календарным временем. Наработку, в течение которой объект, снимаемый с эксплуатации после первого же отказа, сохраняет работоспособность, называют наработкой до первого отказа. Если наработка совпадает с календарным временем, она называется временем до первого отказа, или временем безотказной работы. Для других объектов наряду с наработкой до первого отказа может рассматриваться наработка между соседними отказами. Ремонтопригодность -- это свойство объекта, заключающееся в приспособленности к поддержанию и восстановлению работоспособного состояния путем технического обслуживания и ремонта. Ремонтопригодное изделие должно иметь соответствующую конструкцию, быть приспособленным к контролю работоспособности по всем основным параметрам, демонтажу отказавшего и монтажу работоспособного оборудования. Близким к ремонтопригодности понятием является восстанавливаемость. Восстанавливаемость зависит не только от приспособленности аппаратуры к предупреждению, обнаружению и устранению отказов, но и от подготовленности обслуживающего персонала, от организационно-технических мероприятий по обслуживанию и снабжению изделия необходимыми запасными частями, от внешних условий функционирования. Ремонтопригодное изделие становится восстанавливаемым, если при его применении допускаются вынужденные перерывы в работе всего изделия или его составных частей, имеются необходимая контрольно-измерительная аппаратура, запасные части и обслуживающий персонал соответствующей квалификации. Из сказанного следует, что не каждое ремонтопригодное изделие является восстанавливаемым. Более того, одно и то же изделие в различных ситуациях может быть либо восстанавливаемым, либо невосстанавливаемым. С другой стороны, не каждое восстанавливаемое изделие ремонтопригодно. Примером может служить изделие, в котором отказ возникает вследствие резкого ухудшения условий функционирования. Его работоспособность восстанавливается без вмешательства персонала сразу же после возвращения к нормальным условиям функционирования. Работоспособность может восстанавливаться и путем реконфигурации технических и программных средств без проведения ремонта или замены отказавшего модуля. Время, затрачиваемое на восстановление работоспособности объекта, называют временем восстановления. Оно состоит из времени обнаружения отказа, времени его локализации, времени устранения отказа путем ремонта или замены неисправной части на запасную, времени наладки и предпусковой проверки работоспособности. Время устранения отказа, кроме времени собственно ремонта или замены, включает в себя время доставки отказавшего модуля или прибора с места эксплуатации до ремонтной базы и обратно и время ожидания (в случае ремонта) либо время доставки запасной части со склада к месту эксплуатации (в случае замены). Совокупность ремонтного персонала, контрольно-измерительной аппаратуры, средств технической диагностики и наладки, запасного имущества и принадлежностей (ЗИП), испытательного и вспомогательного оборудования, необходимых для восстановления работоспособности, называют ремонтным органом. Часть ремонтного органа, необходимая для восстановления работоспособности одного модуля или блока, называют ремонтной бригадой, или восстанавливающим (обслуживающим) прибором. Последний термин заимствован из теории массового обслуживания, используемой для решения задач оценки надежности. Таким образом, для характеристики ремонтного органа необходимо знать не только производительность бригад, но и их количество. Сохраняемость -- это свойство объекта сохранять в заданных пределах значения параметров, характеризующих способность объекта выполнять требуемые функции в течение и после хранения и/или транспортирования. Сохраняемость характеризует поведение объекта в условиях, весьма существенно отличающихся от условий эксплуатации. Прежде всего во время хранения и транспортирования объект находится в выключенном состоянии. Кроме того, есть различия в температуре окружающей среды, влажности, других климатических условиях, механических нагрузках. Долговечность -- это свойство объекта сохранять работоспособное состояние до наступления предельного состояния при установленной системе технического обслуживания и ремонта. Предельное состояние -- это такое состояние объекта, при котором его дальнейшая эксплуатация недопустима или нецелесообразна либо восстановление его работоспособного состояния невозможно или нецелесообразно. Предельное состояние возникает вследствие старения, износа или существенного снижения эффективности применения объекта. В технической документации обычно указывают, какое состояние объекта следует считать предельным.

2 Качество и надежность программного обеспечения

2.1 Основные причины отказов программного обеспечения

Основными причинами, вызывающими нарушения нормального функционирования ПО, являются:

- ошибки, скрытые в самой программе;

- искажение входной информации;

- неверные действия пользователя;

-неисправность аппаратных средств ИС, на которой реализуется вычислительный процесс.

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

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

Логические ошибки. Эта группа ошибок является причиной искажения алгоритма решения задачи. К ошибкам подобного рода можно отнести неверную передачу управления, неверное задание диапазона изменения параметра цикла, неверное условие и другие ошибки.

Ошибки ввода-вывода. Эти ошибки связаны с неправильным управлением ввода-вывода, формированием выходных записей, определением размера записей и другими неправильно свершенными действиями. Ошибки манипулирования данными. К числу таких ошибок относятся: неверное определение числа элементов данных; неверные начальные значения, присвоенные данным; неверное указание длины операнда или имени переменной и другие ошибки.

Ошибки совместимости связаны с отсутствием совместимости разрабатываемого или применяемого ПО с операционной системой или другими прикладными программами.

Ошибки сопряжений. группа этих ошибок вызывает неверное взаимодействие ПО с другими программами или подпрограммами, с системными программами, устройствами ЭВМ или входными данными.

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

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

Неисправность аппаратных средств ИС. Эти неисправности оказывают определенное влияние на характеристики надежности ПО. Появление отказов или сбои в работе аппаратуры приводят к нарушению хода обработки информации и, как следствие, могут искажать как исходные данные, так и саму программу.

Следствием появления ошибок в программе является ее отказ. Последствия отказов ПО можно разделить на:

- полное прекращение выполнения функций программы;

- кратковременное нарушение хода обработки информации в ИС.

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

2.2 Методы программного восстановления

Выбор метода оперативного восстановления происходит в условиях неопределенности сведений о характере отказовой ситуации и степени ее влияния на работоспособность программ.

Каждый метод восстановления характеризуется следующими статическими параметрами:

· Вероятность полного восстановления нормального функционирования комплекса программ при данном методе (p3)

· затратами ресурсов ЭВМ на проведение процедуры восстановительных работ выбранным методом (b3)

· длительностью проведения работ по восстановлению - суммарным временем выбора метода восстановления и временем его реализации(t3)

Показатели восстановления p3 и t3 непосредственно влияют на показатели надежности функционирования комплекса программ. Если операции по восстановлению работоспособности комплекса программ при отказовой ситуации полностью завершаются за время меньше t3 и после этого продолжается нормальное функционирование, то происшедшее искажение в работе программ не учитывается как отказ и не влияет на основные показатели надежности. Процесс функционирования комплекса программ на однопроцессорной ЭВМ в реальном масштабе времени с учетом операций контроля и восстановления можно представить графом состояний дуги которого соответствуют возможным переходам между состояниями за некоторый интервал времени.

Основные состояния следующие:

1. состояние соответствует нормальному функционированию работоспособного комплекса программ при полном отсутствии искажений - полезная работа

2. состояние имеет место при переходе комплекса программ в режим контроля функционирования и обнаружения ошибок - состояние контроля

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

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

5. состояние соответствует также восстановлению режима полезной работы но после ложного обнаружения проявления искажения когда в действительности состояние полезной работы не нарушалось - восстановление после ложной тревоги

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

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

2.3 Основные показатели надежности программного обеспечения

Если рассматривать отказавшее ПО без учета его восстановления, а также случайный характер отказов в программах, то основные показатели надежности в этом случае не отличаются от тех, которые были рассмотрены. При этом характер изменения этих показателей во времени будет зависеть от модели надежности ПО. Таким образом, основными показателями надежности ПО являются:

- вероятность безотказной работы программы p(t) , представляющая собой вероятность того, что ошибки программы не проявятся в интервале времени (0, t);

- вероятность отказа программы q(t) или вероятность события отказа ПО до момента времени t ;

- интенсивность отказов программы l(t) ;

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

В связи с такими предположениями рассматривается несколько моделей надежности ПО: модель с дискретно-понижающей частотой появления ошибок, модель с дискретным увеличением наработки на отказ или ошибку ПО, экспоненциальная модель надежности ПО.

2.4 Методы испытаний программ на надежность

В теории надежности разработан ряд методов позволяющих определить характеристики надежности сложных систем. Эти методы можно свести к трем основным группам

· прямые экспериментальные методы определения показателей надежности систем в условиях нормального функционирования;

· форсированные методы испытаний реальных систем на надежность;

· расчетно-экспериментальные методы при использовании которых ряд исходных данных для компонент получается экспериментально а окончательные показатели надежности систем надежности рассчитываются с использованием этих данных ;

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

Форсированные методы испытаний надежности программ значительно отличаются от традиционных методов испытаний аппаратуры. Форсирование испытаний может выполняться путем повышения интенсивности искажений исходных данных, а также специальным увеличением загрузки комплекса программ выше нормальной.

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

Расчетно-экспериментальные методы. При анализе надежности программ применение расчетно-экспериментальных методов более ограничено чем при анализе аппаратуры. Это обусловлено неоднородностью надежностных характеристик основных компонент программных модулей групп программ массивов данных и т.д. Однако в некоторых случаях расчетным путем можно оценить характеристики надежности комплексов программ. Сочетание экспериментальных и аналитических методов применяется также для определения пропускной способности комплекса программ на конкретной ЭВМ и влияние перегрузки на надежность его функционирования.

2.5 Подход к повышению надежности программного обеспечения

Одним из вариантов решения обозначенной проблемы является предоставление пользователям возможности работать с информационной системой еще на ранних этапах создания, задолго до завершения разработки. Это становится возможным при применении технологии, основанных на языке разметки XML (eXtensible Markup Language) в совокупности со средой разработки Microsoft Visual Studio.NET для определения структуры данных предметной области, и автоматического формирования логической и физической структуры базы данных, а также - бизнес-логики приложения. Чаще всего, приложения баз данных ( а именно таковыми являются большинство современных медицинских информационных систем), состоят из нескольких частей: непосредственно базы данных, бизнес-логики приложения (базы данных) и интерфейса пользователя. Соответственно, при изменении некоторых спецификаций ПО, например, при добавлении группы полей в какую-либо программную форму, необходимо вносить изменения на всех трех уровнях: в базу данных, бизнес-логику и интерфейс. При помощи технологии, основанной на XML, разработчик меняет только XML-схему (описание структуры данных согласно стандартам XML), а изменения в структуре базы данных и бизнес-логике приложения происходят автоматически. Также упрощается процесс формирования пользовательского интерфейса за счет применения технологии Data Binding. Использование на практике указанных технологий помогает разработчику предоставить пользователям достаточно функциональный и в то же время гибкий с точки зрения внесения изменений макет ПО, посредством которого можно на практике проверять соответствие спецификаций требованиям конечных пользователей. В процессе использования такого макета выявляются противоречия в спецификациях, и у разработчиков появляется возможность создания программного продукта, максимально удовлетворяющего требованиям конечных пользователей, в данном случае - врачей. Таким образом, за счет применения технологии XML для итеративного описания структуры слабо формализованных данных, можно добиться определенного повышения надежности как программного обеспечения в частности, так и технических систем в целом.

2.6 Методы обеспечения надежности комплексов программ при сопровождении

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

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

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

Заключение

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

Список литературы

1. Липаев В.В. Надежность программных средств.- М.: Синтег, 1998.

2. Черкесов Г.Н. Надежность аппаратно-программных комплексов. М., 2005.

3. http://ru.wikipedia.org


Подобные документы

  • Ошибки, которые воздействуют на программное обеспечение и методы прогнозирования программных отказов. Анализ моделей надежности программного обеспечения и методика оценки ее надежности. Экспоненциальное распределение. Методика оценки безотказности.

    курсовая работа [71,5 K], добавлен 15.12.2013

  • Действия, которые выполняются при проектировании АИС. Кластерные технологии, их виды. Методы расчета надежности на разных этапах проектирования информационных систем. Расчет надежности с резервированием. Испытания программного обеспечения на надежность.

    курсовая работа [913,7 K], добавлен 02.07.2013

  • Надежность системы управления как совокупность надежности технических средств, вычислительной машины, программного обеспечения и персонала. Расчет надежности технических систем, виды отказов САУ и ТСА, повышение надежности и причины отказов САУ.

    курс лекций [228,2 K], добавлен 27.05.2008

  • Постановка проблемы надежности программного обеспечения и причины ее возникновения. Характеристики надежности аппаратуры. Компьютерная программа как объект исследования, ее надежность и правильность. Модель последовательности испытаний Бернулли.

    реферат [24,8 K], добавлен 21.12.2010

  • Программное обеспечение как продукт. Основные характеристик качества программного средства. Основные понятия и показатели надежности программных средств. Дестабилизирующие факторы и методы обеспечения надежности функционирования программных средств.

    лекция [370,1 K], добавлен 22.03.2014

  • Запросы клиента по области возможных запросов к серверу. Программа для прогнозирования поведения надежности программного обеспечения на основе метода Монте-Карло. Влияние количества программ-клиентов на поведение программной системы клиент-сервера.

    контрольная работа [705,3 K], добавлен 03.12.2010

  • Особенности аналитической и эмпирической моделей надежности программных средств. Проектирование алгоритма тестирования и разработка программы для определения надежности ПО моделями Шумана, Миллса, Липова, с использованием языка C# и VisualStudio 2013.

    курсовая работа [811,5 K], добавлен 29.06.2014

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

    презентация [151,1 K], добавлен 22.03.2014

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

    дипломная работа [1,7 M], добавлен 27.02.2015

  • Возможности среды программирования delphi при разработке приложения с визуальным интерфейсом. Отладка программных модулей с использованием специализированных программных средств. Тестирование программного обеспечения. Оптимизация программного кода.

    курсовая работа [974,0 K], добавлен 21.12.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.