Wagby Developer Day 2014 開催直前情報 - 技術セッションのみどころ

おかげさまで、きたる11月7日に開催される Wagby Developer Day (WDD) 2014 の参加登録者数が110名120名を超えました。
初年度が40名、二回目となる昨年の参加者数が93名でしたので、増加傾向にあることを喜んでいます。ご期待に添えられる内容にしたいと鋭意、準備中です。

本日は WDD 開催直前ということで、主に技術セッションのみどころを紹介します。

DaoとServiceのカスタマイズ方法

Wagby R7 では、データベース操作の仕組みが大きく変わりました。Dao と呼ばれるデータベース操作を司るオブジェクトは生成されるコードがほとんど空で、フレームワークが処理を担います。SQLはほとんど登場しません。複雑な検索処理も Criteria と呼ばれる仕組みを使って実現します。大きく改善されたのはロック、キャッシュ、そして複合キーの扱いです。これらはすべて隠蔽されており、開発者は意識することなくオブジェクトの取得と更新に集中できます。

昨年の WDD では、楽観ロック機構を検討中であるとお伝えしました。Wagby は最初のバージョンから今に至るまで、悲観ロックを採用しています。特定のデータベースシステムに依存せず、かつ、更新画面を開いたタイミングでロックをかけるという(エンタープライズシステムでは実装の難易度が高い)アプローチをとってきました。一方で、外部システムとの連携、特に Wagby 以外の既存システムによるバッチ処理と連携させるためには、楽観ロックが望ましい場合があることもわかりました。Wagby の利用領域がますますひろがっていることを踏まえ、このセッションでは楽観ロックの仕組みと、楽観ロック利用時に注意すべき点は何かということについて具体的にお話します。既存システムとの連携を視野に入れている開発者にとって、大変重要なセッションです。

REST APIの使い方と応用

Wagby R7 では、開発した Wagby アプリケーションが REST API サーバになります。このため UI (操作画面)を別の仕組みで構築し、REST API を経由して Wagby を操作する(データの取得や登録、更新を行う)といった使い方ができるようになりました。

ところで Wagby はエンタープライズ分野で使われるため、ログオン認証が必須です。ログオン認証も REST API で実行できますので、認証後に REST API を使うという一連の手順を学ぶ必要があります。今回、具体的なコード例を説明します。

さらに、Wagby から別の REST API サーバを呼び出す、つまり Wagby が REST API のクライアントになる、という方法も説明します。外部システム連携をさらに行いやすくするための興味深いテクニックになります。

Gitによるチーム開発

Wagby R7 では設計情報(リポジトリ)がテキストファイル化されたため、svn や Git といったバージョン管理システムで扱いやすくなりました。(これまでは Excel に設計情報を記述していたため、差分が取りにくいという問題がありました。)本セッションでは Git を例に、複数の開発者での設計情報の共有方法をお伝えします。まだ cvs や svn しか使ったことがない、という方も、この機会に Git の使い方を知ることができます。

Dockerによる運用

Docker は現在、もっとも注目されている運用基盤です。Wagby は R6 のときに「Wagby Cloud」という仕組みを独自に構築しましたが、稼働プラットフォームが限られていました。Docker は大手のデータセンターが軒並み採用を表明しているため、業界標準の基盤になると考えられています。Wagby の Docker 対応により、オンプレミスでもクラウドでも(しかも、いずれのクラウド環境でも)一つの操作体系を学ぶことで運用を行うことができるようになると期待しています。

本セッションでは Docker の概要と Wagby との関係性を説明したあと、実際に Docker でどのような運用が実現できるのかを具体的なサンプルで紹介します。運用に関わる方に是非とも聞いていただきたい内容です。

バッチプログラムの開発方法

Wagby はオンライン系の画面およびデータベース操作をカバーしますが、バッチ処理はカスタマイズ開発となっています。しかし生成されたコードを再利用することで、高い生産性を達成しつつ、Wagby と親和性の高いプログラムを開発することができます。

本セッションでは R7 から登場した Dao や Service クラスを再利用するバッチプログラムの書き方を紹介したあと、ジョブフロー制御やジョブ再実行といった、大規模基幹系で求められる要件を満たす "Spring Batch" フレームワークを適用したバッチプログラムについても説明します。

まとめ

Wagby が市場に登場してから 8 年目に入りました。当初は小規模な Excel, Access アプリに代わる簡易的な Web データベースということで知られていましたが、機能アップに伴い、現在はエンタープライズアプリケーションの再構築で利用できる開発ツールの一つとして多くの企業で検討されるようになりました。しかし大規模になるほど、すべてを Wagby で完結するのではなく、既存システムを緩やかに更新するという方針で徐々に適用範囲を広げるという使い方が現実的であると考えられるようになっています。

そのためには Wagby で何でもできる、のではなく、どこまでが自動生成され、どこを開発者が支えるのかという全体像を明示する必要があります。Wagby Developer Day はそのようなカスタマイズ要望に応えるための技術情報の発信の場でもあります。

11月7日、皆様にお会いできることを楽しみにしています。どうぞよろしくお願いします。