2.9.4 Диагностика функционирования комплексов программ
Для определения надежности любых систем необходимо проводить регулярный или эпизодический диагноз их состояния. Теория, принципы построения средств и методы организации процесса диагноза систем развиваются в технической диагностике. Их применение для анализа технического состояния комплексов программ имеет ряд особенностей. Основные задачи технической диагностики включают в себя:
· проверку исправности системы, т.е. установления факта отсутствия неисправностей и полного соответствия технической документации;
· проверку работоспособности системы и возможности выполнения всех функций с характеристиками, заданными технической документацией;
· проверку правильности функционирования в данном режиме работы в данный момент времени;
· поиск и локализацию неисправностей в системе.
Объем и последовательность проверок, а также методы анализа результатов определяются алгоритмами диагноза. Основная задача диагноза состоит в определении текущего состояния системы, как работоспособного так и неработоспособного, для выполнения функций, определенных технической документацией. Выбор алгоритма зависит от сложности системы и ресурсов, выделенных на диагностику.
Диагноз состояния систем можно разделить на тестовый и функциональный. При тестовом диагнозе используются специально подготовленные данные и контрольные результаты, которые позволяют проверить работоспособность определенных компонент системы. При тестовом диагнозе необходимы значительные ресурсы для подготовки исходных данных и проверки результатов, что ограничивает его применение в рабочих режимах.
Функциональный диагноз организуется на базе реальных исходных данных, поступающих в систему при ее использовании по прямому назначению. Путем анализа выходных данных, соответствующих рабочему функционированию, выявляются ситуации неработоспособного состояния. В процессе рабочего функционирования расширяются характеристики исходных данных, однако затрудняется достоверный контроль правильности выходных результатов и их соответствия входным. Функциональный диагноз связан с целевым назначением и спецификой использования конкретной системы, что затрудняет обобщение и упорядочение методов.
При тестовом диагнозе различаются прямая и обратная задачи.
2.9.5 Основные факторы, влияющие на надежность функционирования комплексов программ
Одни и те же типы сбоев и отказов при исполнении комплексов программ могут быть вызваны различными факторами, которые можно разделить на 3 группы.
В первую группу входят факторы, непосредственно вызывающие сбой или отказ при исполнении программы, причинами которых могут быть:
· искажения исходной информации, поступающей от внешних абонентов;
· самоустраняющиеся отказы или сбои в аппаратуре вычислительной системы;
· невыявленные ошибки в комплексе программ.
Ко второй группе факторов относятся архитектура комплекса программ и структурное построение его компонент. Структура программ определяет возможность расширения последствий искажений информации или вычислительного процесса, влияет на вероятность превращения искажения в отказ и на время восстановления после отказа.
Третья группа факторов влияет на длительность восстановления и глубину последствий от возникающих отказов. В эту группу входят факторы, определяющие качество контроля вычислительного процесса и обрабатываемых данных, запаздывание в обнаружении искажений, качество классификации искажений и длительность проявления их последствий. Они определяют прежде всего длительность восстановления, время наработки на отказ и способствуют быстрой локализации искажений.
Искажения исходной информации в большинстве случаев непосредственно не влияют на надежность исполнения программ. Искаженные данные могут обрабатываться и являться причиной ошибок в результатах, выдаваемых внешним абонентом или накапливаемых в памяти ВС. Однако, некоторые искажения выходят за область допустимых значений переменных. При этом возрастает вероятность того, что искаженная величина будет обрабатываться некоторым сочетанием команд, приводящим к отказу либо к сбою функционирования. Причины искажения данных, поступающих от внешних абонентов, могут быть различны, и подробно останавливаться на их рассмотрении в теме данного дипломного проекта нет необходимости.
Для некоторых типов систем значительная часть информации является символьной, описывающей логически связанные тексты, либо содержащей десятичные цифры. Стандартное кодирование таких чисел производится в пределах 1 байта на символ.
Таким образом, исходные данные преимущественно имеют объем, кратный целому числу байт. Во многих вычислительных системах интерфейс с внешними абонентами, как и процесс обработки информации, построен на байтовой структурной основе. Поэтому для оценки показателей достоверности исходной информации для комплексов программ в качестве наиболее целесообразной единицы следует выбрать вероятность искажения 1 байт.
На надежность функционирования программного обеспечения влияет структура и технология разработки комплексов программ. В зависимости от структурного построения комплекса программ последствия ошибки могут быть локализованы в некотором небольшом участке программ и данных либо распространиться на значительно большое расстояние от места расположения ошибки. Строгое иерархическое построение крупных комплексов программ на базе единообразно оформленных законченных программных модулей обеспечивает снижение вероятности ошибки в каждой команде программы и снижает возможность распространения последствий ошибок за пределы программного модуля и используемых в нем массивов данных.
2.10 Разработка программной документацииПервым из документов, которые должны выпускаться в процессе проектирования, являются исходные требования к системе, согласованные между будущими пользователями и системным аналитиком. Многие части документации не имеют непосредственного отношения к программистам. В нее входят инструкции для персонала, занимающегося подготовкой входных данных, описания процедур контроля для управляющего персонала, описания тестовых процедур, а также рабочие инструкции для операторов.
В ходе проектирования выпускается документация двух типов – рабочая и отчетная. При разработке сложных проектов часто приходится выделять специального человека – секретаря проекта, который занимается оформлением документов и сбором рабочей документации. Любой программист вспомнит немало случаев, когда он выбрасывал распечатки старых вариантов программ, а впоследствии оказывалось, что без них не обойтись. Секретарь проекта как раз и занимается тем, сто подшивает все промежуточные распечатки, старые варианты блок-схем, спецификации, тестовые данные и т.п., и хранит до тех пор, пока не завершатся окончательные испытания системы. Некоторые из рабочих документов должны в дальнейшем войти в состав отчетной документации.
Проектная документация служит основным источником информации, на основании которой осуществляется разработка системы, ее эксплуатация и обслуживание.
Рис. 2.4. Системная документация
I. Требования к системе. Составление требований к системе не входит в задачу программистов. Они являются специалистами по программированию, а не по гражданскому строительству, банковскому делу, численным методам или в любых других прикладных областях. В то же время составление требований к системе не может быть поручено и одному лишь системному аналитику. Они должны вырабатываться в соответствии с официально оформленным договором между организацией-заказчиком и организацией-исполнителем и выражать содержание этого документа.
II. Проектная документация. Эта часть документации готовится системным аналитиком, который руководствуется сведениями, полученными от программистов и будущих пользователей.
A. Проект системы. К этим документам относится графические схемы задания и развернутые планы проекта, охватывающие структуру и основные детали программы.
B. Подготовка данных. Этот раздел охватывает все уровни организации данных, которые будут использоваться в программах, в том числе и справочники данных, описания файлов, таблицы ссылок и т.д.
C. Разработка программ. В этот раздел входят описания иерархической структуры программ в системе, потоков информации между программами и организации взаимодействия программ. Сюда же должна быть включена информация о внутреннем содержании программ, например описания алгоритмов, их блок-схемы или программы на псевдокоде.
III. Справочные пособия и руководства. Эти издания подготавливаются специалистами по технической документации, которые используют информацию, полученную от системного аналитика и программистов.
A. Руководство пользователя. В руководстве содержатся общее описание и подробные сведения о ее применении, разъясняются сообщения об ошибках.
B. Руководство по обслуживанию системы. В это руководство включаются отдельные разделы проектной документации и документы по реализации системы, необходимые для глубокого ознакомления с организацией данных и функциями программ.
C. Руководство оператора. В руководстве содержатся описание вычислительной установки и конфигурации устройств, а также инструкции по работе с программной системой
IV. Реализация системы. Данная часть документации отражает результаты действия группы программирования.
A. Символьный код. Это набор текстов самодокументированных программ, составленных в удобной для восприятия форме.
B. Информация, выдаваемая ЭВМ. Сюда входят таблицы перекрестных ссылок, карты загрузки, таблицы атрибутов, данные о времени выполнения программ и любая другая машинная информация.
C. Тестовые прогоны программ. В эту часть документации включаются контрольные варианты входных данных и соответствующие результаты, получаемые в различных условиях. Указанная информация служит в качестве тестовой при проверке функционирования системы.
Промежуточная документация должна храниться вплоть до завершения работы над системой.
После того, как проектирование системы закончено, единственное назначение документации – обеспечить максимальную эффективность использования системы. Комплект документации строится по модульному принципу, но ее отдельные части в значительной степени перекрываются друг с другом.
В данном разделе были рассмотрены вопросы разработки, отладки, тестирования и надежности программных продуктов. Было приведено обоснование необходимости и важности этапа отладки в процессе разработки программного обеспечения, даны краткие описания основных способов отладки и тестирования. Рассмотрены критерии надежности систем, основные факторы, влияющие на надежность функционирования комплексов программ, проведен анализ надежности программных продуктов. Кроме того, рассмотрен вопрос разработки программной документации, что является неотъемлемой частью разработки программного продукта.
... также невысока и обычно составляет около 100 кбайт/с. НКМЛ могут использовать локальные интерфейсы SCSI. Лекция 3. Программное обеспечение ПЭВМ 3.1 Общая характеристика и состав программного обеспечения 3.1.1 Состав и назначение программного обеспечения Процесс взаимодействия человека с компьютером организуется устройством управления в соответствии с той программой, которую пользователь ...
... первичной или первичной вместе со вторичной или только вторичной И. Если это - итог обработки информации, решения задачи, то такая информация называется результативной, результирующей. В процессе решения задач возникает промежуточная информация, которая часто в автоматизированных системах играет самостоятельную роль, определения направления путей завершения решения задачи. Результатная информация ...
еоценить значение МП и микроЭВМ при создании автоматизированных средств измерений, предназначенных для управления, исследования, контроля и испытаний сложных объектов. Развитие науки и техники требует постоянного совершенствования средств измерительной техники, роль которой неуклонно возрастает. Основные понятия и определения Понятия и определения, используемые в измерительной технике, ...
... питания, блока сопряжения с компьютером, компьютер, индикатор. Блок – схема радиоприемника представлена на рисунке.2.1. Рисунок 2.1 - Структурная схема дистанционного комплекса контроля функционального состояния 1 – приемник; 2 – дешифратора; 3 – детектора; 4 – усилителя; 5 – усилителя вертикального отклонения; 6 – электронно-лучевой трубки; 7 – задающего генератора ...
0 комментариев