});プロジェクトで修正/仕様変更が“迷宮”入りする理由ソフトウェア開発を行ううえで、設計書やソースコードのバージョンをきちんと管理することは非常に重要です。構成管理(ファイル管理)を行っていないプロジェクトでは、例えば次のような問題が発生します。2人以上の開発者が同時に成果物を編集した場合、後に編集を始めた開発者がすでに編集を行った開発者の編集内容を上書きしてしまう。設計書やソースコードのレビューを行って修正したはいいが、どこをどう修正したのか分かりにくく、レビュー内容の反映の確認を行っても修正漏れや修正誤りに気が付かないソースコードを変更すると、動かなくなってしまった。上記のような問題のため、ソフトウェアの故障の修正漏れ、仕様変更漏れによる品質の低下、低下した品質を取り戻すための追加試験やレビューによる生産性の低下につながります。本稿では、上記のような問題を解決し、バージョン管理を簡単に行ってくれるオープンソースの「Subversion」(以下、SVN)とSVNをEclipseから利用するための「Subversive」プラグインを紹介し、Tracとの連携方法も解説します。大昔のソフトウェア開発では、共有フォルダなどを利用し、フォルダ管理者などを置いて人手で管理を行っていました(大昔といっても現在でもフォルダ管理のプロジェクトは多いですが......)。Safe)などの構成管理ソフトウェアの登場で、これらの状況は劇的に改善されました。構成管理ソフトウェアを使うと、成果物は「リポジトリ」と呼ばれるデータベース上で集中管理されます。開発者は成果物を編集して、変更点を記述したコメントを添えてリポジトリへ反映(コミット)するだけで、自動的に成果物の変更履歴を取ることができます。複数の開発者が同時に成果物を編集した際の変更の反映漏れを防ぐことができます。構成管理ツールの2つのタイプ構成管理ソフトウェアには、2つのタイプがあります。CVSに代表される複数の開発者による同時編集を許し、競合が起こった部分を開発者が主導で修正していく「共有モデル」と、VSSに代表されるファイルにロックを掛け、1人しか編集できないようにする「ロックモデル」です(VSSの最新版では、共有モデルも選択できます)。共有モデルは、「編集の競合が発生した場合修正に手間が掛かる」「ExcelやWordなどのバイナリファイルが扱いづらい」という問題があり、ロックモデルは、「ある開発者がファイルのロックを取得したままの状態のとき、ほかの開発者がファイルを編集できない」という問題がありました。SVNへSVNは、CVSの欠点を解消したバージョン管理システムとして開発、公開されました。SVNは次のような特徴を持っています。成果物をリポジトリ(成果物のバージョンを管理するデータベース)で管理HTTP/HTTPSプロトコルを利用してリポジトリへアクセスできるため、ファイアウォールなどでポートが制御されている環境でも利用しやすいファイルごとに「共有ロック」「排他ロック」を指定でき、ソースコードのような共有モデルが向いている成果物は共有ロックモデルで、ExcelやWordの設計書など、ロックモデルが向いている成果物はロックモデルで利用できるリポジトリ全体を「リビジョン」と呼ばれるバージョン番号で管理している。Lightning」を利用することにより、簡単にリポジトリを設置できるソフトウェア構成管理ツールとしては、以前はCVSが利用されることが多かったのですが、最近はSVNが利用されるようになってきています。1.5では、複数のブランチを管理する際に「マージトラッキング」機能が追加されたり、大規模な開発に便利な「ライトスルーキャッシュ」機能などが追加され、さらなる高機能化が進んでいます。System、課題やバグを管理するためのシステム)も増えてきていて、コミットログを関連するタスクやバグに簡単にひも付けることも可能です(参考:Mylyn&Tracでリズムに乗ってタスクを大掃除♪)。文書の構成管理もできる」ソフトウェア構成管理ツールを利用して、ソースコードや設定ファイルを管理しているプロジェクトは多いですが、ExcelやWordなどの設計書を管理しているプロジェクトは非常に少ないです。共有ファイルサーバで管理しているプロジェクトも多いです。いうプロジェクトでは、図2のようなフォルダをよく見掛けます。見掛ける設計書のフォルダさて、図2の画面設計書の最新版はどれでしょうか。ユーザ管理画面設計書.xlsxユーザ管理画面設計書_20081022.xlsxユーザ管理画面設計書_最新.xlsx上記3つのどれかが最新のような気はしますが、本当にどれが最新かはフォルダ管理者(もしくは、この成果物を編集している開発者)に問い合わせないと分かりません。SVNを利用すると、このような設計書もきちんと構成管理できます。Windowsのエクスプローラに統合して利用できるSVNクライアントである「TortoiseSVN」を利用すると、ExcelやWordの差分も簡単に確認できます(図3)。Excelの設計書の差分この差分表示機能は、レビュー後に設計書を修正した場合、レビューで指摘した点がきちんと修正されているかどうか確認したり、仕様変更があった場合、仕様変更点を確認するのに便利です。ソースコードや設定ファイルだけではなく、ぜひ設計書もSVNで管理してみましょう。Lightningをインストールして、使い始めましょう。メールマガジンをご購読ください。申し込みページへITmediaはアイティメディア株式会社の登録商標です。