バグが起きたときの対応によって、その製品のクオリティが大きく変わる。自分または自分が属するチームがバグを直すときに注意していることをメモ。
- 正しい手順で直したか。
- commitするbranchは間違いないか。
- バグ管理システムはルール通り使われているか。
- すぐにデプロイする必要があるときはその手順は問題ないか。
- そのバグによって壊されたデータがある場合、それも直したか。
- そのバグが再現しないか。
- 発生したバグのためのテストコードを追加し、再現しないことを保証する。
- ただし、そのバグが再現性の低いようなバグで、直せたかどうか不確かな場合、
- 次回それが起きたときにより精度の高いログを出せるようなコードになっているか。
- また、それが起きたときに開発側が気付けるような仕組になっているか。
- その修正が、他に悪影響を与えることはないか。
- コード的な悪影響はテストで確認する。
- 仕様的な不整合やバグが出てないかも確認する。
- 似たような潜在的なバグが他にもないか。
- 直すか直さないかは別にして(動いているものは直さない方がいいこともある)、同じようなバグが他にあるか確認する。
こういうのは、余裕があるときは簡単なことなんだけど、忙しいとついさぼってしまうので、Redmineなどのバグ管理ツールか何かと連携して(チェックリストとか)できた方がいいんだろうなー、と思いつつ今はしてない。
記事の内容についての質問、苦情、間違いの指摘等なんでもtwitterでどうぞ。 Tweet