What have you found for these years?

2010-01-10

yet another redmine thought

前幾天也調整了一下 Redmine 上的術語,
他預設的術語其實不怎麼適合,雖然用很久了...

Tracker:
Bug: 應該解決的非預期錯誤
Defect: 不應該存在的缺陷,但是是預期行為
Enhancement: 應該強化的事情
Refactoring: 外部看不到的內部改善
Other: 不屬於以上任何範疇

原本的 Feature 改名為 Enhancement, 有時只是小地方強化
原本的 Support 改名為 Other, 不給外部使用者用,不需要 Support

Status:
New: 剛寫上的問題,研議中
Started: 正式開始作業
Resolved: 解決了
Feedback: 需要更多討論和資訊
Invalid: 不打算修,或是根本不是問題
Duplicated: 跟另一個問題重複了

原本的 Assigned 改名為 Started, 有時候並不見得是給誰的,
而且 Assigned 不代表開始作業了... 改用 Started 表示正式作業,
這樣也比較好追蹤目前進行的事項。

原本的 Resolved 刪除了!
原本的 Closed 改名為 Resolved.
因為我常常先設成 Resolved, 然後再設成 Closed, 很沒意義。
不如解決了就解決了,簡單些。反正可以隨時調閱。

原本的 Rejected 改名為 Invalid, 字眼比較和緩,意涵也比較廣泛。
增加 Duplicated, 因為有時候沒注意到這個問題之前提過了。
可以的話最好有 merge 的功能,但目前應該是沒有。

除此之外就是 Workflow 改了一下... 原本限制一堆,
什麼 New 可以切成 Closed, 但反之不行。一張大表格。
一口氣全部全選,改成狀態可以任意切換。對於小規模的專案,
例如 5~10 人以下,搞這麼複雜真的是沒什麼意義。

還有 Manager 和 Developer 的界線也覺得很模糊。
如果說要區分決定權的話,我沒意見。但誰可以 open
誰可以 close 定下去的話實在太不方便了。
所以也一口氣把 Developer 的權限全開了。
至於 Reporter 倒是保持現況,反正也沒用到.....

在制定 status 和 tracker 時,也查了不少其他人的命名。
然後體會到為什麼沒有一個標準命名。原因應該滿簡單的,
就是根據不同開發流程和狀況,需要不同名字。
像是內部用的 issue tracker, 放 Accepted 和
Rejected 基本上是沒什麼意義吧... 同理,區分 New
和 Assigned 也沒什麼意義。

除此之外,我發現所有的系統最好都可以整合 email.
因為現在一天到晚要註冊新網站,不可能一個個回去光顧...
因此最好是可以整合 mailing list, 同時網站上的
archive 等等機制也要,不然 email 整理不方便。

以 Redmine 為例,forum, document, 這兩個沒什麼用 :(
前者用 issue tracker 比較方便,有 email 通知,
而且有各種狀態設定。後者根本就應該用 wiki 取代...

也就是說 issue tracker 應該整合 mailing list,
像 ruby 的 redmine 就有寄一份到 ruby-core 上。
真正的文件則用 wiki 來撰寫,這應該也是趨勢了。
然而 source code management 還沒整合進來 :(
之前有個 ticgit, 不過很久沒更新了。

理想上,issue tracker 還是需要有 web 介面,
wiki 也是。但是後端最好能跟 scm 放在一起。
於是整個 project 就是一個 repository,
而不是又有另外一個服務,另一個服務,資料放上面。

但這或許還有很漫長的路吧... wiki 有不少人在做,
issue tracker 就不多了。

0 retries:

Post a Comment

All texts are licensed under CC Attribution 3.0