Excel駆動開発は時代遅れではないか

その昔、要求仕様やら画面仕様、シーケンス図、仕様に関する問い合わせのやり取り、バグ票、工程管理のガントチャート、議事録の類を一切合切Excelのファイルで管理している開発プロジェクトを見たことがある。各分類毎にサーバの共有フォルダにズラリと並んだファイルの数はなかなか壮絶なものがあった。しかも、意図通りの順番に並ぶように"00_要求仕様書"という連番をファイル名の先頭に付けたり、更新する度に「履歴」フォルダに日付を付記して移動したり、さらに多すぎるファイルの管理をするための「ファイル管理ファイル」なるものまで存在しており、現場担当者の涙ぐましい努力の跡が伺えた。

管理者が「この方法が良い」と判断した上でやっていることなのか、それとも「他の方法なんか知らない」からやっていることなのかあいにく聞きそびれてしまったけれど、少しばかりの学習と手間をかければ作業をずっと効率化出来るのに、こんな非本質的なことに時間をかけれられるとは、実は贅沢なプロジェクトなのかも知れないと思ったりした。日本人はどんな資料でも必ずExcelを使いますネ、と海外の人に何度も言われたことがあるけど、もしかするとこんな開発形態も日本独自の進化を遂げた「ガラパゴス開発」なのかも知れない。

そんなチマチマとしたファイル管理をする気は自分には無いし、仕様書のファイルは全てSubversionへ入れ、障害管理やタスク管理にはTracやRedmineを使っているので、生のファイルを手動で管理する機会は随分と減ってしまった。iPadやiPhoneなどを使っていても(内部ではもちろんファイル処理が行われているにせよ)明示的なファイルオープンやクローズというユーザ操作は無いし、いずれパソコンのインターフェイスも似たような形になるのかも知れない。

Excelやメールなど、どのような用途にも使える使える万能選手は頼もしい存在ではあるけれど、自由度が高い反面、その管理が大変になってくる。特に対象の規模や量が大きくなるに連れて、管理の手間は馬鹿にならなくなるはずだ。BTSや構成管理などの専用ツールを使うと、自由度は低い半面、操作が形式化されるので量が増えても管理の手間は増えずに済む。何でもかんでもExcelとメールで済ませる開発組織は、ITの進化のメリットを享受出来ていないという意味で、また自らの業務効率を改善出来ていないという意味で時代遅れだと思っている。

SEは元メールにレスしながら、メールにある要件や問合せがどのように変化して結論に至ったのか、という履歴を残していく。その変更履歴を辿りながら、本来のあるべき仕様や結論を導きだそうとする。
だから、SEの作業のかなりの割合を占めるメールの履歴を調査する作業は変更管理の一部ではないか、と思う時がある。殆どのSEはメール駆動開発をやっているのではないか、と思えるぐらいだ。

メール駆動開発は時代遅れではないか: プログラマの思索