контроля качества ПО. развития службы Три ступени Докладчик: Гринкевич Сергей
Три источника и три составных части … тестирования Установка процесса Оптимизация процесса Управление процессом Время Эффективность
Процесс: тест Гринкевича 1/6 Есть ли у вас ТЕСТИРОВЩИКИ? 1.Специализация 2.Оптимизация затрат 3.Ориентированность на выявление проблемы
Процесс: тест Гринкевича 2/6 Есть ли у вас сформулированная СТРАТЕГИЯ ТЕСТИРОВАНИЯ? 1.Тестовые данные – классы эквивалентности 2.Управление рисками 3.Автоматизация
Процесс: тест Гринкевича 3/6 Используется ли СИСТЕМА УЧЕТА ДЕФЕКТОВ? 1.Тестировщик разработчик 2.Источник первичной отчетности 3.Повседневный инструмент менеджера
Процесс: тест Гринкевича 4/6 Есть ли у вас изолированное ТЕСТОВОЕ ОКРУЖЕНИЕ? 1.Тестирование стабильной версии 2.Исключение несанкционированных изменений в коде 3.Прогнозируемость характеристик системы
Процесс: тест Гринкевича 5/6 Применяется ли процедура передачи НОВОЙ ВЕРСИИ ПРОГРАММЫ В ТЕСТИРОВАНИЕ? 1.Определение / уточнения объектов 2.Исключение простоя 3.Передача ответственности
Процесс: тест Гринкевича 6/6 Есть ли у вас процедура ОЦЕНКИ ГОТОВНОСТИ ПРОГРАММЫ? 1.Критерии 2.Измерения 3.Решения
1.Проанализировать функциональное требование 2.Разработать тест-кейс 3.Выполнить тест кейс 4.Найти дефект 5.Открыть файл и внести запись о дефекте 6.Отправить дефект разработчику 7.Получить ответ разработчика о том, что это не дефект 8.Написать разработчику, что это все же дефект 9.… 10.Вспомнить, что разработчик ответил про дефект 11.Сделать расчет показателей тестирования 12.Написать отчет Оптимизация процесса 1/2 1.Связать функциональное требование с тест-кейсом 2.Нажать кнопку и сгенерировать шаблон тест-кейса и заполнить поля 3.Выполнить тест-кейс 4.Найти дефект 5.Нажать кнопку и сгенерировать запись о дефекте, заполнить поля 6.В записи о дефекте получить пояснения разработчика 7.Написать разработчику о том, что это все же дефект 8.… 9.Нажать кнопку и сгенерировать отчет
Оптимизация процесса 2/2 Экспертные знания Пользовательский интерфейс Функциональные и не функциональные требования Программные компоненты Аппаратные компоненты Моделирование Тестирование Отчет Анализ требований Моделирование тестов Моделирование тестовых данных Составление тест кейсов Программирование тестов Создание тестового окружения Компоновка тест планов (сьютов) Выполнение тестов Документирование / проверка дефектов Регистрация результатов Анализ результатов тестирования Вычисление показателей Создание отчетов Определение степени готовности
Управление процессом 1/2 Возврат инвестиций (ROI = (прибыль – затраты)/затраты) Обнаружение ошибок, которые устраняются Обнаружение ошибок, которые не устраняются (но мы знаем о них) Проведение тестов, которые снижают (потенциально затратные) риски Обеспечение проекта своевременной, точной и заслуживающей доверия информацией Управление процессом Оптимизация затрат на тестирование Минимизация (потенциально затратных) рисков
Пример: исходные данные Среднее количество ошибок – 35 на человеко-месяц* Команда разработчиков – 10 человек Срок активной разработки – 6 месяцев 1.Предполагаемое количество дефектов ~ Данные по росту стоимости дефекта 3.Степень выявления дефектов на стадии тестирования – 80%*, что в количественном выражении составляет Бюджет на тестирование – $ ЭтапПроектированиеРазработкаТестированиеСопровождение Стоимость1 $10 $100 (500**) $1000 $ Управление процессом 2/2
Спасибо за внимание! Вопросы?