SlideShare une entreprise Scribd logo
1  sur  22
Télécharger pour lire hors ligne
Software quality assurance days
17 Международная конференция
по вопросам качества ПО
sqadays.com
Минск. 29–30 мая 2015
Шабалина Анастасия
Performance Lab. Москва, Россия
Какой разработчик лучше?
Или как сравнить качество различных
систем?
1
Какой разработчик лучше?
Или как сравнить качество различных систем?
Участвую в проектах по
обеспечению качества для
Департамента Информационных Технологий
города Москва.
Приветствие
Анастасия Шабалина
2
Инженер по тестированию
в компании «Перфоманс лаб».
Какой разработчик лучше?
Или как сравнить качество различных систем?
Предоставление услуг по обеспечению качества
информационных систем.
Среди ключевых клиентов – государственные
организации, развивающих работу электронного
правительства РФ.
Приветствие
3
Какой разработчик лучше?
Или как сравнить качество различных систем?
Государственные IT компании
Специфика работы
Ключевой фактор –
стоимость услуг
подрядчика
Ограничения, связанные с
законодательством РФ
4
Какой разработчик лучше?
Или как сравнить качество различных систем?
Государственные IT компании
Специфика работы
Как эффективно контролировать
работу многочисленных
поставщиков?
5
Какой разработчик лучше?
Или как сравнить качество различных систем?
Постановка задачи
Сравнение качества автоматизированных систем
 разработанных различными подрядчиками
 с применением различных технологий
 имеющих различную биснес-логику
 находящихся на разных этапах
ЖЦПО
 различный объем
6
Какой разработчик лучше?
Или как сравнить качество различных систем?
Обзор существующих методов оценки
качества ПО
Метрики продукта – размер, сложность, особенности
конструкции, производительность, качество кода
Stephen H. Kan, Metrics and Models in Software Quality Engineering,
Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA ©2002
7
Какой разработчик лучше?
Или как сравнить качество различных систем?
Обзор существующих методов оценки
качества ПО
Метрики продукта – размер, сложность, особенности
конструкции, производительность, качество кода
Метрики процесса – эффективность деффектинга,
паттерн тестирования, среднее время устранения
дефектов
Stephen H. Kan, Metrics and Models in Software Quality Engineering,
Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA ©2002
8
Какой разработчик лучше?
Или как сравнить качество различных систем?
Обзор существующих методов оценки
качества ПО
Метрики продукта – размер, сложность, особенности
конструкции, производительность, качество кода
Метрики процесса – эффективность деффектинга,
паттерн тестирования, среднее время устранения
дефектов
Метрики проекта – число разработчиков, распределение
сотрудников в процессе жизненного цикла проекта, цена,
временные рамки, продуктивность
Stephen H. Kan, Metrics and Models in Software Quality Engineering,
Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA ©2002
9
Какой разработчик лучше?
Или как сравнить качество различных систем?
Требования к критерию сравнения
Универсальность – вычисляется из характеристик,
присущих любой автоматизированной системе
10
Какой разработчик лучше?
Или как сравнить качество различных систем?
Требования к критерию сравнения
Универсальность – вычисляется из характеристик,
присущих любой автоматизированной системе
Чувствительность – способен отразить наибольшее число
ошибок допущенных на всех стадиях разработки системы
11
Какой разработчик лучше?
Или как сравнить качество различных систем?
Требования к критерию сравнения
Универсальность – вычисляется из характеристик,
присущих любой автоматизированной системе
Чувствительность – способен отразить наибольшее число
ошибок допущенных на всех стадиях разработки системы
Доступность – вычисляется
посредством анализа результатов
тестирования
12
Какой разработчик лучше?
Или как сравнить качество различных систем?
Критерий сравнения. Формула
Kср = 𝛥𝐷𝑛𝑒𝑤 + 𝐷
𝜟𝑫𝒏𝒆𝒘 − число новых дефектов, заведенных за
определенный период (месяц)
𝑫 − число заведенных и неисправленных дефектов
в системе, измеряется с определенной
периодичностью (месяц)
13
Какой разработчик лучше?
Или как сравнить качество различных систем?
Критерий сравнения. Формула
𝑽тм − объем тестовой модели
(число тест-кейсов), величина, соответствующая
числу функциональных блоков в коде системы
Kср =
𝛥𝐷𝑛𝑒𝑤 + 𝐷
𝑉тм
14
Какой разработчик лучше?
Или как сравнить качество различных систем?
Критерий сравнения. Формула
𝛥 𝑽тм𝑵𝒆𝒘
𝑽тм
− Удельный объем прироста нового
функционала системы, при нормировании критерия
на параметр происходит приведение формулы к
упрощенному виду
Kср =
𝛥𝐷𝑛𝑒𝑤 + 𝐷
𝛥𝑉тм𝑁𝑒𝑤
15
Какой разработчик лучше?
Или как сравнить качество различных систем?
Критерий сравнения. Формула
𝑇1, 𝑇2, . . 𝑇𝑛 − обозначение различных типов
дефектов
𝑚1, 𝑚2, . . 𝑚𝑛 − весовые коэффициенты для
нормирования числа дефектов, в зависимости от их
уровня критичности, числа в диапазоне от 0 до 1
Kср=
𝛥𝐷𝑛𝑒𝑤𝑇1+𝐷𝑇1 ∗𝑚1+ 𝛥𝐷𝑛𝑒𝑤𝑇2+𝐷𝑇2 ∗𝑚2+..+ 𝛥𝐷𝑛𝑒𝑤𝑇𝑛 +𝐷𝑇𝑛 ∗𝑚𝑛
𝛥𝑉тм𝑁𝑒𝑤
16
Какой разработчик лучше?
Или как сравнить качество различных систем?
Примеры. Сравнение качества двух систем
17
Какой разработчик лучше?
Или как сравнить качество различных систем?
Критерий сравнения. Медианное значение
𝑀𝑒 – медианное значение полученное по всей выборке
значений критерия для каждой АС
Kср = 𝑀𝑒( 𝑚=1
𝑚=𝑛 𝛥𝐷𝑛𝑒𝑤+ 𝑚=1
𝑚=𝑛 𝐷
𝛥𝑉тм𝑁𝑒𝑤
)
18
Какой разработчик лучше?
Или как сравнить качество различных систем?
Критерий сравнения. Показатель динамики
Рассчитывается на основе значения наклона тренда линейной
регрессии распределения значений критерия от времени
• Отрицательный наклон –
качество улучшается
• Положительный наклон –
качество ухудшается
• Нулевое значение –
качество не изменяется
со временем
19
Какой разработчик лучше?
Или как сравнить качество различных систем?
Критерий сравнения. Показатель динамики
Kср = 𝑀𝑒( 𝑚=1
𝑚=𝑛 𝛥𝐷𝑛𝑒𝑤+ 𝑚=1
𝑚=𝑛 𝐷
𝛥𝑉тм𝑁𝑒𝑤
) + 𝑒 𝑏
∗ 𝑘
𝒃 – значение наклона тренда
𝒆 – произвольное основание
больше 1
𝒌 – произвольный весовой
коэффициент, модулирует
влияние на основное
значение
20
Какой разработчик лучше?
Или как сравнить качество различных систем?
Область применения
Компании заказчику для эффективного взаимодействия с
большим числом различных поставщиков IT систем,
необходима сравнительная оценка качества их услуг, на
которую можно ориентироваться при оценке качества
отдельного поставщика.
Заказчик сталкивается с выбором наиболее оптимальной
системы из ряда аналогичных по функциональности.
Частный случай – филиальная система.
21
Какой разработчик лучше?
Или как сравнить качество различных систем?
Спасибо за внимание!
Контакты:
Данила Павлюченко – соавтор доклада
E-mail: d.pavlyuchenko@pflb.ru
Шабалина Анастасия – докладчик
E-mail: a.shabalina@pflb.ru
22

Contenu connexe

Similaire à Какой разработчик лучше? Или как сравнивать качество различных систем?

Надежный тест-дизайн
Надежный тест-дизайнНадежный тест-дизайн
Надежный тест-дизайнSQALab
 
Эффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитикаЭффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитикаSQALab
 
Оценка эффективности работы аналитика
Оценка эффективности работы аналитикаОценка эффективности работы аналитика
Оценка эффективности работы аналитикаSQALab
 
Александр Александров -- Надёжный тест-дизайн (мастер-класс)
Александр Александров -- Надёжный тест-дизайн (мастер-класс)Александр Александров -- Надёжный тест-дизайн (мастер-класс)
Александр Александров -- Надёжный тест-дизайн (мастер-класс)sqadays8
 
Тестирование осень 2013 лекция 1
Тестирование осень 2013 лекция 1Тестирование осень 2013 лекция 1
Тестирование осень 2013 лекция 1Technopark
 
Vladimir Itsykson. CSEDays
Vladimir Itsykson. CSEDaysVladimir Itsykson. CSEDays
Vladimir Itsykson. CSEDaysLiloSEA
 
Варианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектовВарианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектовSQALab
 
Mind map для «Архитектура А/Б тестирования: сделай сам»
Mind map для «Архитектура А/Б тестирования: сделай сам»Mind map для «Архитектура А/Б тестирования: сделай сам»
Mind map для «Архитектура А/Б тестирования: сделай сам»Sergey Xek
 
Тестирование весна 2014 лекция 1
Тестирование весна 2014 лекция 1Тестирование весна 2014 лекция 1
Тестирование весна 2014 лекция 1Technopark
 
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014it-people
 
ук 03.007.02 2011
ук 03.007.02 2011ук 03.007.02 2011
ук 03.007.02 2011etyumentcev
 
Тестирование весна 2013 лекция 2
Тестирование весна 2013 лекция 2Тестирование весна 2013 лекция 2
Тестирование весна 2013 лекция 2Technopark
 
Использование комбинаторного тестирования для мобильных приложений
Использование комбинаторного тестирования для мобильных приложенийИспользование комбинаторного тестирования для мобильных приложений
Использование комбинаторного тестирования для мобильных приложенийSQALab
 
Ігор Лужанський Театр начинается с вешалки или тестирование требований
Ігор Лужанський Театр начинается с вешалки или тестирование требованийІгор Лужанський Театр начинается с вешалки или тестирование требований
Ігор Лужанський Театр начинается с вешалки или тестирование требованийDakiry
 
Тестирование осень 2013 лекция 2
Тестирование осень 2013 лекция 2Тестирование осень 2013 лекция 2
Тестирование осень 2013 лекция 2Technopark
 
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...COMAQA.BY
 

Similaire à Какой разработчик лучше? Или как сравнивать качество различных систем? (20)

Надежный тест-дизайн
Надежный тест-дизайнНадежный тест-дизайн
Надежный тест-дизайн
 
Эффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитикаЭффективное взаимодействие тестировщика и аналитика
Эффективное взаимодействие тестировщика и аналитика
 
Analyst Days 2014
Analyst Days 2014Analyst Days 2014
Analyst Days 2014
 
Оценка эффективности работы аналитика
Оценка эффективности работы аналитикаОценка эффективности работы аналитика
Оценка эффективности работы аналитика
 
Александр Александров -- Надёжный тест-дизайн (мастер-класс)
Александр Александров -- Надёжный тест-дизайн (мастер-класс)Александр Александров -- Надёжный тест-дизайн (мастер-класс)
Александр Александров -- Надёжный тест-дизайн (мастер-класс)
 
Тестирование осень 2013 лекция 1
Тестирование осень 2013 лекция 1Тестирование осень 2013 лекция 1
Тестирование осень 2013 лекция 1
 
Vladimir Itsykson. CSEDays
Vladimir Itsykson. CSEDaysVladimir Itsykson. CSEDays
Vladimir Itsykson. CSEDays
 
Варианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектовВарианты использования (use cases) для быстрой оценки проектов
Варианты использования (use cases) для быстрой оценки проектов
 
Mind map для «Архитектура А/Б тестирования: сделай сам»
Mind map для «Архитектура А/Б тестирования: сделай сам»Mind map для «Архитектура А/Б тестирования: сделай сам»
Mind map для «Архитектура А/Б тестирования: сделай сам»
 
Тестирование весна 2014 лекция 1
Тестирование весна 2014 лекция 1Тестирование весна 2014 лекция 1
Тестирование весна 2014 лекция 1
 
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
Н. Желнова "Оценка эффективности работы аналитика", DUMP-2014
 
ук 03.007.02 2011
ук 03.007.02 2011ук 03.007.02 2011
ук 03.007.02 2011
 
Тестирование весна 2013 лекция 2
Тестирование весна 2013 лекция 2Тестирование весна 2013 лекция 2
Тестирование весна 2013 лекция 2
 
Msf Dz
Msf DzMsf Dz
Msf Dz
 
Использование комбинаторного тестирования для мобильных приложений
Использование комбинаторного тестирования для мобильных приложенийИспользование комбинаторного тестирования для мобильных приложений
Использование комбинаторного тестирования для мобильных приложений
 
Ігор Лужанський Театр начинается с вешалки или тестирование требований
Ігор Лужанський Театр начинается с вешалки или тестирование требованийІгор Лужанський Театр начинается с вешалки или тестирование требований
Ігор Лужанський Театр начинается с вешалки или тестирование требований
 
Тестирование осень 2013 лекция 2
Тестирование осень 2013 лекция 2Тестирование осень 2013 лекция 2
Тестирование осень 2013 лекция 2
 
01ka-nov
01ka-nov01ka-nov
01ka-nov
 
Test management print
Test management printTest management print
Test management print
 
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...Quality Assurance vs Quality Control - так в чем же заключается работа специа...
Quality Assurance vs Quality Control - так в чем же заключается работа специа...
 

Plus de SQALab

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировкуSQALab
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаSQALab
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиSQALab
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияSQALab
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...SQALab
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testingSQALab
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженSQALab
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииSQALab
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовSQALab
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовSQALab
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsSQALab
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеSQALab
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииSQALab
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеSQALab
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестированиеSQALab
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"SQALab
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовSQALab
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных системSQALab
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросSQALab
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...SQALab
 

Plus de SQALab (20)

Готовим стажировку
Готовим стажировкуГотовим стажировку
Готовим стажировку
 
Куда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщикаКуда приводят мечты? или Искусство развития тестировщика
Куда приводят мечты? или Искусство развития тестировщика
 
Оптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержкиОптимизация Selenium тестов и ускорение их поддержки
Оптимизация Selenium тестов и ускорение их поддержки
 
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программированияАвтоматизация 0.0: 0 - бюджет, 0 - опыт программирования
Автоматизация 0.0: 0 - бюджет, 0 - опыт программирования
 
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
Нагрузочное тестирование нестандартных протоколов с использованием Citrix и J...
 
Continuous performance testing
Continuous performance testingContinuous performance testing
Continuous performance testing
 
Конфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нуженКонфиги вместо костылей. Pytestconfig и зачем он нужен
Конфиги вместо костылей. Pytestconfig и зачем он нужен
 
Команда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихииКоманда чемпионов в ИТ стихии
Команда чемпионов в ИТ стихии
 
API. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советовAPI. Серебряная пуля в магазине советов
API. Серебряная пуля в магазине советов
 
Добиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестовДобиваемся эффективности каждого из 9000+ UI-тестов
Добиваемся эффективности каждого из 9000+ UI-тестов
 
Делаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIsДелаем автоматизацию проектных KPIs
Делаем автоматизацию проектных KPIs
 
Вредные привычки в тест-менеджменте
Вредные привычки в тест-менеджментеВредные привычки в тест-менеджменте
Вредные привычки в тест-менеджменте
 
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизацииМощь переполняет с JDI 2.0 - новая эра UI автоматизации
Мощь переполняет с JDI 2.0 - новая эра UI автоматизации
 
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
Стили лидерства и тестирование
Стили лидерства и тестированиеСтили лидерства и тестирование
Стили лидерства и тестирование
 
"Давайте не будем про качество"
"Давайте не будем про качество""Давайте не будем про качество"
"Давайте не будем про качество"
 
Apache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектовApache.JMeter для .NET-проектов
Apache.JMeter для .NET-проектов
 
Тестирование геолокационных систем
Тестирование геолокационных системТестирование геолокационных систем
Тестирование геолокационных систем
 
Лидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопросЛидер или босс? Вот в чем вопрос
Лидер или босс? Вот в чем вопрос
 
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
 

Какой разработчик лучше? Или как сравнивать качество различных систем?

  • 1. Software quality assurance days 17 Международная конференция по вопросам качества ПО sqadays.com Минск. 29–30 мая 2015 Шабалина Анастасия Performance Lab. Москва, Россия Какой разработчик лучше? Или как сравнить качество различных систем? 1
  • 2. Какой разработчик лучше? Или как сравнить качество различных систем? Участвую в проектах по обеспечению качества для Департамента Информационных Технологий города Москва. Приветствие Анастасия Шабалина 2 Инженер по тестированию в компании «Перфоманс лаб».
  • 3. Какой разработчик лучше? Или как сравнить качество различных систем? Предоставление услуг по обеспечению качества информационных систем. Среди ключевых клиентов – государственные организации, развивающих работу электронного правительства РФ. Приветствие 3
  • 4. Какой разработчик лучше? Или как сравнить качество различных систем? Государственные IT компании Специфика работы Ключевой фактор – стоимость услуг подрядчика Ограничения, связанные с законодательством РФ 4
  • 5. Какой разработчик лучше? Или как сравнить качество различных систем? Государственные IT компании Специфика работы Как эффективно контролировать работу многочисленных поставщиков? 5
  • 6. Какой разработчик лучше? Или как сравнить качество различных систем? Постановка задачи Сравнение качества автоматизированных систем  разработанных различными подрядчиками  с применением различных технологий  имеющих различную биснес-логику  находящихся на разных этапах ЖЦПО  различный объем 6
  • 7. Какой разработчик лучше? Или как сравнить качество различных систем? Обзор существующих методов оценки качества ПО Метрики продукта – размер, сложность, особенности конструкции, производительность, качество кода Stephen H. Kan, Metrics and Models in Software Quality Engineering, Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA ©2002 7
  • 8. Какой разработчик лучше? Или как сравнить качество различных систем? Обзор существующих методов оценки качества ПО Метрики продукта – размер, сложность, особенности конструкции, производительность, качество кода Метрики процесса – эффективность деффектинга, паттерн тестирования, среднее время устранения дефектов Stephen H. Kan, Metrics and Models in Software Quality Engineering, Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA ©2002 8
  • 9. Какой разработчик лучше? Или как сравнить качество различных систем? Обзор существующих методов оценки качества ПО Метрики продукта – размер, сложность, особенности конструкции, производительность, качество кода Метрики процесса – эффективность деффектинга, паттерн тестирования, среднее время устранения дефектов Метрики проекта – число разработчиков, распределение сотрудников в процессе жизненного цикла проекта, цена, временные рамки, продуктивность Stephen H. Kan, Metrics and Models in Software Quality Engineering, Addison-Wesley Longman Publishing Co., Inc. Boston, MA, USA ©2002 9
  • 10. Какой разработчик лучше? Или как сравнить качество различных систем? Требования к критерию сравнения Универсальность – вычисляется из характеристик, присущих любой автоматизированной системе 10
  • 11. Какой разработчик лучше? Или как сравнить качество различных систем? Требования к критерию сравнения Универсальность – вычисляется из характеристик, присущих любой автоматизированной системе Чувствительность – способен отразить наибольшее число ошибок допущенных на всех стадиях разработки системы 11
  • 12. Какой разработчик лучше? Или как сравнить качество различных систем? Требования к критерию сравнения Универсальность – вычисляется из характеристик, присущих любой автоматизированной системе Чувствительность – способен отразить наибольшее число ошибок допущенных на всех стадиях разработки системы Доступность – вычисляется посредством анализа результатов тестирования 12
  • 13. Какой разработчик лучше? Или как сравнить качество различных систем? Критерий сравнения. Формула Kср = 𝛥𝐷𝑛𝑒𝑤 + 𝐷 𝜟𝑫𝒏𝒆𝒘 − число новых дефектов, заведенных за определенный период (месяц) 𝑫 − число заведенных и неисправленных дефектов в системе, измеряется с определенной периодичностью (месяц) 13
  • 14. Какой разработчик лучше? Или как сравнить качество различных систем? Критерий сравнения. Формула 𝑽тм − объем тестовой модели (число тест-кейсов), величина, соответствующая числу функциональных блоков в коде системы Kср = 𝛥𝐷𝑛𝑒𝑤 + 𝐷 𝑉тм 14
  • 15. Какой разработчик лучше? Или как сравнить качество различных систем? Критерий сравнения. Формула 𝛥 𝑽тм𝑵𝒆𝒘 𝑽тм − Удельный объем прироста нового функционала системы, при нормировании критерия на параметр происходит приведение формулы к упрощенному виду Kср = 𝛥𝐷𝑛𝑒𝑤 + 𝐷 𝛥𝑉тм𝑁𝑒𝑤 15
  • 16. Какой разработчик лучше? Или как сравнить качество различных систем? Критерий сравнения. Формула 𝑇1, 𝑇2, . . 𝑇𝑛 − обозначение различных типов дефектов 𝑚1, 𝑚2, . . 𝑚𝑛 − весовые коэффициенты для нормирования числа дефектов, в зависимости от их уровня критичности, числа в диапазоне от 0 до 1 Kср= 𝛥𝐷𝑛𝑒𝑤𝑇1+𝐷𝑇1 ∗𝑚1+ 𝛥𝐷𝑛𝑒𝑤𝑇2+𝐷𝑇2 ∗𝑚2+..+ 𝛥𝐷𝑛𝑒𝑤𝑇𝑛 +𝐷𝑇𝑛 ∗𝑚𝑛 𝛥𝑉тм𝑁𝑒𝑤 16
  • 17. Какой разработчик лучше? Или как сравнить качество различных систем? Примеры. Сравнение качества двух систем 17
  • 18. Какой разработчик лучше? Или как сравнить качество различных систем? Критерий сравнения. Медианное значение 𝑀𝑒 – медианное значение полученное по всей выборке значений критерия для каждой АС Kср = 𝑀𝑒( 𝑚=1 𝑚=𝑛 𝛥𝐷𝑛𝑒𝑤+ 𝑚=1 𝑚=𝑛 𝐷 𝛥𝑉тм𝑁𝑒𝑤 ) 18
  • 19. Какой разработчик лучше? Или как сравнить качество различных систем? Критерий сравнения. Показатель динамики Рассчитывается на основе значения наклона тренда линейной регрессии распределения значений критерия от времени • Отрицательный наклон – качество улучшается • Положительный наклон – качество ухудшается • Нулевое значение – качество не изменяется со временем 19
  • 20. Какой разработчик лучше? Или как сравнить качество различных систем? Критерий сравнения. Показатель динамики Kср = 𝑀𝑒( 𝑚=1 𝑚=𝑛 𝛥𝐷𝑛𝑒𝑤+ 𝑚=1 𝑚=𝑛 𝐷 𝛥𝑉тм𝑁𝑒𝑤 ) + 𝑒 𝑏 ∗ 𝑘 𝒃 – значение наклона тренда 𝒆 – произвольное основание больше 1 𝒌 – произвольный весовой коэффициент, модулирует влияние на основное значение 20
  • 21. Какой разработчик лучше? Или как сравнить качество различных систем? Область применения Компании заказчику для эффективного взаимодействия с большим числом различных поставщиков IT систем, необходима сравнительная оценка качества их услуг, на которую можно ориентироваться при оценке качества отдельного поставщика. Заказчик сталкивается с выбором наиболее оптимальной системы из ряда аналогичных по функциональности. Частный случай – филиальная система. 21
  • 22. Какой разработчик лучше? Или как сравнить качество различных систем? Спасибо за внимание! Контакты: Данила Павлюченко – соавтор доклада E-mail: d.pavlyuchenko@pflb.ru Шабалина Анастасия – докладчик E-mail: a.shabalina@pflb.ru 22