Методы обеспечения надежности комплексов программ. Сертификация программных средств

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

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

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

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

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Министерство Образования и Науки Российской Федерации

Сочинский Институт Экономики и Информационных Технологий

Кафедра Прикладной Информатики

Контрольная Работа

По дисциплине: «Проектирование программного обеспечения»

На тему: Методы обеспечения надежности комплексов программ. Сертификация ПС.

Выполнила: ст. IV курса специальности ПИ

гр. ПИ-217 Кравченко Е.В.

Проверил: Ст. преподаватель

Коваленко В.В.

Сочи 2011г.

Содержание

Введение

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

1.1 Основные факторы, определяющие надежность программ

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

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

2. Сертификация для обеспечения надежности программных средств

2.1 Цели и виды сертификационных испытаний программ

2.2 Обязательная сертификация

2.3 Добровольная сертификация

Заключение

Введение

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

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

надежность комплекс программа сертификация

1.1 Основные факторы, определяющие надежность программ

Надежность функционирования комплексов программ зависит от многих факторов, которые можно объединить в три группы (табл. 5.1):

Таблица 5.1 Основные факторы, определяющие надежность программ, и методы повышения надежности

Факторы, непосредственно определяющие надежность программ

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

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

Особенности внешних абонентов и пользователей результатов исполнения программ

Требования к показателям надежности

Инерционность внешних абонентов

Необходимое время отклика на входные данные

Искажения исходных данных

Искажения данных, поступающих от человека

Искажения данных, поступающих по телекодовым каналам связи

Искажения данных в процессе накопления и хранения в ЭВМ

Ошибки в программах и их проявление

Статистические характеристики ошибок и искажений:

программ;

массивов данных;

вычислительного процесса

Структурное проектирование программ и данных

Структурное проектирование программных модулей

Структурное проектирование взаимодействия модулей

Структурирование данных

Тестирование программ

Детерминированное тестирование

Статистическое тестирование

Динамическое тестирование и контроль пропускной способности в реальном времени

Методы использования избыточности:

временной;

информационной;

программной

Методы контроля программ данных и вычислительного процесса

Предпусковой контроль

Оперативный контроль

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

Восстановление текстов программ

Исправления данных

Корректировка вычислительного процесса

Методы испытаний на надежность

Испытания в нормальных условиях эксплуатации

Форсированные испытания

Расчетно-экспериментальные методы определения надежности

Методы обеспечения надежности при сопровождении

Обеспечение сохранности программ эталонных версий

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

факторы, непосредственно определяющие возникновение отказов, и характеристики надежности программ;

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

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

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

Отказы и отказовые ситуации при исполнении программ возникают вследствие искажений исходных данных или их отклонений от значений, использовавшихся при тестировании и отладке программ. Характеристики искажений существенно зависят от источников входных данных. Наиболее трудно контролировать символьные данные, поступающие непосредственно от человека-оператора, которые обычно характеризуются относительно невысокой достоверностью, (вероятность ошибки ~ 10-3 - 10-4 на символ) [37]. Данные, поступающие от автоматических измерительных устройств или от автоматизированных систем обработки информации по телекодовым каналам связи, могут иметь меньшую вероятность ошибки ~ 10-5 -- 10-6, а в некоторых особых случаях ~ 10-8. Поток таких данных может значительно (на 3--4 порядка) превышать поток данных непосредственного от человека-оператора, вследствие чего искаженные сообщения в обоих случаях оказывают заметное влияние на показатели надежности программ. На надежность программ влияют также искажения обрабатываемых данных в процессе их накопления и хранения в ЭВМ, которые зависят от особенностей конкретной ЭВМ, реализующей исполнение программ, а также от ошибок в программах.

Отказы при функционировании программ возникают вследствие взаимодействия данных и ошибок в программе. Характеристики ошибок (см. п. 4.2) в значительной степени определяются методами проектирования программ. Для предотвращения и облегчения обнаружения ошибок применяются методы структурного проектирования программки данных. Активные, методы обнаружения и локализации программных ошибок базируются на тестировании различных видов: детерминированном, статистическом и динамическом (см. п. 4.4 и 4.5). Однако все виды тестирования не гарантируют отсутствие ошибок в комплексах программ и высокую надежность. Для определения характеристик функционирования комплексов программ необходимо осуществлять контроль их функционирования и оперативно выявлять отказовые ситуации. Для этого применяются методы контроля и обеспечения надежности программ путем использования программной, временной и информационной избыточности.

Программные ошибки могут по-разному проявляться и в различной степени искажать программы, данные или вычислительный процесс. Ситуации проявления ошибок при исполнении программ можно разделить на три группы [47, 20]:

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

системы, мало искажающие накопленные данные и выдаваемые результаты - отказовые ситуации или сбои, в некоторой степени, обесценивающие предыдущие результаты, однако характеризующиеся быстрым восстановлением без длительной потери работоспособности;

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

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

зацикливание, т. е. последовательная повторяющаяся реализация некоторой группы команд, не прекращающаяся без внешнего (для данного цикла) вмешательства;

останов исполнения программ и прекращение решения функциональных задач;

полная самоблокировка вычислительного процесса (клинч) из-за последовательного перекрестного обращения разных программ к одним и тем же ресурсам ЭВМ без освобождения ранее занятых ресурсов;

превращение или значительное снижение темпа решения некоторых задач вследствие перегрузки ЭВМ по пропускной способности;

значительное искажение или полная потеря накопленной информации о текущем состоянии управляемого процесса или внешних абонентов;

искажение процессов взаимного прерывания программ, приводящее к блокировке возможности некоторых типов прерывании.

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

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

пропуск модулей программ или их существенных частей;

выход на программные модули или их части, значительно искажающие результаты;

обработка ложных или сильно искаженных сообщений.

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

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

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

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

1. в не рабочем режиме системы управления или обработки информации при выполнении регламентных профилактических работ (профилактический контроль);

2. при подготовке к включению нормального рабочего режима функционирования комплекса программ (предпусковой контроль);

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

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

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

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

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

Методы оперативного контроля можно разделить на следующие группы:

методы контроля состояния и сохранности программ в раз личных видах памяти ЭВМ:

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

методы контроля состояния и изменения данных в памяти ЭВМ.

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

Каждая контрольная процедура, направленная на обнаружение искажения данных или вычислительного процесса, связана с определенными затратами на ее проведение (см. п 2.2). Кроме того, средства контроля всегда характеризуются некоторой достоверностью и вероятностью ложного обнаружения искажения. В результате процесс контроля и оперативного обнаружения отказовых ситуаций можно характеризовать следующими факторами [35]:

вероятностью обнаружения искажения и отказовой ситуации при одной процедуре контроля (p2);

затратами на проведение одной процедуры контроля (b1);

длительностью проведения одной процедуры контроля (t1);

интервалом времени между последовательными процедурами контроля (t');

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

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

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

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

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

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

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

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

Ряд разработанных и испытанных комплексов программ может функционировать и эксплуатироваться в течение 10--20 лет. Экспериментально установить надежность хранения программ на таком интервале невозможно. Консервируемые комплексы программ имеют эталонную версию магнитных носителей (диски, ленты.) и несколько копий, которые периодически контролируются, сопоставляются и восстанавливаются. Экспериментально определяется вероятность разрушения программ на одной копии в течение относительно небольшого времени (неделя, месяц) между последовательными фазами контроля этим данным могут быть рассчитаны количество необходимых копий и период их контроля и восстановления, гарантирующие заданную вероятность сохранения программ в течение установленного времени «жизни» всего комплекса. Таким образом, все типовые методы испытаний для определения показателей надежности с некоторыми особенностями применимы при испытаниях надежности комплексов программ.

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

После завершения испытаний и сдачи комплекса программ заказчику он может тиражироваться и эксплуатироваться 10--20 лет. 33 этой части жизненного цикла программ расширяются условия их использования и характеристики исходных данных, вследствие чего могут потребоваться изменения в программах. Кроме того, возможны искажения программ в процессе их хранения и регулярной эксплуатации. Эти факторы способны значительно изменять достигнутые показатели надежности. Достаточно одной, нетщательно проверенной корректировки в программе для того, чтобы снизить характеристики наработки, но отказ всего комплекса на один - два порядка.

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

2. Сертификация для обеспечения надежности программных средств

2.1 Цели и виды сертификационных испытаний программ

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

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

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

2.2 Обязательная сертификация

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

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

2.3 Добровольная сертификация

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

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

Наиболее общие исходные данные сосредоточены в стандартах, посвященных непосредственно сертификации, аттестации, тестированию, испытаниям, документированию и обеспечению качества различных изделий и в частности компонент программных средств [11,27]. Конкретные нормативные документы должны создаваться в соответствии со стандартами и содержать методики организации и проведения испытаний, а также контролируемые характеристики сертифицируемых объектов. Эти документы должны отражать все сведения, необходимые для корректного применения ПС по прямому назначению с показателями качества и надежности, гарантированными сертификатом соответствия.

Решение о выдаче сертификата на ПС основывается на оценке степени его соответствия действующим и/или специально разработанным документам:

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

- международным и государственным стандартам на технологию создания компонент ПС, языки программирования, их синтаксическим, семантическим и лексическим требованиям;

- стандартам на сопровождающую ПС документацию с учетом необходимости и достаточности номенклатуры документов, семантической полноты и однозначности понимания содержания документов;

- нормативным документам - техническим условиям, техническим описаниям, спецификациям требований и другим регламентирующим и эксплутационным документам на ПС по выбору заказчика, разработчика и испытателя [6,19,47]

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

- критерии и четко определенные значения показателей качества, которые должны быть достигнуты для выдачи в последующем сертификата соответствия;

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

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

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

- генерация пользовательской версии ПС и установка ее на аппаратуре пользователя;

- контроль работоспособности программ и функциональный контроль всего ПС перед включением рабочего режима;

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

- аварийные и критические (стрессовых) маловероятные ситуации, при которых должна сохраняться работоспособность программ;

- диагностика компонент программ и аппаратуры, поиска неисправностей или источника искажений;

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

Заключение

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

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

Размещено на Allbest.ru


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

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

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

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

    презентация [379,5 K], добавлен 30.04.2014

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

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

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

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

  • Этапы тестирования при испытаниях надежности программных средств. Комплексирование модулей и отладка автономных групп программ в статике без взаимодействия с другими компонентами. Испытания главного конструктора. Жизненный цикл программного средства.

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

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

    дипломная работа [280,5 K], добавлен 03.11.2013

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

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

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

    лекция [352,8 K], добавлен 09.03.2009

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

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

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

    презентация [220,5 K], добавлен 16.10.2013

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