データベースは企業システム内に閉じたデータを統合管理していればいい、という時代ではないのかもしれません。今回は、マイクロソフトの最新手法「ASP.NET MVC」を使ってみます。Webデータベースシステムの短納期開発が狙えます。

 データベースシステムは様々な形態のものが作られ、使われてきました。ファイル共有型の小規模システム、より本格的なデータベース管理システム(Database Management System、DBMS)を使ったクライアント/サーバー型のシステム、そして21世紀に入って主流になってきたと言えるのが、Webデータベースシステムです。

 Webデータベースシステムでは、Webブラウザ、Webサーバー、アプリケーションサーバー、データベース管理システムなどがかかわってくるので、開発が簡単であるとは言えません。でも、必要なソフトウエアをパッケージ化し、効率よくWebデータベースシステムを作れるようにしようという努力はずっと続けられてきました。

 例えばマイクロソフトの場合、図1のように、IIS(Internet Information Services)、SQL Server、Visual Studioを組み合わせるのが推奨パターンです。IISはWindowsに含まれていますし、Visual Studioには無償版「Visual Studio 2010 Express」があります。Visual Studio 2010 Expressには、SQL Server 2008が含まれています*1。これらを使えば、ソフトウエアを特に購入しなくても、Webデータベースシステムの開発を体験できるのです。

図1●マイクロソフトのVisual Studioを使ったWebシステムの基本構成
図1●マイクロソフトのVisual Studioを使ったWebシステムの基本構成
[画像のクリックで拡大表示]

 今回のサンプル・プログラムでは、「ASP.NET MVC」を使ってみます。MVC(Model-View-Controller)は、プログラムをモデル(Model)、ビュー(View)、コントローラ(Controller)の三つに分けて作る考え方です(図2*2

図2●MVC(Model-View-Controller)の考え方でWebアプリケーションを作ってみよう
図2●MVC(Model-View-Controller)の考え方でWebアプリケーションを作ってみよう
[画像のクリックで拡大表示]

 モデルは、メインとなるロジックを扱います。ここにビジネスロジックを記述したり、データベースとのやり取りを記述したりします。ビューでは、コントローラの命令に従って、モデルからデータを引き出し、ユーザーのリクエストに合わせたWeb画面を構築します。モデルとビューを管理するのがコントローラです。

 モデル、ビュー、コントローラの三つに分けてアプリケーションを開発することで、各部の独立性が高くなり、保守性や可用性が改善します。複数の開発者が従事する場合に分業がしやすくなるのもメリットです。

 ASP.NET MVCはMVCに基づくWebアプリケーションの開発を容易にするマイクロソフトのフレームワーク(枠組み)で、2009年3月にバージョン1が、2010年3月にバージョン2が提供されました。Visual Studio 2010にはバージョン2が含まれています。これを使うと、Webデータベースシステムを少ない作業で構築できます。あなたがデータベース開発のベテランでも、びっくりするかもしれません。

 前回の記事を読んで必要なソフトウエアをインストールしたら、プログラミングを始めましょう。今回作るのは、図3のような、日経ソフトウエアの目次を表示するWebデータベースシステムです。

図3●今回作成する、日経ソフトウエアの目次を管理するWebアプリケーション。レコードの作成、読み出し、更新、削除ができる
図3●今回作成する、日経ソフトウエアの目次を管理するWebアプリケーション。レコードの作成、読み出し、更新、削除ができる
[画像のクリックで拡大表示]