📚 Hub Books: Онлайн-чтение книгДомашняяПользовательские истории. Искусство гибкой разработки ПО - Джефф Паттон

Пользовательские истории. Искусство гибкой разработки ПО - Джефф Паттон

Шрифт:

-
+

Интервал:

-
+
1 ... 66 67 68 69 70 71 72 73 74 75
Перейти на страницу:

Спасая мир, идите маленькими шажками

Пользовательские истории. Искусство гибкой разработки ПО

Это снова мой друг Шериф из Atlassian. На этой фотографии он объясняет мне, что члены команды разработки продукта постоянно собирают и обрабатывают множество мелких улучшений. Они очень волнуются за своих пользователей. Они знают, что стаи мелких багов и неполадок бесят пользователей, и этот факт бесит саму команду. По их словам, это примерно как умереть, «тысячу раз поранившись бумажным листом». Поэтому на стене, рядом с которой команда работает над продуктом Green Hopper, много сгруппированных пометок. Каждый раз, когда какой-нибудь член команды исправляет какой-то мелкий недостаток, он или она делает пометку на стене. Похоже, что в следующем релизе будут исправлены 47 мелких неполадок. Если вы пользуетесь JIRA или Confluence, чуть позже вы можете сказать ребятам спасибо.

Глава 18. Извлекайте уроки из всех своих разработок

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

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

Оцените свою командную работу

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

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

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

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

Рецепт командного осмысления и оценки продукта

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

Пользовательские истории. Искусство гибкой разработки ПО

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

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

На семинаре необходимо уделить внимание трем темам: продукту, плану и процессу.

Продукт

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

Субъективно, как команда оцените качество получившегося продукта. Обсуждение качества может стать началом многих интересных дискуссий.

Обсудите качество пользовательского взаимодействия. Не только то, как выглядит графический интерфейс, но и то, насколько комфортна работа с продуктом. Соответствует ли качество вашим ожиданиям? Оцените свою работу по пятибалльной шкале (5 – высшая оценка).

Обсудите функциональное качество. Прошло ли тестирование гладко, или обнаружилось много багов? Тестировщики обнаружили больше багов, потому что добавилось больше кода или потому, что получили больше времени на тестирование? Оцените свою работу по пятибалльной шкале (5 – высшая оценка).

Обсудите качество кода. Код, который вы написали, будет легко расширять и поддерживать? Или вы просто написали очередную порцию унаследованного кода? Оцените свою работу по пятибалльной шкале (5 – высшая оценка).

Запишите истории для исправления проблем качества, обнаружившихся в вашем продукте.

Если вы участвуете как в работе по исследованиям, так и в реализации (как и должно быть), обсудите свою исследовательскую работу в последнем цикле. Что вы делали? Что нового узнали?

План

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

Посмотрите, какие истории реализованы до конца, а какие – нет. Это может быть сложнее, чем вы думаете. Обсуждение поможет вашей команде прийти к общему определению того, что считать сделанным. Включает ли в себя «сделано» готовые автоматические тесты? Означает ли это, что закончено ручное тестирование?

1 ... 66 67 68 69 70 71 72 73 74 75
Перейти на страницу:

Комментарии

Обратите внимание, что комментарий должен быть не короче 20 символов. Покажите уважение к себе и другим пользователям!

Никто еще не прокомментировал. Хотите быть первым, кто выскажется?