Показатели качества этапа эксплуатации программных систем

В процессе эксплуатации ПС важнейшим конструктивным показателем является функциональная сложность (рис.13). В табл.3 сложность ПС при эксплуатации характеризуют п.п. 4-8. Сложность функционирования программ и получения результатов часто называют динамической сложностью. Ее целесообразно анализировать на базе двух специфических компонент: вычислительная сложность ПС и сложность подготовки анализа данных (рис.16).

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


 

 

 


Рис.16.Виды сложности эксплуатации.


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

Следует сделать следующее дополнение, которое касается временной сложности. Так как вычислительная сложность в наибольшей степени определяется алгоритмом решения задачи, а не реализующей его программой, то следует говорить о вычислительной сложности алгоритма. Поэтому по вычислительной сложности алгоритмы делятся на “хорошие” и “плохие”. К “хорошим” относятся алгоритмы, для которых скорость роста времени вычисления от размерности исходных данных пропорциональна nc, где c=const, c>1, а к “плохим” относятся алгоритмы, для которых скорость роста времени вычислений пропорциональна cn или еще больше.

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

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

Надежность функционирования ПС зависит от многих факторов, которые можно объединить в четыре группы:

1) факторы, непосредственно определяющие возникновение отказов – это искажение исходных данных, ошибки в программах, массивах данных, организации вычислительного процесса;

2) характеристики надежности программ: необходимое время отклика на исходные данные, инерционность пользователей, требования к показателям надежности;

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

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

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

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

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

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

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

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

2) диагностирования обнаруженных аномалий;

3) выбора методов и средств оперативного восстановления;

4) оперативного восстановления нормальной работы;

5) регистрации и обобщения сбоев или отказов для выявления систематических случаев, требующих доработки ПС.

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

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

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