ソフトウェア構成管理

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動: 案内検索

ソフトウェア構成管理(ソフトウェアこうせいかんり、: software configuration managementSCM)とはソフトウェア開発プロジェクトをその成果物を通して制御・管理する方法論である。ソースコードや文書などの成果物の変更履歴を管理し、製品のバージョンやリビジョンに個々の成果物のどのバージョンが対応しているかを識別し、任意のバージョンの製品を再現可能とする。

バージョン管理システムは SCM のためのツールであるが、バージョン管理システムそのものを SCM と呼ぶこともある。しかし、一般にソフトウェア構成管理はバージョン管理とは等価ではなく、バージョン管理を制御するマネジメント的要素が含まれる。

歴史[編集]

当初、ソフトウェア構成管理(SCM)は単に CM構成管理)と呼ばれており、本来はハードウェア開発と製造制御のためのものだった。以下では主にSCMツールの登場を時系列に並べる。

  • 1950年代終盤から1960年代初期:IBM UPDATE
  • 1960年代終盤から1970年代初期: カリフォルニア大学サンタバーバラ校の Leon Pressor は変更および構成制御に関する論文を発表した。これは、アメリカ海軍に航空機のエンジンを提供していた軍需企業からの委託研究の一環で行われたものである。
  • 1970年代初期: UNIXmake
  • 1970年: CDC update
  • 1972年ごろ: ベル研究所の論文で本来の diffアルゴリズムが紹介された。
  • 1972年: ベル研究所の Marc Rochkind がOS/360上のSNOBOL言語でSCCSを開発。
  • 197x年: Pansophic の PANVALETメインフレーム向けのソースコード管理システム)
  • 1975年: SCCS が C言語で書き直され UNIX に対応(ファイル比較に diff コマンドを使用)
  • 1975年: Pressor の研究成果から商用製品 change and configuration control(CCC)が登場(SoftTool社)
  • 198x年: RCS(Walter Tichy)現在は GNU の一部。
  • 1980年代: patchラリー・ウォール
  • 1984年: Aide-de-Camp(ADC、後にTRUEchange と改称、Richard Harter)
  • 1986年: CVS
  • 2000年代初期: BitKeeperarchといった分散型バージョン管理システムが実用に耐えるレベルとなってきた。

用語[編集]

SCMを意味する用語は非常に様々でシステムによって異なる。また、論争の種にもなっている。

研究者だけでなく、ツールベンダーも顧客の囲い込みを狙って、故意に他と異なる用語を使ったり、頭字語の意味を違う言葉の略であるとしたりする。

  • software configuration management:現在はIBMの一部となっているラショナル(さらに以前は Atria)が使っていた用語
  • software change and configuration management(SCCM):ガートナーでの用語。ただし、単に変更管理を含めた広義のソフトウェア構成管理を指しているとも考えられる。
  • source configuration management
  • revision control
  • version controlバージョン管理システム
  • source control

目的[編集]

SCMの一般的な目的は次の通り:

  • 構成の識別 - 修正を施すべきコードはどれか?
  • 構成の制御 - 製品のリリースとその修正を制御する
  • 状態の記録 - コンポーネントの状態を記録し報告する
  • レビュー - コンポーネント間の一貫性と完全性を保証する
  • ビルド管理 - ビルドのためのプロセスとツールを管理する
  • プロセス管理 - 組織としての開発手法を厳守する
  • 環境管理 - システムの基盤となっているハードウェアおよびソフトウェアを管理する
  • チームワーク - 開発に関するチーム内のやりとりを促進する
  • バグトラッキング - 全ての障害について対処状況を追跡可能とし、かつコード修正と対応付ける

参考文献[編集]

  • Berczuk, Appleton; (2003). Software Configuration Management Patterns: Effective TeamWork, Practical Integration (1st ed.). Addison-Wesley. ISBN 0-201-74117-2.
    • ステファン・P・バーチャック(著)、ブレッド・アップルトン(著)、宗雅彦(訳)『パターンによるソフトウェア構成管理』、翔泳社、2006年、ISBN 9784798112596

関連項目[編集]

外部リンク[編集]