12345 54321
это понятно. я и не говорю, что горизонтальная команда не может быть успешной в 100% случаев. вопрос был в другом - успешность продукта достигалась личными усилиями людей или же эффективно организованным процессом разработки и контроля качества? потому как груминги это конечно здорово, но стандартный разработчик не должен думать, все ли юз кейсы описаны в требованиях - если он это делает, это его личный и никем не оплачиваемый труд. эффективно организованный процесс разработки же предполагает, что на каждом этапе фича проходит через разных людей и каждый из них сосредоточен в определенный момент времени только на одной задаче, например разрабу - писать код, бизнес-аналитику - собрать всю необходимую бизнес-инфу, тестеру - описать все необходимые тест-кейсы. поэтому я и писал, что аджайл-команда должна быть шкурно заинтересована в успехе продукта - у них есть реальный профит и "оплата" их дополнительных усилий. если они все это делают и при этом получают оклад - это риск. может ли быть успешным проект при таком раскладе? Да, конечно. Эффективен ли он с точки зрения процесса доставки ПО на прод в желаемом качестве? Нет, слишком много усилий от каждого члена команды в областях, в которых у них нет экспертизы
"сосредоточенность каждого на одной задаче" совершенно неявно предполагает, хе-хе, всезнание:
- разработчик точно ВСЁ знает что нужно, что может заимпактить, как это будет тестироваться.
- аналитик точно знает как ВСЁ это работает и какие флоу будет прогонять тестировщик,
- тестировщик точно ВСЁ знает "что под капотом", и чего больше хотят.
На практике периодически случалось что каждый держит "свой конец слона", и разработчик-тестировщик-аналитик потратят меньше времени если обо всём договорятся, рассказав друг другу и сведя друг с другом информацию про ту часть слона которую они держат и будут делать.
Если друг с другом НЕ общаться, потом получается:
- Аналитик или кто на его месте написал спеку, получил 40-30 вопросов и замечаний, потому что "это так не работает, то так не называется и тоже так не работает, а вот так мы будем делать пол-года, но можно вот этак и месяц"
- Разработчик честно делал задачу но почему-то решил сам сделать графику растровым вариантом А, а надо было векторным вариантом Б. Главный дизайнер говорит что так релизить никак нельзя, поехали переделывать.
- Разработчик честно делал задачу, но зааффектил другую фичу которая в требования к задаче не попала, а вообще она есть и используется. Поехали переделывать ещё спринт.
- Разработчик рассказывает тестировщику что будет под капотом, тестировщик уменьшает эстимейты на тестирование.
- Тестировщик показывает как по этой фиче сделать "даже меньше пейрвайза", команда соглашается что "ну давайте так попробуем".
- Аналитик и разработчик выкатывают вариант, UX дизайнер говорит что это не сойдётся с оптимальным для человека дизайном и наглядно показывает как сделать лучше.
- Тестировщик сразу начинает задавать вопросы "а может по-нормальному сделаем?", потом после трёх недель разработки за три дня (допустим) "убивает" фичу, находя пример когда фича как она реализована по требованиям репортит полную лажу. Принимается решение всё-таки делать по-нормальному.
Практическая польза от встреч всех участников-стейкхолдеров определённо была, что наглядно демонстрировало что будет лучше если участники процесса будут между собой немного больше общаться, а не "просто каждый на своём месте".
(+) И, как всегда, не понимаю почему люди думают что если они говорят слово "процесс", сразу начинает работать какая-то особая магия.