2000/11/07
オープンソースの話3
昨日の続きです。ベータリリースは結局正式リリースにかかる費用に大した違いはなく、むしろ購買欲を低下させ、価格を上昇させ、さらに購買欲を低下させるという悪循環を生み、思ったほどの効果は得らないということを書きました。実際、長期的に見ると費用対効果が低いのです。
開発速度の低下の根本的な問題は「優秀な」プログラマの数が少ないことです。こればかりはどうしょうもありません。ですが、プログラムの基本は「人月」と呼ばれる単位です。これはたとえば一人の人間が十ヶ月かかれば出来る仕事は十人でやれば一ヶ月で出来る、という考えで、これにプログラマの熟練度が加味されます。上級プログラマが一ヶ月かかる仕事は下級プログラマなら三ヶ月かかるという具合に換算されます。突き詰めれば、上級プログラマ十人が十ヶ月かかる仕事は千人の下級プログラマがいれば三日で終わるということになります。ということは下級でもなんでもいいからとにかくプログラマを大量に確保すれば高速な開発が行えるということです。ここに発想の大逆転、起死回生の一手、オープンソースが登場します。全ての購買者がテスタなのがベータリリースだったのですから、これを更に進めて全ての購買者がテスタでかつ開発者であれば開発者の数の問題は解決されます。これがオープンソースの基本なのです。オープンソースにおいてはある製品に対する対応は誰かが発案し、それを使用したい、全ての人が考え、ソースを作成し、それを使用したいみんながテストし、テストした人自身がそれを修正し、それをフィードバックします。その間にはなんのフィルタも存在しませんから、かえってバグを増やす人も出てきますがそれもまたみんながテストして発見しますから問題となりません。この手法では人月は物凄い数値となりますから開発はあっという間に終わります。また色々な角度から開発アプローチに携わりますからテスト自体もほぼ完璧に埋められ、完成度も非常に高いものとなります。さらにこれには副次的な効果がありました。
明日でいよいよ最後です。


 

Topへ