@IT|@IT自分戦略研究所|QA@IT|イベントカレンダー+ログ | ||
Loading
|
@IT > Webアプリケーション(Apache/Perl)統合開発環境の開発 |
企画:アットマーク・アイティ
営業企画局 制作:アットマーク・アイティ 編集局 掲載内容有効期限:2005年9月30日 |
|
|
「Webアプリケーションの開発をどうするかという問題に取り組んだユニークな応募です。アプリケーションサーバを使ってWebアプリケーションの開発を行っている大手ベンダーとは別の形で、もっと多くの人が簡単に開発を行えるというニーズは小さくないとは思います。商売としては厳しい分野だとは思いますが、なるべくオープンソース寄りの切り口でそうしたニーズを満たせるものとして採択しました」(酒井裕司PM)
株式会社モビラス代表取締役の奥一穂氏と、共同開発者である同社の北條裕明氏が応募した「Webアプリケーション(Apache/Perl)統合開発環境の開発」は、開発専用サーバをわざわざ設置しなくとも、運用サーバだけで開発も運用も行えるという非常に利便性の高い統合開発環境を目指したプロジェクトである。 通常、ApacheとPerlを用いてWebアプリケーションを開発する場合は、開発用のサーバと運用のためのサーバをそれぞれ用意。開発サーバでコーディングを行い、デバッグし、完成したプログラムを運用サーバにコピーしてデプロイするという手順が採られる。だが奥氏は、こうした手法について、「ライフサイクル全体としての効率が悪く、結果として品質が低くなってしまう」と指摘する。
具体的な問題点について、奥氏と北條氏は次のように説明する。「まず第1に、この方法では開発サーバを作ってそれを維持しなければならないという負担が大きいことがあります。大きなプロジェクトでは問題はないかもしれませんが、小さなプロジェクトでは、開発を請け負った会社の側には大きな負担になってしまう。第2に、開発サーバを複数のプロジェクトで共用すると、運用サーバと環境が異なってしまうなどの問題が生じ、結果として開発サーバでは動いたのに、運用サーバでは動かないというトラブルが起きることが少なくありません。第3に、運用中のアプリケーションをアップグレードする際は運用サーバ上で手作業の修正をしていくため、そのたびにサービス停止のアナウンスを行い、そして実際に停止させてコードを適用するという作業を行わなければならず、非常に手間が掛かります」
今回の応募プロジェクトは、こうした問題を抜本的に解決する方策として考え出された。統合開発環境は、次のような機能が実装されることになっている。
実装言語として、サーバ側はPerl、クライアント側はJava、そしてApacheに組み込むバージョン管理モジュールはCで記述されている。 この3つの機能を実現することで、開発・メンテナンス効率は劇的に改善されるのではないかと奥氏らは考えている。特に期待されているのは、細かい修正を頻繁に施さなければならないWebアプリケーションの運用現場での利用だ。「極端な例でいえば、ちょっとしたセキュリティホールやバグなどをつぶしたいが、開発を委託した業者はすでに存在しないといったケース。じゃあどうすればいいか? と考えると、通常は新たに開発者に委託し、まず開発環境をセットアップし、プログラムをコピーして……という手順を踏まなければならないのです。大変な手間とコストがかかる作業です」と奥氏は話す。 しかしこの統合開発環境があれば、新しい開発者にユーザーIDとパスワードを渡すだけで済む。開発者はユーザーIDを使って統合開発環境にログインし、CGIを書き直し、運営者に電子メールなどで連絡すればいい。運営者側は開発版のCGIの修正が行われていることを確認し、コミットボタンを押せば、すぐに修正版をデプロイできるわけだ。「従来の手法であれば、1カ月以上も掛かるような仕事が、1日や数時間というオーダーに減らすことができる」(奥氏)というのである。これは極端なケースにしても、コンテンツプロバイダなど運用後の細かい修正が何度も必要な場合には、この統合開発環境が強みを発揮する可能性は極めて高いといえるだろう。
奥氏らがこの統合開発環境プロジェクトを始めるきっかけとなったのは、自社のポータルサイトを構築するときに開発で不便を感じたことだったという。奥氏と北條氏はもともと、Palm向けのWebブラウザとして有名な「Xiino」を開発・販売していた株式会社イリンクスのメンバーだった。だが同社のビジネスが行き詰まったことから、奥氏らは新たに株式会社モビラスを設立。Xiinoのライセンスの供与を受けて販売を継続し、同時にPtoP関連のソフト開発も開始した。
それが現在、ベータ版のリリースまでこぎつけている同社のハイブリッドPtoPサービス「Edio」である。Edioには、ブロードバンド環境に接続されている音楽再生端末であれば、どこにいても自宅のPCの中に入っている音楽を聴くことができる「Edio ミュージックサービス」と、携帯電話で撮影した写真をインターネット経由で自宅のPCに転送できる「Edio フォトサービス」、自宅にあるTVチューナー付きPCを通して外出先のPCからテレビを視聴できる「Edio TV サービス」の3つの機能がある。いずれもハイブリッドPtoPを使ったサービスで、ユーザーは一度、同社のポータルにアクセスして認証を行わなければならない。 「そこで本腰を入れてポータルサイトの制作を開始したのですが、実際に開発作業を進めてみると、従来の開発環境は非常に不便だということがよく分かりました。そこで自分たちにとって使い勝手のいい統合開発環境を作ってみようと思ったのです」と奥氏は話す。ローエンドの統合開発環境としてはZopeなどが有名だが、特定の言語やフレームワークに制限されず、WebサーバをベースにHTMLやCGIを統合的に管理するような機能を実現しているものはほとんどない。「WebアプリケーションはJavaなどを使ってハイエンド・システム向けに行われているケースが大半。ApacheやPerlを使ったWebアプリケーション開発のツールはビジネスにはなりにくい。だから今まではセグメントとしてぽっかりと空いていたのだと思います」と奥氏は指摘する。 そうなると酒井PMも本稿の冒頭で指摘しているように、ビジネスにはなりにくいという危惧もある。だが奥氏は、「だからこそオープンソースで開発を進め、使えるツールとしてブラッシュアップして行ければと思っています。商品としてこの製品でビジネス展開するよりも、あくまで使いやすいツールとして利用していくことでコストが下がり、生産性が上がっていき、そしてその結果、会社としても利益が上がっていけばいいかなと考えています」と話す。そして北條氏も「いろんな方に使っていただければありがたいし、それによって会社や個人のバリューアップにつながればさらに嬉しい。そしてモビラス自体の知名度が上がり、開発を進めているEdioなどにも注目が集まればと思います」と話すのである。 [関連リンク]株式会社モビラス ◆「オープンソースによる開発実験プロジェクト」トップページに戻る |
|