Обсуждение блога:Максима Цепкова/2016-12-24: Agile - это Карнавальная ночь как способ производства/c000066 — различия между версиями

Материал из MaksWiki
Перейти к: навигация, поиск
(Новый комментарий от MaksTsepkov: И еще один содержательный '''[https://www.facebook.com/groups/TealOrg/permalink/1807527862856389/?comment_id=1808170006125508&comm…)
 
м
 
Строка 1: Строка 1:
И еще один содержательный '''[https://www.facebook.com/groups/TealOrg/permalink/1807527862856389/?comment_id=1808170006125508&comment_tracking=%7B%22tn%22%3A%22R%22%7D тред комментариев] Елена Верещага'''  
+
И еще один содержательный '''[https://www.facebook.com/groups/TealOrg/permalink/1807527862856389/?comment_id=1808170006125508&comment_tracking=%7B%22tn%22%3A%22R%22%7D тред комментариев] Елена Верещага''' 25-28.12 (перенесено позже)
  
 
Максим, спасибо за столь подробный ответ на мой комментарий.
 
Максим, спасибо за столь подробный ответ на мой комментарий.

Текущая версия на 00:18, 31 декабря 2016

И еще один содержательный тред комментариев Елена Верещага 25-28.12 (перенесено позже)

Максим, спасибо за столь подробный ответ на мой комментарий.

Признаюсь я несколько “утонула” в том объеме информации, которую Вы вытащили на поверхность данного контекста ))

Прежде всего, хочу сказать, что при углублении в тему - вижу довольно много общих точек соприкосновения - мысли, что Вы излагаете, мне также созвучны. И в этом права также Екатерина, которая заметила, что часто мы по-разному понимаем нечто или напротив - разными словами называем одно и то же.

Какие высказанные Вами идеи мне созвучны:

  1. Профессионализм - прежде всего. Т.е. многие провалы связаны с нежеланием или неспособностью участников проекта разобраться в используемых ими инструментах - технических или организационных, новых или ранее существующих;
  2. Agile включает в себя набор вполне конкретных технических (инженерных) и орг практик. Это не религия.
  3. Выбор подходов и практик нужно делать под задачу и под проект. Где-то подходит одно, где-то другое. Например, глупо пытаться натянуть подходы из разработки front-end систем (web-интерфейсы, например) на системы класса DWH. Разные классы задач требуют разных подходов и разных способов их применения.

Далее под этим комментом я напишу еще несколько мыслей - в продолжение

С некоторыми суждениями я готова поспорить:

  1. Противопоставление Agile и классического управления проектами - на мой взгляд, это неверно. Т.к. Agile является скорее развитием - одной из веток управления проектами и продуктами. Действительно, PMBoK включает в себя Agile. Но это не говорит о том, что что он признает свою несостоятельность. Просто Agile стал частью целого - наряду с другими возможными подходами и практиками.
  2. Не берусь обсуждать приводимые автором проекты (я слишком мало про них знаю). Но из своего опыта могу сказать, что минусами Agile.. точнее минусами его конкретных внедрения являются многое из того, что называет автор: долгосрочное планирование развития системы (планирование спринтов не является достаточным для получения результата в нужный срок с нужным качеством), интеграционное взаимодействие систем (это актуально именно для крупных компаний - т.к. в одном ИТ-решении может участвовать несколько разных систем - и нужно обеспечить их слаженное взаимодействие и готовность функционала к определенному моменту), комплексное тестирование (TDD хорошо решает вопрос внутреннего тестирования, однако комплексное тестирование часто остается “за бортом”).
  3. Не думаю, что автор, который себя позиционирует как Agile-эксперт, заинтересован в том, чтобы как-то нивелировать этот подход. Это было бы странно. Впрочем, я его не знаю. Поэтому, давать тут развернутых комментариев опять же не могу. Однако многие мысли мне кажутся разумными. Действительно, Agile гораздо проще внедрять в локальных маленьких командах, нежели в крупных компаниях, где самыми большими рисками являются как раз интеграционные аспекты. Легко доработать отдельную форму для пользователя. И гораздо сложнее поменять процесс, где задействованы разные системы и люди. Поэтому, действительно важно дать этому внимание. А не превращать Agile в “религию” и окрашивать исключительно радужный окрас. И если в ряде случаев есть наработки и практики, которые хорошо работают и решают ряд проблем - почему их не продолжать использовать? Зачем внедрять “новые ради нового”? Такие вот “инновации ради инноваций”, а не смысла. Впрочем, я опять несколько увлеклась. )) Прошу меня простить.
  4. Насчет Continues* (integration, delivery etc). Это довольно сложная история. Наверное, есть проекты, где это уже сейчас применяется - в ИТ-компаниях. Но не всегда это просто. Например, в случае работы с крупными БД (я специализируюсь в области DWH) - дело осложняется тем, что мы имеем дело не просто с “поведенческим аспектом”, а с хранимыми огромными массивами данных. И это не так просто -исправить в случае чего. Гораздо проще предотвратить. И здесь во многих случаях важнее не скорость, а качество. Кроме того, предъявляются требования к качеству и целостности данных, не которые не должны быть нарушены. “Поведение” и “Хранение” - это разные информационные аспекты. И методологии работы с ними тоже имеют отличия.
  5. “Agile - наше все” - не соглашусь. Например, в нашей области полный переход к проектам "по Agile в чистом виде" выглядит неразумно и как раз приводит к провалам. Начиная с управления требованиями - agile.. точнее неправильно выстроенные процессы по agile позволяют Заказчику необоснованно менять их кардинальным образом. Вместе с тем, накоплены работающие подходы управления требованиями и ожиданиями Заказчика, которые позволяют избежать краха проекта - когда из-за метаний и многочисленных изменений в итоге не готово ничего. Почему же их не использовать? Крики “ТЗ запрещено - у нас Agile” - это мой страшный сон, и не только мой ((( Заканчивая управлением роадмапом развития системы - средне- и долгосрочным планированием. Когда слышишь фразу “у нас запрещено оперировать сроком больше 2х недель” - становится жутко.. а потом - весело ))) Работающим подходом является гибридный вариант - когда разработка ведется в scrum-спринтах, а предварительный анализ и дизайн (проектирование) - выносится за скобки. Также после внутреннего тестирования есть этап сборки и общего тестирования (может включать в себя интеграционные и нагрузочные тесты). Поэтому, я бы не следовала догме “Agile - наше будущее, все остальное - отживший нафталин”.

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

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

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