2. Пользовательские требования в жизни тестировщика
Таисия Толстунова
2
Кто я?
Таисия Толстунова
В тестировании/ТМ – 10/7 лет
Люблю требования :)
в явном виде работаю:
с требованиями > 5 лет,
с пользовательскими требованиями 1,5 года
4. Пользовательские требования в жизни тестировщика
Таисия Толстунова
4
Признаки
• График сходимости дефектов не сходится
5. Пользовательские требования в жизни тестировщика
Таисия Толстунова
5
Признаки
• График сходимости дефектов не сходится
• Ранее разработанный функционал меняется от релиза к релизу
6. Пользовательские требования в жизни тестировщика
Таисия Толстунова
6
Признаки
• График сходимости дефектов не сходится
• Ранее разработанный функционал меняется от релиза к релизу
• Сроки релизов срываются, постоянно
7. Пользовательские требования в жизни тестировщика
Таисия Толстунова
7
Признаки
• График сходимости дефектов не сходится
• Ранее разработанный функционал меняется от релиза к релизу
• Сроки релизов срываются, постоянно
• Пользователи отказываются от продукта
8. Пользовательские требования в жизни тестировщика
Таисия Толстунова
8
Признаки
• График сходимости дефектов не сходится
• Ранее разработанный функционал меняется от релиза к релизу
• Сроки релизов срываются, постоянно
• Пользователи отказываются от продукта
• Требования «в данный момент» и «глобально нужно» не совпадают
9. Пользовательские требования в жизни тестировщика
Таисия Толстунова
9
Признаки
• График сходимости дефектов не сходится
• Ранее разработанный функционал меняется от релиза к релизу
• Сроки релизов срываются, постоянно
• Пользователи отказываются от продукта
• Требования «в данный момент» и «глобально нужно» не совпадают
• При этом… возникает мысль «А если бы мы всё обсудили заранее,
не нужно было бы переделывать и сроки бы не сорвали»
11. Пользовательские требования в жизни тестировщика
Таисия Толстунова
11
Пример
• Сколько родителей у одного ребенка?
• Скольким нужен доступ к электронному дневнику?
12. Пользовательские требования в жизни тестировщика
Таисия Толстунова
12
Пример
• Сколько родителей у одного ребенка?
• Скольким нужен доступ к электронному дневнику?
• А если родители в разводе и повторно женаты/замужем?
13. Пользовательские требования в жизни тестировщика
Таисия Толстунова
13
Пример
• Сколько родителей у одного ребенка?
• Скольким нужен доступ к электронному дневнику?
• А если родители в разводе и повторно женаты/замужем?
• А если опекунами ребенка являются не родители?
14. Пользовательские требования в жизни тестировщика
Таисия Толстунова
14
Пример
• Сколько родителей у одного ребенка?
• Скольким нужен доступ к электронному дневнику?
• А если родители в разводе и повторно женаты/замужем?
• А если опекунами ребенка являются не родители?
• Сколько раз по вашему менялась цифра в ПО?
15. Пользовательские требования в жизни тестировщика
Таисия Толстунова
15
Пример
• Сколько родителей у одного ребенка?
• Скольким нужен доступ к электронному дневнику?
• А если родители в разводе и повторно женаты/замужем?
• А если опекунами ребенка являются не родители?
• Сколько раз по вашему менялась цифра в ПО?
И представьте, что в какой-то момент в результате данного кейса в ПО
были задублированы и сами дети =)
17. Пользовательские требования в жизни тестировщика
Таисия Толстунова
17
Требования - определение
Пользовательское требование – задача, которую определенные классы
пользователей должны иметь возможность выполнять в системе, или
требуемый атрибут продукта (К. Вигерс)
19. Пользовательские требования в жизни тестировщика
Таисия Толстунова
19
Документирование требований
• Стикерами на ватмане
• Маркером на доске
• Просто текстом
• Use case (вариант использования)
• User story (пользовательская история)
• Любой другой вариант (стандарты предприятия)
20. Пользовательские требования в жизни тестировщика
Таисия Толстунова
20
Артефакты вместе с требованиями
• CRUDL матрицы объектов
• RACI матрицы объектов
• Прототипы интерфейсов
• Списки требований
• Словарь терминов
• Списки заинтересованных лиц и их интересов
22. Пользовательские требования в жизни тестировщика
Таисия Толстунова
22
Свойство ясность – вопросы аббревиатур и терминологии
23. Пользовательские требования в жизни тестировщика
Таисия Толстунова
23
Свойство ясность – вопросы аббревиатур и терминологии
CRUDL (действий):
C – create
R – read
U – update
D – delete
L – list
RACI (ответственности):
R – responsible
A – accountable
C – consumed
I – informed
24. Пользовательские требования в жизни тестировщика
Таисия Толстунова
24
Свойство ясность – вопросы аббревиатур и терминологии
Роль vs Должность
25. Пользовательские требования в жизни тестировщика
Таисия Толстунова
25
Свойство ясность – определение
Требование должно быть недвусмысленным, определенным,
однозначным с определенными терминами. Используемая лексика
должна быть понятна.
В том числе и в рамках использования одних и тех же терминов в
наборе требований.
26. Пользовательские требования в жизни тестировщика
Таисия Толстунова
26
Свойство трассируемость
Требование к системе: сквозная авторизация в системе
Для программных комплексов необходимо данное требование учесть,
несмотря на то, что это функциональное требование.
27. Пользовательские требования в жизни тестировщика
Таисия Толстунова
27
Свойство трассируемость – определение
Возможность отследить связь между разными уровнями требований:
• вверх
• к требованиям системы
• к ТЗ
• вниз
• к функциональным требованиям (постановкам)
• к ПО
28. Пользовательские требования в жизни тестировщика
Таисия Толстунова
28
Свойство полнота
В системе есть объект
справочника, который можно
просматривать и изменять.
29. Пользовательские требования в жизни тестировщика
Таисия Толстунова
29
Свойство полнота
В системе есть объект
справочника, который можно
просматривать и изменять.
Вопросы:
• Кто?
• Что именно делает?
• Есть ли какие-то условия?
• Есть ли какие-то ограничения?
• CRUDL?
30. Пользовательские требования в жизни тестировщика
Таисия Толстунова
30
Свойство полнота – определение
Полнота отдельного требования – текст требования не требует
дополнительной детализации, то есть в нем предусмотрены все
необходимые нюансы, особенности и детали данного требования
Полнота системы требований – совокупность артефактов,
описывающих требования, исчерпывающим образом описывает все то,
что требуется от разрабатываемой системы
32. Пользовательские требования в жизни тестировщика
Таисия Толстунова
32
Нормативная информация и аббревиатуры
4.3.4. Техническая поддержка и обновление сайта ВУЗ
4.3.4.1. В ОИ поступает заявка на создание нового ЭУК. В заявке
указывается название курса, фамилия куратора и сроки обучения.
4.3.4.2. Специалист по УМР ОИ принимает и подписывает поступившие
заявки.
33. Пользовательские требования в жизни тестировщика
Таисия Толстунова
33
Нормативная информация и аббревиатуры
4.3.4. Техническая поддержка и обновление сайта ВУЗ
4.3.4.1. В ОИ поступает заявка на создание нового ЭУК. В заявке
указывается название курса, фамилия куратора и сроки обучения.
4.3.4.2. Специалист по УМР ОИ принимает и подписывает поступившие
заявки.
Какими документами необходимо руководствоваться специалисту?
Каким нормам, законам и ГОСТ-ам должна соответствовать система?
34. Пользовательские требования в жизни тестировщика
Таисия Толстунова
34
Тестируемость и полнота
Система управления контентом сайта должна обеспечить
администратору сайта возможность авторизации и разграничения прав
для неограниченного количества операторов сайта.
35. Пользовательские требования в жизни тестировщика
Таисия Толстунова
35
Тестируемость и полнота
Система управления контентом сайта должна обеспечить
администратору сайта возможность авторизации и разграничения прав
для неограниченного количества операторов сайта.
• Существует ли роль «Пользователь»?
• Может ли администратор редактировать свой аккаунт?
• Могут создаваться дополнительные разграничения прав?
• Как можно назначить администратора?
38. Пользовательские требования в жизни тестировщика
Таисия Толстунова
38
Требования не к ПО
На которой вы стороне сейчас?
• Что происходит с монстрами?
• А даётся ли манчкинам уровень?
• Что происходит, если карту играет
отбивающийся манчкин?
39. Пользовательские требования в жизни тестировщика
Таисия Толстунова
39
Зачем тестировать требования?
и кому это нужно
40. Пользовательские требования в жизни тестировщика
Таисия Толстунова
40
Кому нужно тестирование требований?
• Клиенту
• Конечным пользователям
• Команде и продукту в целом
• Проекту
41. Пользовательские требования в жизни тестировщика
Таисия Толстунова
41
Почему важно клиенту и пользователям?
• Проще согласовывать требования (и уменьшается количество
итераций)
• У клиента есть понимание, что именно будет реализовано и для чего
• Заранее известно, что реализовать невозможно
• Не нужно привыкать к новым реализациям привычного функционала
• Кейсы для пользователей учитываются при разработке и становятся
возможны к использованию
42. Пользовательские требования в жизни тестировщика
Таисия Толстунова
42
Почему важно команде и продукту в целом?
• Общее понимание требований у всей команды
• Видны противоречия с ранними требованиями в пожеланиях
• Не планируется реализовать невозможное
• Не забываются «мелочи»
• …
• Экономятся средства за счет исправления ошибок не в стадии
готового продукта
43. Пользовательские требования в жизни тестировщика
Таисия Толстунова
43
Почему важно проекту?
• Функционал реализуется 1 раз, отсутствует постоянная переработка
• Можно более точно планировать сроки и объем выполнения работ
45. Пользовательские требования в жизни тестировщика
Таисия Толстунова
45
Формализация – что нужно сделать сначала?
• Определить, в каком виде есть требования в вашей команде
• Попробовать тестировать требования, подобрать комфортный для
команды вариант
• Формализовать процесс на бумаге или в голове
46. Пользовательские требования в жизни тестировщика
Таисия Толстунова
46
Формализация – что важно помнить?
• Когда и зачем нужна формализация?
• Кто должен тестировать требования?
• Важен ли порядок тестирования?
• Что брать в основу процесса?
• Формализовать можно не всё
51. Пользовательские требования в жизни тестировщика
Таисия Толстунова
51
Пример
1. Сформировали вопросы
2. Через выполняющего роль аналитика задали вопросы заказчику
3. Согласовали итоговый вариант после нескольких итераций
4. Стали реализовывать логику внутри ПО
К моменту ввода системы в эксплуатацию – ошибки не было
53. Пользовательские требования в жизни тестировщика
Таисия Толстунова
53
Материалы
1. К.Вигерс и Дж.Битти. Разработка требований к ПО
2. Анна Абрамова. Что такое Use Case и зачем они нужны?
3. Алексей Федоров. Шагнуть на встречу тестированию требований
4. Сергей Мартыненко. Написание тестов, как вид тестирования
требований
5. Niels Malotaux. Inspection used in various ways
54. Пользовательские требования в жизни тестировщика
Таисия Толстунова
54
Материалы
1. Юлия Нечаева. Тестирование требований: КАК?
2. Андрей Курьян. Метод VCM+ для выявления противоречий в
требованиях заинтересованных лиц
3. Сергей Мартыненко. Приоритизация методов верификации
требований
4. Еще несколько презентаций: 1, 2, 3