PR

 ソフトウエア構成管理とは、ソースコードをはじめとするソフトウエア開発の過程で生まれる成果物の変更履歴を管理して、現時点のソースコードがどのような経緯を経て現状のものになったかをたどれるようにすることです。開発期間では、仕様変更やバグの修正などソースコードの変更を迅速に対応できるようにし、運用期間に入った後もソースコードのメンテナンスを効率的に進められるようにします。

 例えば、プログラムをコーディングする際、開発者は基本的にはモジュールごとに1つのファイルで作成します。しかし開発するソフトウエアが大規模なものになると、それぞれのプログラムが機能ごとに分かれる構成となり、ファイル数も膨大なものになります。さまざまな作業を経ていくうちにファイルの規模も膨れ上がっていきます。そのため、変更する各時点で「フォルダ構成」のスナップショットをアーカイブし、履歴として管理していくのです。

 それだけでなく、ソースコードの変更に関連する情報を合わせて記録していくことが非常に重要です。例えば、ソースコード変更の起因となった仕様変更やバグとの関連情報、作成したソースコードの「修正」、確認を行う「レビュー」、ソースコードを動くものにする「ビルド」、正しく動くか確認する「テスト」、できあがったものを使える環境におく「デプロイ」といった一連のプロセスの履歴などを記録していきます。

 これはソフトウエアのライフサイクルが長期化する傾向がある現在、ますます重要になってくるものでしょう。

ソースコード変更とプロジェクト情報を合わせて管理

 ソフトウエア構成管理では、プログラムの基点となるソースコードを管理対象の最小単位にしています。これらを効率的に管理することで、ソフトウエア全体に対しても変更を詳細に把握できるようになります。ソースコードを最小単位とすることは、運用段階以降も維持されます。

 ソフトウエア構成管理では、具体的には「ソースコードに1行追加したのか」「削除したのか」「どこを1から2に変更したのか」ということを記録します。そのうえで、「どの作業で行ったのか」や、「何のために変更したのか」などのプロジェクトの情報(仕様、バグ、プロセスなど)と関連付けながら管理します。

 ソースコードの変更記録とプロジェクトの情報を合わせて管理しないと、どうなるでしょうか。例えば開発の途中、あるいはリリースした後の運用途中で、何らかの仕様変更や不具合の修正が必要となった場合、「その修正が他の機能の不具合を発生させないか」といった影響範囲の調査などの作業が発生し、ここに時間や手間がかかってしまいます。

 ソースコードの変更記録とプロジェクトの情報が合わせて管理してあれば、ソースコードに関連するバグや仕様変更をたどることができ、修正により影響を受けるほかの部分も同時に修正して、ほかのバグの発生も未然に防げるようになります。