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

кандидата технических наук
Копычев, Владимир Александрович
город
Санкт-Петербург
год
2014
специальность ВАК РФ
05.02.23
Автореферат по машиностроению и машиноведению на тему «Квалиметрические модели и средства управления качеством процесса разработки программного обеспечения»

Автореферат диссертации по теме "Квалиметрические модели и средства управления качеством процесса разработки программного обеспечения"

На правах рукописи

--

Копычев Владимир Александрович

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

Специальность:

05. 02. 23 — Стандартизация и управление качеством продукции

Автореферат диссертации на соискание ученой степени кандидата технических наук

1 (ИЮЛ 2014

Санкт-Петербург 2014

005550531

Работа выполнена на кафедре инноватики и управления качеством Санкт-Петербургского государственного университета аэрокосмического приборостроения

Научный руководитель,

доктор технических наук, профессор Семенова Елена Георгиевна

Официальные оппоненты:

доктор технических наук, профессор Липатников Валерий Алексеевич

доктор технических наук, доцент

Рожков Николай Николаевич

Ведущая организация - ОАО «НТ1П «Радар ммс»

Защита состоится 23 октября 2014 года в 14.00 часов на заседании диссертационного совета Д212.010.03 при Балтийском государственном техническом университете «ВОЕНМЕХ» им. Д. Ф. Устинова по адресу 190005, Санкт-Петербург, ул. 1-я Красноармейская, д. 1

С диссертацией можно ознакомиться в библиотеке Балтийского государственного технического университета «ВОЕНМЕХ» им. Д. Ф. Устинова по адресу 190005, Санкт-Петербург, ул. 1-я Красноармейская, д. 1

Автореферат разослан 27 июня 2014 года.

Ученый секретарь диссертационного совета Д212.010.03 по защите докторских и кандидатских диссертаций канд. техн. наук, доцент

I. ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы.

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

Проблемы повышения качества производственных процессов и управления качеством применительно к продуктам, услугам и процессам разрабатывались во многих научных исследованиях по квалиметрии и управлению качеством. В решение задач, связанных с этой проблемой, внесли существенный научный вклад А.Г. Варжапетян, Е.Г. Семенова, Ю.П. Адлер, Н.Н. Рожков, О.П. Глудкин, Г.Г. Азгальдов, Л.В. Черненькая. Необходимо отметить ставшие классическими в управлении качеством работы таких ученых, как Э. Деминг, А.У. Шухарг, К. Ишикава, Д. Джуран и другие. Проблеме оценки качества и управления качеством программных продуктов посвящены фундаментальные работы М. Холстеда, А. Альбрехта, Б. Боэма.

С развитием и усложнением программных продуктов и информационных систем, а особенно с развитием объектно-ориентированного программирования, метрики и процедуры оценки кода программного продукта стали трудно применимыми. На первый план вышел процесс разработки ПО. Проблемам управления процессом разработки ПО и управления ИТ-услугами посвящены исследования Ф. Брукса, "У. Хэмфри, Ф. Кратчена, М. Полка, М. Мюллера, Т. Фелманна, С. Кана. Среди работ авторов из России и стран СНГ можно выделить В .А. Липатникова, В.Ш. Сулаберидзе, М.А. Годлевского, В.А. Шехов-цова, Е.М.Корнышову и др. Огромный вклад в развитие данной проблематики внесли такие организации, как ISO, SEI, Microsoft, Oracle, CETIC, Eurostat.

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

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

Цель работы

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

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

• создание математической модели оценки качества процесса разработай программного обеспечения,

• разработка метода выбора приоритетных процессов организации разработки ПО,

• разработка алгоритма повышения качества процесса разработки ПО,

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

Объект исследования.

Объектом исследования является процесс разработки программного обеспечения.

Предмет исследования.

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

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

Тематика работы соответствует областям исследования: 1. «Методы анализа, синтеза и оптимизации, математические и информационные модели состояния и динамики качества объектов», 3. «Методы стандартизации и менеджмента (контроль, управление, обеспечение, повышение, планирование) качества объектов и услуг на различных стадиях жизненного цикла продукции», 4. «Квалиметрические методы оценки качества объектов, стандартизации и процессов управления качеством» паспорта специальности 05.02.23.

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

• метод выбора приоритетных процессов организации разработки ПО

• математическая модель оценки качества процесса разработки ПО

• процедура определения интегрального показателя качества процесса разработки ПО

• алгоритм повышения качества процесса разработки ПО Научная новизна

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

• математическая модель оценки качества процесса разработки ПО, отличающаяся наличием механизма количественной оценки рейтингов

атрибутов процессов и позволившая формализовать задачу повышения уровня возможностей процесса

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

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

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

Практическая значимость

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

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

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

Публикации

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

Апробация работы

Основные положения и результаты исследования докладывались и обсуждались на XXXIX международной конференции «Гагаринские чтения» (Москва, 2013), 65-й, 66-й, 67-й международной студенческой научно-технической конференции ГУАП (Санкт-Петербург, 2012-2014), Тринадцатой Международной научно-практической конференции «Управление качеством» (Москва, 2014), Международной научно-практической конференции «Проблемы и направления развития систем качества» (Ульяновск, 2014), XV международном форуме «Формирование современного информационного общества - проблемы, перспективы, инновационные продукты» (Санкт-Петербург, 2014), научно-технической конференции ОАО «НПП «Радар ммс» (Санкт-Петербург, 2014).

Структура и объем диссертации

Диссертация состоит из введения, трех глав, заключения, списка литературы и приложений. Она содержит 149 страниц основного текста, 15 рисунков, 28 таблиц и приложения. Список библиографических источников насчитывает 110 наименований.

II. ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ Во введении обоснована актуальность выбранной темы, сформулированы цель, основные задачи, объект и предмет исследования, отражена научная новизна и практическая значимость, приведены основные положения, выносимые на защиту, сведения об апробации и внедрении результатов работы.

В первой главе «Методы управления качеством процесса разработки программного обеспечения» описана эволюция теории управления процессом разработки ПО и ее современное состояние.

Составлена классификация стандартов, моделей и подходов, применяемых в управлении процессом разработки ПО - по характеру обоснования рекомендаций, в зависимости от назначения, по характеру предлагаемого подхода, в зависимости от условий реализации проекта. Выполнен сопоставительный анализ основных стандартов и наиболее значимых метамоделей в области управления процессом разработки ПО. Приведен сопоставительный анализ стандартов широкого профиля, применимых к разработке ПО (ГОСТ ISO 9001-2011, ГОСТ Р ИСО 9004-2010). Рассмотрены специфические стандарты, разработанные для компаний, работающих в сфере ИТ услуг и разработки программного обеспечения: британский стандарт TickIT, свод знаний по управлению проектами РМВОК, стандарт ГОСТ Р ИСО/МЭК 20000-2010, определяющий требования к системе управления ИТ услугами, стандарт ГОСТ Р ИСО/МЭК 12207-2010, описывающий процессы жизненного цикла программных продуктов. Приведены подходы, предложенные крупными компаниями в качестве стандартов для собственных разработок, а затем ставшие международными стандартами - Oracle CDM (Oracle), RUP (Rational Software), MSF (Microsoft). Особое внимание уделено международным стандартам и метамоделям, основанным на моделях зрелости процессов - CMMI, ГОСТ Р ИСО/МЭК 15504 и их адаптации для малых и средних компаний - OWPL.

Приведены результаты анализа подходов к планированию и осуществлению повышения качества организационных процессов разработки ПО: цикла Деминга-Шухарта PDCA и цикла DMAIC. Отдельно рассмотрены подходы, разработанные применительно к области ИТ услуг и разработки программного обеспечения - модель процессов IDEAL (Carnegie Mellon University), Personal Software Process (Software Engineering Institute). Уточнены подходы, связывающие стратегии по улучшению процесса разработки ПО, предлагаемые международными стандартами и метамоделями, с бизнес-целями. Проанализирован подход GQM (Goal-Question-Metric), сбалансированная система показателей (ССП) и подход Practical Software Measurement (PSM).

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

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

Иатол нитеяьное устройство ! и « Датчик 1

Управляемый объект I

I 1

Исполнительное устройство 2 | V Датчик 2

1

1

Исполнительное устройство N Датчик N

Г____1

Контроллер

<-

Пнлотажио-навигацяонный комплекс

Рисунок I - Контур управления ДА с оборудованием IЕНК

Рисунок 2 - Программируемые сигнальные процессоры для бортовых комплексов

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

Методология проектирования и разработки ПО для КБО базируется на известных концепциях жизненного цикла ПО и, следовательно, модели, алгоритмы и стандарты управления качеством процесса разработки ПО применимы и при создании ПО для программно-аппаратных комплексов различного назначения.

Для процесса разработки ПО характерны следующие особенности:

• результатом процесса является нематериальный объект,

• постоянно изменяющиеся требования к объекту разработки,

• сложность оценки экономического эффекта,

® высокий уровень рисков.

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

Результаты анализа моделей для оценки рисков, предлагаемых в стандартах серии ИСО 31000, и анализа подходов к управлению рисками процесса разработки программного обеспечения, предлагаемых в международных стандартах и метамоделях CMMI, ИСО/МЭК 15504, ИСО/МЭК 12207, РМВОК, Microsoft Solution Framework (MSF), Continuons Risk Management (CRM) подтвердили необходимость оценки рисков, связанных с процессом разработки программного обеспечения с учетом взаимосвязи нежелательных событий, связанных с различными процессными областями.

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

Проблема выбора приоритетных процессов представлена на рисунке 3.

Множество целей организации

Множество организационных процессов разработки программного обеспечения (ISO/IEC 15504 S RICE)

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

Математический метод поддержки принятия решения

Множество приоритетных процессов

Рисунок 3 - Проблема выбора приоритетных процессов

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

1. Формирование правил предпочтения:

• важность процесса (вклад в достижение целей);

• затраты (количество человек, участвующих в процессе);

• результативность процесса (ГОСТ Р ИСО/МЭК 15504);

• проблемность процесса (бережливая разработка ПО)

2. Попарное сравнение альтернатив.

3. Расчет индексов согласия (1) и несогласия (2)

Слв = y"V.

/-¡ш '

Wj - вес i-ro критерия, 1 - множество критериев, Г - подмножество критериев, по которым А предпочтительнее В

I'b-1'A

d*B=maxiirJLJ^ (2)

¡'в. 1'л - оценки альтернатив А и В по 1-му критерию; /, - длина шкалы ¡-го критерия, Г - подмножество, по которому В предпочтительнее А.

4. Принятие окончательного решения

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

Для решения задачи построения модели оценю! качества процесса разработки программного обеспечения выполнена частичная формализация процессной модели, изложенной в стандарте ГОСТ Р ИСО/МЭК 15504.

Правило определения рейтингов атрибутов и профилей процесса имеет

вид:

РА\ Л = ^л\у(ВР)

РАк.т^н>,д(СР,)Ук>\ (3)

<7 - степень выполнения практики от 0 до 1, - вес ьй практики, Р/1/.у -атрибут процесса, соответствующий г-му уровню возможностей, Рг(Р^) -профиль ьго процесса.

Переход на следующий уровень возможностей х осуществляется по правилу:

' РАк.т{Р,) = 1 • РАх.т > 0,75 \/к<х,\<т<2 ^

Полученная математическая модель оценки качества процесса разработки ПО основана на модели зрелости ГОСТ Р ИСО/МЭК 15504 и отличается количественной оценкой рейтингов атрибутов процесса. Частными критериями являются общие и базовые практики, интегральным критерием - рейтинг атрибута процесса. Весовые коэффициенты определяются с помощью матрицы попарных сравнений Саати.

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

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

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

программного обеспечения,

• группировка показателей по влиянию на требования потребителя на основе построения упрощенной СФК,

• снижение размерности показателей для каждого требования на основе применения факторного анализа

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

Процедура разработана на основе таких подходов, как структурирование функции качества (СФК), факторный анализ.

Пусть имеется п показателей качества процесса разработки ПО, которые наблюдаются на примере N проектов. Тогда матрица наблюдений имеет вид:

(Х11 "' X1NS 1 4

ХП1 "' ХпЫУ

Упрощенная задача СФК состоит в определении и ранжировании требований потребителя к характеристикам разрабатываемых проектов: {СЯ^},/с<п и дальнейшей группировке показателей качества по принципу соответствия требованиям потребителя:

СДг = /Оч. *2. -, хт), т < п. (5)

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

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

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

(б)

• нормируем полученные показатели по формуле (7)

г.

_ у

-м,

г'7=— (7)

где Ху - исходное значение ¡-го показателя в .¡-м проекте, ¡^ - среднее арифметическое значение ¡-го показателя, о^ - среднее квадратичное отклонение ¡-го показателя.

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

гц = Щаис/ы (8)

При этом ^ - факторы, - веса факторов или факторные нагрузки. Сумма факторных нагрузок вычисляется по формуле.

0я = 1.Татч (9)

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

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

Интегральный показатель ограничен единичным интервалом [0,1]. При этом нормированные по (7) показатели не принадлежат гарантированно единичному интервалу, и их максимальный разброс значений заранее неизвестен. Для предварительной обработки использовано нелинейное функциональное преобразование данных с помощью сигмоидной функции:

/(*)=— (Ю)

Таким образом, получен набор преобразованных нормированных показателей, лежащих на интервале [0,1]. Интегральный показатель качества процесса разработки также должен лежать в единичном интервале. При значении ключевых показателей близком к 1 (качество стремится к 100%), интегральный показатель также будет стремиться к единице. Тогда для интегрального показателя справедливо:

1а=2[с=1И'сяЛ (11)

где XI - значение ключевого показателя ¡-й группы; к - количество групп показателей, - относительный вес 1-го показателя.

Предложенная процедура позволила определить интегральный показатель качества процесса разработки ПО посредством применения методов СФК и факторного анализа.

В третьей главе «Алгоритм повышения качества процесса разработки программного обеспечения. Управление рисками» описан разработанный алгоритм повышения качества процесса разработки ПО, основанный на совместном применении ССП, моделей зрелости стандарта ГОСТ Р ИСО/МЭК 15504, методов структурирования функции качества, а также цикла Определение — Измерение - Анализ - Улучшение - Контроль (БМАГС), (рисунок 4). В главе предложена оценка рисков процесса разработки ПО с помощью «дерева неисправностей» по ГОСТ Р ИСО/МЭК 31010. Оценка рисков проводится в несколько этапов. На первом этапе уточняется номенклатура нежелательных событий, связанных с конкретной процессной областью. Данные события определяются, исходя из изучения завершенных на данный момент проектов. Поскольку риски взаимосвязаны, определяются зависимости между рисками внутри каждой процессной области. Для каждого процесса создается «дерево неисправностей», показывающее взаимосвязь всех нежелательных событий, связанных с данным процессом.

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

Использование разработанного алгоритма в ООО «ЕвроЛюкс» позволило выделить приоритетные процессы организации производства программных продуктов, которые нуждаются в повышении качества:

• планирование жизненного цикла ПО

• разработка плана проекта

• управление ресурсами и выполнением графика проекта

• разработка требований к ПО

• проектирование ПО

• разработка ПО

Оценка вазгносш процессор

Сзя )ь проса га и яроцсссеэ

Шмеренс5еинт<?раяьного показателя ют г с та а ггр< ц«.:са ргзра<>откн (до ргачгсущит; ачгсругтаа)

| Состадлениетстстших я целевые гтрофкпвЯ асчможнсктеЯ [

АНАЛИЗ

Тегушнй прсфпль ЕсзисжностеЛ ЦстевсчЧ прр&гсп. астзможносге!

КОНТРОЛЬ

!1змер«тте шттрагьногс показателе кэтества

Рисунок 4 - Алгоритм повышения качества процесса разработки программного обеспечения

Проведенный анализ показал, что процессы компании находятся на нулевом и первом уровне возможностей. Был внедрен ряд практик стандарта ГОСТ Р ИСО/МЭК 15504, относящихся к атрибутам процессов, соответствующим первому и второму уровням возможностей. Фрагмент таблицы изменения состояния процессов приведен в таблице 2.

Предприятие Назначение ПО Используемые языки программирования и СУБД

ООО «ЕвроЛюкс» обеспечение работы многофункциональных терминалов поисковые системы веб-сайты различной сложности и назначения Java, PHP, Python, Flash, Javascript,

ГБУ «Информационно -методический центр» система мониторинга и нормирования цен публичных оферт система размещения и контроля целевых государственных программ система поддержки для пользователей автоматизированной информационной системы госзаказа Java, PHP, Javascript. Ruby, MySQL, PostgreSQL, Oracle, MongoDB

ОАО «НПП Радар ммс» ПО для обработки радиолокационной информации ПО для решения навигационных задач ПО для стендов полунатурного моделирования Borland С++, Microsoft Visual С++

Таблица 2 - Внедряемые практики для наиболее важных процессов

Процесс Внедренные практики

PRO.l - Планирование ЖЦ ПО BP • Оценка параметров разработки продукта • Определение последовательности задач • Документирование действий

GP • Распределение обязанностей • Распределение ресурсов

PRO.2 - Разработка плана проекта BP • Декомпозиция работ • Оценка сроков проекта • Документирование планов проекта • Определение необходимых средств и оборудования

GP • Распределение обязанностей • Распределение ресурсов • Документирование процесса

PRO.7 - Управление ресурсами и выполнением графика проекта BP GP • Проведение технических проверок • Проведение менеджерских проверок • Документирование процесса • Обеспечение средствами и инструментами • Распределение обязанностей

ENG.2 - Разработка требований к ПО BP • Совместная с заказчиком оценка требований • Определение требований к ПО

ENG.3 - Проектирование ПО BP • Разработка интерфейсов верхнего уровня • Разработка проекта архитектуры ПО

GP • Документирование процесса • Обеспечение средствами и инструментами

ENG.4 - Разработка ПО (программирование) BP GP • Разработка процедуры проверки рабочего продукта • Проверка программных модулей • Документирование процесса • Обеспечение средствами и инструментами

Применение предложенного алгоритма позволило выделить ключевые показатели качества процесса разработки ПО в компании и получить на их основе интегральный показатель качества (таблица 3).

Название Назначение

I, Отношение реальных сроков к запланированным Определяет, уложился ли проект в планируемые сроки

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

1, Доля выполненных требований. % Степень выполнения требований заказчика

ь Количество требований на программный компонент Количество сформулированных в ТЗ требований к проекту

ь Доля некорректных требований % Доля требований, в дальнейшем исключенных из ТЗ, как некорректные

1„ Отношение объема доработок к общему объему работ Определяет дополнительный объем работ после сдачи проекта при несоответствии проекта изначальным требованиям по отношению к общему объему работ

ь Количество запросов на изменение на программный компонент Количество поступивших от заказчиков запросов на произведение изменений в проекте

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

1о Среднее время решения проблемы [дней) Среднее время решения проблемы при обращении заказчика в техническую поддержку по проекту, или для доработки ПО из-за несоответствия требованиям

Г,0 Средние затраты на решение проблемы (человеко-час) Затраты на решение проблемы через техническую поддержку

Гц Объем документации на программный компонент (стр.) Количество страниц в документации на программный компонент, разработанный в проекте

Среднее время устранения ошибки (час) Среднее время устранения ошибки в коде в процессе тестирования

1,5 Отношение затрат на рефакторннг к общим затратам Затраты на рефакторннг программного кода после разработки по отношению к общим затратам на разработку

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

1,5 Доля ошибок, выявленных на этапе тестирования, % Определяет долю ошибок, выявленных и устраненных на этапе тестирования от обшего числа ошибок

1,6 Доля использования унифицированных компонентов в проекте, % Определяет долю использования наработок кола из предыдущих проектов в текущем

Целью проектов являлась разработка ПО различного назначения:

• ПО для многофункциональных терминалов (Т)

• поисковые системы (П)

• веб-сайты (В)

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

Показатели оценивались на примере проектов ООО «ЕвроЛюкс» реализованным в период с 2011 по 2014 годы (таблица 4). Наблюдения 1-10 осуществлялись до применения разработанного алгоритма, 11-16 - после внедрения базовых практик (ВР), соответствующих первому уровню возможностей, 16-20 - после внедрения общих практик (СР).

Таблица 4 - Значения показателей качества процесса разработки ПО (нормированные)

№ показателя 1, >2 1з U 1; U Ь 1« I» I», In 1,2 I|J 1,4 1,5 1H,

Наблюдение (назначение)

1 (В) 0.29 0.40 0.37 0.72 0.40 0..1I 0.35 0.33 0.29 0,14 0.33 0,31 0.31 0,29 0.40 0.37

2(П) 0.40 0.35 0.47 0,60 0.34 0.35 0.36 0.36 0.33 0,31 0.31 0.40 0.35 0.40 0.35 0.47

3(П) 0,21 0.17 0.17 0.46 030 0.29 0,36 0.35 0,29 0.32 0.3! 0.26 0.22 0.21 0.17 0.17

4(Т) 0.29 0.30 0.42 0.33 0.36 0J4 0J7 0,32 0.38 0,33 0.29 0.2S 0.33 0,29 0.30 0.42

5(П) (1.34 0,35 0.32 0.46 0.35 0.36 (US 0.33 0.33 0.31 0.30 0.32 0.29 0.34 0,35 0,32

6(Т) 0,12 0.33 0.30 0.39 0.33 0.35 0.35 0.35 0,32 0.32 0,31 0.30 0,28 0.32 0,33 0J0

7(П) 0.28 0,29 0.35 0.33 0.32 0.18 0.36 0,33 0.29 0.31 0.28 0,31 0Л6 0,28 0.29 0,35

8(Т) 0.30 0.31 0.28 0.27 0.33 0,37 0.34 0.36 0.30 0.31 0.29 0.32 0.29 0,30 0,31 0,28

9 (В) 0,27 0.28 0.24 0.22 0,33 0.38 0.34 0.34 0,29 0.32 0,30 0.35 0,3.1 0.27 0,28 0.24

10 (В) 0,33 0.34 0.22 0.18 0,35 (U6 0.34 0.33 0.31 0.11 0.30 0.34 0.29 0,33 0,34 0.22

11 (В) 0,44 0,42 0.19 0,33 0,43 0.40 0.36 0,36 0.34 0.50 0.65 0,43 0.49 0,44 0.42 0,39

12 (Т) 0.51 0.49 0,47 0.72 0,45 0.39 0,39 0.37 0,41 0.47 0,52 0.54 0,53 0.51 0,49 0.47

13 (П) 0.56 0.51 0.57 0.46 0,5!) 0.44 0.41 0.43 0.58 0.4S 0,58 0.56 0.59 0.56 0.51 0.57

14 (Г1) 0.62 0.64 0.65 0.46 0.59 0,50 0.44 0.52 0.65 0.51 0.62 0.62 0.61 0,62 0.64 0,65

15 (В) 0.67 0.69 0,71 0.22 0,57 0,56 0,51 0.58 0,67 0.62 0,75 0.59 0,67 0.67 0.69 0.71

16 (T) 0.73 0.67 0.69 0.82 0,61 0.63 0,58 0.65 0,71 0.70 0,65 0.65 0,71 0.73 0.67 0.69

17(П) 0.78 0.70 0.79 0.46 0.68 0,68 0.67 0,63 0.74 0,74 0.69 0,68 0.78 0,78 0.70 0,79

18 (Т) 0,79 0.78 0.S4 0,89 0.64 0.74 0.79 0.80 0.80 0,75 0,62 0.72 O.SO 0.79 0,78 0,84

19 (П) 0,83 0.86 0.81 0.72 0.77 0.80 0,92 0.89 0.84 0.78 0.71 0.76 0.83 0.83 0.86 0.81

20 (В) 0.90 0,91 0.85 0.82 0.97 0.97 0.94 0,94 0.91 0,95 0.95 0,96 0.89 0,90 0.91 0,85

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

Ключевые требования потребителя и связанные с ними показатели представлены в таблице 5.

Таблица 5 - Группы показателей

Выполнение требовании технического задания Ii I4 и I7

Корректная работа разработанного ПО Is 1)5

Соблюдение установленных сроков разработки I. 1б 1|6

Квалифицированная техническая поддержка I9 1,0 In

Низкая стоимость разработки Ь 1,4 1,2 1,3

Наиболее значимыми показателями являются, соответственно Ь, Ii, 1?, Iis, 1<). По (10) определим интегральный показатель качества процесса разработки ПО Iq. Значения показателя по всем наблюдениям сведены в таблице 6.

Таблица 6 - Значение интегрального показателя качества

N наблюден »я ■ 2 3 4 7 И 9 10 11 12 l.t 14 | 15 16 1? IS J* 20

Нитарзльный нокачателЫ!) 0,41 0.31 0J0 0J7 0.2? 0.28 UM 0..18 0,47 (149 0.52 Q.5i O.ftO 0.67 0.76 0.91

Наблюдение №20 связано с проектом, занявшим менее 1 месяца, и потребовавшим привлечения к работе одного разработчика, следовательно, некоторые процессы организации производства программного продукта не использовались или были значительно упрощены. Данное наблюдение не укладывается в рамки тренда роста показателя качества и его можно исключить из итоговой выборки. Для подтверждения значимости внедренного алгоритма проведена иерархическая кластеризация с помощью метода Варда (рисунок 4).

Данные сгруппированы в два кластера, соответствующие стадиям «до внедрения» разработанного алгоритма и «после внедрения». Парный двух-

выборочный 1-тест, проведенный для выборок «до внедрения» и «после внедрения», подтвердил рост интегрального показателя качества процесса разработки ПО (рисунок 5).

Динамика изменения интегрального показателя качества до и после внедрения результатов работы представлена на рисунке 6. Коэффициент детерминации Л2=0,96, средняя ошибка аппроксимации 3,5%.

о

н -Я °

и > М П I П1РI н

! ......,....................

! П! П гТГП!

1 ( г г!

!

Проекты

Рисунок 4 - Кластеры проектов компании «ЕвроЛюке»

.............-шшннр 1=л5ЫвЙШ

^ дге:!: тестирование гчлоте* ;

1С<ч в й

нулевая гипотеза: разница средних = о

размер 10, среднее - о,2924, су. отклонение = 0,0526734 слакдартязя ошибка среднего 0,0166563

354; доверительный интервал для среднего: от 0,25472 до 0,33003 2-к выборка:

размер " 9, среднее ~ 0,532, ст. отклонение = 0,132552 стандартная ожибка среднего - 0,044134

95% доверительный интервал для срсдиг.гс: от 0,430112 до 0,633883

Тесзовая статистика: с(17> = (0,2924 - 0,532}/3,0453385 ■ Ддухстароннэе р-энгчение = 6,067е~005 (одностороннее - 3,034В-005>

-5,28466

Рисунок 5 - Результаты парного двухвыборочного 1-теста Применение разработанных и предложенных квали метр и ческой модели и средств управления качеством процесса разработки ПО в компании ООО «ЕвроЛюке» дало практические результаты в виде роста показателя качества процесса разработки ПО. После применения разработанного алгоритма наблюдалось превышение запланированных сроков и бюджета разработки не более чем на 10%, а также удовлетворенность заказчиков выполненными требованиями более чем на 80%, что позволяет говорить об улучшении организации производства и повышении конкурентоспособности предприятия. В рамках внедрения результатов работы в компании ООО «ЕвроЛюке» разработан стандарт организации, утверждающий документированную процедуру комплексной оценки качества процесса разработки ПО.

Анализ изменений в процессе

Период

Рисунок 6 - Анализ изменений в процессе разработки ПО

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

Применение основных положений, выводов и рекомендаций работы в ОАО «НПП «Радар ммс» обеспечило сокращение времени разработки программных продуктов на 14-19% при снижении материальных и финансовых затрат на 15%, что подтверждено соответствующим актом внедрения. По результатам внедрения разработанного алгоритма в ОАО «НПП Радар ммс» подтверждена применимость результатов работы к разработке ПО для КБО. В силу особенностей отрасли при рассмотрении требований потребителей наибольшим приоритетом обладали соответствие требованиям технического задания и отказоустойчивость ПО. При внедрении результатов работы снижены материальные и временные затраты на разработку ПО при выполнении требований по надежности и безопасности, что доказывает значимость и применимость результатов работы в области современной авионики.

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

Разработанный и предложенный алгоритм позволил улучшить процессы в соответствии с требованиями стандарта ГОСТ Р ИСО/МЭК 15504 с учетом аттестации по этому стандарту в будущем. Алгоритм обеспечил внедрение концепции непрерывного улучшения процессов, основанную на цикле Определение - Измерение - Анализ - Улучшение - Контроль (ОМА1С).

III. ЗАКЛЮЧЕНИЕ

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

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

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

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

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

• разработан алгоритм повышения качества процесса разработки ПО.

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

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

1. Колычев В. А. Вероятностная модель оценки рисков проекта разработки программного обеспечения / Е. Г. Семенова, В. А. Колычев // Вопросы радиоэлектроники. 2013. Сер. PJIT, вып. 2, с. 122-130.

2. Колычев В. А. Анализ уровня зрелости процессов организации производства и разработки программных продуктов / А. Г. Степанов, М. С. Смирнова, В. А. Копычев // Вопросы радиоэлектроники. 2014. Сер. ОТ, вып. 1, с. 114-121.

3. Копычев В. А. Определение приоритетных процессов организации производства в IT-компаниях / А. Г. Степанов, М. С. Смирнова, В. А. Копычев // Вопросы радиоэлектроники. 2014. Сер. ОТ, вып. 1, с. 109113.

4. Копычев В.А. Алгоритм управления качеством процесса разработки программного обеспечения на основе цикла DMAIC, Радиопромышленность, 2014, выпуск 2, с. 142-150.

Свидетельство на программу для электронных вычислительных машин

5. Копычев В. А., Лукашев А. В. Поисковая система «Я-РЯДОМ» (Система «Я-РЯДОМ»). Реестр программ для ЭВМ. Свидетельство №2012614274 от 14 мая 2012 года.

Статьи в сборниках научных трудов и материалов конференций:

6. Колычев В. А. Анализ современных подходов к повышению качества процесса разработки программного обеспечения - стандартов серии ISO 9000 и модели зрелости Capability Maturity Model / В. А. Копычев // Научная сессия ГУАП: сб.докл.: в 3 ч. 4.1. Технические науки. - СПб.: ГУАП, 2012, с. 163-166.

7. Копычев В. А. Обоснование необходимости разработки методики повышения качества процесса разработки программного обеспечения на основе моделей зрелости / В. А. Копычев // Научная сессия ГУАП: сб.докл.: в 3 ч. 4.1. Технические науки. - СПб.:ГУАП, 2013, с. 158-160.

8. Копычев В. А. Частичная формализация модели Capability Maturity Model Integration с использованием Web Ontology Language / В. А. Копычев // ГАГАРИНСКИЕ ЧТЕНИЯ. Научные труды Международной молодежной научной конференции в 9 томах, М.: МАТИ, Т.6. 2013, с. 112-113.

9. Копычев В. А. Определение интегрального показателя качества процесса разработки программного обеспечения / В. А. Копычев // Тринадцатая МеждуЕтродная научно-практическая конференция «Управление качеством» (сборник материалов), 2014, с. 160-162.

10. Копычев В.А. Оценка профилей возможностей процессов как инструмент управления качеством процесса разработки программного обеспечения / В. А. Копычев // Проблемы и направления развития систем качества: Материалы международной научно-практической конференции (Ульяновск, 27 марта 2014 г.). - Ульяновск: УлГТУ, 2014, с. 243-248.

11. Копычев В. А. Квалиметрические модели и средства управления качеством процесса разработки программного обеспечения / В. А. Копычев // Научная сессия ГУАП: сб.докл.: 4.1. Техн. науки. - СПб.:ГУАП, 2014, с. 158-160.

12. Копычев В. А. Алгоритмы и методики повышения качества процесса разработки программного обеспечения / В. А. Копычев // Формирование современного информационного общества - проблемы, перспективы, инновационные продукты. XV международный форум,- СПб, 2014, с. 53-56.

13.Копычев В. А. Повышение результативности процесса разработки программного обеспечения на основе создания формализованных моделей, процедур и методов поддержки принятия решений / В. А. Копычев // Материалы научно-технической конференции ОАО «НПП «Радар-ммс»». -Издательство ГЭТУ, 2014, с. 97-101.

Формат 60x84 1\16 .Бумага офсетная. _Тираж 100 экз. Заказ № 371._

Отпечатано с оригинал-макета автора в редакционно-издательском центре ГУАП 190000, Санкт-Петербург , Б. Морская ул., 67