Мне нравятся маленькие итерации. Мне нравятся юнит-тесты. Мне нравится обзор кода. Что мне не нравится, так это начало с небольшим количеством или без документации. Я один в этом? У меня просто есть неправильное понимание процесса?
Любые мысли будут оценены.
agile
documentation
methodology
Дэн Эпплиард
источник
источник
Ответы:
Помните, Agile не означает отсутствие документации, Agile означает, что вы понимаете, что «клиент» не знает всего, что он хочет, поэтому он не может дать вам огромный документ с требованиями, в котором все изложено. Agile выступает за то, чтобы вы постоянно разговаривали с клиентом и говорили: «Это то, что вы хотите?» или "Как будет работать X, когда произойдет Y?" так что вместе вы создаете требования.
Тем не менее, нет ничего плохого в вас, если вам не нравится определенная методология. Кажется, что большинство людей все равно выбирают различные аспекты различных методологий.
источник
Agile методология утверждает, что вы делаете только то, что вам нужно в это время. Если вы хотите / нуждаетесь в большем количестве документации, чем указано, тогда это проблема процесса, и это не вы. Иногда для продолжения проекта требуется много документации. Это не противоречит Agile, чтобы нуждаться в этом. Вы не можете оправдать ослабление требований под видом Agile. На самом деле это большая проблема, которую я видел. Многие люди ленятся и пишут об этом в процессе. Нужно задать настоящий вопрос: «Есть ли у разработчиков то, что им нужно?» Если ответ «нет», то необходимо проделать дополнительную работу.
Теперь это может быть доведено до крайности, и кто-то может сказать: «Ну, я не могу работать над этим, если вся программа не задокументирована». Иногда это правда, но команда должна посмотреть, действительно ли это необходимо.
источник
Я не понимаю, почему это сделает вас плохим программистом только потому, что вам не нравится определенная методология. Вам может быть трудно интегрироваться с магазинами, которые его реализуют; При этом у меня есть некоторые сомнения относительно того, насколько эффективно это реализуется повсеместно.
Что делает вас плохим программистом, так это плохой код - насколько я знаю, но вы можете любить / быть блестящим во всех методологиях, которые вам нравятся, и все же быть плохим программистом, потому что ваш код не адекватен.
источник
Основная идея Agile заключается в том, что, если у вас нет дара предвидения, вы не можете предвидеть далекое будущее. Таким образом, вы не можете документировать то, что вы не можете предвидеть.
Это не значит, что у вас нет документации вообще. Вы документируете технический дизайн для текущих требований (и, конечно, сами документируете требования), и вы документируете текущую реализацию. Вы не должны документировать, как система будет выглядеть после 10 спринтов, потому что вы живете в динамичном мире, требования могут измениться.
источник
Я думаю, что вы неправильно понимаете процесс. Какую документацию вы хотите? Перед началом вам нужна какая-то цель. Я начинаю с вариантов использования, которые я собираю из разговоров с моим клиентом. Я не трачу дни на создание причудливых диаграмм. Мы разговариваем, а потом я пишу вики-страницу, и мы переходим к этому. Затем я пишу несколько тестов. Затем я пишу код.
источник
Существует бесконечная комбинация размеров команды, доменов, языков, личностей, бюджетов и требований. Нет единой методологии, которая лучше всего подходит для любой ситуации. Точно так же у многих людей есть личные предпочтения и стили.
Даже если вам это не нравится, стоит попробовать новые идеи и критически проанализировать результаты. Есть много вещей, которые мне не нравятся, но после попытки научиться любить. Как Оливки.
Другое дело, что моды меняются регулярно. Я воспитывался в Waterfall, я работал в команде, которая пыталась сделать все в Rational Unified Process, которая была «лучшей вещью» в то время. Вскоре Agile будет заменен чем-то более новым и лучшим, и никто больше не упомянет Agile.
Так что не думайте, что вам нужна такая методология, как Agile. (Лично мне это не нравится). Это не делает тебя плохим программистом.
источник