Loading
|
@IT > Webアプリケーション・プラットフォームとしてWindowsを選択する理由 |
|
●システム・インテグレータの視点から見るITプラットフォーム選択
前半のアンケート結果に引き続き、後半では、実際にシステム開発を担当されているエンジニアの生の声を聞くことにする。今回お話を伺うのは、株式会社エコス(以降、エコス。http://www.ecoss.co.jp/)最高技術責任者の杉本晋吾氏である。エコスは、マイクロソフトやサン・マイクロシステムズ、日本オラクルなどが主要株主に顔を揃える異色のシステム・インテグレータで、WebベースのECシステムを中心に、特定のプラットフォームに偏らない中立な立場でシステム開発を行っている。Microsoft .NET、Java双方をベースとした開発を広く手がける杉本氏の視点から、プラットフォーム選択のポイントを伺った。
冒頭述べたように、エコスではWindows+.NET Frameworkに限らず、JavaやPHPなど、ユーザーの要求に応じて最適なプラットフォームを選択しているという。だがそうはいっても、一般的には、過去にインテグレーションを多く手がけたプラットフォームほど見通しが利くので、エンドユーザーに推奨する環境には偏りがでるのが普通だろう。しかしエコスでは、技術的な理由から、Windows+.NET FrameworkまたはJavaのどちらか一方の選択を迫られることはほとんどないという。プラットフォームの選択は、純粋にシステムの要求やユーザーの希望、環境などだけで決定しているという。 「実際のプラットフォームの選択は、導入先企業のシステム管理者がWindows+IISの運用に馴れている、Tomcatを運用した経験があるなどの事情で決定するケースが多いですね。あるいは、Windowsサーバが手元にあるからとか、既存システムがWindowsだからWindowsで構築してほしいというユーザーさんも多くいらっしゃいます」(杉本氏)。 エコスでは、.NET FrameworkやJavaといったベース・プラットフォームの違いを吸収するために、“M3”と呼ばれるECシステム向けの独自の開発フレームワークを作成し、システム構築に活用している。この“M3”では、システムの仕様をドキュメントとして作成すれば、これに基づいて必要な基本コードが自動生成される。この際、ターゲット・プラットフォームはWindows+.NET Framework、WebSphere、WebLogic、Tomcat、PHPが選択可能だ。このM3のおかげで、プラットフォームや言語に依存しないシステム開発が可能になっている。最終的な肉付けはプラットフォームごとに行う必要があるが、基本部分は自動生成されるので、どのプラットフォーム/言語でも大して違いなくソフトウェア開発が可能だという。実際、エコスでは、ほとんどの開発者がC#もJavaも、必要に応じて自由に使い分けられるという。
本企画でも何度か指摘してきたように、Windows+.NET Frameworkは初期コストが高いという理由から、ユーザーが避ける傾向があるといわれる。杉本氏も、「そうしたユーザーが存在することは否定できません」と同意する。なるほど、運用/保守コストまで含めた長期的な視点で見れば、Windows+.NET Frameworkにも分はある。しかし、初期コストという目先の視点に限定するならば、オープンソースであるフリーJavaに軍配があがるのは当然なのだ。 杉本氏はこうも語る。「トータル・コストが重要なのはもちろんですが、開発当初から長期的な運用コストにまで目を向けるのが困難なケースがあるのが現実です」。新規ビジネス向けのWebシステムでは、2〜3年、あるいは半年でクローズしてしまうかもしれないサイト開発もある。このようなケースでは、そもそも運用コストを検討すること自体あまり意味がないというのだ。 しかし長期にわたって使うことが前提となるシステムでは事情が異なる。「コスト感覚は顧客ユーザーによって異なります。例えば、大企業のユーザーなどで、サイトを長期的に運用しようとすれば、当然、初期コストだけではなく、運用/保守コストにも目を向けた検討が行われています。そのようなユーザーにとっては、決してWindows+.NET Frameworkは高価なプラットフォームではありません」(杉本氏)。 長期運用するかどうか分からないシステムはともかく、やはり長期で運用するシステムでは、イニシャル・コストだけでなく、展開や運用など長期的な視点でコストを評価する必要があるようだ。
本記事で繰り返し指摘しているように、Windows対Linuxという構図で指摘されることが多いポイントに「セキュリティ」がある。セキュリティという観点から見たWindows/Linuxの違いはどうだろうか? この質問に対する杉本氏の反応は、至極当然の内容だった。 「当たり前のことですが、セキュリティ上の安全性を左右するのはプラットフォームの違いではなく、安全にシステムを構成し、正しく設定しているかどうかです。これらの違いによって、LinuxにしろWindowsにしろ、危険な状態にも安全な状態にもなりえます」(杉本氏)。 セキュリティ・ホールが見つかれば、できるだけ早期にパッチを適用する必要があるのはもちろんだが、その場合でも「システムが正しく構成され、正しく設定されていれば、慌ててパッチを適用しなくても、システムが即座に危険に晒されることはほとんどない」と杉本氏。 Windows+.NET Framework環境では、あまりに頻繁にセキュリティ・パッチが公開されるため、適用のためにたびたび運用を停止しなければならない、と指摘されることがしばしばあるが、この点はどうなのだろう。これに対し杉本氏は「システムを冗長化していれば、サービスを停止せずにメンテナンスが実行できるので、ほとんど影響はない」と述べる。 「セキュリティ・パッチもそうですが、万一アプリケーション・サーバがダウンした場合でも、システムの冗長化さえ適切に行っていれば、問題となることはまずありません。そもそもLinuxだって、利用しているサービスがダウンすることはよくありますよ」と杉本氏は笑った。 セキュリティ・パッチを適用するにしても、冗長化したサーバを1台ずつに順にメンテナンスしていけば、サービス全体を停止する必要に迫られることはまずない。ごくごく当たり前の視点ではあるのだが、Windows対Linuxを対比的に捉えてしまうと、意外とこうした視点が抜け落ちてしまうのかもしれない。 ちなみにエコスでは、Windows 2000 Server+IIS 5.0/SQL Server 2000の構成でSEGA Direct(http://segadirect.jp)のサイトを開発し、現在も稼働中だ。ピーク時には、1日のアクセスが100万〜200万ページ・ビューに及ぶ人気サイトだが、わずか3台のPCサーバで500万PV/日の負荷に耐える設計となっている。また年間の停止時間はおおよそ数分から十数分という高い可用性を実現しているという。
本記事では、「Windows+.NET FrameworkとLinux+フリーJavaとを目的に応じて使い分ける」ということを論点にしてきたが、これを決定づけるのは技術的な理由ではなく、ユーザー個別の歴史的、政治的理由ばかりなのか?「いいえ。個別のユーザー要件によっては、プラットフォームの選択を論じる余地はあります」と杉本氏。杉本氏がWindows選択のポイントとして強調したのは、「Office製品との親和性」であった。 最近のWebアプリケーションはかなり洗練されてきており、一見するとWindowsアプリケーションかと見間違うほどの表現力を持つものもある。しかし特に業務用のWebアプリケーションでは、このような見栄えの美しさに関心が持たれることは少なく、むしろ新しく不慣れな画面インターフェイスで業務を行わなければならないことに抵抗を示すエンドユーザーのほうが多いという。 「どのようなレベルのエンドユーザーであろうと、ExcelやWordは誰もが使い慣れており、抵抗なく操作できます。Webインターフェイスでの操作に難色を示すエンドユーザーに対し、必要ならWordやExcelで操作できますというと、途端に目の色が変わるんです。どんなにコンピュータが苦手な人でも、ExcelやWordならば使える、というケースは実に多いです」(杉本氏)。 クライアント・コンピュータにおけるMicrosoft Officeの普及度については、ここで改めて強調するまでもないだろう。オフィス・ソフトの定番であるWordやExcelに至っては、ほぼすべての業務用Windowsクライアントに導入されているといっても過言ではない。コンピュータは門外漢だがExcelだけは使える、というユーザーが読者のまわりにもいるのではないか。ExcelやWordをフロントエンドにできれば、こうしたユーザーにとっても使いやすい情報システムが構築できる。 例えば、エコスで手がけた「BlueRibbon Online(http://www.blueribbon.co.jp/)」の例を挙げてみよう。BlueRibbon Onlineは、開発当初、ユーザーからこれといったプラットフォームの要求もなく、また過去から継承する資産もなかったため、エコスが自由にプラットフォームを選択できる立場にあった。最終的にはWindows+.NET Frameworkが選択されたのだが、その決め手となったのは、「現場の人間でも手軽に商品情報の更新を行いたい」という要件であったという。 「BlueRibbon Onlineの場合には、サイト内で扱う商品数が約1600点と種類も多く、更新も頻繁であるという事情がありました。データの更新は、忙しい店舗スタッフが担当することになるのですが、これらの人たちに新しいWebアプリケーション上の操作方法を覚えてもらうことは現実的ではありません。そこで、店舗スタッフがなじみ深いExcelをクライアントとして使えないか、という話になったわけです」(杉本氏)。 クライアント側がExcelとなれば、接続性の点でサーバ側にLinuxを使う理由はない。「クライアント側がExcelに決まった時点で、サーバ側はWindows+.NET Frameworkに決まりました」(杉本氏)。 ■ ■ ■ 杉本氏へのインタビューをひと言でまとめれば、「Windows+.NETだのJavaだのいう以前に、まずはニュートラルな出発的に立ち、ユーザーの要求をきちんと分析し、それに応じた最適なプラットフォームを客観的に選択すればよい」ということになるだろう。考えてみれば当然のことだが、いたずらに対決の構図に持ち込みがちな視点からすると新鮮な意見である。エコスはJavaベースの開発でも高い実績を誇っているが、そうしたJavaのプロフェッショナルが、「Windows+.NETもJavaも対等な択肢の1つ」と当然のことのように語ってくれたことが非常に印象的だった。 最後に杉本氏は、個人的な意見と前置きしながら、次のように語ってくれた。「これまでお話ししてきたように、情報システムのプラットフォームはユーザー環境に応じて選択するものです。しかしWindows+.NETは非常に安定的で、将来のロードマップも見通しがよく、開発環境であるVisual Studio .NETの完成度も極めて高いので、個人的にはたいへん気に入っていますし、期待もしています」(杉本氏)。 しつこいようだが、本稿は「Windowsがどんな場合にも優れている」と主張するものではない。オープンソースという独自の分野の中で育まれてきたLinux+フリーJavaの世界には、確かにWindows+.NET Frameworkにはない独自の文化があり、良さがある。これを否定するものではない。 しかし、プラットフォームやプログラム言語/技術の良否を議論していくと、極端な事実の単純化が行われることがままある。「Windowsはセキュリティ的に脆弱である」「Windowsシステムはコストがかかる」「Windowsを利用するとマイクロソフトに取り込まれる」などなど。これらの論評はすべてそうした単純化の端的な例だ。 われわれが置かれた環境は、それほど単純なものではない。単純化された事実は、あくまで事実の一部として捉えるとしても、最終的には、外的/内的な状況や条件から「われわれ自身が」良否を判断していく必要がある。本企画が、適切なプラットフォーム選択を見直す、今一度のきっかけとなれば幸いである。 <前のページへ>
提供:マイクロソフト株式会社
企画:アイティメディア 営業局 制作:デジタル・アドバンテージ 掲載内容有効期限:2005年3月31日 |
|