« Tracに有ってRedmineに無い機能 | トップページ | 過剰品質 »

2008/10/18

構成管理は誰のためのものなのか?

気になる記事を見つけた。その感想を書く。

【元ネタ】
構成管理は誰のためのもの?

意外と知らない構成管理の正体~第1回 ファイルバージョンの管理だけで十分ですか?

【1】最近のSW構成管理は、単なるバージョン管理、ビルド管理だけでなく、変更理由を追跡できる変更管理の観点を含む時が多い。
その分、構成管理の難易度が上がっているように思う。
単にSubversionやCVSでソースのみをバージョン管理できているだけでは、構成管理できているとは言えない。

そこで、気の利いたチームは、Rational製品のような重厚なプロセス付きの構成管理を導入する時があるだろう。
管理者は構成管理をしたがる。リリース作業がスムーズになるとか、デグレが減るなどの利点があるからだ。
しかし、逆に生産性が落ちる時が多い。

「意外と知らない構成管理の正体~第1回 ファイルバージョンの管理だけで十分ですか?」のように、構成管理の運用を現場に上手に当てはめないと、インクリメンタルな開発をすればするほど、たくさんのブランチへマージ作業の手間が増える。

だから、普通は、開発者は構成管理を嫌がる時が多い。
自分のタスクが増えるだけで、楽にならないからだ。

【2】Redmineによるチケット駆動開発の利点は、開発者は構成管理を意識しなくてもいいことだ。
チケット駆動開発では、担当チケットが自分のタスク。
ソースをコミットする時、仕様確認するたびにチケットへコメントを追記する時、必ずチケットに作業履歴が残る。
その後、Redmineがバックグラウンドで作業履歴をトレースできる環境を自然に作ってくれる。
実際、3年前のパッチの修正理由は、ソースのリビジョンに紐づいたチケットから追跡できる。
更に、強力なデータマイニング機能で、作業履歴の品質をSWメトリクスで表示すらできる。

【3】Redmineが何故、構成管理を意識しなくても良いインフラを作ってくれるのか?
これは、昨今の業務系Webシステムに特徴的なデータマイニング機能を流用しているからだ。
つまり、チケットに作業履歴を残すだけでバージョン管理、変更管理などに必要なデータを緩やかに関連付けてくれるから。

SNSが流行した理由は、アクセスログからお宝発掘にある。
つまり、アクセスログから緩やかに相関関係を探り出す。
見知らぬ人の足跡から新たな人間関係が発生するという面白さがある。

同様の例は、Amazonのレコメンドエンジンによる関連商品機能や、GoogleのPageRankによる有用度の高いHP検索機能があげられる。
つまり、たまったトランザクションデータからある種の傾向を吸い取り、マーケティングやビジネス上の意思決定の材料に使えるのだ。

最近のSW構成管理の特徴は、単なるバージョン管理だけでなく、強力な変更管理機能だけでなく、データマイニングによるSWメトリクス採取にあると思う。
バグ収束曲線、バーンダウンチャート、SVNリポジトリ統計などに、ソフトウェア工学の知識を流用すれば、プロジェクト運営の意思決定の材料になりうるはずだ。

SW構成管理は、ソフトウェア開発に必須のツールでありプロセスであり、ソフトウェア開発に従事する人たち全員のためにある。
でも、そのインフラは開発者が意識しなくても自然に使えるものであるべきだ。


|

« Tracに有ってRedmineに無い機能 | トップページ | 過剰品質 »

プロジェクトマネジメント」カテゴリの記事

Redmine」カテゴリの記事

ソフトウェア工学」カテゴリの記事

構成管理・Git」カテゴリの記事

コメント

コメントを書く



(ウェブ上には掲載しません)


コメントは記事投稿者が公開するまで表示されません。



トラックバック


この記事へのトラックバック一覧です: 構成管理は誰のためのものなのか?:

« Tracに有ってRedmineに無い機能 | トップページ | 過剰品質 »