Научная статья на тему 'Принципы моделирования оценки и управления качеством процесса разработки программного обеспечения'

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

CC BY
150
44
Читать
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
УПРАВЛЕНИЕ КАЧЕСТВОМ / ПРОЦЕСС РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ / МОДЕЛЬ ЗРЕЛОСТИ / УРОВЕНЬ ЗРЕЛОСТИ / QUALITY CONTROL / SOFTWARE DEVELOPMENT PROCESS / MATURITY MODEL / LEVEL OF MATURITY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Годлевский М. Д., Шеховцов В. А., Брагинский И. Л.

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Годлевский М. Д., Шеховцов В. А., Брагинский И. Л.

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

MODELING PRINCIPLES OF ASSESSMENT AND CONTROL OF QUALITY IN SOFTWARE DEVELOPMENT PROCESS

The research is dedicated to the formalization of the basic concepts of technology “maturity model”, based on the CMMI (Capability Maturity Model Integration), in order to form a mathematical model of quality control of software development process. The discrete variables are used as control actions, determining the level of ability of individual private practices and focus areas. It is proposed to design a mathematical model based on two particular criteria:”maturity” and “financial costs.” For the first time, on the basis of discrete variables the functions of the grade of membership are synthesized to a given maturity level of the organization that is the basis for the formation of the objective functions of the model. The research results can be used at the strategic control of the quality level of software development process in limited resources conditions. For the present, there are no methods and mathematical models of quality control at the planning period, taking into account resource limitations. This presupposes the following action plan to assess and control the quality level: the synthesis of the mathematical model, the development of algorithms based on dynamic programming schemes, the synthesis of information technology of quality control on the basis of developed models and algorithms.

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

УДК 681.518

ПРИНЦИПЫ МОДЕЛИРОВАНИЯ ОЦЕНКИ И УПРАВЛЕНИЯ КАЧЕСТВОМ ПРОЦЕССА РАЗРАБОТКИ ПРОГРАММНОГО

ОБЕСПЕЧЕНИЯ

------------□ □--------------

У роботі розглянуто основні принципи і припущення оцінки і управління якістю процесу розробки програмного забезпечення. Для формалізації моделі зрілості введено відповідні дискретні змінні. Формалізовано оцінку довільного рівня зрілості

Ключові слова: управління якістю, процес розробки програмного забезпечення, модель зрілості, рівень зрілості

□-----------------------□

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

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

1. Введение

Одним из основных понятий, связанных с улучшением качества процесса разработки программного обеспечения (ПР ПО), является технология «модель зрелости» (ТМЗ) [1], которая представляет собой описание процесса продвижения организации к желаемому уровню реализации ПР ПО. Основными компонентами ТМЗ являются фокусные области, частные цели и практики. Под фокусной областью понимается совокупность объединенных по смыслу практик в некоторой области деятельности, связанной с разработкой программного обеспечения. Частные цели задают уникальные целевые характеристики, достижение которых является необходимым для реализации определенной фокусной области. Частные практики описывают действия, которые считаются важными для достижения связанных с ними частных целей. В работах [2, 3] рассмотрены основы технологии «модель зрелости» на базе CMMI (Capability Maturity Model Integration), а также представлено вербальное описание процесса улучшения качества разработки программного обеспечения, которое позволяет руководству организации на качественном уровне выстроить стратегию продвижения фирмы к поставленной цели, достижение которой связано с вкладом финансовых ресурсов. Поэтому возникает задача оптимального их распределения на рассма-

М.Д. Годлевский

Доктор технических наук, профессор* Контактный тел.: (057) 707-65-20 Е-mail: god_asu@kpi.kharkov.ua В.А. Шеховцов Кандидат технических наук, доцент* Контактный тел.: (057) 707-65-20 Е-mail: Volodymyr.Shekhovtsov@aau.at *Кафедра автоматизированных систем управления Национальный технический университет «Харьковский

политехнический институт» ул. Фрунзе, 21, г. Харьков, Украина, 61002 И.Л. Брагинский Президент НИКС Солюшенс пр. Гагарина, 181, г. Харьков, Украина, 61105 Контактный тел.: 067-572-01-40 Е-mail: garry@nixsolutions.com

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

2. Формализация основных понятий технологии «модель зрелости»

Будем рассматривать динамическую модель управления качеством ПР ПО. Это означает, что имеется некоторый период управления [0, Т-1], на котором решается задача, где Т - целое число, определяющее продолжительность планового периода [1,Т] и соответствующее количеству подпериодов периода управления. Продолжительность подпериода может измеряться в количестве рабочих дней, недель, месяцев и т.д. Текущее значение номера подпериода управления обозначим переменной t = 0,Т -1. Будем считать, что предпринятые управляющие воздействия (вклад ресурсов) на t - 1-м подпериоде считаются реализованными к началу t -го подпериода.

Управление качеством ПР ПО осуществляется на основе частных критериев (показателей). Исходя из вербального описания модели оценки и управления

качеством ПР ПО [3] в качестве таких критериев будем рассматривать следующие:

1) «уровень зрелости». Это показатель, который влияет на: цену компании разработчика ПО при ее продаже; время разработки ПО; текущие затраты на разработку ПО. Чем выше уровень зрелости, тем выше качество разработанного ПО;

2) «финансовые затраты». Данный показатель связан с затратами, необходимыми для увеличения уровня зрелости ПР ПО. В эти затраты входят:

- закупка новых лицензионных технологий;

- приобретение более высокого уровня квалификации исполнителей, владеющих технологиями, которые соответствуют рассматриваемым уровням зрелости ПР ПО;

- затраты на обучение (повышение квалификации) сотрудников фирмы;

- приобретение новых технических средств и т.д.

Существует еще один показатель, который зависит

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

На каждый подпериод периода управления [О, Т-1] выделяются ресурсы (финансы) для увеличения уровня зрелости ПР ПО. В том случае, если они не израсходованы в 1 -м подпериоде, они могут быть использованы в последующие подпериоды периода управления.

Согласно терминологии технологии «модель зрелости» каждая фокусная область характеризуется частными целями, достижение каждой из которых определяется рядом частных практик. Введем дискретные переменные, принимающие значения целых чисел, определяющих уровень возможности соответствующей частной практики, а совокупность которых формирует уровень зрелости всего ПР ПО. Пусть х^ =т^,п^ - переменная, определяющая уровень возможности ] -ой частной практики і -ой фокусной области на 1 -м подпериоде планового периода [1, Т], где ієі - множество фокусных областей, множе-

ство частных практик і -ой фокусной области, и п^ - минимальное и максимальное значения уровня возможности ] -ой частной практики і -ой фокусной области. Согласно [1] т^ = 0 и п = 3 '^у.

Дополнительно введем следующие обозначения. Ік,к є К - множество фокусных областей, которое добавляется при рассмотрении следующего по порядку к -го уровня зрелости, К - множество уровней зрелости. Согласно [1] |К| = 5, Lk - множество категорий фокусных областей из множества Ік. ік,1 єLk,kєК -множество фокусных областей 1 -ой категории к -го уровня зрелости. і - множество практик 8 -ой цели і -ой фокусной области, Si -множество целей і -ой фокусной области.

С целью наглядности представим введенные выше понятия в виде следующей структуры (рис. 1).

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

х0 = т,.

Тогда будем считать, что финансовые затраты на одноэтапный переход т^ ^ п, который осуществлялся за один подпериод, меньше, чем для многоэтапного перехода т^ ^ т^ +1 ^... п -1 ^ п^ в течение нескольких подпериодов планирования.

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

Фактически, ограничения такого класса отражают идею сбалансированности отдельных составляющих ПР ПО.

Уровень зрелости £’ = 5

1 2 к=Ъ 4 5

4(; е4)

1

Множество категорий

Множество фокусных областей

4(гє4)

і

Множество целей

Множество практик

1 4(^4)

}

Рис. 1. Структура основных понятий технологии «модель зрелости»

Введем переменные, определяющие уровень возможности отдельной фокусной области, который формируется исходя из уровней возможности частных практик, входящих в эту фокусную область. Пусть у? - переменная для і -ой фокусной области на t -ом подпериоде планового периода [1,Т], где і є І . Будем считать, что

у‘ = ^ (|х‘,і є і,}),і є І^ = 1,Т,

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

3

фокусную область, в уровень возможности 1 -ой фокусной области.

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

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

у* = тіп...|хі}, і є І, і = 1,Т;

И І V]’

Уі =Л

ІР

V

ііхіі

,іє І, і = 1,Т

V и.

І 0,і є іі, £ рі = 1,і є І, і = ЇТ,

ієіі

Ік = иІ„ к = 1,5

В этом случае предлагается использовать теорию нечетких множеств и при наличии к -1 -го уровня зрелости ввести понятие степени (уровня) принадлежности к р -му уровню зрелости, где р = к,5 .

С этой целью введем функции

хй}‘), к = 15-^ = 1Т,

“к (Ы‘),

(1)

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

определяющие степень принадлежности к к -му уровню зрелости ПР ПО в 1 -ом подпериоде планирования в том случае, если к - 1-ый уровень зрелости достигнут.

Будем считать, что нулевой уровень зрелости «заранее достигнут» для любого ПР ПО. Параметры тк, ] е^, 1 е1к, к = 1,5 определяют минимальный уровень возможности ] -ой практики 1 -ой фокусной области для достижения к -го уровня зрелости. Тогда функция

(2)

(3)

“ (Ы‘ )=з (ЬГ)/21 (К})

(6)

определяет степень принадлежности к первому уровню зрелости, где

где Л - функция округления аргумента до целого числа.

Считается, что состав частных практик фокусной области в течение рассматриваемого планового периода не меняется, но степень их важности можно менять путем варьирования весовых коэффициентов важности |рі}.

Правило перехода с к - 1-го на к -ый уровень зрелости описано в [3]. Согласно этому правилу, если организация претендует на к -ый уровень зрелости, то в этом случае множество практик фокусных областей

при условии

0 < х‘< ті, і є іі,і єІ1, і = 1,Т,

(7)

(8)

(4)

должны удовлетворять определенным уровням возможности. Логичным является и другой подход, когда такие условия накладываются не на множество практик фокусных областей (4), а на уровень возможностей самих фокусных областей. В этом случае, в качестве примера, можно использовать зависимости (1) или (2), (3).

где рк‘ - степень важности 1 -ой фокусной области при достижении к -го уровня зрелости ПР ПО в 1 -ом подпериоде. В данном случае к = 1. Условия, которые накладываются на эти коэффициенты, будут приведены ниже.

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

2 (|х,}‘ )=з (|х,}')/з ({т?})

(9)

где

м

3. Функции степени принадлежности к к -му уровню зрелости

При этом возникает вопрос оценки уровня зрелости ПР ПО организации в том случае, если множество практик фокусных областей Ь-1 или множество самих фокусных областей Ь-1 удовлетворяют заданным уровням возможности, что позволяет объявить к -1ый уровень зрелости ПР ПО организации, а множество практик фокусных областей „ р —

Ір = и Іі, р = к,5 (5)

і=к

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

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

3 (ЬУ ) = ХР2‘ Ер$Н-^Е^ Е^4 1 =1Д (10)

>е11 Щ ,е12

при условии

т1< х‘< ш2,] е е11,1 = ГГ, (11)

0 < х‘< ш2,] е е^ = 1Т. (12)

На основе (6)-(12) для произвольного к -го уровня зрелости

“к (Ы )=zk (ы‘) /Zk ({йк})' (13)

где

Е

^({і)= Е р,к,‘Ері (іЧ4)+

к-1 л^_Гі

+Ер*Ер&, к = 1,5,1 = 1,Т,

(14)

ієік ІЄІІ

при условии

т^;-1 < х^< тк, і є ^і є І,, б = 1,к-1,1 = 1,Т, (15)

0 < х1< ті, і є Лі,і єІк,к = 1,5,1 = 1,Т, рк >0, Vі,k,t•, Е рГ = 1, к = 1,5,1 = 1,Т,

ієи І3

3=1

рі>0, Vі,і,t•• £р1 = 1,ієуі.,1 = 1,Т,

іє.1і

Таким образом, степень достижения к -го уровня зрелости при наличии к - 1-го определяется на основе (13)-(18). В результате уровень зрелости ПР ПО определяется двумя показателями: к - 1-ом уровнем зрелости и степенью достижения к -го уровня зрелости. Однако такой подход еще не в полной мере оценивает уровень зрелости ПР ПО, так как не учитывается степень достижения последующих уровней зрелости (следующих за к -м). Поэтому рассматривается следующий подход. Допустим, достигнут к - 1-ый уровень зрелости.

Тогда любой р -ый уровень зрелости, где р = к,5 , предлагается определять следующим образом

(Ы‘ )=дш- (КГ), р=кд (19)

При этом любое значение юк({х^} ) определяется, при условии, что к -1 -ый уровень зрелости достигнут, на основе (13)-(18).

4. Постановка задачи формирования математической модели управления качеством ПР ПО

Для наглядности рассмотрим следующий пример. Допустим, второй уровень зрелости достигнут, а степень достижения третьего уровня согласно (13)-(18) равна 0,9, а четвертый уровень зрелости, при условии, что третий уровень зрелости уже достигнут, соответствует 0,5. Тогда, согласно (19), степень достижения четвертого уровня зрелости равна 0,9х0,5 = 0,45. В свою очередь, если степень достижения и этого уровня зрелости, при условии достижения четвертого уровня, равна 0,3, то степень достижения пятого уровня, согласно (19), равна 0,9х0,5х0,3 = 0,135. В дальнейшем функции (19) будут использованы для построения модели управления качеством ПР ПО организации.

Будем считать, что состав и структура рассматриваемых допустимых областей ПР ПО в течение планового периода не меняется, но степень их важности, определяемая весовыми коэффициентами {рк‘} при реализации ПР ПО, может варьироваться на интервале [1,Т].

Задача управления качеством ПР ПО состоит в оптимизации стратегии вклада финансовых ресурсов на рассматриваемом периоде управления [0,Т -1] на основе выше приведенных критериев (показателей): уровня зрелости ПР ПО и финансовых затрат на увеличение уровня зрелости. При этом стоит задача оценить на каждом подпериоде количество возможных вариантов управления качеством ПР ПО с точки зрения значений уровней возможности частных практик фокусных областей технологии «модель зрелости». Это необходимо для анализа и выбора вида модели и методов ее оптимизации на основе введенных критериев.

Проведем такую оценку для задачи реальной размерности.

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

В том случае, если на нулевом подпериоде управления выделяются финансовые ресурсы, которые не ограничены, то можно на первом подпериоде реализовать множество и (1 = 1) вариантов управления качеством ПР ПО

^ и1 = ЕЯ<п.-т°+1)х АП (і т0+1).

(16)

(17)

(18)

ієІ3 Иі

Параметр іп“ определяет уровень возможности

і -ой фокусной области на нулевом подпериоде планирования, ап = 3 Vі,і.

Будем считать, что по три практики из множества фокусных областей І2 имеют второй уровень возможности, а остальные - третий.

По четыре практики каждой фокусной области из множества І3 имеют первый уровень возможности, а остальные - третий. Как известно |і2| = 7, а |і3| = 14 . Тогда

и = (23 )7 х(34

Если учесть, что необходимо рассматривать альтернативные варианты развития ПР ПО последовательно на каждом подпериоде управления, то становится ясным то, что даже для задачи относительно небольшой размерности нельзя использовать простой перебор вариантов.

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

1) сокращения количества фокусных областей и практик на определенных подпериодах управления на основе предварительного анализа экспертов;

2) введения ограничений, связанных с принципом сбалансированности развития ПР ПО.

ієи I

3=1

э

5. Выводы и перспективы дальнейших исследований

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

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

1) на основе формализации основных понятий технологии «модель зрелости» и введенных функций степени принадлежности к к -му уровню зрелости синтезировать математическую модель управления качеством ПР ПО;

2) разработать алгоритмы, основанные на схемах динамического программирования для решения задачи управления качеством ПР ПО на некотором плановом периоде с учетом ограничения на ресурсы;

3) на базе модели и алгоритмов, основанных на последовательном анализе вариантов (схемах динамического программирования), сформировать технологию управления качеством ПР ПО;

4) разработать информационную технологию управления качеством ПР ПО и проверить ее работоспособность на тестовой реальной информации.

Литература

1. Chrissis M.B. CMMI: Guidelines for Process Integration and Product Improvement / M.B. Chrissis, M. Konrad. - Addison-Wesley.

- 2003. - 688 p.

2. Шеховцов В.А. Оценка и управление качеством процесса разработки программного обеспечения на основе моделей зрелости / В.А. Шеховцов, М.Д. Годлевский, И.Л. Брагинский // Восточно-Европейский журнал передовых технологий. - 2011. - № 5/2 (53). - С. 22-27.

3. Шеховцов В.А. Вербальное описание технологии улучшения качества процесса разработки программного обеспечения / В.А. Шеховцов, М.Д. Годлевский, И.Л. Брагинский // Вісник Національного технічного університету «Харківський політехнічний інститут». - Харків: НТУ «ХПІ». - 2012. - № 29. - С. 54-59.

Abstract

The research is dedicated to the formalization of the basic concepts of technology “maturity model”, based on the CMMI (Capability Maturity Model Integration), in order to form a mathematical model of quality control of software development process. The discrete variables are used as control actions, determining the level of ability of individual private practices and focus areas. It is proposed to design a mathematical model based on two particular criteria:”maturity” and “financial costs.” For the first time, on the basis of discrete variables the functions of the grade of membership are synthesized to a given maturity level of the organization that is the basis for the formation of the objective functions of the model. The research results can be used at the strategic control of the quality level of software development process in limited resources conditions. For the present, there are no methods and mathematical models of quality control at the planning period, taking into account resource limitations. This presupposes the following action plan to assess and control the quality level: the synthesis of the mathematical model, the development of algorithms based on dynamic programming schemes, the synthesis of information technology of quality control on the basis of developed models and algorithms.

Keywords: quality control, software development process, maturity model, level of maturity

E

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