Как лучше всего сделать Гибкую разработку с Trac? [закрытый]

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

Я бы добавил, очень важно, хорошо использовать модификатор final. Использование "окончательной" модификатор, когда это применимо в Java

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

32
задан Community 23 May 2017 в 12:25
поделиться

9 ответов

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

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

Это также довольно valueable, чтобы смочь указать на них во время Вашей ежедневной встречи толпы.

23
ответ дан 27 November 2019 в 20:42
поделиться

Это - то, как мы используем Trac для нашей толпы как спринты:

  • Мы используем вехи в Trac для идентификации спринтов.
  • существует Неудовлетворенный этап по умолчанию, где мы собираем все новые билеты.
  • Перед каждым спринтом мы перемещаем билеты от отставания текущий выпуск.
  • На эпохальной странице, мы можем добавить ретроспективы и другую информацию о спринте с помощью синтаксиса Wiki.

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

18
ответ дан 27 November 2019 в 20:42
поделиться

Да, я установил Agilo на нашей установке Trac.

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

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

Установка была болью (Козерог Ubuntu) - я зарегистрировал точные шаги на Agilo Google Group .

проблемой (как всегда) является интеграция в бизнес-конец вещей, которые премьер-министрам и генеральным директорам нравится видеть (например, оцененный по сравнению с фактическими часами). Существуют (как был упомянут), другие продукты там, которые покрывают это прочь (FogBugz покрывает это прочь, я верю), но я (и команда) люблю Trac, таким образом, мы работали вокруг этого.

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

3
ответ дан 27 November 2019 в 20:42
поделиться

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

2
ответ дан 27 November 2019 в 20:42
поделиться

Укушенный плагин Trac для непрерывной интеграции, которая может использоваться, чтобы сделать автоматические сборки на регистрации, которая обеспечивает критическую часть Гибкого процесса (быстрая обратная связь). Я не использовал никакие другие плагины для Trac лично, таким образом, я не могу прокомментировать их. Однако собственная функциональность Trac этапов могла быть усилена довольно легко, я подозреваю, чтобы использоваться в качестве итеративных маркеров (где каждый этап представляет конец повторения). Так как этапы могут использоваться уже для маркировки 'даты истечения срока' функций, Вам не должно быть нужно много в способе модификации использовать их как таковой.

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

1
ответ дан 27 November 2019 в 20:42
поделиться

Мы используем Wiki Trac для:

  • Список требований для каждой функции
  • Список технических спецификаций (если таковые имеются) для функций
  • Список Выпусков и их функций
  • Развернутые среды, со ссылками на все экземпляры
    • существует макрос для того, чтобы сделать веб-запросы, таким образом, мы можем перечислить, какую версию, и т.д. каждый ENV имеет
    • (существует плагин GraphViz, который довольно полезен для простых рисунков)

существует также билет в системе покупки билетов для каждой "функции" для хранения грубого отставания и текущего/следующего запланированного спринта.

Затем мы пишем набор карт во время спринта, планирующего каждую функцию.

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

Каждая задача ошибки/операция в секунду получает билет, но как только мы начинаем работать над нею, это получает карту и начинает преодолевать плату. Тем путем это получает видимость, и мы не забываем вовлекать тестеры, и т.д.

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

1
ответ дан 27 November 2019 в 20:42
поделиться

Для чего-то совершенно другого лучший способ сделать Гибкую разработку с Trac может быть к , просто мигрируют все на Redmine. Это поддерживает базовые функции Trac с некоторыми отдельно оплачиваемыми предметами включая несколько проектов, Диаграмм Гантта, форумов, DCVS, и т.д. хотя похоже, что это не полностью там все же . Некоторые хорошие вещи в конвейере.

Daniel Srb (в комментариях) имеет redmind гибкий плагин , он работал над этим, выглядит многообещающим. Вы можете связываться и видеть, планирует ли он выпустить его (был давным-давно).

Мы имели успех с помощью двух продуктов на концерте в прошлом Trac для билетов, xplanner для планирования.

1
ответ дан 27 November 2019 в 20:42
поделиться

Отвечаю поздно, но это еще больше из моего опыта с Trac + Agilo.

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

Теперь пришло время установить, и установка была очень простой. Мы использовали их последнюю версию 0.7.3.3. Он устанавливает безупречно на Trac 0.11 и Python 2.5. Не забудьте установить libjpeg и библиотеку изображений Python. Было бы полезно отметить, что мы использовали virtualenv, который упростил задачу.

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

В их списке рассылки я заметил, что в будущем они планируют предложить поддержку нескольких проектов. В общем, я рекомендую плагин Agilo для Trac.

5
ответ дан 27 November 2019 в 20:42
поделиться

Agilo для Scrum-скала, в последних версиях используются диаграммы, созданные на стороне клиента, поэтому больше нет зависимости, гораздо проще установить :-) agile42 просто выпустите Pro версия, которая обогащает опыт Agilo приятным и интуитивно понятным Planning Board , очень классным скринкастом: -)

1
ответ дан 27 November 2019 в 20:42
поделиться