воскресенье, 13 января 2013 г.

Финальной версии спецификации не бывает

Я продолжу раззадоривать любопытство тех, кто еще не читал Рона Патторна, приводя любопытные цитаты из его книжки.

Вообще люблю читать книжки в оригинале. Это так... Приятно - когда ты читаешь и понимаешь, о чем речь, да еще и о своем, любимом (smile)

Итак!
В самом начале книжки автор срывает маски и спускает витающих "где-то там, в прекрасном далеком" юных тестировщиков с небес - на землю!

Product Specification Are Never Final (вольный перевод)

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

И нет никакого пути запретить эти изменения. Представьте себе, что спецификация вашего продукта заблокирована, утверждена последняя, финальная версия. Вы распланировали двухгодичных релиз. А вот ваши главные конкуренты сделали продукт, подобный вашему, но с несколькими приятными для Заказчиков фичами, которых в вашем продукте нет.

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

И как тестировщик, ты должен принять тот факт, что спецификация может изменяться. В релиз могут быть добавлены незапланированные фичи, которые ты не планировал тестировать. Фичи могут меняться и даже, о ужас, удаляться после того, как ты их уже честно протестировал и даже зарепортил все найденные баги. Такое случается. Прими и прости.

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

7 комментариев:

  1. > Индустрия движется вперед семимильными шагами, из-за чего программа, разработанная год назад, сегодня уже никого не интересует.
    Ну, че. Он не прав. Уровень крипт реквайемента вовсе не такой.
    "Не читайте перед завтраком советских газет."

    > Ну прям нечего добавить, разве что - планируя релиз, всегда оставляйте себе время...
    Это одна из стратегий. Не лучшая. Ищите более хорошие стратегии.

    ОтветитьУдалить
    Ответы
    1. Ну, не соглашусь. Я работала с тестированием игр для мобильных телефонов, а, уйдя оттуда, через год "отстала от жизни" - потому что пока я работала, об айфонах и андроидах еще даже не заикались.

      Нет, конечно, в том, что "программа, разработанная год назад - никому не нужна", я тоже не совсем согласна. Тем более, что сама работаю с приложением, сделанным "на века", ну или года хотя бы :)

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

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

      Удалить
  2. > Ну, не соглашусь. Я работала с тестированием игр для мобильных телефонов, а, уйдя оттуда, через год "отстала от жизни" - потому что пока я работала, об айфонах и андроидах еще даже не заикались.

    И что?! http://lesswrong.ru/w/%D0%9E%D0%B1%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%B0_%D0%BE%D0%B4%D0%BD%D0%BE%D0%BC_%D0%BF%D1%80%D0%B8%D0%BC%D0%B5%D1%80%D0%B5

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

    Это одна из стратегий. Покопайте материалы по вариативности. Например, прочитайте книгу "Критическая цепь" Голдратта.

    ОтветитьУдалить
    Ответы
    1. Ну, Сергей, лично я обобщений не делала :) Я просто согласилась с автором книжки. А у него, я думаю, было побольше информации, чем у нас с Вами. Тем более что рынок другой, даже если у Вас есть большой опыт в России, то нельзя с уверенностью заявлять о том, что происходит за рубежом.
      И потом, какой же это единичный пример? Тогда айфонов еще не было (или были в зачаточном варианте), разумеется, и софта игрового под них не было / было мало. А через год-другой все изменилось. А меж тем это огромная индустрия, зайдите в андроиде на популярное приложение и посмотрите, сколько у него скачиваний. Сейчас уже миллионы людей по всему свету что-то качают, играют итд. А когда-то этого не было. Так что про обобщение не убедили.

      >> Например, прочитайте книгу "Критическая цепь" Голдратта
      Спасибо, ознакомлюсь. У меня есть книга "цель", это не она? А то, может, у нее есть и второе название, но, так как пока не читала. еще не знаю...

      Удалить
  3. Я бы сказала, что это всё актуально не только для тестровщиков, но и для всей команды: живым проектам свойственно меняться, и принимать это приходится всем - аналитикам переспецифицировать, разработчикам перереализовывать, тестировщикам перетестировать, руководителям разгребать это всё и успокаивать замученных аналитиков, разработчиков и тестировщиков :)

    ОтветитьУдалить
  4. > А у него, я думаю, было побольше информации, чем у нас с Вами.
    Щаз. (это ирония)

    > у Вас есть большой опыт в России, то нельзя с уверенностью заявлять о том, что происходит за рубежом.
    Щаз.

    << "НАШИ ПРОБЛЕМЫ — ДРУГИЕ"
    Может быть, но принципы, которые помогают решить их, — универсальны. >>
    (с) Деминг.

    > Сейчас уже миллионы людей по всему свету что-то качают, играют и тд.
    Пятнадцать лет назад было ровно тоже самое. То что вы об этом не знаете, вовсе не значит, что этого не было.

    >> Например, прочитайте книгу "Критическая цепь" Голдратта
    > Спасибо, ознакомлюсь. У меня есть книга "цель", это не она?
    У Голдратта много книг.
    "Цель" является базовой и обязательна к прочтению. Она о применении TOC в материальном производстве. Есть еще "Цель-2", "Цель-3" и много еще чего. Но нас интересует "Критическая цепь". "Критическая цепь" - книга о работе с вариабельностью в проектах. В том числе в проектах по разработке ПО. И мне не понятно, как некто собирается планировать проект, если он не знает базовых вещей о планировании.

    ОтветитьУдалить
    Ответы
    1. > Щаз. (это ирония)
      Вы очень конструктивны и убедительны, да :)

      > Пятнадцать лет назад было ровно тоже самое. То что вы об этом не знаете, вовсе не значит, что этого не было.
      15 лет назад у миллионов людей были андроиды и айфоны? Не верю так же, как и Вы в то, что прогресс не стоит на месте.
      Ах да, "Щаз" :)

      > И мне не понятно, как некто собирается планировать проект, если он не знает базовых вещей о планировании.
      Немного не поняла, это обобщенная фраза и относящаяся ко мне? Так я вроде не ПМ и не Аналитик, проект планировать...

      Удалить