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

Об учете критичности дефектов при моделировании роста надежности программного обеспечения Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
246
57
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
НАДЕЖНОСТЬ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / МОДЕЛИРОВАНИЕ РОСТА НАДЕЖНОСТИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / КРИТИЧНОСТЬ ДЕФЕКТОВ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / SOFTWARE RELIABILITY-GROWTH MODELS / SOFTWARE RELIABILITY / DEFECT SEVERITY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Герасимов Владимир Александрович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Герасимов Владимир Александрович

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

About defect severity accounting during software reliability modeling

This article is about defect severity evaluation during software reliability modeling. The author provides a way to modify original reliabilitygrowth models to take into account severity of software defects.

Текст научной работы на тему «Об учете критичности дефектов при моделировании роста надежности программного обеспечения»

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011

цесс автоматизации эскизного проектирования изделий из ПМПиМП. Структурированные данные по изучению и анализу САПР для легкой промышленности и стадии разработки изделий будут использоваться в дальнейшей работе при проектировании всех видов обеспечения системы автоматизированного проектирования (программного, информационного, организационно-методического, лингвистического, правового, технического, эргономического) [5].

Библиографический список

1. Порев, В. Н. Компьютерная графика [Текст] / В. Н. По-рев. — СПб. : БХВ — Петербург, 2004. — 432 с.

2. Терская, Л. А Технология раскроя и пошива меховой одежды [Текст] : учеб. пособие для студ. высш. уч. заведений / Л. А. Терская. — М. : Изд. центр «Академия», 2005. — 272 с.

3. Салихова, Т. Ю. Обзор развития и совершенствования процесса 3Б — проектирования одежды в САПР [Текст] / Т. Ю. Салихова, И. В. Карцева, И. И. Шалмина // Научный потенциал высшей школы для инновационного развития общества. Форум «Омская школа дизайна» : сборник статей : VI Межд. науч.-прак. конф. : под ред. профессора Н. У. Казачуна. — Омск : ОГИС, 2008. - С. 61-64.

4. ГОСТ 34.003-90 Информационная технология. Комплекс стандартов на автоматизированные системы. Автоматизирован-

ные системы. Термины и определения [Текст]. — Введ. 1990 — 12 — 27. — М. : Изд-во стандартов, 1990. — 16 с.

5. РД 50-680-88 Методические указания. Автоматизированные системы. Основные положения [Текст]. — Введ. 1988 — 12 — 28. — М. : Изд-во стандартов, 1988. — 6 с.

САЛИХОВА Татьяна Юрьевна, аспирантка кафедры конструирования швейных изделий Омского государственного института сервиса.

КАРЦЕВА Ирина Владимировна, кандидат технических наук, доцент, заведующая кафедрой технологии швейных изделий и методики профессионального обучения Хакасского государственного университета им. Н.Ф. Катанова, г. Абакан, Республика Хакасия. ШАЛМИНА Ирина Ивановна, кандидат технических наук, профессор (Россия), профессор кафедры конструирования Омского государственного института сервиса.

Адрес для переписки: 644099, г. Омск, ул. Певцова, 13, ОГИС.

Статья поступила в редакцию 14.04.2011 г.

© Т. Ю. Салихова, И. В. Карцева, И. И. Шалмина

УДК 004.052 в. А. ГЕРАСИМОВ

Омский государственный технический университет

ОБ УЧЕТЕ КРИТИЧНОСТИ ДЕФЕКТОВ ПРИ МОДЕЛИРОВАНИИ РОСТА НАДЕЖНОСТИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

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

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

Выдвигаемая гипотеза

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

Моделирование надежности программного обеспечения

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

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

На основе полученных статистических данных об отказах могут быть построены различные модели надежности, программного обеспечения, описанные H. Pham в [1]. Однако в приведенных в [1] моделях не учитывается такая важная характеристика отказов как критичность (severity). Критичность — это степень влияния дефекта на функционирование

Рис. 1. Основные типы модели роста надежности ПО

программной системы. В области тестирования программного обеспечения принято классифицировать отказы и связанные с ними дефекты по степени их критичности на несколько групп [2]. Классификация дефектов по критичности приведена на (рис. 1).

J.D. Musa предлагает разделять отказы по степени критичности при построении моделей надежности [3]. В частности было предложено учитывать критичность дефектов при вычислении частоты отказов программы на основе нескольких подходов:

— вычислить частоту отказов отдельно для каждого класса серьезности;

— использовать взвешенные интервалы между отказами для различных классов серьезности;

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

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

Модели роста надежности программного обеспечения

рой обнаруживаются дефекты). В данной модели |1(1;) — это ожидаемое число обнаруженных дефектов на момент времени 1.

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

т(1) = 8(1-е-ь‘),

На рис. 2 представлены два основных типа моделей роста надежности ПО [4]: вогнутая (concave) и S-образная (S-shaped). S-образная модель исходит из предположения, что тестирование на начальном этапе не так эффективно, как последующее тестирование. Использование того или иного типа моделей обусловлено спецификой процесса разработки ПО.

Построение моделей роста надежности с учетом критичности дефектов

Ожидаемое количество дефектов в программном обеспечении является параметром, используемом в большинстве существующих моделей роста надежности программного обеспечения. В качестве примера рассмотрим одну из самых простых моделей роста надежности вогнутого типа — модель Goel-Okumoto [5], называемую также экспоненциальной моделью. В первоначальном виде данная модель может быть описана следующей формулой:

где Ь — коэффициент формы (скорость с которой обнаруживаются дефекты), Б — это ожидаемая сумма весов всех дефектов в программе, которая может быть вычислена, как показано ниже:

S = nGwG + n1w1

+

где п. — это число дефектов 1-го приоритета, — это вес дефекта 1-го приоритета, т — это число различаемых приоритетов дефектов.

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

Например, рассмотрим Б-образную модель, в основе которой лежит кривая роста Гомперца [6]. Данная модель представляется формулой

m(t) = a(1 — e—bt),

m(t) = a(bc),

где а > 0 — это ожидаемое число дефектов в программе, Ь > 0 — коэффициент формы (скорость с кото-

где а > 0 — это ожидаемое число дефектов в программе, 0 < Ь < 1, 0 < с < 1 — коэффициенты модели.

n w

mm

ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011 ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ

ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011

Статистика найденных дефектов (Релиз 1)

Номер дня 1 2 3 4 5 б 7 8 9 1G 11 12 13 14 15

Число дефектов G G 2 1 1 1 2 1 1 G 1 3 1 1 2

Номер дня 1б 17 18 19 2G 21 22 23 24 25 2б 27 28 29 3G

Число дефектов 2 G 5 2 1 1 G 1 5 1 2 G 5 G 3

Номер дня 31 32 33 34 35 Зб 37 38 39 4G 41 42 43 44 45

Число дефектов 1 G 1 G G G 1 G G G G G G G G

Номер дня 4б 47 48 49 5G 51 52 53 54 55 5б

Число дефектов G G G G G G 3 G G G G

Таблица 2

Статистика найденных дефектов (Релиз 2)

Номер дня 1 2 3 4 5 б 7 8 9 1G 11 12 13 14 15

Число дефектов 3 1 б 21 4 12 13 11 12 б 11 12 3 11 19

Номер дня 1б 17 18 19 2G 21 22 23 24 25 2б 27 28 29 3G

Число дефектов 21 1б 13 4 17 13 1б 5 14 11 9 2 5 4 3

Номер дня 31 32 33 34 35 Зб 37 38 39 4G 41 42 43 44 45

Число дефектов 4 2 3 2 1 4 3 3 G G G G G 1 1

Номер дня 4б 47 48 49 5G 51 52 53 54 55 5б 57 58 59 6G

Число дефектов 1 G G 2 1 G 4 1 2 2 G 3 G G G

Номер дня б1 б2 бЗ б4 б5 бб б7 б8 б9 7G 71 72 73 74 75

Число дефектов 1 2 1 1 G 1 G 3 4 1 G G G G 1

Таблица 3 Процентное соотношение дефектов по их критичности

Критичность дефекта Release 1 (%) Release 2 (%)

Minor 23 35

Average 43 38

Major 34 27

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

т(1) = Б(ьс),

где Б — это ожидаемая сумма весов всех дефектов в программе.

Модифицированная модель Гомперца была опробована в рамках данного исследования на статисти-

ческих данных, собранных в процессе разработки двух версий программного продукта промышленного масштаба. Статистика найденных дефектов по дням приведена в (табл. 1) и (табл. 2).

Процентное соотношение дефектов разной степени критичности, представлено в (табл. 3).

В использованных статистических данных присутствуют дефекты только трех уровней критичности: minor, average и major. Пусть их веса будут w1 = 0,04, w2 = = 0,16 и w3 = 0,8 соответственно. Значения весов определяются экспериментально и в общем смысле отражают тот факт, что более критичные дефекты сильнее затрагивают надежность ПО. Подобный выбор весов связан, прежде всего, с тем, что более критичные дефекты оказывают большее влияние на надежность программного обеспечения. При построении модели экспериментальным путем были получены следующие значения параметров модели: b = 0,0015 и с = 0,87. Результаты моделирования представлены на (рис. 3) и (рис. 4).

Для проверки точности полученной модели вычислим среднеабсолютную процентную ошибку (mean value percentage error)

5ІИИИИИИИИИІИИИИИИИИИИИІИИИ

Рис. 3. Модель Гомперца (Release 1) Рис. 4. Модель Гомперца (Release 2)

M = -Z n t=1

At

• 100%

где At — это реальное значение, Ft — значение прогноза. При значении M < 10% принято говорить о высокой точности прогнозов, при 10% < M < 20% — хорошей.

В результате вычислений получены следующие значения:

M1 = 7%,

M2 = 11%.

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

Библиографический список

1. Pham, H. Software Reliability Models for Critical Applications / H. Pham, M. Pham. — Idaho Falls: Idaho National Engineering Laboratory, 1991. — 107 c.

2. IEEE SM 729-1983, IEEE Standard Glossary of Software Engineering Terminology (ANSI).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3. Musa, J. D. Software reliability measurement, prediction, application / J. D. Musa, A. Iannino, K. Okumoto. — New York: McGraw-Hill Book Company, 1987. — 621 p.

4. Wood, A. Software Reliability Growth Models [электронный ресурс] / Технический отчет — Режим доступа : http://www. hpl.hp.com/techreports/tandem/TR-96.1.pdf (дата обращения : 06.06.11).

5. Goel, A. L., Okumoto K. A Time Dependent Error Detection Model for Software Reliability and Other Performance Measures // IEEE Trans. Reliability. — 1979. — vol R-28. — pp 206-211.

6. Kececioglu, D. Reliability Engineering Handbook. Volume 2 / D. Kececioglu. — Prentice-Hall, 1991.

ГЕРАСИМОВ Владимир Александрович, аспирант кафедры «Прикладная математика и фундаментальная информатика».

Адрес для переписки: e-mail: v.a.gerasimov@gmail.com

Статья поступила в редакцию 06.06.2011 г.

© В. А. Герасимов

At - Ft

Книжная полка

004/К64

Коноплев, И. А. Информационные технологии : учеб. пособие для вузов по специальности «Прикладная информатика (по областям)» / И. А. Коноплева, О. А. Хохлова, А. В. Денисов. - 2-е изд. - М. : Проспект, 2011. - 327 с. - КВЫ 978-5-392-01410-1.

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

004/М15

Макарова, Н. В. Информатика : учеб. для вузов по направлениям подгот. бакалавров «Системный анализ и управление» и «Экономика и управление» / Н. В. Макарова, В. Б. Волков. - СПб. [и др.] : Питер, 2011. - 573 с. - КВЫ 978-5-496-00001-7.

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

ОМСКИЙ НАУЧНЫЙ ВЕСТНИК №3 (103) 2011 ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ

i Надоели баннеры? Вы всегда можете отключить рекламу.