アットマーク・アイティ @IT@IT情報マネジメント@IT自分戦略研究所QA@ITイベントカレンダー  
 
 @IT > 現場生まれのVB.NET用O/Rマッパー「ObjectService.net」
 
@IT Special

 

PR

現場生まれの使いやすいVB.NET用O/Rマッパ
「ObjectService.net」


部門業務システム分野などで活用されるVisual Basic。ビジュアルな統合開発環境やオブジェクト指向など優れた開発ツールだが、データベース処理に関しては煩雑なSQL文の記述が欠かせない。この煩雑さを隠してくれる「O/Rマッパー」を利用すれば、設計や修正時の開発負担を大幅に改善できる。

    データベース開発は、開発生産性・保守性の「鬼門」

 「ObjectService.net」(以下、ObjectService)は、業務アプリケーション開発の現場から生まれたVB.NET用O/R(オブジェクト/リレーショナル)マッパーである。ObjectServiceを使うことで、業務アプリケーションに必要不可欠なデータベース処理記述の生産性、保守性を大幅に向上させることができる。

コデックス代表取締役社長 原本陽太氏

ObjectService開発元のコデックス代表取締役社長 原本陽太氏は、製品の狙いについて次のように語る。「Visual Basicによる業務アプリケーション開発の現場では、O/Rマッパーはまだ普及していないという印象があります。しかし自分たちが現場で使ってみた感触では、O/Rマッパーから得られるメリットは非常に大きい。Visual Basicの世界でもO/Rマッパーを広めたいという思いから、製品化することにしました」。 

 業務アプリケーションを開発するとき、避けて通れないのがデータベース処理だ。アプリケーション開発のためのプログラミング環境は、オブジェクト指向言語や、GUIを駆使した統合開発環境(IDE)により大きく変わった。例えばVisual Basicの最新版であるVB.NETでは、オブジェクト指向機能や、高度な統合開発環境による開発支援機能を駆使した開発が可能となっている。

  ところが、こうした最新の開発スタイルの足を引っ張っているのがデータベース処理記述だ。通常の開発手法ではSQLをソースコード中に記述する必要があり、オブジェクト指向や、統合開発環境の開発支援機能の恩恵を受けにくい。

  この状況を変えるのが、O/RマッパーのObjectServiceである。ObjectServiceを使うことで、SQLを意識することなく、VB.NETのクラスとしてデータベース構造を記述できる。またデータの取得・保存のためのプログラム・コード記述が不要となり、プログラムの生産性と保守性が大幅に向上する。

    業務アプリ開発の現場から生まれたObjectService.net

 ObjectServiceは、実際にVB.NETによる業務アプリケーション開発を手がけるコデックスが開発したものだ。その原型は、同社が社内ツールとして作ったものだという。つまり業務アプリケーションの開発者が自分たちのためのツールとして作った製品が、ObjectServiceというわけだ。

  「社内用ツールとしてVB.NET用のO/Rマッパーを作り、複数の開発プロジェクトで適用してみたところ、生産性と保守性が大幅に向上するというメリットが得られました。そこで、製品化して世の中で広く使ってもらおうと考えました」(原本氏)。この経緯から分かるように、ObjectServiceは机上で設計された製品ではなく、開発現場の苦労から生まれたものだ。

  ObjectServiceを利用すれば、VB.NETのクラス定義がそのままデータベース設計となり、開発プロジェクトがシンプルになる。設計段階だけでなく、開発中に起こりがちな仕様変更の際、データベース定義をいじっているうちに整合性が失われる、といったミスも起こりにくくなる。こうしたことから、ObjectServiceを使った開発では、データベース・アクセスに関わる処理記述の生産性、保守性が大幅に向上するといえるわけだ。

  データベース定義の変更が比較的容易になるという特徴から、開発スタイルまで変わってくるという。いわゆるアジャイル開発の考え方も適用しやすくなるのだ。「ObjectServiceを使うことで、まずビジネス・クラスを定義して動かしてみる、という開発スタイルが可能になります。従来はデータベース構造を修正するのは負担が大きい作業でしたが、クラス設計と考えればどんどん変えることができます」(原本氏)。

  ObjectServiceを実際に開発案件で利用した開発者からは「体感で3割以上は生産性が上がったと」という声も出ているという。より具体的には、「今までの開発では、データベース構造の修正と、オブジェクトの修正を一致させる手間が発生していました。ObjectServiceを使うことで、オブジェクトとデータベース構造が常に一致するため、大幅に手間が省けます」という具合だ。

  特にVisual Basicが得意とする部門業務システムの分野では、こうした生産性向上のメリットは非常に大きいだろう。 

    設定ファイル記述の煩雑さや性能低下を回避

 ObjectServiceの機能上の特徴として、(1)ファイルの一括管理、(2)デザイナ画面による操作性向上、(3)処理性能、(4)日本語対応、が挙げられる。

  O/Rマッパー製品は多数あるが、通常、複数の設定ファイルが必要で記述や保守が煩雑な場合が多い。こうした問題を避けるため、ObjectServiceでは、モデル定義、クラス設計、テーブル作成などの記述を1つのファイルに集約し、そのファイルをVisual Basicの開発環境であるVisual Studioのデザイナ画面を使って編集できるようにしている。Visual Basicの開発環境の中で、シームレスにO/Rマッピングを設定できるため、開発環境に自然な形で導入できるというメリットがある。

Visual Studioに統合されたObjectServiceの設定画面。開発環境の中で、シームレスにO/Rマッピングの設定が可能(クリックで拡大)


  データベース処理ではパフォーマンスも重要だ。O/Rマッピングに伴う処理性能の低下を防ぐため、ObjectServiceでは機能の一部を.NETのネイティブ・コードといえる「IL」で記述。Visual Basic標準のデータベース・アクセス機能DataAdapterに比べても遜色ない性能を実現している。

  O/Rマッピングそのものではないが、業務システム開発に役立つのが、オブジェクトの履歴管理機能だ。J-SOX法対応などの影響で、データベースの修正履歴を情報システムに保管したい場合がある。こうした場合も、ObjectServiceなら特別な中間テーブルを作らずに、オブジェクトの履歴を管理し、過去のある時点のデータを取り出すことができる。

  ObjectServiceは日本国内のベンダによる製品であるため、日本語マニュアルが完備しているほか、サポートも日本語で受けられるというのも見逃せないメリットだ。海外製のソフトウェアではマニュアルを読んだり、翻訳するだけで工数を取られる場合も少なくないからだ。

  ObjectServiceの価格は、1ライセンスで6万6150円(税込み)。対応DBMSはMicrosoft SQL Server。コデックスでは無償で機能を試すことができるトライアル版も用意する。

  データベース処理の設計や修正にかかる労力を大幅に低減してくれるO/RマッパーObjectServiceは、VB.NETによる業務アプリケーション開発のスタイルを変えていくことになるだろう。


提供:株式会社コデックス
企画:アイティメディア 営業局
制作:@IT 編集部
掲載内容有効期限:2008年2月24日
 
関連リンク
コデックス
ObjectService.net製品情報
ObjectService.net製品カタログ(PDF)

関連記事
O/Rマッピングの役割とメリット(@IT Java Solution)
【連載】プロフェッショナルVB.NETプログラミング(@IT Insider.NET)
Visual Studio 2008に搭載された17の新機能 (@IT Insider.NET)
Windows VistaでVB6アプリケーションは本当に使えるのか?(@IT Insider.NET)


 
@ITトップ@IT Special インデックス会議室利用規約プライバシーポリシーサイトマップ