Показаны сообщения с ярлыком Тестирование. Показать все сообщения
Показаны сообщения с ярлыком Тестирование. Показать все сообщения

суббота, 14 июля 2018 г.

Книжная полка. Rex Black, Leo van der Aalst, James L. Rommens "The Expert Test Manager"

Сегодня на книжной полке будет профильный обзор книги по тест-менеджменту, которую я рассматриваю не как этап для подготовки к экзамену ISTQB Expert Level Test Management, а как книгу для руководителя отдела тестирования - Rex Back, Leo van Der Aalst, James Rommens "The Expert Test Manager".

Да, книга позиционируется как "Guide to the ISTQB Expert Level Certification", но экспертный уровень имеет ограничения:
  • срок действия ограничен 5 годами, дальше - подтверждать или набирать баллы
  • цена экзамена 650 евро + поездка сдавать в другую страну (я нашел ближайший вариант в Германии компании Gasq и не нашел ни одного варианта сдачи экзамена онлайн)
Поэтому, несмотря на репутационные и другие плюсы экспертного сертификата, плюсы пригодятся консультанту по тестированию глобально, и на 5 лет. Поэтому, если надо по работе (заказчик или партнер требует подтверждения высшего уровня) или вы консультируете проекты, которые запрашивают награды и достижения, имеет смысл подумать о сертификате. Для руководства отделом тестирования и консультирования в нашем регионе смысла сдавать данный сертификат пока не вижу.

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


Технико-тактические характеристики:
Год издания: 2017 ( "Rocky Nook")
Страниц: 500
Скорость чтения - 3 из 5 (средняя)
Время на прочтение:  12-18 часов
Полезность - 4 из 5 (выше средней)

Силлабус экспертного тест менеджера, состоит из 3 больших тем, разбитых на части-главы из книги Рекса Блэка:
  1. Стратегический менеджмент
    • Миссия, политики, стратегия и цели
    • Оценка эффективности и действенности (метрики эффективности, действенности, удовлетворенности клиента)
    • Управление в организации (интеграция инструментов, управление качеством и тестирование)
    • Управление внешними связями
    • Доменные и проектные факторы
  2. Операционный тест-менеджмент
    • Управление внешними связями
    • Основы проектного менеджмента
    • Оценка и отчетность тестирования в проекте
    • Доменные и проектные факторы (релизы)
    • Оценка эффективности и действенности (ретроспективы)
  3. Управление командой тестирования
    • Построение, развитие и управление командой
    • Управление тестированием в организации: защита команды тестирования, место команды тестирования в организации, построение внешних взаимоотношений со стейкхолдерами, этические моменты)
Мы видим, что есть перекрытие по темам главы. Например, доменные и проектные факторы, управление внешними связями, оценка эффективности и действенности относятся одновременно к блокам 1 и 2 (стратегический менеджмент и операционный тест-менеджмент), а управление внешними связями - к блокам 1 и 3. Все главы и взаимосвязи с частями я объединил в таблице.


 Глава книги | Тема ISTQB EL
 Стратегический менеджмент
 Операционный тест-менеджмент
 Управление командой
 1. Миссия тестирования, политики, стратегии и цели



 2. Управление командой тестирования



 3. Управление внешними связями



4. Управление в организации



5. Основы проектного менеджмента



6. Оценка тестового проекта, отчетность



7. Доменные и проектные факторы, влияющие на тестирование



8. Оценка эффективности и действенности




Пример. Если изучаете только стратегический менеджмент - читайте главы, выделенные зеленым: 1, 3, 4, 7 и 8.
Первая глава "Миссия тестирования, стратегия и цели" начинается с определения миссии, политики (policy) - почему мы тестируем, стратегии - как мы тестируем. По Рексу Блэку, тестовая стратегия может включать следующие разделы: 
  • техники анализа и документации тестовых спецификаций, как генерируются тесты
  • Объем и независимость тестирования
  • Тестовые окружения
  • Тестовые данные
  • Автоматизация
  • Регрессионное тестирование
  • Нефункциональное тестирование
  • Управление конфигурациями
  • Контроль процесса тестирования
  • Метрики тестирования и отчетность
  • Управление дефектами>
  • Инструменты
  • Стандарты
  • Интеграционное тестирование
Далее переходим к тестовым стратегиям: аналитическим, реактивным, на основе модели, методическим, консультационным, на основе стандартов, автоматизации. Все перечисленные и следующие определения смотрите в силлабусе тест-менеджера. И заканчивается глава взаимосвязью и выравниванием тестовой политики с тестовой стратегией.

Вторая глава "Управление командой тестирования" рассказывает об управлении командой тестирования, начиная от построения команды - найм, описание вакансии, чтение резюме, собеседование, выбор, онбординг в команду и увольнение. В каждом этапе автор дает список вопросов или пунктов, на которые надо обратить внимание, и приводит практические рекомендации. Например, некоторые из них:
  • в описании вакансии - не использовать описание вакансии другой позиции (например, разбавлять вакансию разработчика навыками тестировщика)
  • в собеседовании - использовать несколько раундов интервью, смешанную команду собеседующих. Во время собеседования обращать внимание не только на технические наыки и навыки тестирования плюс релевантный опыт, но и навыки решения проблем, наличие критического мышления, коммуникационные навыки, командная работа, любознательность
  • в увольнении - действовать в зависимости от причины: плохая личная производительность, изменение бизнес-фокуса или процесса, закрытие бизнеса. При плохой личной производительности - документировать проблемы, обратиться в HR-отдел
"Как тест-менеджер, поддерживать развитие недостаточно, требуйте." Развитие команды в книге включает: 
  • индивидуальное развитие (тренинги, книги, самообучение, курсы-университеты, применение новых навыков на практике), 
  • постановка целей (цели по SMART на ближайший период - полгода-год, групповые цели), 
  • использование навыков (делятся на профессиональные, технические, бизнес-доменные и навыки тестирования) 
  • оценка не только индивидуальных навыков, но и групповых (чего не хватает всей команде)
  • роли в команде (использование матрицы RACI и типологии Майерс-Бриггс)
  • тренинги и менторство
  • оценка производительности и обратная связь (360-ревью).
"Лидство" команды тестирования включает:
  • обмен информацией и коммуникация (какие митинги и для чего использовать)
  • поощрения лояльности и доверия
  • тим-билдинг
  • мотивация команды
  • управление удаленными командами
Третья глава "Управление внешними связями" рассматривает внешние связи и влияние на команду: например, если разработка полностью или частично выполняется другой компанией, если тестирование выполняет другая команда, если вы выполняете только "внутреннее" тестирование того, что сами разработали. Также рассказывается о контрактных проблемах, стратегиях коммуникации, использование компонент, разработанных третьим участником и сочетанием тестовых стратегий. Заканчивается глава примером формулировки входных и выходных критериев для каждого уровня тестирования, когда разрешено переходить к следующему уровню тестирования - бывает полезным составить такую таблицу не только для нескольких компаний, но и внутри своей компании.

Четвертая глава "Управление в организации" (Managing Across the Organization) описывает взаимодействие отдела тестирования с другими отделами. Это самая большая глава книги (68 страниц), которая включает и стратегические, и операционные аспекты. К стратегическим относятся: интеграция инструментов в организации, система контроля качества и тестирование. К операционным - типы внешних взаимодействий, контрактные вопросы, стратегии коммуникаций. Некоторые выдержки из главы:
  • работа тест-менеджера включает промоушн команды тестирования и её ценности в организации
  • роль тест-менеджера включает "защиту" команды тестирования и расширение ее роли
  • тест-менеджер всегда должен находить пути, чтобы позиционировать тестирование как конструктивное и приносящее ценность
  • четыре элемента маркетинга и "продажи" тестирования - демострировать преимущества, подчеркивать успех, сообщать о предстоящих изменениях, признавать и исправлять ошибки
  • пять элементов поддержки уровня группы тестирования (как в оригинале, без перевода): adequately staffed, well-trained, properly resourced, well-informed, respected
  • три элемента "защиты" команды - открытые коммуникации, хорошая документация, сильные процессы
  • независимость (группы тестирования) означает, что цепочка отчетности команды тестирования ведет к высшему или исполнительному руководству, а не к продуктовым, проектным, программным или операционным менеджерам
  • построение отношений, идеи - общие обеды, приглашение стейкхолдеров на общие митинги, празднование успехов
Пятая глава "Основы проектного менеджмента" включает его основы и обзорно описывает:
  • Задачи проектного менеджмента: эстимации (техники) и факторы влияющие на них, составление расписания, управление бюджетом и ресурсами, управление проектом и метрики (количество спроектированных тестов, цена качества, эффективность тестирования, количество найденных VS ожидаемых дефектов, прогресс выполнения тестов), треугольник качества, управление изменениями, управление временем
  • Управление проектными рисками
  • Система менеджмента качества и тестирование (QM = QA + QC)
Шестая глава "Оценка тестового проекта, отчетность" начинается с формулировки и различия понятий метрик, шкалы измерения, измерения. Далее идут требования к метрикам: объективность, информативность, понятность, простота сбора данных, и затем - перечисление самих метрик. Внешняя отчетность включает:
  • дэшборды, показывающие текущий статус по тестам и по дефектам
  • отчеты по ресурсам и бюджету
  • таблица митигации рисков
  • таблица покрытия тестами
  • тренды по дефектам
  • индикаторы здоровья проекта ("светофор" - зеленый-желтый-красный)
  • прогнозирующие метрики
  • рекомендации "go-no go"
Далее приводятся метрики по каждой из фаз проекта по ISTQB: планирование и контроль, анализ и дизайн, внедрение и выполнение, оценка критерия выхода и отчетность, активности по завершению тестирования.

Седьмая глава "Доменные и проектные факторы, влияющие на тестирование" начинает рассказ с моделей жизненного цикла, их влияния на тестирования, преимуществ каждой из них: от каскадной модели до гибких методологий. Далее Рекс Блэк рассказывает о влияние на тестирование в "неполных" (partial) проектах: интеграции, сопровождении, проектах связанных с тестированием "железа" и embedded проектах, проектах, связанных с жизнью людей (safety lifecycle projects).

Восьмая глава "Оценка эффективности и действенности" перечисляет метрики, позволяющие "посчитать" эффективность, действенность, и рассказывает, как составить опросник (survey) для стейкхолдеров. Заканчивается глава обзором проведения ретроспективы проекта.

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

Вывод: Обстоятельная, обзорная, книга с примерами из практики тест-менеджера - руководителя отдела, полезна любому начинающему и продолжающему строить отдел тестирования. При обзорности, свойственной книге по сертификации, нюансы каждой темы учтены и описаны, для более глубоких нюансов (например, в управлении проектами) необходимы специализированные книги. В книге есть вопросы с разбором и ответами из экзамена ISTQB EL Test Management, для знакомства и самопроверки. Рекомендую читать и планировать свой todo-лист по рекомендациям в книге, если вы возглавили отдел тестирования в компании.

понедельник, 7 мая 2018 г.

Книжная полка. Cam Kaner "The domain testing workbook"

Как и обещал, делаю обзор на книгу по тест-дизайну. Встречайте - Cam Kaner "The domain testing workbook".


Технико-тактические характеристики:
Год издания: 2013 (Context Driven Press) - ссылка
Страниц: 488
Скорость чтения - 3/5 (средняя)
Время на прочтение:  12-18 часов с упражнениями
Полезность - 5/5 (высокая)

Сэм Канер в представлениях не нуждается: его книгу "Lessons Learned in Software Testing" рекомендуют всем начинающим и продолжающим тестировщикам. За 17 лет с момента первого издания книга не устарела, а Максим Захаров глава за главой в течение 2 лет перевел все 293 урока на русский язык. Затем Сэм Канер в том числе занимался и построением онлайн-системы образования для тестировщиков, критиковал традиционную схему MOOC (онлайн-курсов). Сейчас его онлайн-система работает, состоит из 4 онлайн-курсов, от BBST: Foundations, который является обязательным для доступа к следующим курсам, к курсам "Bug Advocacy" и "Test Design". На мой взгляд, курсы Канера - лучшие из тех, что я видел в онлайн-образовании для тестировщиков.

Книга, которую выпустил Сэм Канер, посвящена всего одной технике черного ящика - доменному тестированию. Это не тестирование бизнес-домена: домен (domain) - это набор значении, и техника предполагает разделение домена на поддомены (эквивалентные классы) и выбор значений из каждого поддомена.

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

Форма обучения и структура книги у Канера построена по спирали из 3 витков, каждый из которых более подробно раскрывает предыдущий:
  1. Основные термины и определения, алгоритм доменного тестирования на примере простой задачи сложения двух целых чисел, 
  2. Детальный анализ каждого из этапов доменного тестирования. Рассматривается шаг за шагом на 2-3 задачах с возрастающей сложностью. После каждого этапа автор дает 3-4 практические задачи.
  3. Сборник из 30 задач с анализом решений по схеме доменного тестирования
В названии книги есть слово "workbook" (рабочая тетрадь), что предполагает работу читателем (решение задач) перед тем, как прочитать авторский ответ.

Еще одна особенность книги - её сложно читать на электронном устройстве: таблицы, которые используются для записи граничных значений и оценке рисков, нечитабельны на маленьком экране, и повторяющаяся схема доменного тестирования для каждой главы на несколько страниц тоже отвлекает от хода чтения книги. Книга выпущена в бумажном формате А4, в котором схемы и пункты наглядны и умещаются в одну страницу.

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

Книга не читается за 1-2 вечера. Как и "Lessons learned in software testing", книга по доменному тестированию будет хороша для неспешного чтения по одной-две составные части 4 шагов алгоритма и затем - закреплением на практических задачах в 3 части. Каждый шаг алгоритма прост, но хорош для самостоятельного анализа, так как оставляет читателю поле для маневра или подключения других техник черного ящика.

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

воскресенье, 10 августа 2014 г.

Книжная полка. Джефф Кароло, Джеймс Уиттакер, Джейсон Арбон "Как тестируют в Google"

Ставлю на Книжную полку самую ожидаемую мной книгу - Джефф Кароло, Джеймс Уиттакер, Джейсон Арбон "Как тестируют в Google". После прочтения у меня остались двойственные впечатления. С одной стороны, есть полезные вещи. С другой - ожидал большего, тем более от книги с таким названием и таким объемом. Но обо всем по порядку.

Джефф Кароло, Джеймс Уиттакер, Джейсон Арбон "Как тестируют в Google" на oz.by

Технико-тактические характеристики:
Год издания: 2014
Страниц: 320
Формат: 170*240мм
ISBN: 978-5-496-00893-8
Скорость чтения - выше среднего
Ориентировочное время на прочтение:  5 - 7 часов
Полезность - средняя

Сначала давайте скажем большое спасибо Юле Нечаевой за данный перевод (а заодно - и за самое интересное предисловие к книге) - без него мы бы не увидели данную книгу на русском языке, с сохранением авторского стиля, возможностью скачать за 99 рублей в первый месяц (сейчас эта опция, к сожалению, недоступна).

А прочитало уже довольно много человек, и вот ссылки на отзывы моих коллег:

А теперь и мои "5 копеек":

Достоинства (что мне понравилось):
  • Мотивационная составляющая - как прийти от "тестирования как второстепенного процесса" к "отделу повышения качества разработки". Соглашусь, что книга, скорее, не про тестирование, а про процессы и стратегию. И про то, как тестированием увлечь.
  • Про разработчиков в тестировании и тест-инженерах - хорошо описаны их роли, обязанности, необходимые навыки, и даже есть тест для читателя, чтобы понять, к кому вы ближе.
  • Про тестовую сертификацию и про то, как ее идеей "заражали" отделы в Гугл. Кроме самой идеи, интересно почитать и про составление сбалансированности сертфикации (чтобы она было не слишком простой для начала, но и не слишком сложной чтобы отпугнуть желающих);
  • Анализ рисков и ACC-анализ - Attribute, Component, Capability. Описан подробно с живыми примерами.
  • Все по автоматизации тестирования. Правильный посыл и идеи.
  • Тулы для тестирования, например BITE (Browser Integrated Test Environment), тестовую среду, интегрированную в браузер, для экономии времени при занесении, поиске бага. Сразу захотелось попробовать.
  • Ссылка на exploratory-туры Виттакера: краткое описание, как применяется. Упомянутая книга сама запрыгнула в ToRead-лист.
  • Про собеседования и вопросы. Как проводится собеседование на разные роли.

Недостатки (что мне не понравилось):
  • затянутые вступления (самое полезное - к русскому переводу от Юлии Нечаевой, из остальных вступлений могли бы оставить одно "сборное", а так получилось, как будто дали высказаться всем, кто не смог принять участие в написании книги, но очень хотел что-нибудь хорошее сказать за праздничным столом);
  • большинство скриншотов - просто необработанные снимки экрана, не уловил взаимосвязи между некоторыми снимками и текстом, можно было их смело выкидывать, книга не потеряла бы;
  • ожидал большего от главы про тест-менеджеров. Рассказывается о том, какая это сложная роль и т.д. и т.п. А затем - несколько стандартных интервью по схеме: здравствуйте, меня зовут, и я тестировщик, пришел в Гугл, дорос до тест-лида, занимаюсь тем-то. Конечно, роль ТМа многогранная, не так легко ее описать, но хотелось бы вычленения основных обязанностей и требований к тест-менеджеру.
  • вообще, чтение интервью - сомнительное удовольствие. В самом интервью первичен эмоциональный аспект, "заряд", идея, но не объяснение, описание, знание. Плюс, в интервью всегда страдает объем: концентрация полезных мыслей снижается, суть может потеряться. И очень многое зависит от собеседника: интересного надо еще найти, и в нем - минимум половина успеха. В книге есть пара-тройка интересных историй, кейсов, все остальные мне показались однообразными и не запоминающимися.
  • хотя отдельные фрагменты картины тестирования в Google описаны хорошо (о них упоминал в достоинствах), цельной картины нет. Не хватает еще кусочков паззла.
Общий вывод: относительно полезная книга с хорошо проработанными отдельными темами, сильной мотивационной составляющей, правильными идеями по автоматизации, другими полезностями (бесплатные тулы для тестирования от Google, ACC-анализ и другие), но с немного растянутыми для объема (и бесполезными для сути) интервью, скриншотами. Рекомендую как "еще одну книгу по тестированию", которая вряд ли претендует на то, чтобы стать настольной (из-за отстутствия цельности). Новичкам будет интересно, более опытные вряд ли найдут для себя много нового. Чтобы сильно не разочароваться, не ожидайте очень уж многого от данной книги.

четверг, 12 июня 2014 г.

BBST: Foundations - обзор курса

Как я уже говорил и обещал, в апреле-мае я закончил онлайн-обучение по курсу BBST: Foundations. На днях мне пришло письмо об успешном окончании курса и диплом, и теперь я могу с полным правом выполнить свое обещание: написать о курсе подробнее.


Ранее я уже публиковал перевод статьи Сэма Канера "Неудача Udacity", об онлайн-образовании, о том, как сделать его более эффективным, что для этого необходимо. Мне было интересно сопоставить мнение Канера с тем, как он решал проблемы, обозначенные в статье, в своих онлайн-курсах.
BBST: Foundations - первый из серии курсов серии Сэма Канера, рассказывает, как ясно из названия, о базовых вещах в тестировании. Обязателен для прохождения, если вы планируете изучать следующие курсы. На текущий момент "следующими" ступенями являются курсы:
  • BBST: Bug Advocacy - оттачиваем навыки написания баг-репортов: начиная от определений бага, дефекта, жизненного цикла отчета, воспроизведения и исследования бага до написания хорошо структурированного отчета;
  • BBST: Test Design - от определения тест-дизайна и техник до их практического применения и эвристической модели тестовой стратегии (Heuristic Test Strategy Model)
  • BBST: Instructor Course - для тех, кто хочет стать инструкторами курсов BBST, либо для компании, либо как независимый консультант. 

Стоимость курса BBST: Foundations - 125 долларов + будет необходимо оплатить членский взнос за вступление в AST - сообщество (насколько я помню, это 20$ за год как студент). Курсы по Bug Advocacy и Test Design стоят уже 200 долларов, а курс инструкторов - бесплатный.

Курс длится 4 недели: 3 недели на темы + 1 неделя на подготовку и сдачу экзамена.  Рекомендуемое время для изучения - 12-14 часов в неделю. По своему опыту скажу, что у меня где-то так по времени и получалось. Одна деталь: это число "чистых" часов, без отвлечений. Желательно распланировать загрузку более равномерно в течение всей недели. Так как тем в курсе шесть, то получается по 2 темы на семь дней.

Темы курса BBST: Foundations:
  • Общий обзор курса и базовые понятия (компьютерная программа, баг, тестирование ПО, "ящики", виды тестирования и т. д.);
  • Стратегия тестирования (определение тестирования, миссия, цели тестирования, стратегия, дизайн, контекст, техники);
  • Использование эвристик и оракулов (определения оракулов, тестируемой системы, эвристик и их оценки, оракулы соответствия и оракулы Хоффмана)
  • Основы программирования и покрытие (вычисления, системы счисления, представления чисел в памяти, типы переменных, структуры данных, покрытия состояний и ветвей
  • Невозможность полного тестирования (покрытие, полное тестирование и примеры его невозможности
  • Измерения (основы измерений, параметры измерений, модель Вейбулла, искажения и дисфункции
Для курса вам понадобится достаточно хороший английский (мое мнение, не ниже уровня Intermediate - B1) - для чтения литературы, понимания лекций, комментирования своих и чужих ответов. В моей группе было 2 индуса, один белорус (это я), немец, португалец, остальные 12 человек - native-speaker'ы (UK, US, Canada, New Zealand). Так что только с "Ландан из зэ кэпитал оф Грэйт Бритэйн" и гугл-транслейтом будет тяжеловато.

Курс включает в себя:

  • Лекции (доступны в бесплатном доступе - http://www.testingeducation.org/BBST/foundations/);
  • Презентация - одна на весь курс, тоже в бесплатном доступе с лекциями;
  • Материал для чтения: обязательный и дополнительный. Я прочитал весь обязательный, дополнительный - что больше было для меня актуально на тот момент.
  • Тесты для самопроверки (quiz) - всего их 5, по одному к каждой теме. Для ответов можно пользоваться чем угодно (open book), авторы курса советуют проходить тест параллельно с просмотром лекций для лучшего понимания и закрепления материала. Каждый тест имеет жесткий дэдлайн, после которого ответы не принимаются и тест считается не пройденным.
    Всего в каждом тесте порядка 10-12 вопросов, ответы с множественным выбором. Интересная схема оценки правильности ответа: полностью правильный ответ - 1 балл, частично правильный (если в вашем ответе выделенные ответы являются правильными, но ответ не полон. Например, если вы выбрали варианты A и B, а в правильном ответе должны быть варианты A, B, C, то ваш ответ будет частично правильным), то вы получите 0.25 балла, во всех других случаях (неправильный ответ или даже "частично неправильный") вы получаете 0 баллов за вопрос.
    Еще один усложняющий момент теста - вы должны отвечать "According to the lecture", как хотите. В общем, у меня редко получалось набрать в тесте больше 70% от максимума.
  • Домашние задания: упражнения, которые нужно выполнить перед просмотром лекции (для того, чтобы оценить свой текущий уровень знаний и сравнить его с тем, что вы услышите на лекциях), командные задания (работа в группе из 4-5 человек по заданной теме, обсуждение в форуме, общий результат обсуждения оформляется в Вики), оценка работы коллег и других команд (peer evaluation). Именно командная работа и оценки коллег - одна из самых сильных частей данного курса. Небольшая ложка дегтя - хотелось бы еще больше фидбэка от инструкторов курса. Комментарии инструкторов есть, но их мало.
  • Вопросы для тренировки перед экзаменом: 10 "коротких" и 10 "длинных" (в зависимости от объема ответа, который от вас требуется: например, короткий - это пару абзацев, длинный - развернутое эссе, порядка 5 абзацев). Это отличная возможность поупражняться в своих ответах, оценить других и самому получить оценку.
  • Итоговый экзамен (Closed Book Exam - ничем нельзя пользоваться, так обучение онлайн, конечно, никто над вами не стоит, но если вас заподозрят в списывании - курс засчитывается как Failed без возможности пересдачи). Экзамен состоит из 3 "длинных" и "коротких" случайных вопроса из пула вопросов для тренировки перед экзаменом. Очень важно отвечать на вопрос кратко и по существу, не отвлекаясь на то, что не спрашивается в вопросе, так как это трактуется как неумение выделить только самое главное и/или незнание, а вследствие - желание написать все подряд "для объема". Лучше отвечать меньше, но качественнее, при этом вы должны показать, что поняли тему вопроса и знаете то, о чем пишете.
    После итогового экзамена, вы будете должны оценить работы 2 коллег, а также поставить себе оценки за каждый вопрос. 
У домашних заданий и тестов установлены дэдлайны, поэтому желательно, конечно, позаботиться о том, чтобы у вас было как минимум время и онлайн-доступ с возможностью работать с материалом (особенно актуально летом в период отпусков). Так как есть групповые домашние задания, то из-за разницы в часовых поясах лучше работать оперативно, не откладывать все на последний вечер.

Из 12 рекомендованных часов у меня выходило порядка 2-4 часов на теорию (лекции + материалы) и тест по теме, остальные 8-10 часов - на домашние задания. По этим данным можете судить сами, насколько курс Foundations практический.

В целом, курс однозначно стоит порекомендовать тем, кто уже обладает некоторым опытом в тестировании: вы получите структурированные знания, расширите свой кругозор и примените это сначала на практике в домашних заданиях, а затем и на проекте. На мой взгляд, это лучший курс как баланс между теорией и практикой. Сам рекомендую данный курс, и ставлю в свой дальнейший план прохождение курсов Bug Advocacy и Test Design.

На этом все. Если есть еще вопросы по BBST - пишите в комментариях, отвечу.

вторник, 10 июня 2014 г.

Хэб Схотс "Эвристики для распознания тестировщиков-профессионалов" - перевод

Продолжаю серию переводов статей по тестированию. Статья Хэба Схотса расскажет вам об эвристиках для распознавания тестировщиков-профессионалов. Если вас интересует данная тема, из самого свежего также порекомендую доклад Алексея Лянгузова "Успешный тестировщик. Путь профессионала" на SQA Days-15, о котором я писал в обзоре первого дня конференции.

Ссылка на оригинал  -  http://www.huibschoots.nl/wordpress/?p=1666
Формат текста (выделение терминов, курсив, цитирование) и ссылки на другие статьи из текста взяты с оригинала "как есть".

Helena Jeret-Mae задала вопрос в твиттере: "Какие ваши критерии профессионализма тестировщиков и CDT-комьюнити?" Позже в емейле она уточнила свой вопрос: "Обновленная версия моего вопроса: какие по-вашему мнению существуют эвристики распознавания профессионального тестировщика? Я заменила "критерии" на "эвристики", этот термин менее категоричный. И я оставила термин "профессионализм" на ваше усмотрение - я не знаю точно, что вы подразумеваете под ним".

В своем выступлении "Как стать великолепным тестировщиком" на конференции ContextCopengagen в январе 2014 года я говорил о тестировщиках и их навыках. Я говорил, что многие тестировщики не знают, что они делают, и не могут доходчиво объяснить, какую ценность они вносят в проект. Я повидал много тестировщиков, которые раз за разом используют один и тот же подход. Если я спрашиваю, какие тестовые техники им известны, они называют совсем немного. Если я прошу их объяснить мне техники или показать, как они работают, у них нет ответа. Для меня это шок, и я не могу объяснить, почему тестировщики, называющие себя профессионалами, знают так мало про свое ремесло и совсем не обучаются ему.

Вот почему я делаю различие между тестировщиками-профессионалами (которых я считаю очень мало) и тестировщиками по профессии. Конечно, я знаю и понимаю, что всегда будут люди с менталитетом "с 9 утра до 5 вечера", которые не читают книги или блоги и которые только хотят проходить курсы, если начальство их оплачивает. Я принимаю это как данность, но это не значит, что я хочу работать с такими тестировщиками!

Но достаточно разглагольствований, давайте я отвечу на вопрос.

Профессионализм - это быть профессионалом и быть в курсе ожиданий от профессионала. Професииональное тестирование сложное и многообразное, оно имеет несколько измерений: знания, навыки, опыт, отношение, этика и ценности. Я написал пост в своем блоге "Что делает тестировщика хорошим" в 2011-м году на эту тему, и сейчас мне есть что добавить, хотя все, что я написал тогда, тоже верно. В моих более ранних постах я не упоминал ценности и этику, и сейчас я нахожу их крайне важными. Джеймс Бах написал о них в заметке "Размышления об этике в тестировании" и "темы Быстрого Тестирования", которые упоминаются на слайдах презентации "Быстрое тестирование ПО".


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

Мои эвристики для того, чтобы распознать тестировщиков-професионалов:

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

2.  Они действительно любят то, что они делают, и увлечены своим ремеслом.
Тестирование - трудная вещь, и чтобы быть успешным, тестировщику необходимо быть упорными в обучении и в своей работе. Страсть помогает им стать настоящими профессионалами. Посмотрите это видео, в котором Стив Джобс говорит о страсти.

3. Они постоянно и в первую очередь учитывают контекст.
Чтобы быть эффективным, тестировщики должны выбрать цели тестирования, техники и, в первую очередь, посмотреть  на детали конкретной ситуации. Они признают, что нет "лучших практик", есть только хорошие практики в данном контексте.

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

5. Они знают, что разработка и тестирование ПО - командный вид спорта.
Ключ к сотрудничеству - становиться все более эффективным и продуктивным в тестировании. Разработка ПО  - командный спорт: люди, работающие вместе, наиболее важная часть любого контекста проекта. Тестировщик-профессионал знает, как работать с разработчиками и другими участниками проекта в любой ситуации.

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

7. Они задают вопросы, прежде чем cделать что-либо.
Тестирование зависит от многих вещей, и от видимого нам контекста. Что такое информация, которую мы должны найти? Что такое миссия тестирования? Это можно легко проверить, если дать тестировщику упражение на интервью. Если он или она начинает работу над упражнением или отвечает, не задавая вопросы, это о чем-то говорит.

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

9. Они знают, что эстимации (оценки) - это переговоры.
Обратите внимание на эти статьи в блоге Майкла Болтона:
10. Они используют тест-кейсы и тестовую документацию с умом.
Контекст определяет, какую тестовую документацию вы должны создать и какой вид документации полезен. Совсем недавно отличная (и объемная) статья Джеймса Баха и Аарона Ходдера была опубликована в Testing Trapeze "Тест-кейсы не тестируют: на пути к культуре производительности тестирования". Также Фиона Чарльз поделилась своими интересными мыслями о тестовой документации в статье "Разрушаем Тиранию Форм".

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

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

13. Они любознательны и любят изучать новые вещи.
Тестировщики получают удовольствие от выяснения сути вещей. О любознательном поведении хорошо написал Гай Мейсон: "Любознательный ум можно описать как активный, вовлеченный, пытливый. Такой склад ума часто находится в поисках новой информации, получает удовольствие от исследований того, что есть и наслаждается процессом, сопровождающим процесс достижения этой цели".

14. Они могут обладать нижеперечисленными навыками межличностного общения. Как я упоминал ранее, от контекста зависит, какие навыки наиболее важны.
  • Письменные навыки (отчетности, сообщения, краткие сообщения)
  • Коммуникативные навыки (умение слушать, рассказывать истории, готовить презентации, умение говорит "нет", устный отчет, умение аргументировать и договариваться)
  • Социальные и эмоциональные навыки (эмпатия, умение вдохновлять, нетворкинг, управление конфликтами и консалтинг)
  • Навыки решения проблем
  • Навыки принятия решений
  • Навыки обучения и изучения
  • Быть проактивным и уверенным в себе
15. Они великолепно владеют навыками тестировщика:
  • Навыки мышления (критическое, латеральное, креативное, системное мышление)
  • Аналитические навыки
  • Моделирование
  • Анализ рисков
  • Планирование и оценка
  • Умение применять различные тестовые техники
  • Исследование
  • Проектирование эксперимента
  • Наблюдение
В приложении "Динамика исследовательского тестирования" к документу "Быстрое тестирование ПО" вы можете найти списки навыков.

16. Они обладают достаточными техническими навыками.
Есть много технических навыков, которыми должен обладать тестировщик, к примеру уметь использовать тулы, обладать навыками кодирования или желанием изучать техническую структуру приложения, которое он тестирует. Навыки автоматизации, такие как написание скриптов, знание SQL для работы с базами данных, быть способным сконфигурировать и установить ПО. знания и навыки работы с платформой, на которую устанавливается тестируемая система (Windows, Linux, мобайл, и т.д.)


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

Между прочим, я погуглил запрос "кодекс этики тестирования ПО" и обнаружил Кодекс Этики ISTQB для тестировщиков-профессионалов. Мне интересно, знают ли о нем люди, которые сдавали экзамен И, что более важно, используют его в своей практике. А вы используете?

Хэб Схотс, 23 марта 2014 года.

P.S. Для дальнейшего улучшения качества переводов буду рад редакторской помощи: вы получите первым вариант статьи и сможете внести свои улучшения перед окончательной публикацией в блоге. Вы также будете включены в список благодарностей под каждым переводом со ссылкой (если пожелаете) на ваш профайл или сайт.
Если вы обладаете хорошим английским и русским, видите несовершенства данного перевода и желаете сделать будущие переводы лучше - пишите мне - www.google.com/+ЛадутькоАндрей