среда, 14 сентября 2011 г.

Как тестировщикам получать ответы у программистов. Часть 1

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

Грабля №1: Программисты не любят внезапных прерываний 

      Наверняка, вам знакомо выражение «быть в потоке». Это такое состояние, когда вы, отрешившись от всего земного и сосредоточив свой ум на задаче, начинаете работать с фантастической эффективностью. За пару часов вы можете сделать столько работы, сколько сделали за предыдущую неделю. Или найти блестящее решение сложной проблемы. Или просто непрерывно и методично разделываться с задачами, пока они не закончатся. Или… Ну, в общем, вы поняли.
      Исследования показывают, что, если человека «в потоке» отвлечь, то для того, чтобы вернуться в состояние сосредоточенности ему понадобится не менее 15-20 минут. Можно провести аналогию со сном. Если вы разбудите спящего хоть на минуточку,  заснуть обратно моментально он уже не сможет, - на это нужно время. То же самое со сложной умственной работой, когда ум человека «спит» для окружающей среды, бодрствуя в области классов, методов, переменных  и т.д.
      Если вы не уверены, что программист сейчас не сконцентрирован на своей задаче, не подходите неожиданно и не хлопайте его радостно по плечу. В лучшем случае это вызовет досаду и раздражение, в худшем, вас могут прямым текстом попросить удалиться.

Что делать:
А) Пишите письма
      Если вопрос не срочный (может подождать несколько дней), можно написать на и-мейл. Если вы не уверены, читаются ли ваши письма, включайте опцию «Уведомлять о прочтении». Если есть причины опасаться, что программист прочтет письмо и проигнорирует его, пишите с копией на менеджера проекта или на тим лида программистов.
      Если вопрос более срочный (надо выяснить сегодня), можно воспользоваться текстовым чатом. Я особенно рекомендую этот способ. Если в вашей компании такого нет, выясните где можно найти программиста онлайн (ISQ, Skype, Jabber, Gmail, др.) и организуйте себе связь этим способом.
      Написав в чате, не сверлите взглядом монитор и не ждите немедленного ответа. Ваш коллега может быть занят и не видеть, что пришло сообщение. Или может быть просто занят. Не шлите ему каждые пять минут вопросы вроде «ты есть?». Когда программист выйдет из «потока», он спокойно вам ответит.

Б) Подстерегите его, когда он отвлекся
      Например, когда он идет на перекур/кофе/обед или разговаривает с коллегами на отвлеченные темы.
      Если вам нужна продолжительная консультация (полчаса или больше), лучше договоритесь о времени ее проведения заранее, за пару часов, или даже за день-другой.

В) Если вопрос действительно срочный и вам нужно отвлечь программиста, даже видя, что он занят, объясните откуда такая срочность. Например, «Саша, извини, что отвлекаю, но заказчик звонит из Америки, они сейчас на проводе, спрашивают, будет ли сборка в среду?»

Продолжение здесь.

Комментариев нет:

Отправить комментарий