Требования по надежности

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

Можно выделить два основных аспекта надежности:

· Наличие в готовом программном продукте ошибок

· Готовность программного продукта к могущим возникнуть исключительным (нештатным) ситуациям

Первый аспект в свою очередь можно разделить на два:

· Ошибки возникающие на этапе проектирования ПП

· Ошибки возникающие на этапе кодирования

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

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

Второй аспект подразделяется на:

· непредусмотренных действий пользователя;

· недопустимых сочетаний исходных данных;

· влияние операционного окружения.

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

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

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

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

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

· Использование средств разработки с встроенным контролем качества написанного программного кода и средств отладки программного кода;

· Использование эталонных тестовых вариантов;

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

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

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

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: