В гибкой разработке, как Вы имеете дело с кодом “less-well-architected”, который следует из сфокусированного на спринте [закрытого] мышления

Я работаю над гибким проектом с помощью Толпы.

Спринты пришли и ушли, и мы выполнили этапы успешно. Система работает достаточно хорошо для соответствия текущим потребительским требованиям.

Однако нас оставляют с системой в серьезной потребности рефакторинга, такая же большая разработка была выполнена небольшим глазом на будущее (вместо этого, фокус был на спринте под рукой).

Как лучше всего иметь дело с этим? Sprint выделила рефакторингу?

13
задан Ben 26 January 2010 в 22:52
поделиться

5 ответов

PowerPoint имеет доступ к VBA правильно? ( Да, я проверил ) Таким образом, вы сможете автоматизировать генерацию путь. Я сделал это довольно много, но в документе Excel. Я никогда не пробовал это с точки зрения силы.

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

Наконец, я хотел бы порекомендовать книгу, чтобы начать, но, увы, я никогда не думал попробовать это, поэтому я никогда не вкладывал в исследование этого.

-121--3702209-

Из MSDN вы обнаружите, что DateTime.Now имеет приблизительное разрешение 10 миллисекунд во всех операционных системах NT.

Фактическая точность зависит от аппаратных средств. Более высокую точность можно получить с помощью QuurePerformureCounter .

-121--771967-

Да, иногда это не плохо. Но если вы проворны при использовании Scrum, то, предположительно, вы пытаетесь следовать тестовой разработке (TDD), и важно помнить, что последовательность является красно-зеленым рефактором , а не просто красно-зеленым. Код плохого качества является результатом не гибкой разработки, а плохой гибкой разработки.

25
ответ дан 1 December 2019 в 17:45
поделиться

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

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

3
ответ дан 1 December 2019 в 17:45
поделиться

У вас есть определение «сделано»?

, когда вы закончили кодирование и готовы зарегистрироваться, вы должны были выполнить определение ваших команд «сделано»

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

Если после нескольких Sprints ваша кодовая база нуждается в серьезном рефакторинге, я бы предложил ваше определение проверенного потребностей.

Вот статья от альянса Scrum на определении Определение проделана »

8
ответ дан 1 December 2019 в 17:45
поделиться

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

7
ответ дан 1 December 2019 в 17:45
поделиться

Для моей команды я обычно начинаю рефакторинговый спринт примерно раз в три-четыре месяца. Учитывая, что мы бежим 2-недельный спринт, это один рефакторинговый спринт примерно каждые семь спринтов.

Я бегаю рефакторинговый спринт, как и любой другой спринт - строго 2 недели. Иногда мы даже бегаем только 1 недельный рефакторинговый спринт (когда появляется что-то срочное).

Заметка о рефакторинге спринтов: не будьте слишком амбициозны:

  1. Поймите, что рефакторинг - это бесконечный цикл: вы всегда найдете лучший способ сделать что-нибудь.
  2. Ничего страшного, если вы рефакторингуете только 10% того, что нужно рефакторировать.
  3. Относитесь к рефакторингу, как к любой другой истории, так что вы вынуждены расставлять приоритеты в том, что нужно рефакторировать, и распознавать, где в вашем коде больше всего нуждается в рефакторинге. Единственное отличие состоит в том, что для историй рефакторинга я позволяю разработчикам устанавливать приоритеты.
  4. Частичный рефактор все равно оставит ваш код в лучшем состоянии, чем вообще никакой рефактор. К тому же, это, как правило, облегчает дальнейший рефакторинг.
  5. Рефакторинг происходит даже вне рефакторинговых спринтов при работе с историями, но только в том случае, если рефакторинг является низко висячим фруктом, который не мешает завершению историй.

Это то, что я лично использую в качестве руководства по рефакторингу. Он не только делает рефакторинг управляемым, но и служит хорошим индикатором, когда вы переусердствуете.

5
ответ дан 1 December 2019 в 17:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: