SlideShare a Scribd company logo
1 of 44
Ответственность
за качество в разных ИТ-проектах:
в чем она и как ее разделять
Максим Цепков
Главный архитектор дирекции развития решений
Минск, 25 ноября 2016
Software quality assurance days (SQA days)
 Многие полагают, что понятия однозначны и фразу
«Проект надо сделать качественно, и тестировщик
отвечает за это» все должны понимать одинаково
 На самом деле, мир меняется, а смысл понятий
меняется вместе с ним
 В головах многих смысл остается таким,
каким был в момент узнавания
 Мы поговорим о том, какое бывает качество
проектов и за что отвечают тестировщики
Тестировщик и качество:
знаем ли мы смысл понятий?
Чтобы вы понимали весь спектр и это не стало
неожиданностью в новом проекте или компании 2/44
 Какое качество нужно разным проектам?
 Как менялись представления о «качественном проекте»
 Какое качество нужно для разной ИТ-разработки
 Качество: кто и за что отвечает?
 Между кем разделяется ответственность
 Как работать с границами ответственности
и какова ответственность тестировщика
 А как все-таки меняются смыслы?
 Team: как нам понимать друг друга и эффективно
сотрудничать
План доклада
3/44
Как менялись представления
о «качественном проекте»
По мотивам доклада «Развитие критериев качества
и управления проектами» на AgileDays – 2015
4/44
Big Picture истории развития
Эпоха НИОКР
Время
Способ
работы
«Новое время»
 Удовлетворенность стейкхолдеров
 Достижение бизнес-целей продукта
 Каждой ИТ-разработке – свой метод
Эпоха RUP
Время SCRUM
1960 1990 2005 2013
5/44
 Создавались большие
и сложные проекты
 Требования к проектам редко менялись
 Проекты делал квалифицированный
персонал
 Упор был на качество ИТ-системы
Эпоха НИОКР:
когда компьютеры были большими
Ф. Брукс
«Мифический человеко-месяц»
Цель проекта – создать совершенную
ИТ-систему в одном экземпляре
6/44
 Применим к ИТ-разработке принципы
промышленного производства
 Разделим задачу на этапы:
проектирование, разработка, внедрение
 Наладим процессы и разделим зоны
ответственности
Эпоха RUP: персоналки
потребовали много разработчиков
PMBOK-3 (2004)
RUP (2003)
Оценка качества: удалось ли выполнить
проект в срок, уложиться в бюджет и достичь
ожидаемых результатов
7/44
Получалось не очень
Природа ИТ мешает процедурам
Jack W. Reeves «What is software design» (1992; перевод)
Конструирование
системы
Обычный НИОКР
ПроизводствоПроект
ИТ-разработка
Архитектура
и дизайн
Тех.
проект Кодирование
Вещь
Прило-
жение
Код
Архитектура
и дизайн
Кодиро-
вание
Прило-
жение
Компиляция
(build)
Несмотря на тяжелые и дорогие процедуры, успешность
проектов была низкой. Не получалось обеспечить гибкость,
а успех определялся людьми, которых не хватало
8/44
 Вместо тщательного
планирования – наблюдение
за траекторией движения проекта
и приближением к цели
 Концепция SMART-целей, измеримость
достижения
 Итеративное движение с корректировкой
положения цели (требования к системе)
Agile и SCRUM: ответ на вызовы
Гибкость
и наблюдаемость
Качественный проект – это частые
инкрементальные поставки нужного софта
9/44
 От проектной деятельности –
к непрерывному развитию продукта
 От качества ИТ-системы –
к удовлетворенности стейкхолдеров
 От создания системы – к достижению
возможностей для бизнеса и пользователя
 Каждой ИТ-разработке – свой метод
А что сейчас: векторы развития
Канбан в ИТ (2010)
DevOps (2012)
PMBOK 5 (2013)
частично
Качественная ИТ-разработка удовлетворяет
стейкхолдеров и обеспечивает возможности
для бизнеса
10/44
 Моя схема сильно похожа на схему
четырех культур Энтони Лаудера
 Научная
 Заводская
 Дизайнерская
 Сервисная
 Содержание уровней отличается
Энтони Лаудер
«Культуры программных проектов»
Оригинал, перевод (pdf),
рецензия Стаса Фомина
11/44
Если схема Лаудера вам подойдет больше, используйте ее.
Нет смысла выяснять, какая правильнее
Какое качество нужно для разной
ИТ-разработки?
Слово «проект» исчезло не случайно.
Меняем не только смысл, но и понятие!
Вместо «проекта» – предприНятие, endeavor
12/44
Каждый этап добавлял новые фокусы
качества, а не отменял старые
13/44
Время
Фокусы
качества
1960 1990 2005 2013
ИТ-проект
Возможности для бизнеса
Удовлетворенность
стейкхолдеров
Достижение результата разработки
Совершенство процесса разработки
Техническое совершенство системы
ИТ-система
 Стандарт на сайте OMG
 Конкретные описания на сайте И. Якобсона
 Книга И. Якобсона The Essence of Software Engineering
 Курс системного мышления А. Левенчука (pdf)
OMG Essence – пространство
привязки фокусов качества
Requirements
Design
Implementation
Verification
Maintenance
Создан группой SEMAT
под руководством
И. Якобсона
Предыдущая
такая схема –
водопад Ройса
14/44
Endeavor,
а не project
15/44
Система понятна как черный ящик,
но сложно устроена – НИОКР
Фокус
на создаваемую систему
Требования точны
и статичны
Область использования не важна
16/44
Квалифицированная
команда знает
ИТ-технологии
Система понятна как белый ящик –
организуем процесс разработки
17/44
Требования тоже
собираем по процессу
Система получится сама,
хотя протестировать надо
Команда и ИТ-технологии
должны быть адекватны
технологии процесса
Главное – процесс, его дают
технологии проектной работы,
обеспечивая выполнение задач
Область использования не важна
Образ системы неясен – приближаемся
к нему итерациями
18/44
Работаем с требованиями
и задачами в рамках принятого
метода разработки
Команда следует
ценностям и методам
гибкой разработки
Объективно или из-за ограниченной
квалификации командыПостоянная проверка
у стейкхолдеров:
«Система делает то, что надо?»
Непрерывная эволюция системы
вслед за изменениями окружения
19/44
Требования фиксируют
потребность
в изменениях
Система быстро
изменяется, удовлетворяя
стейкхолдеров
Технологии поддерживают
гибкость системы и быстрое
прохождение задач
Стейкхолдеры требуют изменений
системы, исходя из изменений в мире
Команда нацелена на результат
и сама является заинтересованным
стейкхолдером
Система обеспечивает ожидаемые
возможности развития бизнеса
20/44
Требования говорят о гипотезах
изменений, требующих быстрой проверки
Технологии поддерживают
гибкость системы и быстрое
прохождение задач
Возможности в мире – драйвер
изменений системы
Стейкхолдеры мониторят
изменения мира
Система быстро изменяется
вслед за миром
Команда нацелена на результат
и сама является заинтересованным
стейкхолдером
Между кем разделяется
ответственность
Развитие доклада «Разделение ответственности
в заказной разработке» на AnalystDays – 2015
21/44
 Quality Engineer отвечает за качество ИТ-системы
и проверяет ее тестированием
 Quality Assurance отвечает
за качество процесса, которое
в замысле должно привести
к качеству системы
 Это лишь два фокуса
ответственности из многих
 Остальные могут быть
возложены на тех же людей
или на отдельных лиц
QE и QA – послание от RUP
Казалось бы,
просто
22/44
Прежде чем говорить об ответственности,
следует понять, между кем она распределяется
Кто действующие лица?
Команда
Заказчик
Concept
Requirements
and Architecture
Detailed
Design
Implementation
Integration
and Test
System
Verification
Maintenance
Используем
V-диаграмму
23/44
Команда включает много ролей
24/44
Команда
Все границы
ответственности
подвижны
Заказчик
Разработчик
System
Verification
Maintenance
Implementation
Requirements
and Architecture
Concept
Product Owner
Архитектор
Аналитик
Внедрение
и поддержка
Тестировщик
Integration
and Test
Detailed
Design
Не все роли могут присутствовать,
а область заказчика может быть меньше
25/44
Команда
Ответственность
тестировщика может
расширяться
Заказчик
Разработчик
System
Verification
Maintenance
Implementation
Requirements
and Architecture
Concept
Product Owner
Тестировщик
Integration
and Test
Detailed
Design
Тестировщик
А еще нужно делить
ответственность за артефакты
26/44
Команда
Заказчик
Разработчик
System
Verification
Maintenance
Implementation
Requirements
and Architecture
Concept
Product Owner
Архитектор
Аналитик
Внедрение
и поддержка
Тестировщик
Integration
and Test
Detailed
Design
ПО
Требования
Модель системы
Тест-кейсы
Версия
заказчику
Версия на
тестирование
Backlog
Как работать с границами
ответственности и какова
ответственность тестировщика
27/44
 Альфы задают объекты,
состояния которых отражают движение проекта
 Ответственность делится по этим объектам
 Check lists состояний определяют,
в чем ответственность
 Lifecycle-диаграмма иерархична: можно представить
весь проект, его релиз, спринт или разработку фичи
Используем Lifecycle OMG Essence
Артефакт – частный вид объекта
28/44
Пример: жизненный цикл
«стандартного» проекта
29/44
Простейший вариант –
ответственность за проверку задачи
Work
Ready
Verified
Prepared
Req
User story
проработана
User story Task
30/44
User story готова
Разработка
Тестирование
Аналитик
Разработчик
Тестировщик
Ответственность
за готовность user story
Work
Ready
Verified
Prepared
Req
Разработка
тест-кейсов
User story Task
User story готова
Разработка user story может
включать много задач
Аналитик
Разработчик
Тестировщик
Test case
Что является
квантом работы?
Tecт-кейс
тестирует
требования?
По каким задачам описывают
user story и тест-кейсы?
Есть ли индивидуальная
проверка задач?
31/44
Ответственность за поставку системы
32/44
Work
Ready
Verified
Prepared
Req
User story Task
Аналитик
Разработчик
Тестировщик
Test case
Delivered
System
Release
Накопление
релиза
В тестовой среде
В боевой среде
Доставлено вместе с релизом
Тестировщик
разрабатывает
автотесты?
Отвечает
за поставку тестировщик?
Поставка релизами
или continuous delivery?
 Этот способ работы в вашей разработке сложился
исторически или был спроектирован?
 Способ был адекватен особенностям разработки?
Какие цели он обеспечивает?
 Способ продолжает оставаться адекватным сейчас
или его пора заменять? Чем его заменять?
Что значит «может быть так»?
Нужно ли иначе?
Это вопросы к альфе
технологий, Way Of Working
33/44
Как тестировщики участвуют
в формировании технологий?
 Нужна ли разработке continuous delivery
или уместна поставка релизов?
 Нужны ли разработке автотесты и если нужны,
то в каком объеме?
Как определять технологии?
Это зависит от назначения разработки.
Альфы Opportunity и Stakeholder
34/44
Удовлетворенность стейкхолдеров
и обеспечение возможностей бизнеса
35/44
Opp StkH Req ReqWork
Заказчик Product
Owner Аналитик
Разработчик
Тестировщик
Внедрение
и поддержка
Cтейкхолдер
обнаружил
возможность
Возможности
достигаются
Стейкхолдеры
удовлетворены
Фича
в эксплуатации
Для реализации
возможности
разработали фичу
А кто и как
проверяет цели и их достижение?
36/44
Opp StkH Req ReqWork
А это возможность
или гипотеза о ней?
А фича адекватна
возможности?
Кто и как определяет
достижение возможностей?
Кто и как оценивает
удовлетворенность?
Кто проверяет
эксплуатацию?
Заказчик Product
Owner Аналитик
Внедрение
и поддержка
Разработчик
Тестировщик
 Заказчик отвечает за опознание
возможности или выдает гипотезы?
 Могут ли стейкхолдеры заказчика оценить
проект фичи на соответствие возможности?
 Проявляют ли стейкхолдеры заказчика
возможности для бизнеса в своих запросах?
Ответственность за возможности
37/44
 Необходимо определить ответственность
и способ оценки гипотез
 Предпочтительно continuous delivery
для быстрого цикла реализации
 Полезно A/B-тестирование
 Полезно применять тестирование гипотез
до реализации или с помощью макетов
Если возможности – лишь гипотезы
или нет гарантии их достижения
A/B-тестирование и проверка на макетах может
входить в обязанности тестировщика, а может
выполняться аналитиком или маркетологом
38/44
 Можно ли автоматически проверить
критичный функционал?
 Что тестируем автоматически?
 Отгружает релиз человек или автомат?
 Можно ли отменить отгрузку?
 Кто пишет новости версии?
 Эксплуатация – отдельная команда?
 Кто обучает пользователей?
Как релиз приходит к пользователям?
DevOps
Continuous
delivery
Область ответственности тестировщика и способ
его работы сильно зависят от ответов на эти вопросы
39/44
Team: как нам понимать друг друга
и эффективно сотрудничать
40/44
 Каковы ценности и нормы?
 Как организована команда?
 Как организовано взаимодействие?
 Как решаются конфликты?
 Как идет передача ответственности?
Team
Представления о ценностях и нормах образуют
устойчивые фреймы.
Их модель дает Спиральная динамика,
где выделено 8 уровней
41/44
Что значит «протестировать релиз»?
Потыкать что-нибудь
Проверить, как у нас принято
Героически проверить все, что смог придумать
Провести проверку строго по регламенту
Проверить сложные нетривиальные кейсы
Вместе со всеми тестировать и тестировать
Проверить в срок критичные кейсы и новый функционал
Проверить с учетом ожиданий заказчика, сроков и функционала релиза
Из доклада «Действуй, опираясь на ценности» на AgileDays – 2016
42/44
Что значит
«успешно завершить проект»?
43/44
Наконец-то у меня приняли этот проект
Танцы с бубнами вокруг непонятных замечаний завершились успешно
Я заставил принять проект и признать нашу правоту, несмотря на врагов
В соответствии с процедурами и регламентами проект сдан заказчику
Мы поняли интересы принимающих и обеспечили их удовлетворение
Проект стал частью большого общего дела
Результат проекта оправдывает ожидания
Результат встроился в большую систему, принес плоды и развивается
Из доклада «Действуй, опираясь на ценности» на AgileDays – 2016
 Каждой ИТ-разработке нужно свое качество
 Ответственность тоже делится по-своему
 Надо договариваться об идеальной
картине, учитывая:
 представления стейкхолдеров и команды
 объективные особенности проекта
 А затем – работать над воплощением идеала
Подводя итоги
Спасибо! Вопросы?
Максим Цепков mtsepkov.org
44/44

More Related Content

What's hot

Обучение IT-аналитиков
Обучение IT-аналитиковОбучение IT-аналитиков
Обучение IT-аналитиковNatalia Zhelnova
 
Будущее уже наступило: от Agile к бирюзовым организациям
Будущее уже наступило: от Agile к бирюзовым организациямБудущее уже наступило: от Agile к бирюзовым организациям
Будущее уже наступило: от Agile к бирюзовым организациямCUSTIS
 
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?SQALab
 
Разработка веб-сервисов осень 2013 лекция 2
Разработка веб-сервисов осень 2013 лекция 2Разработка веб-сервисов осень 2013 лекция 2
Разработка веб-сервисов осень 2013 лекция 2Technopark
 
Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"Evgeniy Krivosheev
 
требования к кандидату
требования к кандидатутребования к кандидату
требования к кандидатуNatalia Zhelnova
 
Стандарт OMG Essence - в чем польза для аналитика?
Стандарт OMG Essence - в чем польза для аналитика?Стандарт OMG Essence - в чем польза для аналитика?
Стандарт OMG Essence - в чем польза для аналитика?Yury Kupriyanov
 
Задачи системного аналитика (конспект лекций Школы системного анализа)
Задачи системного аналитика (конспект лекций Школы системного анализа)Задачи системного аналитика (конспект лекций Школы системного анализа)
Задачи системного аналитика (конспект лекций Школы системного анализа)Anton Konstantinov
 
1504 ad- бизнес аналитик - решение проблем и внедрение изменений
1504 ad- бизнес аналитик - решение проблем и внедрение изменений1504 ad- бизнес аналитик - решение проблем и внедрение изменений
1504 ad- бизнес аналитик - решение проблем и внедрение измененийDmitry Bezuglyy
 
цепков развитие управления проектами и критериев качества в ит м. цепков-16х9
цепков   развитие управления проектами и критериев качества в ит м. цепков-16х9цепков   развитие управления проектами и критериев качества в ит м. цепков-16х9
цепков развитие управления проектами и критериев качества в ит м. цепков-16х9Magneta AI
 
Big picture of it project managerment Tsepkov AgileDays 2015
Big picture of it project managerment Tsepkov AgileDays 2015Big picture of it project managerment Tsepkov AgileDays 2015
Big picture of it project managerment Tsepkov AgileDays 2015Maxim Tsepkov
 
Жизненный цикл заказного ПО
Жизненный цикл заказного ПОЖизненный цикл заказного ПО
Жизненный цикл заказного ПОCUSTIS
 
Объектно-ориентированное программирование. Лекции 11 и 12
Объектно-ориентированное программирование. Лекции 11 и 12Объектно-ориентированное программирование. Лекции 11 и 12
Объектно-ориентированное программирование. Лекции 11 и 12Dima Dzuba
 
Свод знаний управление проектами
Свод знаний управление проектамиСвод знаний управление проектами
Свод знаний управление проектамиSergey Yrievich
 
Модуль 2: Лекция 9-10. Обзор методологий, фреймворков
Модуль 2: Лекция 9-10.  Обзор методологий, фреймворковМодуль 2: Лекция 9-10.  Обзор методологий, фреймворков
Модуль 2: Лекция 9-10. Обзор методологий, фреймворковYana Brodetski
 
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...Yury Vetrov
 
Внедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UML
Внедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UMLВнедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UML
Внедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UMLEdgar Khachatryan
 
Проектирование Программных Систем. Лекция 01
Проектирование Программных Систем. Лекция 01Проектирование Программных Систем. Лекция 01
Проектирование Программных Систем. Лекция 01Dima Dzuba
 
Как внедрить ALM/ Упр. командами разработки по (agile (scrum))
Как внедрить ALM/ Упр. командами разработки по (agile (scrum))Как внедрить ALM/ Упр. командами разработки по (agile (scrum))
Как внедрить ALM/ Упр. командами разработки по (agile (scrum))Andrey Zakhodyaychenko
 
Проектирование программных систем. Занятие 1
Проектирование программных систем. Занятие 1Проектирование программных систем. Занятие 1
Проектирование программных систем. Занятие 1Dima Dzuba
 

What's hot (20)

Обучение IT-аналитиков
Обучение IT-аналитиковОбучение IT-аналитиков
Обучение IT-аналитиков
 
Будущее уже наступило: от Agile к бирюзовым организациям
Будущее уже наступило: от Agile к бирюзовым организациямБудущее уже наступило: от Agile к бирюзовым организациям
Будущее уже наступило: от Agile к бирюзовым организациям
 
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
Управление проектами по разработке в стиле Agile или Waterfall, чья доска круче?
 
Разработка веб-сервисов осень 2013 лекция 2
Разработка веб-сервисов осень 2013 лекция 2Разработка веб-сервисов осень 2013 лекция 2
Разработка веб-сервисов осень 2013 лекция 2
 
Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"Вебинар "Введение в процесс разработки ПО"
Вебинар "Введение в процесс разработки ПО"
 
требования к кандидату
требования к кандидатутребования к кандидату
требования к кандидату
 
Стандарт OMG Essence - в чем польза для аналитика?
Стандарт OMG Essence - в чем польза для аналитика?Стандарт OMG Essence - в чем польза для аналитика?
Стандарт OMG Essence - в чем польза для аналитика?
 
Задачи системного аналитика (конспект лекций Школы системного анализа)
Задачи системного аналитика (конспект лекций Школы системного анализа)Задачи системного аналитика (конспект лекций Школы системного анализа)
Задачи системного аналитика (конспект лекций Школы системного анализа)
 
1504 ad- бизнес аналитик - решение проблем и внедрение изменений
1504 ad- бизнес аналитик - решение проблем и внедрение изменений1504 ad- бизнес аналитик - решение проблем и внедрение изменений
1504 ad- бизнес аналитик - решение проблем и внедрение изменений
 
цепков развитие управления проектами и критериев качества в ит м. цепков-16х9
цепков   развитие управления проектами и критериев качества в ит м. цепков-16х9цепков   развитие управления проектами и критериев качества в ит м. цепков-16х9
цепков развитие управления проектами и критериев качества в ит м. цепков-16х9
 
Big picture of it project managerment Tsepkov AgileDays 2015
Big picture of it project managerment Tsepkov AgileDays 2015Big picture of it project managerment Tsepkov AgileDays 2015
Big picture of it project managerment Tsepkov AgileDays 2015
 
Жизненный цикл заказного ПО
Жизненный цикл заказного ПОЖизненный цикл заказного ПО
Жизненный цикл заказного ПО
 
Объектно-ориентированное программирование. Лекции 11 и 12
Объектно-ориентированное программирование. Лекции 11 и 12Объектно-ориентированное программирование. Лекции 11 и 12
Объектно-ориентированное программирование. Лекции 11 и 12
 
Свод знаний управление проектами
Свод знаний управление проектамиСвод знаний управление проектами
Свод знаний управление проектами
 
Модуль 2: Лекция 9-10. Обзор методологий, фреймворков
Модуль 2: Лекция 9-10.  Обзор методологий, фреймворковМодуль 2: Лекция 9-10.  Обзор методологий, фреймворков
Модуль 2: Лекция 9-10. Обзор методологий, фреймворков
 
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
РИТ-2008: Взаимодействие отдела проектирования интерфейсов и разработчиков в ...
 
Внедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UML
Внедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UMLВнедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UML
Внедрение Бизнес-Анализа, ИТ Бизнес-Аналитиков и UML
 
Проектирование Программных Систем. Лекция 01
Проектирование Программных Систем. Лекция 01Проектирование Программных Систем. Лекция 01
Проектирование Программных Систем. Лекция 01
 
Как внедрить ALM/ Упр. командами разработки по (agile (scrum))
Как внедрить ALM/ Упр. командами разработки по (agile (scrum))Как внедрить ALM/ Упр. командами разработки по (agile (scrum))
Как внедрить ALM/ Упр. командами разработки по (agile (scrum))
 
Проектирование программных систем. Занятие 1
Проектирование программных систем. Занятие 1Проектирование программных систем. Занятие 1
Проектирование программных систем. Занятие 1
 

Similar to Ответственность за качество в разных ИТ-проектах: в чем она и как ее разделять

Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...
Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...
Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...RIF-Technology
 
2013-04-06 01 Максим Юнусов. Архитектура в agile-проекте
2013-04-06 01 Максим Юнусов. Архитектура в agile-проекте2013-04-06 01 Максим Юнусов. Архитектура в agile-проекте
2013-04-06 01 Максим Юнусов. Архитектура в agile-проектеОмские ИТ-субботники
 
Как выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиямиКак выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиямиSQALab
 
Choose method for requirements Tsepkov Analyst Days-2017
Choose method for requirements Tsepkov Analyst Days-2017Choose method for requirements Tsepkov Analyst Days-2017
Choose method for requirements Tsepkov Analyst Days-2017Maxim Tsepkov
 
Как выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиямиКак выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиямиCUSTIS
 
Семинар ФКН: современные подходы к разработке ПО - часть 1
Семинар ФКН: современные подходы к разработке ПО - часть 1Семинар ФКН: современные подходы к разработке ПО - часть 1
Семинар ФКН: современные подходы к разработке ПО - часть 1Andrii Gakhov
 
Архитектура в Agile проекте
Архитектура в Agile проектеАрхитектура в Agile проекте
Архитектура в Agile проектеLuxoftTraining
 
Responsibilities in software development tsepkov analyst days 2015
Responsibilities in software development tsepkov analyst days 2015Responsibilities in software development tsepkov analyst days 2015
Responsibilities in software development tsepkov analyst days 2015Maxim Tsepkov
 
Разделение ответственности в заказной разработке
Разделение ответственности в заказной разработкеРазделение ответственности в заказной разработке
Разделение ответственности в заказной разработкеSQALab
 
Dead zone. Прохоренко
Dead zone. ПрохоренкоDead zone. Прохоренко
Dead zone. ПрохоренкоDev.by
 
Проект внедрения КИС
Проект внедрения КИСПроект внедрения КИС
Проект внедрения КИСSergey Timofeev
 
Широкое внедрение Agile Unified Process
Широкое внедрение Agile Unified ProcessШирокое внедрение Agile Unified Process
Широкое внедрение Agile Unified ProcessAgile Base Camp
 
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARESQALab
 
STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...
STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...
STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...Alex V. Petrov
 
Agile requirements management
Agile requirements managementAgile requirements management
Agile requirements managementAlexey Bolshakov
 
Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4Dima Dzuba
 
Эффективное объектно-ориентированное проектирование и структурное качество пр...
Эффективное объектно-ориентированное проектирование и структурное качество пр...Эффективное объектно-ориентированное проектирование и структурное качество пр...
Эффективное объектно-ориентированное проектирование и структурное качество пр...LuxoftTraining
 
Sdlc by Anatoliy Anthony Cox
Sdlc by  Anatoliy Anthony CoxSdlc by  Anatoliy Anthony Cox
Sdlc by Anatoliy Anthony CoxAlex Tumanoff
 
Product lifecycle ws software development (sef)
Product lifecycle ws software development (sef)Product lifecycle ws software development (sef)
Product lifecycle ws software development (sef)Dmitry Bezuglyy
 
Mva stf module 1 - rus
Mva stf module 1 - rusMva stf module 1 - rus
Mva stf module 1 - rusMaxim Shaptala
 

Similar to Ответственность за качество в разных ИТ-проектах: в чем она и как ее разделять (20)

Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...
Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...
Сергей Смирнов (Altair Engineering Inc.) | Организация работы распределенной ...
 
2013-04-06 01 Максим Юнусов. Архитектура в agile-проекте
2013-04-06 01 Максим Юнусов. Архитектура в agile-проекте2013-04-06 01 Максим Юнусов. Архитектура в agile-проекте
2013-04-06 01 Максим Юнусов. Архитектура в agile-проекте
 
Как выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиямиКак выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиями
 
Choose method for requirements Tsepkov Analyst Days-2017
Choose method for requirements Tsepkov Analyst Days-2017Choose method for requirements Tsepkov Analyst Days-2017
Choose method for requirements Tsepkov Analyst Days-2017
 
Как выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиямиКак выбрать для проекта практики проектирования и работы с требованиями
Как выбрать для проекта практики проектирования и работы с требованиями
 
Семинар ФКН: современные подходы к разработке ПО - часть 1
Семинар ФКН: современные подходы к разработке ПО - часть 1Семинар ФКН: современные подходы к разработке ПО - часть 1
Семинар ФКН: современные подходы к разработке ПО - часть 1
 
Архитектура в Agile проекте
Архитектура в Agile проектеАрхитектура в Agile проекте
Архитектура в Agile проекте
 
Responsibilities in software development tsepkov analyst days 2015
Responsibilities in software development tsepkov analyst days 2015Responsibilities in software development tsepkov analyst days 2015
Responsibilities in software development tsepkov analyst days 2015
 
Разделение ответственности в заказной разработке
Разделение ответственности в заказной разработкеРазделение ответственности в заказной разработке
Разделение ответственности в заказной разработке
 
Dead zone. Прохоренко
Dead zone. ПрохоренкоDead zone. Прохоренко
Dead zone. Прохоренко
 
Проект внедрения КИС
Проект внедрения КИСПроект внедрения КИС
Проект внедрения КИС
 
Широкое внедрение Agile Unified Process
Широкое внедрение Agile Unified ProcessШирокое внедрение Agile Unified Process
Широкое внедрение Agile Unified Process
 
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUAREТехники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
Техники аналитика - CATWOE, H-METHOD, MOSCOW, SQUARE
 
STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...
STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...
STRATOPLAN. Efficient Object-Oriented Design and Structured Quality of Softwa...
 
Agile requirements management
Agile requirements managementAgile requirements management
Agile requirements management
 
Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4Проектирование программных систем. Занятие 4
Проектирование программных систем. Занятие 4
 
Эффективное объектно-ориентированное проектирование и структурное качество пр...
Эффективное объектно-ориентированное проектирование и структурное качество пр...Эффективное объектно-ориентированное проектирование и структурное качество пр...
Эффективное объектно-ориентированное проектирование и структурное качество пр...
 
Sdlc by Anatoliy Anthony Cox
Sdlc by  Anatoliy Anthony CoxSdlc by  Anatoliy Anthony Cox
Sdlc by Anatoliy Anthony Cox
 
Product lifecycle ws software development (sef)
Product lifecycle ws software development (sef)Product lifecycle ws software development (sef)
Product lifecycle ws software development (sef)
 
Mva stf module 1 - rus
Mva stf module 1 - rusMva stf module 1 - rus
Mva stf module 1 - rus
 

More from CUSTIS

Три истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для EnterpriseТри истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для EnterpriseCUSTIS
 
Долгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейлеДолгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейлеCUSTIS
 
Диаграммы учета как средство для наглядного и целостного отображения правил у...
Диаграммы учета как средство для наглядного и целостного отображения правил у...Диаграммы учета как средство для наглядного и целостного отображения правил у...
Диаграммы учета как средство для наглядного и целостного отображения правил у...CUSTIS
 
Сотрудничество с корпорациями: рецепты из практики
Сотрудничество с корпорациями: рецепты из практикиСотрудничество с корпорациями: рецепты из практики
Сотрудничество с корпорациями: рецепты из практикиCUSTIS
 
Agile — ответ на вызовы третьей промышленной революции
Agile — ответ на вызовы третьей промышленной революцииAgile — ответ на вызовы третьей промышленной революции
Agile — ответ на вызовы третьей промышленной революцииCUSTIS
 
Опыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банкеОпыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банкеCUSTIS
 
Золотая лихорадка MSA: почему нам не подошли микросервисы?
Золотая лихорадка MSA: почему нам не подошли микросервисы?Золотая лихорадка MSA: почему нам не подошли микросервисы?
Золотая лихорадка MSA: почему нам не подошли микросервисы?CUSTIS
 
Барьеры микросервисной архитектуры
Барьеры микросервисной архитектурыБарьеры микросервисной архитектуры
Барьеры микросервисной архитектурыCUSTIS
 
Три истории микросервисов
Три истории микросервисовТри истории микросервисов
Три истории микросервисовCUSTIS
 
От монолитных моделей предметной области — к модульным
От монолитных моделей предметной области — к модульнымОт монолитных моделей предметной области — к модульным
От монолитных моделей предметной области — к модульнымCUSTIS
 
Проблемы управления правами доступа к информационным системам крупной торгово...
Проблемы управления правами доступа к информационным системам крупной торгово...Проблемы управления правами доступа к информационным системам крупной торгово...
Проблемы управления правами доступа к информационным системам крупной торгово...CUSTIS
 
Будущее omni-channel маркетинга: инструменты, кейсы и цифры
Будущее omni-channel маркетинга: инструменты, кейсы и цифрыБудущее omni-channel маркетинга: инструменты, кейсы и цифры
Будущее omni-channel маркетинга: инструменты, кейсы и цифрыCUSTIS
 
State of the .Net Performance
State of the .Net PerformanceState of the .Net Performance
State of the .Net PerformanceCUSTIS
 
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватаетГибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватаетCUSTIS
 
Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...
Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...
Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...CUSTIS
 
Process и Case Management в информационной системе: от автоматизации As Is к ...
Process и Case Management в информационной системе: от автоматизации As Is к ...Process и Case Management в информационной системе: от автоматизации As Is к ...
Process и Case Management в информационной системе: от автоматизации As Is к ...CUSTIS
 
RBAC & ABAC: гибридное решение для управления правами доступа
RBAC & ABAC: гибридное решение для управления правами доступаRBAC & ABAC: гибридное решение для управления правами доступа
RBAC & ABAC: гибридное решение для управления правами доступаCUSTIS
 
Омниканальная модель в ритейле: решения и кейсы
Омниканальная модель в ритейле: решения и кейсыОмниканальная модель в ритейле: решения и кейсы
Омниканальная модель в ритейле: решения и кейсыCUSTIS
 
WinDbg со товарищи
WinDbg со товарищиWinDbg со товарищи
WinDbg со товарищиCUSTIS
 
Akka.NET
Akka.NETAkka.NET
Akka.NETCUSTIS
 

More from CUSTIS (20)

Три истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для EnterpriseТри истории микросервисов, или MSA для Enterprise
Три истории микросервисов, или MSA для Enterprise
 
Долгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейлеДолгоживущие ИТ в динамичном ритейле
Долгоживущие ИТ в динамичном ритейле
 
Диаграммы учета как средство для наглядного и целостного отображения правил у...
Диаграммы учета как средство для наглядного и целостного отображения правил у...Диаграммы учета как средство для наглядного и целостного отображения правил у...
Диаграммы учета как средство для наглядного и целостного отображения правил у...
 
Сотрудничество с корпорациями: рецепты из практики
Сотрудничество с корпорациями: рецепты из практикиСотрудничество с корпорациями: рецепты из практики
Сотрудничество с корпорациями: рецепты из практики
 
Agile — ответ на вызовы третьей промышленной революции
Agile — ответ на вызовы третьей промышленной революцииAgile — ответ на вызовы третьей промышленной революции
Agile — ответ на вызовы третьей промышленной революции
 
Опыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банкеОпыт построения микросервисной архитектуры в цифровом банке
Опыт построения микросервисной архитектуры в цифровом банке
 
Золотая лихорадка MSA: почему нам не подошли микросервисы?
Золотая лихорадка MSA: почему нам не подошли микросервисы?Золотая лихорадка MSA: почему нам не подошли микросервисы?
Золотая лихорадка MSA: почему нам не подошли микросервисы?
 
Барьеры микросервисной архитектуры
Барьеры микросервисной архитектурыБарьеры микросервисной архитектуры
Барьеры микросервисной архитектуры
 
Три истории микросервисов
Три истории микросервисовТри истории микросервисов
Три истории микросервисов
 
От монолитных моделей предметной области — к модульным
От монолитных моделей предметной области — к модульнымОт монолитных моделей предметной области — к модульным
От монолитных моделей предметной области — к модульным
 
Проблемы управления правами доступа к информационным системам крупной торгово...
Проблемы управления правами доступа к информационным системам крупной торгово...Проблемы управления правами доступа к информационным системам крупной торгово...
Проблемы управления правами доступа к информационным системам крупной торгово...
 
Будущее omni-channel маркетинга: инструменты, кейсы и цифры
Будущее omni-channel маркетинга: инструменты, кейсы и цифрыБудущее omni-channel маркетинга: инструменты, кейсы и цифры
Будущее omni-channel маркетинга: инструменты, кейсы и цифры
 
State of the .Net Performance
State of the .Net PerformanceState of the .Net Performance
State of the .Net Performance
 
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватаетГибридный подход к управлению правами доступа: когда стандартного IDM не хватает
Гибридный подход к управлению правами доступа: когда стандартного IDM не хватает
 
Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...
Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...
Собираем кубик Рубика: восстановление архитектурного описания корпоративной р...
 
Process и Case Management в информационной системе: от автоматизации As Is к ...
Process и Case Management в информационной системе: от автоматизации As Is к ...Process и Case Management в информационной системе: от автоматизации As Is к ...
Process и Case Management в информационной системе: от автоматизации As Is к ...
 
RBAC & ABAC: гибридное решение для управления правами доступа
RBAC & ABAC: гибридное решение для управления правами доступаRBAC & ABAC: гибридное решение для управления правами доступа
RBAC & ABAC: гибридное решение для управления правами доступа
 
Омниканальная модель в ритейле: решения и кейсы
Омниканальная модель в ритейле: решения и кейсыОмниканальная модель в ритейле: решения и кейсы
Омниканальная модель в ритейле: решения и кейсы
 
WinDbg со товарищи
WinDbg со товарищиWinDbg со товарищи
WinDbg со товарищи
 
Akka.NET
Akka.NETAkka.NET
Akka.NET
 

Ответственность за качество в разных ИТ-проектах: в чем она и как ее разделять

  • 1. Ответственность за качество в разных ИТ-проектах: в чем она и как ее разделять Максим Цепков Главный архитектор дирекции развития решений Минск, 25 ноября 2016 Software quality assurance days (SQA days)
  • 2.  Многие полагают, что понятия однозначны и фразу «Проект надо сделать качественно, и тестировщик отвечает за это» все должны понимать одинаково  На самом деле, мир меняется, а смысл понятий меняется вместе с ним  В головах многих смысл остается таким, каким был в момент узнавания  Мы поговорим о том, какое бывает качество проектов и за что отвечают тестировщики Тестировщик и качество: знаем ли мы смысл понятий? Чтобы вы понимали весь спектр и это не стало неожиданностью в новом проекте или компании 2/44
  • 3.  Какое качество нужно разным проектам?  Как менялись представления о «качественном проекте»  Какое качество нужно для разной ИТ-разработки  Качество: кто и за что отвечает?  Между кем разделяется ответственность  Как работать с границами ответственности и какова ответственность тестировщика  А как все-таки меняются смыслы?  Team: как нам понимать друг друга и эффективно сотрудничать План доклада 3/44
  • 4. Как менялись представления о «качественном проекте» По мотивам доклада «Развитие критериев качества и управления проектами» на AgileDays – 2015 4/44
  • 5. Big Picture истории развития Эпоха НИОКР Время Способ работы «Новое время»  Удовлетворенность стейкхолдеров  Достижение бизнес-целей продукта  Каждой ИТ-разработке – свой метод Эпоха RUP Время SCRUM 1960 1990 2005 2013 5/44
  • 6.  Создавались большие и сложные проекты  Требования к проектам редко менялись  Проекты делал квалифицированный персонал  Упор был на качество ИТ-системы Эпоха НИОКР: когда компьютеры были большими Ф. Брукс «Мифический человеко-месяц» Цель проекта – создать совершенную ИТ-систему в одном экземпляре 6/44
  • 7.  Применим к ИТ-разработке принципы промышленного производства  Разделим задачу на этапы: проектирование, разработка, внедрение  Наладим процессы и разделим зоны ответственности Эпоха RUP: персоналки потребовали много разработчиков PMBOK-3 (2004) RUP (2003) Оценка качества: удалось ли выполнить проект в срок, уложиться в бюджет и достичь ожидаемых результатов 7/44 Получалось не очень
  • 8. Природа ИТ мешает процедурам Jack W. Reeves «What is software design» (1992; перевод) Конструирование системы Обычный НИОКР ПроизводствоПроект ИТ-разработка Архитектура и дизайн Тех. проект Кодирование Вещь Прило- жение Код Архитектура и дизайн Кодиро- вание Прило- жение Компиляция (build) Несмотря на тяжелые и дорогие процедуры, успешность проектов была низкой. Не получалось обеспечить гибкость, а успех определялся людьми, которых не хватало 8/44
  • 9.  Вместо тщательного планирования – наблюдение за траекторией движения проекта и приближением к цели  Концепция SMART-целей, измеримость достижения  Итеративное движение с корректировкой положения цели (требования к системе) Agile и SCRUM: ответ на вызовы Гибкость и наблюдаемость Качественный проект – это частые инкрементальные поставки нужного софта 9/44
  • 10.  От проектной деятельности – к непрерывному развитию продукта  От качества ИТ-системы – к удовлетворенности стейкхолдеров  От создания системы – к достижению возможностей для бизнеса и пользователя  Каждой ИТ-разработке – свой метод А что сейчас: векторы развития Канбан в ИТ (2010) DevOps (2012) PMBOK 5 (2013) частично Качественная ИТ-разработка удовлетворяет стейкхолдеров и обеспечивает возможности для бизнеса 10/44
  • 11.  Моя схема сильно похожа на схему четырех культур Энтони Лаудера  Научная  Заводская  Дизайнерская  Сервисная  Содержание уровней отличается Энтони Лаудер «Культуры программных проектов» Оригинал, перевод (pdf), рецензия Стаса Фомина 11/44 Если схема Лаудера вам подойдет больше, используйте ее. Нет смысла выяснять, какая правильнее
  • 12. Какое качество нужно для разной ИТ-разработки? Слово «проект» исчезло не случайно. Меняем не только смысл, но и понятие! Вместо «проекта» – предприНятие, endeavor 12/44
  • 13. Каждый этап добавлял новые фокусы качества, а не отменял старые 13/44 Время Фокусы качества 1960 1990 2005 2013 ИТ-проект Возможности для бизнеса Удовлетворенность стейкхолдеров Достижение результата разработки Совершенство процесса разработки Техническое совершенство системы ИТ-система
  • 14.  Стандарт на сайте OMG  Конкретные описания на сайте И. Якобсона  Книга И. Якобсона The Essence of Software Engineering  Курс системного мышления А. Левенчука (pdf) OMG Essence – пространство привязки фокусов качества Requirements Design Implementation Verification Maintenance Создан группой SEMAT под руководством И. Якобсона Предыдущая такая схема – водопад Ройса 14/44
  • 16. Система понятна как черный ящик, но сложно устроена – НИОКР Фокус на создаваемую систему Требования точны и статичны Область использования не важна 16/44 Квалифицированная команда знает ИТ-технологии
  • 17. Система понятна как белый ящик – организуем процесс разработки 17/44 Требования тоже собираем по процессу Система получится сама, хотя протестировать надо Команда и ИТ-технологии должны быть адекватны технологии процесса Главное – процесс, его дают технологии проектной работы, обеспечивая выполнение задач Область использования не важна
  • 18. Образ системы неясен – приближаемся к нему итерациями 18/44 Работаем с требованиями и задачами в рамках принятого метода разработки Команда следует ценностям и методам гибкой разработки Объективно или из-за ограниченной квалификации командыПостоянная проверка у стейкхолдеров: «Система делает то, что надо?»
  • 19. Непрерывная эволюция системы вслед за изменениями окружения 19/44 Требования фиксируют потребность в изменениях Система быстро изменяется, удовлетворяя стейкхолдеров Технологии поддерживают гибкость системы и быстрое прохождение задач Стейкхолдеры требуют изменений системы, исходя из изменений в мире Команда нацелена на результат и сама является заинтересованным стейкхолдером
  • 20. Система обеспечивает ожидаемые возможности развития бизнеса 20/44 Требования говорят о гипотезах изменений, требующих быстрой проверки Технологии поддерживают гибкость системы и быстрое прохождение задач Возможности в мире – драйвер изменений системы Стейкхолдеры мониторят изменения мира Система быстро изменяется вслед за миром Команда нацелена на результат и сама является заинтересованным стейкхолдером
  • 21. Между кем разделяется ответственность Развитие доклада «Разделение ответственности в заказной разработке» на AnalystDays – 2015 21/44
  • 22.  Quality Engineer отвечает за качество ИТ-системы и проверяет ее тестированием  Quality Assurance отвечает за качество процесса, которое в замысле должно привести к качеству системы  Это лишь два фокуса ответственности из многих  Остальные могут быть возложены на тех же людей или на отдельных лиц QE и QA – послание от RUP Казалось бы, просто 22/44
  • 23. Прежде чем говорить об ответственности, следует понять, между кем она распределяется Кто действующие лица? Команда Заказчик Concept Requirements and Architecture Detailed Design Implementation Integration and Test System Verification Maintenance Используем V-диаграмму 23/44
  • 24. Команда включает много ролей 24/44 Команда Все границы ответственности подвижны Заказчик Разработчик System Verification Maintenance Implementation Requirements and Architecture Concept Product Owner Архитектор Аналитик Внедрение и поддержка Тестировщик Integration and Test Detailed Design
  • 25. Не все роли могут присутствовать, а область заказчика может быть меньше 25/44 Команда Ответственность тестировщика может расширяться Заказчик Разработчик System Verification Maintenance Implementation Requirements and Architecture Concept Product Owner Тестировщик Integration and Test Detailed Design Тестировщик
  • 26. А еще нужно делить ответственность за артефакты 26/44 Команда Заказчик Разработчик System Verification Maintenance Implementation Requirements and Architecture Concept Product Owner Архитектор Аналитик Внедрение и поддержка Тестировщик Integration and Test Detailed Design ПО Требования Модель системы Тест-кейсы Версия заказчику Версия на тестирование Backlog
  • 27. Как работать с границами ответственности и какова ответственность тестировщика 27/44
  • 28.  Альфы задают объекты, состояния которых отражают движение проекта  Ответственность делится по этим объектам  Check lists состояний определяют, в чем ответственность  Lifecycle-диаграмма иерархична: можно представить весь проект, его релиз, спринт или разработку фичи Используем Lifecycle OMG Essence Артефакт – частный вид объекта 28/44
  • 30. Простейший вариант – ответственность за проверку задачи Work Ready Verified Prepared Req User story проработана User story Task 30/44 User story готова Разработка Тестирование Аналитик Разработчик Тестировщик
  • 31. Ответственность за готовность user story Work Ready Verified Prepared Req Разработка тест-кейсов User story Task User story готова Разработка user story может включать много задач Аналитик Разработчик Тестировщик Test case Что является квантом работы? Tecт-кейс тестирует требования? По каким задачам описывают user story и тест-кейсы? Есть ли индивидуальная проверка задач? 31/44
  • 32. Ответственность за поставку системы 32/44 Work Ready Verified Prepared Req User story Task Аналитик Разработчик Тестировщик Test case Delivered System Release Накопление релиза В тестовой среде В боевой среде Доставлено вместе с релизом Тестировщик разрабатывает автотесты? Отвечает за поставку тестировщик? Поставка релизами или continuous delivery?
  • 33.  Этот способ работы в вашей разработке сложился исторически или был спроектирован?  Способ был адекватен особенностям разработки? Какие цели он обеспечивает?  Способ продолжает оставаться адекватным сейчас или его пора заменять? Чем его заменять? Что значит «может быть так»? Нужно ли иначе? Это вопросы к альфе технологий, Way Of Working 33/44 Как тестировщики участвуют в формировании технологий?
  • 34.  Нужна ли разработке continuous delivery или уместна поставка релизов?  Нужны ли разработке автотесты и если нужны, то в каком объеме? Как определять технологии? Это зависит от назначения разработки. Альфы Opportunity и Stakeholder 34/44
  • 35. Удовлетворенность стейкхолдеров и обеспечение возможностей бизнеса 35/44 Opp StkH Req ReqWork Заказчик Product Owner Аналитик Разработчик Тестировщик Внедрение и поддержка Cтейкхолдер обнаружил возможность Возможности достигаются Стейкхолдеры удовлетворены Фича в эксплуатации Для реализации возможности разработали фичу
  • 36. А кто и как проверяет цели и их достижение? 36/44 Opp StkH Req ReqWork А это возможность или гипотеза о ней? А фича адекватна возможности? Кто и как определяет достижение возможностей? Кто и как оценивает удовлетворенность? Кто проверяет эксплуатацию? Заказчик Product Owner Аналитик Внедрение и поддержка Разработчик Тестировщик
  • 37.  Заказчик отвечает за опознание возможности или выдает гипотезы?  Могут ли стейкхолдеры заказчика оценить проект фичи на соответствие возможности?  Проявляют ли стейкхолдеры заказчика возможности для бизнеса в своих запросах? Ответственность за возможности 37/44
  • 38.  Необходимо определить ответственность и способ оценки гипотез  Предпочтительно continuous delivery для быстрого цикла реализации  Полезно A/B-тестирование  Полезно применять тестирование гипотез до реализации или с помощью макетов Если возможности – лишь гипотезы или нет гарантии их достижения A/B-тестирование и проверка на макетах может входить в обязанности тестировщика, а может выполняться аналитиком или маркетологом 38/44
  • 39.  Можно ли автоматически проверить критичный функционал?  Что тестируем автоматически?  Отгружает релиз человек или автомат?  Можно ли отменить отгрузку?  Кто пишет новости версии?  Эксплуатация – отдельная команда?  Кто обучает пользователей? Как релиз приходит к пользователям? DevOps Continuous delivery Область ответственности тестировщика и способ его работы сильно зависят от ответов на эти вопросы 39/44
  • 40. Team: как нам понимать друг друга и эффективно сотрудничать 40/44
  • 41.  Каковы ценности и нормы?  Как организована команда?  Как организовано взаимодействие?  Как решаются конфликты?  Как идет передача ответственности? Team Представления о ценностях и нормах образуют устойчивые фреймы. Их модель дает Спиральная динамика, где выделено 8 уровней 41/44
  • 42. Что значит «протестировать релиз»? Потыкать что-нибудь Проверить, как у нас принято Героически проверить все, что смог придумать Провести проверку строго по регламенту Проверить сложные нетривиальные кейсы Вместе со всеми тестировать и тестировать Проверить в срок критичные кейсы и новый функционал Проверить с учетом ожиданий заказчика, сроков и функционала релиза Из доклада «Действуй, опираясь на ценности» на AgileDays – 2016 42/44
  • 43. Что значит «успешно завершить проект»? 43/44 Наконец-то у меня приняли этот проект Танцы с бубнами вокруг непонятных замечаний завершились успешно Я заставил принять проект и признать нашу правоту, несмотря на врагов В соответствии с процедурами и регламентами проект сдан заказчику Мы поняли интересы принимающих и обеспечили их удовлетворение Проект стал частью большого общего дела Результат проекта оправдывает ожидания Результат встроился в большую систему, принес плоды и развивается Из доклада «Действуй, опираясь на ценности» на AgileDays – 2016
  • 44.  Каждой ИТ-разработке нужно свое качество  Ответственность тоже делится по-своему  Надо договариваться об идеальной картине, учитывая:  представления стейкхолдеров и команды  объективные особенности проекта  А затем – работать над воплощением идеала Подводя итоги Спасибо! Вопросы? Максим Цепков mtsepkov.org 44/44