小さい頃はエラ呼吸

いつのまにやら肺で呼吸をしています。


Excelで障害(バグ)管理すべきでない、4つの理由

はじめに

最近、僕は開発者としての立場からは離れて、開発中に発生した障害(バグ)の管理みたいなことをやっていました。
そこで感じたことは、「バグの数が3桁超える、あるいは、開発メンバが3人以上ならバグトラッキングシステム(以下、BTS)を導入したほうが良い」ということです。

実践バグ管理―プロジェクトを成功に導くための
クジラ飛行机 あかさた
ソシム
売り上げランキング: 392144

Excelによるバグ管理

今の開発現場では、多くのSierがそうであるように*1、Excelの一覧表によるバグ管理が行われています。
昔からExcelでバグ管理していたという歴史もあり、今回の開発も慣例に従い、Excelで管理しようとしたのですが、失敗だったと感じています。BTSを導入するべきだと今になって思いました。

ここで僕が感じた、Excelでバグ管理すべきでない、4つの理由について書いてみます。

1.Excelは複数人での同時編集に向いてない

Excelは、基本的に複数の人で同時に編集するといった使い方ができません。誰かが編集中には、他の人が編集できなくなり、作業の待ちが発生します。"ブックの共有"という機能を使って、同時編集を許可することもできますが、いくつかの問題があります。
同じセルを複数人で編集すると、一方の変更が失われます。せっかく書いたものが消えてしまって、がっかりすることがたびたびあります。
また、複数人で同時編集を行うためには、ファイルサーバ上に配置する必要があるため、ローカルで作業するときよりもレスポンスが悪くなります。ファイルを開くのに時間がかかったり、編集中や保存中に"応答なし"になってしまったりすると非常にストレスがたまります。運が悪いと、ファイルそのものが破損してしまい、バグ情報がすべて吹き飛ぶ可能性だってあります。

2.バグの発生や修正完了といったタイミングで管理者に通知されない

Excelでは、ファイルが更新されたことを通知する仕組みがありません。誰かが更新したことを、他の人はファイルを開くまで知ることができません。このため、新規のバグが発生したことや既知のバグがfixされたことを、管理者はバグ表を開かなければ気づくことができません。
ソースコードのバージョン管理で使っているSubvertionにはコミット通知機能があるのですが、バグ管理でも通知機能は必須機能だと思います。仮に、バグの修正方法が誤っていた場合や類似障害の調査がおろそかになっていたりした場合に気づくのが遅れてしまいます。

3.検索機能がイケてない

Excelの検索機能は正直イケてないです。検索したキーワードがハイライトされないため、ヒットした箇所がわかりづらかったり、検索結果を一覧表示できなかったりと不満なところがあります。
下記のツールを使うと、いくらか改善することができますが。。。

4.いつ、だれが、どのような修正を加えたという履歴が残らない

Excelでは、いつ、だれが、どのような修正を加えたという履歴情報が持てません。バグ管理ではいつ、だれが、どのような修正を加えたという情報は非常に重要で、たとえ途中経過であっても記録しておくべきです。

おわりに

上記のような感じで、Excelで障害(バグ)管理すべきでない、4つの理由を書いてみました。
仮にExcelによるバグ管理をやめたとして、現場にあうBTSを探して、上司を説得して、メンバに使い方を教育してと、やらなきゃいけないことがむしろ増えてしまいそうですが、大量のバグ情報を適切に管理するためには専用ツールを使うべきだなと思いました。