понедельник, 21 октября 2013 г.

Куда уходит все время - перевод статьи Майкла Болтона

На прошлой неделе отзвучали сладкие ноты онлайн-конференции по тестированию ПО Chief Confet&QA. Как всегда, были очень интересные доклады, ценные мысли, а главное - дополнительный заряд мотивации действовать и развиваться. Чуть подробнее свои мысли по докладам я напишу в одном из следующих постов.

А сегодня я подготовил перевод статьи Майкла Болтона "Куда уходит все время" (Michael Bolton - "Where Does All That Time Go?"), о которой я рассказывал на своем конфетном докладе о тайм-менеджменте в тестировании. Статья очень интересная и поучительная, поэтому рекомендую к прочтению.

Ссылка на оригинал  -  http://www.developsense.com/blog/2012/10/where-does-all-that-time-go/
Формат текста (выделение терминов, курсив, цитирование) и ссылки на другие статьи из текста взяты с оригинала "как есть".

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

- Все это отнимает столько времени. Когда мне нужен лист бумаги для заметок, я обязательно должен заполнить соответствующую форму. Боже, спаси меня, если формы вдруг закончатся!
- Сколько времени ты тратишь на подобную работу каждую неделю? - спросил я.
- Около часа в день. Иногда два. Встречи... Скажем, полтора часа в среднем.
- Вау, это ощутимая часть этой недели. У меня есть идея.
- Давай изобразим это, - сказал я и достал мой верный молескин. Я предпочитаю вариант в клеточку для таких случаев, как этот. Я нарисовал прямоугольник, 20 клеточек в длину и 2 - в ширину.


- Итак, ты тратишь в среднем полтора часа в день на согласование (C - compliance stuff). Полтора умножить на пять, или семь с половиной часов в неделю. Давай округлим до восьми. Напиши С в восьми клетках.

Петр так и сделал.


- Хорошо. - сказал я, - А теперь напрягись и вспомни, сколько ты потратил времени на борьбу с тестовым окружении.

Глаза Петра загорелись.

- Да! - воскликнул он. - Это большая часть дня. Смотри, это мобильное приложение. У нас есть серверная  компонента и клиентская, с которой мы имеем дело, и серверная компонента - это настоящий слон.
- Расскажи-ка подробнее.
- Долгая история. Мы получаем окружение, которое моделирует систему на продакшн. Софт, который мы разрабатываем, содержит столько багов, что мы не можем определенно сказать, является ли эта проблема общей, или воспроизводится только для некоторой модели телефонов, и поэтому мы заводим еще одну конфигурацию для того, чтобы провести целенаправленное тестирование каждый раз, когда мы добавляем поддержку нового телефона. Это то, над чем я сейчас работаю. Проблема в том, что настойка нового телефона крайне скрупулезна и занимает очень много времени. Я должен делать все очень внимательно. Я несколько раз просил время на то, чтобы автоматизировать процесс настройки некоторых конфигураций, но мне отказали, так как времени недостаточно, мы и так постоянно в цейтноте. Поэтому, я вынужден делать это вручную. Процесс запутанный, и во время него я часто ошибаюсь. С другой стороны, если я обнаруживаю, что что-то не работает, я должен выяснить, почему. Это означает, что я должен сообщить об этом разработчикам и разобраться, в чем ошибка; затем я должен вернуться назад к тестированию нового окружения. И чаще всего, приходится начинать тестирование с самого начала. Это отнимает часы. И так каждый день.
- Окей. Давай запишем это в нашей маленькой таблице, прямо здесь. Напиши S в каждой клетке для каждого потраченного часа в неделю.

После этого Петр принялся заполнять клеточки. Один десяток, второй. И затем еще восемь клеток.


- В самом деле?! - воскликнул я. - Двадцать восемь часов в неделю, разделенные на пять дней - это более пяти часов в день. Ты серьезно?
- Абсолютно - вздохнул Петр. - Это занимает большую часть, иногда весь день. Это скучно. Что в самом деле меня убивает, так это то, что я не ощущаю, что занимаюсь тестированием.
- Я не шучу. На это нет времени. Остаются только четыре клеточки в неделю. Плюс, то, о чем ты уже говорил - тонны багов, которые не относятся к настройкам и целенаправленному тестированию.
- Это так. Когда дело доходит до тех вещей, которые на самом деле нуждаются в тестировании, в них тоже находится множество багов. Таким образом, мое время на тестирование - не чистое тестирование. Это в основном время, потраченное на то, чтобы воспроизвести и задокументировать баг.
- Да. В сессионном тестировании, это исследование и документирование бага - Б-время. И оно прерывает время на дизайн и выполнение теста - Т-время - которое создает актуальное покрытие тестами и позволяющее изучить, что в самом деле происходит в продукте. Так, сколько занимает Б-время?

Петр поставил букву Б в три из четырех клеток.


- И, наконец, Т-время?

У Петра осталось только место для одной буквы Т в правом нижнем углу.


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


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


- Это заблуждение менеджмента. С того момента как, в их воображении, у тебя есть сорок часов на тестирование в неделю, и для них это нормально - спросить, почему ты не обнаружил этот баг.
- Хммм... Так и есть. - согласился Петр.
- Когда в реальности они получают это. И я нарисовал для Петра.


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

Несколько дней спустя, я показал эту страницу из блокнота Джеймсу Баху.

- Вау! - ответил он. - Этот парень может быть в сорок раз продуктивнее!
- Сорок?
- Ну нет, не совсем, конечно. Но предположим, программисты проверят свою работу более тщательно, или предположим, что тестировщики попрактикуются в написании более точных отчетов о дефектах и отточат свои исследовательские навыки. Одна из этих двух вещей поможет сократить время на треть на исследование дефекта. Это позволит освободить больше времени на тестирование, если тестировщиков не будут отвлекать. Что если наполовину сократить время на согласование и борьбу с тестовыми окружениями?
- Четыре плюс четырнадцать... - посчитал я. - Это даст ему восемнадцать дополнительных часов на тестирование и исследование багов. Итого 22 часа. И даже если они будут продолжать тратить по два часа на исследование багов для каждого часа времени на тестирование... Отлично, это значит, продуктивность возрастет в семь раз, как минимум.
- В семь раз больше времени на тестовое покрытие, если предложенные идеи сработают. - ответил Джеймс.
- Может быть, разделение времени на составляющие - это то, что захотят сделать многие тестировщики в своей работе.

А как обстоит дело у вас?

Майкл Болтон, 30 октября 2012 года.

3 комментария:

  1. Перевод неплохой, но...
    Главная проблема неплохих переводов не в том, что они не очень хорошие, а в том, что они достаточно хороши, чтобы казаться правильными. Но всё равно есть места, где русское предложение вдруг как-то не очень гладко вписывается в текст, вот по ним и видно, где что-то теряется в переводе. (А что-то и не в переводе, правильная ссылка на исходную статью -- http://www.developsense.com/blog/2012/10/where-does-all-that-time-go/)

    - Все это отнимает столько времени. Мне нужен лист бумаги для заметок, я обязательно должен записать это. Боже, спаси меня, если у меня закончатся формы!
    “Everything takes so long. I want a pad of paper to take notes, I have to fill out a form for it. God help me if I run out of forms!”
    Когда мне нужна бумага для заметок, приходится заполнять соответствующую форму (на заказ блокнота или накладную, что там у них).

    Я предпочитаю листочек в клеточку для таких случаев, как этот.
    I prefer the version with the graph paper in it, for occasions just like this one.
    Я предпочитаю вариант в клеточку, как раз из-за таких случаев как этот.
    “It’s a big deal. We’ve got one environment that models the production system. The software we’re developing has been so buggy that we can’t tell whether a given problem is general, or specific to the handset, so we have another one that we set up to do targeted testing every time we add support for a new handset. That’s the one I work with. Trouble is, setting it up takes ages and it’s really finicky. I have to do everything really carefully. I’ve asked for time to do scripting to automate some of it, but they won’t give that to me, because they’re always in such a rush. So, I do it by hand. It’s buggy, and I make the odd mistake.
    Есть (а не добавляется) ещё одна среда, которую переконфигурируют каждый раз для конкретной мобилки. В спешке Пётр иногда ошибается (make the odd mistake).

    - Хорошо, - сказал я, - учитывая иллюзию, с которой они привыкли работать, это не обоснованный вопрос.
    “Well,” I said, “considering the illusion they’re probably working under, it’s not an unreasonable question.”
    -- Ну, учитывая заблуждение, в котором они, скорее всего, находятся, вопрос не неразумный.

    - Что говорит твоя визитка?
    “What does it say on your business card?”
    -- Что написано у тебя на визитке?

    “Maybe de-lumping is the kind of thing lots of testers would want to do in their test reports,” I said.
    Это не про разгрузку времени в работе, это про разделение всего куска времени на составляющие по виду работ в отчёте о тестировании. Не про "хотят", а про "захотят, потому что стоило бы". То, о чём, в общем, вся статья.

    И так далее, и тому подобное.

    ОтветитьУдалить
  2. Отличный комментарий, спасибо за конструктивную критику!

    Да, местами получился google-translate, самая очевидная и для меня ошибка, - это в последнем предложении, про разделение времени по составляющим, не мог точно сформулировать, несколько раз переписывал формулировку, но окончательный вариант - согласен, не передает суть.

    Был бы очень признателен за ваши комментарии к переводам в блоге в будущем. Скажите, могу ли я к вам обращаться за помощью?

    Ошибки исправлю, еще раз спасибо!

    ОтветитьУдалить
  3. “Maybe de-lumping is the kind of thing lots of testers would want to do in their test reports,” I said.
    Всё-таки, по-моему, важно и про отчёты. Они ж не для себя будут раскладывать временные затраты, а для тех самых менеджеров, которые полагают, что тестировщик всё время только тестирует.
    И ещё вот: http://english.stackexchange.com/questions/77408/what-does-you-will-want-to-mean
    То есть мысль, по-моему, такая: Такую [выкладку | разблюдовку], наверное, _многим_ тестировщикам [было бы полезно | стоит | захочется] включить в свои отчёты о тестировании.

    Обращайтесь. :) Быстрой реакции, к сожалению, обещать не могу, но пишите на гугл-почту llanie.de.summers+SoF.

    ОтветитьУдалить