Як керувати відставанням відстежувача проблем


10

Ми вже кілька років старанно використовуємо Trac, і наш список "активних квитків" виріс майже до 200 позицій. До них відносяться помилки, які мають занадто низький пріоритет і занадто складні для виправлення наразі, відкладені запити щодо функцій, проблеми, які ніколи насправді не викликали скарги, але всі згодні повинні бути виправлені колись, заплановані переробки коду та інші дизайнерські неприємності, які ми не робимо ' не хочете втратити слід тощо.

Як результат, майже 200 таких питань перелік майже переважний; це вже не корисно як джерело того, над чим зараз потрібно працювати.

Який найкращий спосіб відстежувати подібні проблеми?

Частина проблеми полягає в тому, що деякі з цих питань є таким низьким пріоритетом, що вони, можливо, ніколи не будуть виконані. Я ненавиджу втрачати сліди за цими предметами (подібно тому, що я не хочу викидати щось із свого будинку на випадок, якщо мені це може знадобитися колись); чи потрібно мені їх викидати незалежно (позначаючи їх як wontfix) і припускаю, що я можу їх знайти в майбутньому, якщо мені коли-небудь вони будуть потрібні?


200 за цілу команду змусили мене сміятися. :-) У мене тільки 120 відкритих питань, більшість з яких я ніколи не прийду виправляти! - Отже, підводячи підсумок: велике запитання! Я збирався запитати те саме.
Мартін Ба

Відповіді:


6

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

Тепер переконайтеся, що кожен позначений як великий, середній або малий зусилля щодо розвитку. Це дуже приблизна оцінка, яка використовується лише для того, щоб легше класифікувати проекти та допомогти зібрати речі разом. Якщо все вже підраховано, то це допоможе, але не зациклюйтесь на годинах. Просто перейдіть на швидку перевірку кишок. Часто працює, щоб завести розробників в кімнату і просто пройти кожен предмет і використати зусилля, які вважають за потрібне більшість людей.

Перегляньте кожну з трьох груп зусиль і позначте кожен елемент групи з пріоритетом Критичне значення, Високе значення для бізнесу, Високе технічне значення, Середнє значення, Низьке значення та Ніколи не збирайтеся виправляти.

До цього моменту ви справді знаєте список ізсередини і дійсно розумієте роботу, яка пов'язана з вашими відставаннями, і ви можете почати дійсно приймати рішення, що робити з предметами. Візьміть усі елементи, позначені як такі, що ніколи не збираються виправляти, та заархівуйте їх зі свого відсталого.

Тепер, коли ви плануєте елементи перейти до наступного випуску, ви можете використовувати критичні та важливі елементи як основу релізу. Перегляньте список елементів середнього та низького пріоритету та додайте будь-які, над якими можна працювати одночасно з іншими елементами у вашому списку, оскільки розробники вже працюватимуть у цій частині системи.

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

Одне, що ми знайшли приємним, було те, що між кожною ітерацією у нас був короткий 2-тижневий період, коли вся команда працюватиме лише над предметами, відзначеними невеликими зусиллями щодо розробки. Ми б зосередилися на закритті великої кількості квитків за короткий час.


3

Чи має Trac налаштування пріоритету? Щось на зразок 1 для головних пробок і 5 або близько для речей, які було б непогано зробити колись?

Якщо ви можете сортувати за пріоритетом, ви можете знехтувати матеріали з нижчим пріоритетом.


1
Все, що знаходиться на рівні "добре, що колись зробили", ніколи не зробить. Витягніть це.
Аарон Маківер

1
@Aaron: Я б краще тримати це, якщо ми хочемо колись підвищити пріоритет. Зрозуміло, що це ніколи не буде виконано з таким пріоритетом, якщо тільки розробники не надто багато часу на руках (і вже зробили клієнта gopher для програмного забезпечення і зробили його сумісним з хайку).
Девід Торнлі

У Trac є пріоритетний параметр, хоча ми накопичили достатньо відставання, що я майже вирішив, що нам все-таки потрібен підхід "витягнути це".
Джош Келлі

3

читати: http://en.wikipedia.org/wiki/5S_%28methodology%29

Покладіть їх на горище, зачекайте рік, а потім переселіть будинок. Це я і роблю.

Якщо серйозно, якщо ви не збираєтеся це виправити, то забудьте про це. Див. Екстремальне програмування.

Але для предметів про код. Ви можете помістити їх у систему огляду коду як незначні спостереження. Цю систему можна налаштувати для позначення проблем під час редагування цієї частини системи. Я виявив, що це не працює як співробітники, думав, що це очікується, і не звертався до спостережень з огляду.

Єдиний спосіб зробити це - безжальна пріоритетність. Робіть це зараз чи не турбуйте.


Чи можете ви детальніше розповісти про те, як 5s стосується відстеження помилок, стаття Вікіпедії, здається, зосереджена на виробництві
jk.

@jk все пов'язано. Ми можемо навчитися всьому. Худне виробництво та розробка програмного забезпечення Agile - це майже одне і те ж. За одним головним винятком. Якщо виробництво не повторюється - це дефект, у дизайні повторення - дефект (перестаньте писати один і той же код знову і знову). Хоча є частини процесу, які слід повторити (процес).
ctrl-alt-delor

2

Це насправді не питання щодо контролю версій настільки, скільки питання про робочий процес та пріоритет бізнесу. Відстеження речей, які, як відомо, є неправильними, є хорошою ідеєю, навіть якщо вони навряд чи "коли-небудь" будуть виправлені, мають кілька переваг. По-перше, це означає, що QA (якщо у вас є окрема команда з QA) не знає, щоб не вносити нові помилки. Ще одна перевага полягає в тому, що якщо з’являється нова проблема, але її першопричина пов’язана з одним із таких питань, «про які ми знаємо, але це низька пріоритетність», будь-який аналіз виправлення вже відслідковується - що може зробити нову, вищу, пріоритетну версію помилки набагато простіше виправити.

Інший аспект цього полягає в тому, що може бути деяка свобода вирішити якусь частину цієї роботи, або зараз, або в майбутньому. Можливо, коли-небудь ви отримаєте стажування і зможете призначити їм кілька найпростіших як вступ, щоб змочити ноги в кодовій базі.

Якщо розробники вважають, що ці проблеми було б добре виправити - наприклад, якщо вони представляють технічну заборгованість, і це полегшить роботу кодової бази, щоб їх виправити, але вони не мають ділової цінності - можливо, варто обговорити це з зацікавленими сторонами в бізнесі і бачать, чи можна досягти домовленості, коли ці питання відставання періодично збираються. Я бачив, як команди scrum роблять такі дії, як блокування 3-5 точок швидкості за спринт для "технічних відстаючих" пунктів - це може зажадати певної політичної придатності залежно від відносин команди розвитку та бізнес-зацікавлених сторін, але я бачив це працює дуже добре.


1

Це дійсно залежить від кількох речей.

  1. Наскільки команда: Якщо команда достатньо велика, ви можете призначити квитки таким чином, що дозволить заповнити пункти нижчого пріоритету.
  2. Як часто ви робите релізи: Якщо цикл випуску достатньо довгий, ви можете піти, додавши більше речей або затримавшись на випуску, поки не буде вирішено всі квитки.
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.