テクノロジー・リーダー向けサイト「EnterprisePlatform」は,複数の雑誌やWebサイトの記者達によって作られている。会議室や電子メール上で常時行われている,担当記者と編集長のやり取りを公開する。今回は多くの開発者やユーザーが関わるVisual Basicの問題を取り上げる。


Y 知り合いから「Visual Basicに2009年問題は発生するのか」と質問されたんだけれど,N君,そういう話はあるの。

N うーん,あるというかないというか。お知り合いの方は,どういう文脈でVisual Basicが使えないと仰っているのですか。

Y マイクロソフトは2009年からWindows Vistaしかサポートしない。それにともなって,Visual Basicが使えなくなる。こういう話だった。

N なるほど。お知り合いの方が仰る「2009年問題」はおそらく「2018年問題」のことでしょう。僕はそれとは別に,Visual Basicの「2008年問題」を懸念しておりますが。

Y う,言っている意味がよく分からない。

N 順を追って説明しないとYさんには理解不能ですね。マイクロソフトが企業向け製品に対して提供しているサポートには2種類あります。何と何か分かりますか。

Y 無償の標準サポートと有償サポートかな。

N そういう分け方もありますが,ここでは無償の基本的なサポートについて取り上げます。一つは,「メインストリーム・サポート」と言いまして,すべてのバグを無償で修正するものです。もう一つは「延長サポート」というもので,セキュリティに関連するバグだけを無償で修正してくれます。メインストリーム・サポートが切れた後,セキュリティ関連についてだけサポートを延長するという主旨です。

 さて現在,企業が使っているメインのOSは,クライアントがWindows XP,サーバーがWindows Server 2003でしょう。Windows XPのメインストリーム・サポートは2009年で,延長サポートは2014年で,それぞれ切れます。Windows Server 2003のメインストリーム・サポートは2010年で終了し,延長サポートが終了するのは2015年です。というわけで現在,Windows XPとWindows Server 2003をベースに動いているシステムの寿命が,ハードウエアによるものではなく,OSのサポート切れによって尽きる時期は,早くとも2014年からと言えるでしょう。

 既に稼働しているシステムに関しては,OSのセキュリティ修正パッチが提供される延長サポートの期間内であれば安全に利用できます。というわけで,OSの寿命は一般に「延長サポートが切れるまで」と言われています。

Y 説明を聞いていると,なかなかVistaへ移行しないように思えてくるが。

N そうとも言えません。大手システム・インテグレータによれば,新規のWindowsプロジェクトを始める場合,なるべくメインストリーム・サポートの期間にあるOSを使用するように心がけるそうです。マイクロソフトに対し,セキュリティ以外の問題でOSのバグ修正を依頼することが,年に数件発生するからです。よって,2010年以降に稼働させる新規のシステムに関しては,Windows VistaやWindows Server 2008がメインになる可能性が大きいでしょう。

 さて,お知り合いからの質問は,Visual Basic 6に関連した内容かと思います。今,主に使われているのはVisual Basic 6なので。次の世代であるWindows VistaやWindows Server 2008にも,Visual Basic 6のランタイムが標準搭載されます。そのため,Visual Basic 6で作成した既存のクライアント/サーバー・アプリケーションは,Windows VistaやWindows Server 2008でも稼働します。

 Visual Basic 6アプリケーションが本当に利用できなくなるのは,これらのOSの延長サポートが切れるであろう2018年頃になるのではないかと思います。「2009年問題はおそらく2018年問題のこと」と申し上げたのはこういう理由からです。

Y もう一つの「2008年問題」とはどういうもの。

N 実は肝心の開発ツールであるVisual Basic 6のメインストリーム・サポートが2005年3月31日で既に終了しているのです。延長サポートも2008年4月8日で終了することになっています。既存のVisual Basic 6アプリケーションに手を加えながら使い続けていくのであれば,当面問題になるのは,2009年のWindows XPのメインストリーム・サポート終了ではなく,2008年に迫ったVisual Basic 6の延長サポート切れかもしれません。というわけで「2008年問題」という言葉を持ち出したのです。

 既に作成して動かしている既存のVisual Basic 6アプリケーションに関しては,前に述べましたとおり,2018年まで利用できる訳です。しかし,このアプリケーションに手を加えたりする場合は,注意が必要です。というのもサポート切れの開発ツールであるVisual Basic 6を使用することを嫌がるベンダーが出てくる恐れがあるからです。

Y アプリケーションに手を加えないで使い続けることはまずないだろう。ベンダーが嫌がるのは,何かあったときに責任をとれないからか。

N まあ,そうですね。Visual Basic 6は結構枯れているので,大きなバグは出てこないとは思いますが。ユーザー企業が「サポート切れのVisual Basic 6を使ってメンテナンスしてかまわない」と言えば,Visual Basic 6を使い続けることに問題はないでしょう。

Y ちょっと疑問に思ったのだが,そもそもVisual Basicというのはまだ使われているのかね。Javaか.NETに移行したのでは。

N プログラミング言語としてのVisual Basicは,.NET Frameworkになっても現役です。マイクロソフトは現在,.NET Framework上で動作するVisual Basicへの移行を推奨しており,私が知るシステム・インテグレータの中にも,「新人教育でJavaを教えるのを止めてVisual Basic1本に絞った」というところもあります。

 そのシステム・インテグレータによれば,現在の.NET Framework用のVisual Basic(Visual Basic 2005)は,Visual Basic 6と言語上の整合性が高く,Visual Basic技術者にとって,移行がかなり容易だと言うことです。

Y そうは言っても,Visual Basic 6アプリケーションを,Visual Basic 2005アプリケーションに移行するには,結構な手間とコストがかかるだろう。ユーザー企業は,OSや開発ツールをどうして選定していくか,頭の痛いところだね。

N Yさんが世に広めた「2007年問題」も,団塊世代の再雇用で回避した企業が多いと聞きます。「Visual Basic 6 の2008年問題」の解決策(回避策)も案外,「Visual Basic 6アプリケーションを使い続ける」になるかもしれませんね。