Оценка надежности программного обеспечения посредством применения функционального подхода

Характеристика моделей оценки надежности программного обеспечения. Анализ подхода к оценке надежности программ на основании совокупного достижения надежности каждого функционального блока. Описание алгоритма оценки надежности программного обеспечения.

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

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

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

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

Оценка надежности программного обеспечения посредством применения функционального подхода

Г.С. Степович-Цветкова

Ивановский государственный университет

Аннотация

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

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

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

Теория надежности первоначально зародилась применительно к техническим наукам, и понятие надежности характеризовалось как свойство объекта выполнять заданные функции, сохраняя во времени значения установленных эксплуатационных показателей в заданных пределах. Кроме центрального понятия надежности теория технической надежности оперирует такими ключевыми понятиями как отказ, безотказность и сбой (ГОСТ 27002-89 Надежность в технике. Основные понятия. Термины и определения). Названные характеристики могут быть в той или иной степени трансформированы применительно к теории надежности компьютерных программ, в которой понятие надежности выражается в наборе атрибутов, относящихся к способности программного обеспечения сохранять свой уровень качества функционирования при установленных условиях за установленный период времени (ГОСТ Р ИСО/МЭК 9126-93 Информационная технология. Оценка программной продукции. Характеристики качества и руководства по их применению) [1-3].

Для обеспечения и оценки надежности программных продуктов существуют различные методы, соответствующие разработанным моделям надежности программного обеспечения, таких как модель Миллса, модель роста надежности, модель Шумана и другие. Данные методы предусмотрены, главным образом, для оценки надежности компьютерной программы в целом [4-8]. Однако, на наш взгляд, целесообразно произвести выделение в программе отдельных функциональных блоков и оценку надежности осуществлять по блокам. Тогда надежность программы в целом будет определяться надежностью ее функциональных блоков - структурированных совокупностей логически связанных команд, направленных на обеспечение выполнения строго определенного круга задач одного характера. Для многих программных продуктов характерно присутствие, например, таких функциональных блоков, как блок ввода исходных данных, блок вывода результирующей информации, блок объявления и определения пользовательских типов данных, блок обработки информации, подпрограммы, процедуры и функции и прочие.

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

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

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

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

,

где n - количество выделенных функциональных блоков в программе, Ni - показатель надежности функционирования i-ого блока, а N - интегральный показатель надежности программного обеспечения. При этом оценка Ni должна производиться исходя из вероятностей возникновения каждого выделенного вида отказа в блоке:

,

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

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

Литература

1. Майерс Г. Надёжность программного обеспечения. М. : Мир, 1980. 360 с.

2. Липаев В.В. Надёжность программных средств. М. : СИНТЕГ, 1998. 232 с.

3. Pan J. Software Reliability // Carnegie Mellon University. Dependable Embedded Systems. 1999. URL: users.ece.cmu.edu/~koopman/des_s99/sw_reliability/

4. Павловская О.О. Статические методы оценки надежности программного обеспечения // Вестник Южно-Уральского государственного университета. Серия: Компьютерные технологии, управление, радиоэлектроника. 2009. №26 (159). С. 35-37.

5. Чернов А.В, Паращенко И.Г. Классификация моделей надежности программного обеспечения // Инженерный вестник Дона. 2012. №4. Ч.2. URL: ivdon.ru/ru/magazine/archive/n4p2y2012/1319

6. Василенко Н.В., Макаров В.А. Модели оценки надежности программного обеспечения // Вестник Новгородского государственного университета. 2004. №28. С. 126-132.

7. Москат Н.А., Станкевич Е.А. Показатели качества информационно-вычислительных систем железнодорожного транспорта // Инженерный вестник Дона. 2013. №3. URL: ivdon.ru/ru/magazine/archive/n3y2013/1789

8. Trachtenberg M. Discovering How to Ensure Software Reliability // RCA Engineer. Jan/Feb. 1982. Pp. 53-57.

9. Карпов В.С., Ивутин А.Н., Суслин А.А. Подход к реализации методики оценки надежности ПО на основе комплексных метрик // Известия ТулГУ. Технические науки. 2009. №4. Ч.1. С. 116-125.

10. Ивутин А.Н., Суслин А.А. О некоторых применениях статистических распределений в оценке надежности программного обеспечения // Известия ТулГУ. Технические науки. 2011. №2. С. 568-575.

References

1. Mayers G. Nadezhnost' programmnogo obespecheniya [Software reliability]. M. : Mir, 1980. 360 p.

2. Lipaev V.V. Nadezhnost' programmnykh sredstv [Software reliability]. M. : SINTEG, 1998. 232 p.

3. Pan J. Software Reliability. Carnegie Mellon University. Dependable Embedded Systems. 1999. URL: users.ece.cmu.edu/~koopman/des_s99/sw_reliability/

4. Pavlovskaya O.O. Vestnik Yuzhno-Ural'skogo gosudarstvennogo universiteta. Seriya: Komp'yuternye tekhnologii, upravlenie, radioelektronika. 2009. №26 (159). Pp. 35-37.

5. Chernov A.V, Parashchenko I.G. Inћenernyj vestnik Dona (Rus), 2012. №4. Ch.2. URL: ivdon.ru/ru/magazine/archive/n4p2y2012/1319

6. Vasilenko N.V., Makarov V.A. Vestnik Novgorodskogo gosudarstvennogo universiteta. 2004. №28. Pp. 126-132.

7. Moskat N.A., Stankevich E.A. Inћenernyj vestnik Dona (Rus), 2013. №3. URL: ivdon.ru/ru/magazine/archive/n3y2013/1789

8. Trachtenberg M. RCA Engineer. Jan/Feb. 1982. pp. 53-57.

9. Karpov V.S., Ivutin A.N., Suslin A.A. Izvestiya TulGU. Tekhnicheskie nauki. 2009. №4. Ch.1. pp. 116-125.

10. Ivutin A.N., Suslin A.A. Izvestiya TulGU. Tekhnicheskie nauki. 2011. №2. pp. 568-575.

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


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

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

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

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

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

  • Запросы клиента по области возможных запросов к серверу. Программа для прогнозирования поведения надежности программного обеспечения на основе метода Монте-Карло. Влияние количества программ-клиентов на поведение программной системы клиент-сервера.

    контрольная работа [705,3 K], добавлен 03.12.2010

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

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

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

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

  • Постановка проблемы надежности программного обеспечения и причины ее возникновения. Характеристики надежности аппаратуры. Компьютерная программа как объект исследования, ее надежность и правильность. Модель последовательности испытаний Бернулли.

    реферат [24,8 K], добавлен 21.12.2010

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

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

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

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

  • Описание моделируемой системы обеспечения надежности АСУ ТП: генерирования заявок, образование очереди перед каналом обработки данных, выполнение заказов. Составление укрупненной схемы моделирующего алгоритма, блок-диаграммы и программы на языке GPSS.

    курсовая работа [342,8 K], добавлен 02.07.2011

  • Точные и приближенные методы анализа структурной надежности. Критерии оценки структурной надежности методом статистического моделирования. Разработка алгоритма и программы расчета структурной надежности. Методические указания по работе с программой.

    дипломная работа [857,8 K], добавлен 17.11.2010

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