2009-03-18

Bug Tracking System - Mantis vs Bugzilla

二月份,因為案子需求,公司內部的 Bug tracking system 功能不夠,所以要另外架設,怎麼說功能不夠? 第一,沒有英文界面;第二,無法開放公司網路之外的使用者登入 (用 AD 方式管理),以上兩點,可能有些人會覺得有些好笑,其實我自己心裡也是很想笑。因為一個百分之八十以上都是做國外客戶的 ODM/OEM 廠怎麼會搞出個沒有英文界面的 Bug tracking system? 而第二點,用 AD 做為管理,也是有點匪疑所思,如果今天的案子完全是公司內部自行開發,我想這沒什麼問題,可是事實上,公司的主力其實都在於代工的客戶,所以用這樣的系統架構,真的是很讓人無言。

既然問題出現了,總是要解決的,剛好這次案子我又有參與,以前也有點 maintain network server 的經驗,那就只好跳出來,主動負責這個 system 的架設。

由於 cost down 的關係,公司目前政策是不可能買外面那種要 license 的 bug tracking system,所以我就朝自由軟體授權的方向去找,如果有錢買,我倒是覺得 HP 的 Test Director(Mercury Quality Center) 相當好用了,不過沒錢,想想就算了,我找了很多,其中我挑出兩套做為候選,分別是 Mantis and Bugzilla。後來採部門內部投票,選出 Mantis。

其實我心裡也想著要用 Mantis 來架,雖然我以前玩 Firefox 時有碰過 Bugzilla,界面對我而言不陌生,但是仍然有許多因素讓我想用 Mantis。
  • Friendly user interface - 使用者通常會希望易懂的操作界面,易讀的 bug list。
  • Maintain - Mantis 用 PHP 寫成的,這對我或者對於日後要接手的人而言,都是比較容易進入狀況的語言,Bugzilla 用 perl 寫的,perl 雖然簡單,但是比起 C-like 的 PHP 而言,大部份的人對 PHP 的 source code 還是比較容易上手。( Perl 的 source code 其實不算是易讀性很強的 code,我被毒過...:P)
  • User training - 可能很少人想到這點,如果用 Bugzilla,要寫的 SOP 絕對會比 Mantis 多,如果有新進人員,那麼要讀這些 SOP 也是個負擔。Mantis 基本上不太需要什麼 SOP 的,雖然還是有 PM 跟我要,但是比起寫 Bugzilla 的 SOP,我覺得輕鬆很多。
總之,一套 Bug tracking system 如果能設計到讓 User 一碰就馬上上手,那樣是最好的。像 HP 的 Test Director (Mercury Quality Center),我們當初接觸時,完全沒有 Training,界面一摸,就可以直接 key bug 了。所以,這套 Mantis 架起來,我也朝這個目標去架設,界面和欄位名稱是一定改的,Workflow 也是必改的項目。接下來就是內部的一些特殊需求,例如一些特別的 QC 評估分數之類的,因為是 PHP 所以我改起來也比較好上手,所以,其實也沒碰到什麼大問題。

不過 Mantis 的權限控制一直蠻讓我 Care 的,Mantis 並沒有對於使用者的 Role 定義切換 bug status 的權限,例如:RD 不能將 bug 的 status 切換成 Closed,這應該是要 QA verify 過後,由 QA 來切換才對,但是 Mantis 本身沒有這樣的機制,所以,這部份變成要修改 source code,有大改的方法,也有小改的方法,重點是,我實在懶得改...=_=|||

我事情也是很多的吶 (公司又不加薪 XD),而且這樣的問題,其實內部協調好就好,應該不會有人故意亂切,而且又有 History 可以查,亂切的話,很容易查,查出來就扣 KPI !! 呵呵!

談到 KPI ( Kill Person Indicator ),不談也罷,也是個拉賽的東西...

最後結論就是,Mantis 好用啦!!

8 則留言:

A~Ha 提到...

版大你好, 我剛好最近也被指派安裝一套BugTracking系統, 在網路搜尋的結果, 免費的好像就是Bugzilla和Mantis比較知名!

我想裝在Windows上, 依你的了解, 這兩套哪一套比較好安裝?(因為昨天第一次安裝Bugzilla, 還沒成功, 好像它的安裝很複雜而且要改的地方很多..)

謝謝

dken 提到...

就安裝方式而言,我個人是覺得 Mantis 是比較好安裝,實際裝一次你就知道了,執行 install.php 檔就會幫你裝好。

通達人 提到...

請問一下,後來修改status的部份,是用什麼方式解決的?
不可能總是要QA去調整吧?

dken 提到...

For 通達人,
Status 的部份,我們是自行修改 source code,這部份,一開始就要訂好,一旦訂好,案子在跑了,就幾乎不會再動到了,所以,只有在剛上線的時候需要去做調整。

通達人 提到...

請問可以在Blog上分享一下是怎麼改的?因為,我也很想把這個改掉啦!
謝謝啦!

dken 提到...

For 通達人,
我先給個連結給你參考,如果我有空的話,再寫篇教學文...:P

http://www.mantisbt.org/manual/

匿名 提到...

Well explained about bug tracking system

Lead Generation Services

Architectural CAD Drafting 提到...

Good article on Mantis vs Bugzilla

BIM outsourcing companies