Читаем Сертификация сложных технических систем полностью

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

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

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

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

• остановом или зацикливанием;

• принятием неправильных логических решений;

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

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

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

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

В ходе испытаний проверяются:

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

• временная диаграмма;

• заданная последовательность событий (выставка и повторная выставка общих управляющих флажков; выставка переменных в исходное положение);

• возобновление вычислений при прерываниях;

• возможность нежелательных режимов работы контуров с обратными связями;

• разделение функций, имеющих различные категории критичности.

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

• неправильный уровень обработки прерываний;

• неспособность программного модуля удовлетворить требования к времени выполнения вычислений;

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

• конфликтные ситуации в каналах передачи данных или при распределении ресурсов;

• отказ встроенного тест-контроля;

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

• отказ выполнить проверку в контрольной точке;

• ошибки в организации взаимодействия аппаратуры и программно-математического обеспечения;

• ошибки в технических требованиях к такому взаимодействию.

Для проведения проверки совместной работы аппаратуры и программно-математического обеспечения используются:

• моделирование в реальном масштабе времени;

• контроль степени использования центрального процессора;

• анализ отказных режимов работы (сбои, переходные процессы и отказы в аппаратуре);

• введение в аппаратуру отказов;

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

аппаратурного обеспечения состоит из:

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

Перейти на страницу:
Нет соединения с сервером, попробуйте зайти чуть позже