ソフトウェア開発の必須アイテム、BTSを使ってみよう

第10回その他のバグ管理手段・他のアプリケーションとの連携

ここまで標準的なBTSの取り扱いについてご案内してきましたが、既存のBTSを使わずに自前で用意したり、類似の別のシステムを導入するという選択肢もあります。BTSの導入を検討するとき、これらの選択肢の存在も無視できないものですので、これらについても触れてみたいと思います。また、他の開発アプリケーションとの連携についてもご紹介したいと思います。

BTSを内製する場合の注意

既存のBTSが業務にうまくマッチしないと判断した場合や、カスタマイズの知識が無い場合、過去の経緯により不具合リストの機能を拡張して使用している場合など、内製のBTSを使うケースも見られます。割合的にも結構多いようで、BTSを使っている組織のうちおよそ2割くらいあるようです。

ここでは内製BTSでありがちな問題点を挙げてみたいと思います。

細かい部分の完成度が低くなる
内製BTSは業務に特化して作られるので、項目の設定などは思う通りできているものですが、ページ遷移の具合やリストの見やすさ、検索機能などの細かい部分で詰めが甘くなり、使い勝手の悪いものが多いように思います。
本筋の開発の傍らでBTSの開発に割り当てられる時間は少ないでしょうから、重要でない部分は自ずと中途半端なままになってしまいます。しかし、毎日使用するツールとしてはまさにそうした使い勝手の部分が大事で、ほんの少し表示が見づらかったり、確認ダイアログが多すぎたりするだけで、使いにくいものができあがってしまいます。
独特のバグ処理文化になる
BTSに詳しくない人がBTSを内製すると、往々にして奇妙なシステムができあがります。既存のBTSは長い間人々に使用されており、細部までいろいろ考えて作られているので、それを導入することで、これまで培われてきたノウハウや文化を取り入れることができますが、安易な内製BTSにはそれがありません。用語の定義が最も混乱しがちな部分で、世間に通用しないローカルな文化を作り上げてしまう危険があります。
社内用なのだから社内の人間にわかれば良いとされがちですが、新人への教育コストも余計にかかりますし、何らメリットはありません。
要求の変化を考慮する
内製は既存のものを使うのに比べて準備に時間も手間も掛かります。作っていくうちに業務で要求されることが変わってしまう可能性もありますので、せっかく作ったのに短い期間しか使わなかった、などという事態も考えられます。業務の先を見据えて本当に内製が必要かどうか計画を練る必要があります。
軽い気持ちで内製したものの状況が変わって陳腐化してしまい、しかし開発コストをかけてしまったゆえに捨てるに捨てられなくなる、というのが最悪のパターンだと思います。

BTSに類似するシステム

ITS(Issue Tracking System)

BTSに近い使い方が出来るものにITSがあります。

BTS中心に開発を行うようになると、バグのみならずタスクも登録して管理したくなります。ITSは、管理の対象をより広く想定したもので、タスク的なもの全般を扱うように考えられています。ITSを使用しても、バグを管理することは可能です。

導入に当たっては、BTSのように決め打ちの項目がないので、項目立てから考えることになるでしょう。ツールの使い勝手としては、どうしてもフォーカスが緩慢になるので、専用のBTSのように直感的に取り扱うのは難しいかもしれません。

代表的なITSにはscarabなどがあります。

scarab 
scarab
URL:http://scarab.tigris.org/

プロジェクト管理ツール

プロジェクト管理ツールは、開発プロジェクト全般を管理するためのツールです。

いくつかの機能の集合体で、そのうちのバグ/タスク管理の機能をBTSとして利用することができます。本連載で以前ご紹介したTracは、正確にはこのカテゴリのツールになります。

前述のITSと同じようにバグ処理にフォーカスしたものではないので、バグ管理そのものの機能としては劣るケースが多いようです。逆にバグ管理に特化する必要があまりなければ、プロジェクト管理ツールで十分なことも多いでしょう。

他のアプリケーションとの連携

テスト管理システムとの連携

テスト管理システム(Test Managemet System)とはテストを実施する際のテストケースを管理するシステムです。

BTSは顕在化した不具合を管理しますが、その前段階であるテストの実施内容については触れません。テスト計画書などが別に存在し、不具合が発生するたびにBTSへ書き写しているようであれば、テスト管理システムとの連携を検討してみましょう。BTSとテスト管理システムを連携させることにより、よりスムーズにテスト&デバッグが行えるようになり、評価作業も楽になります。テスト管理システム自体、バージョン管理などの便利な機能を持っていますので、導入のメリットはほかにもいろいろあります。

多くのBTSと連携できるフリーのテスト管理システムにTestLinkなどがあります。

TestLink
図2
URL:http://testlink.sourceforge.net/docs/testLink.php
TestLink.JP - TEF有志によるTestLink日本語化プロジェクト

SCM(ソフトウェア構成管理)との連携

ソフトウェア構成管理でよく利用されるSubversionには、BTSとの連携するためのプロパティが存在しており、連携が可能になっています。バグ管理と構成管理を結びつけることで、何かあったときに問題の追跡が容易になります。両方を使っているときはぜひ連携させておきましょう。

終わりに

BTSについて選定から運用まで一通りご案内してきましたが、いかがでしたでしょうか。BTSの導入はそれなりに手間が掛かるものですが、使い始めてしまえば非常に便利で、さまざまな効果が期待できます。興味はあるけれどまだ導入していないという方はこの機会にぜひ導入してみてください。

この連載が皆さんのBTS導入の一助になれば幸いです。

おすすめ記事

記事・ニュース一覧