Firefox 5が前バージョンからわずか3カ月で登場。ソフトウェアは小刻みに進化するものへ
昨晩、モジラがFirefox 5を公開しました。3月22日にFirefox 4が登場してからわずか3カ月でのメジャーバージョンアップです。Firefoxのバージョンアップは今後も速いペースで続き、8月にはFirefox 6、9月にはFirefox 7、11月にFirefox 8、12月にはFirefox 9まで予定されています。
なぜこれほど速いペースでのバージョンアップが行われるようになったのでしょうか?
6週間ごとに自動的にバージョンアップすることにした
いままでモジラは「次のバージョンにはこの機能とあの機能とその機能を入れる」と機能の予定を立てて開発を行い、開発が完了したときに新バージョンとして公開していました。
ところがFirefox 4以降はこの方針を改め、開発を続ける中で「6週間たったらその時点のものを新バージョンとしてリリースする」ということにしたのです。
モジラは「次世代ブラウザ Firefox - 高速リリースサイクルに関するよくある質問」の中で、開発サイクル変更の理由を次のように書いています。
HTML5 や CSS3 など新たな標準技術が次々に考案され、ソーシャルメディアなどのトレンドも目まぐるしく変わっています。Web の進化するスピードが速くなっているので、これまでのように半年から 1 年周期のアップデートでは間に合わなくなっているのです。
6週間のサイクルを先に始めたのはグーグルだった
モジラよりも先に、この速い開発サイクルを採用したのがグーグルのChromeです。The Chromium Blogに昨年の7月に掲載されたエントリ「Release Early, Release Often」には、こう書いてあります。
we will be looking to release a new stable version about once every six weeks,
私たちは6週間ごとに新しいバージョンをリリースしようとしている。
その理由として、何カ月もメジャーバージョンアップのためにユーザーを待たせたくないためだとしています。
Webの世界で広まる小刻みなバージョンアップ
これまで、ソフトウェアは数年おきに大々的なバージョンアップを行うのが当然のことでした。Windows 95、Windows 98、Windows 2000とマイクロソフトはWindowsを数年おきに大きく機能アップしてきましたし、オラクルはOracle 8、Oracle 9i、Oracle 10g、Oracle 11gと数年おきに進化させてきました。
しかし、Webの世界では小刻みなバージョンアップが広まりつつあります。FacebookやTwitterなどでは、内部でひんぱんな機能追加や機能変更を行っていますし、Salesforce.comも年3回のリリースサイクルを設定し、下位互換性を確保しつつ小刻みな改善を行っています。
- Facebook、memcachedに300TB以上のライブデータを置く大規模運用の内側
- Twitterの大規模システム運用技術、あるいはクジラの腹の中(前編)~ログの科学的な分析と、Twitterの「ダークモード」
- 大規模アジャイル開発の実態~ セールスフォース・ドットコムの作り方(前編)
数年おきの大規模なバージョンアップよりも、小刻みに進化させていくほうが変化に対応しやすく、リスクも小さい、ということがWeb関係の開発を中心に広まってきているように思います。
最近紹介したばかりの書籍「ウェブオペレーション - サイト運用管理の実践テクニック」でも「ソフトウェアは小さなバッチで設計・実装・デプロイすべきだ」という主張が展開されています。
Webブラウザは、いまやOS以上に多くの人が日常的に使うソフトウェアになりました。そのWebブラウザが、Chrome、Firefoxと小刻みなバージョンアップを展開し、利用する人々がそれに慣れていき、「ソフトウェアは数年に一回大きくバージョンアップする」という認識から「ソフトウェアというのは小刻みに進化するもの」へと変わることで、今後のソフトウェア開発の一般的なスタイルに影響を与えていくのではないでしょうか。