Это делает меня плохим программистом, если мне не нравится методология Agile? [закрыто]

10

Мне нравятся маленькие итерации. Мне нравятся юнит-тесты. Мне нравится обзор кода. Что мне не нравится, так это начало с небольшим количеством или без документации. Я один в этом? У меня просто есть неправильное понимание процесса?

Любые мысли будут оценены.

Дэн Эпплиард
источник
2
Прежде всего, не будем говорить о по методологии Agile. Agile-движение действительно является философией развития, которая поощряет принятие различных практик и методологий в зависимости от обстоятельств.
Эрик Уилсон
1
"есть недоразумение процесса?" - да
vartec
2
«Agile-методология, которой необходимо строго следовать, не является настоящей Agile-методологией»
1
Привет, Дэн, в твоем вопросе, похоже, нет решаемой проблемы, и такие вопросы, как "Я думаю / чувствую Х, чувствуют ли другие то же самое?" здесь не по теме . Если у вас есть конкретная проблема, с которой вам нужна помощь, не стесняйтесь спрашивать об этом.
Все начинаются с небольшого количества или без документации. Вопрос в том, как вы разделяете свое время между документацией и кодом - сначала вся документация? Или только столько, сколько вам нужно, чтобы начать?
Carson63000

Ответы:

18

Помните, Agile не означает отсутствие документации, Agile означает, что вы понимаете, что «клиент» не знает всего, что он хочет, поэтому он не может дать вам огромный документ с требованиями, в котором все изложено. Agile выступает за то, чтобы вы постоянно разговаривали с клиентом и говорили: «Это то, что вы хотите?» или "Как будет работать X, когда произойдет Y?" так что вместе вы создаете требования.

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

Уэйн Молина
источник
10
+1 Agile не означает отсутствие документации . Люди, кажется, думают, что это Agile означает; это не. Он ценит работающее программное обеспечение над всеобъемлющей документацией; это не отменяет значение в документации.
Аарон Макивер
10

Agile методология утверждает, что вы делаете только то, что вам нужно в это время. Если вы хотите / нуждаетесь в большем количестве документации, чем указано, тогда это проблема процесса, и это не вы. Иногда для продолжения проекта требуется много документации. Это не противоречит Agile, чтобы нуждаться в этом. Вы не можете оправдать ослабление требований под видом Agile. На самом деле это большая проблема, которую я видел. Многие люди ленятся и пишут об этом в процессе. Нужно задать настоящий вопрос: «Есть ли у разработчиков то, что им нужно?» Если ответ «нет», то необходимо проделать дополнительную работу.

Теперь это может быть доведено до крайности, и кто-то может сказать: «Ну, я не могу работать над этим, если вся программа не задокументирована». Иногда это правда, но команда должна посмотреть, действительно ли это необходимо.

kemiller2002
источник
8

Я не понимаю, почему это сделает вас плохим программистом только потому, что вам не нравится определенная методология. Вам может быть трудно интегрироваться с магазинами, которые его реализуют; При этом у меня есть некоторые сомнения относительно того, насколько эффективно это реализуется повсеместно.

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

temptar
источник
3

Основная идея Agile заключается в том, что, если у вас нет дара предвидения, вы не можете предвидеть далекое будущее. Таким образом, вы не можете документировать то, что вы не можете предвидеть.

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

Vartec
источник
2

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

Кевин Клайн
источник
2

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

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

Другое дело, что моды меняются регулярно. Я воспитывался в Waterfall, я работал в команде, которая пыталась сделать все в Rational Unified Process, которая была «лучшей вещью» в то время. Вскоре Agile будет заменен чем-то более новым и лучшим, и никто больше не упомянет Agile.

Так что не думайте, что вам нужна такая методология, как Agile. (Лично мне это не нравится). Это не делает тебя плохим программистом.

Ричард
источник